/* =========================================================
   GEIER FEUERWERKE & LASERSHOWS – GRUNDGERÜST
   ========================================================= */

:root {
    --bg: #08090b;
    --bg-soft: #101216;
    --surface: #15181d;
    --surface-2: #1b1f25;
    --text: #f5f5f3;
    --muted: #a9adb5;
    --accent: #e7b458;
    --accent-light: #ffd78b;
    --border: rgba(255,255,255,.10);
    --max-width: 1180px;
    --radius: 18px;
    --shadow: 0 20px 60px rgba(0,0,0,.35);
}

* {
    box-sizing: border-box;
}

html {
    scroll-behavior: smooth;
}

body {
    margin: 0;
    background: var(--bg);
    color: var(--text);
    font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont,
                 "Segoe UI", sans-serif;
    line-height: 1.6;
}

a {
    color: inherit;
    text-decoration: none;
}

img {
    max-width: 100%;
    display: block;
}

.container {
    width: min(calc(100% - 40px), var(--max-width));
    margin-inline: auto;
}

/* Header */

.site-header {
    position: sticky;
    top: 0;
    z-index: 50;
    background: rgba(8,9,11,.88);
    backdrop-filter: blur(16px);
    border-bottom: 1px solid var(--border);
}

.header-inner {
    min-height: 78px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 30px;
}

.brand {
    display: inline-flex;
    align-items: center;
    gap: 12px;
}

.brand-mark {
    width: 44px;
    height: 44px;
    display: grid;
    place-items: center;
    border: 1px solid rgba(231,180,88,.55);
    border-radius: 50%;
    color: var(--accent);
    font-weight: 800;
    letter-spacing: .04em;
}

.brand-text {
    display: flex;
    flex-direction: column;
    line-height: 1.15;
}

.brand-text strong {
    font-size: .98rem;
}

.brand-text small {
    margin-top: 5px;
    color: var(--muted);
    font-size: .7rem;
}

.main-nav {
    display: flex;
    align-items: center;
    gap: 25px;
    font-size: .92rem;
}

.main-nav > a:not(.nav-cta) {
    color: #dedede;
}

.main-nav > a:hover {
    color: var(--accent-light);
}

.nav-cta {
    padding: 11px 16px;
    border-radius: 999px;
    background: var(--accent);
    color: #15100a;
    font-weight: 750;
}

.nav-toggle {
    display: none;
    width: 44px;
    height: 44px;
    border: 1px solid var(--border);
    border-radius: 10px;
    background: transparent;
    padding: 10px;
}

.nav-toggle span {
    display: block;
    height: 2px;
    background: white;
    margin: 5px 0;
}

/* Hero */

.hero {
    position: relative;
    overflow: hidden;
    min-height: 720px;
    display: grid;
    align-items: center;
    background:
        radial-gradient(circle at 78% 30%, rgba(231,180,88,.12), transparent 25%),
        radial-gradient(circle at 18% 70%, rgba(151,70,255,.10), transparent 30%),
        linear-gradient(180deg, #090a0d, #0b0d11);
}

.hero::after {
    content: "";
    position: absolute;
    inset: 0;
    opacity: .3;
    background-image:
        linear-gradient(rgba(255,255,255,.035) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,255,255,.035) 1px, transparent 1px);
    background-size: 60px 60px;
    mask-image: linear-gradient(to bottom, black, transparent 85%);
}

.hero-content {
    position: relative;
    z-index: 2;
    padding-block: 110px 120px;
}

.eyebrow {
    margin: 0 0 16px;
    color: var(--accent);
    font-size: .76rem;
    font-weight: 800;
    letter-spacing: .22em;
}

.hero h1,
.page-hero h1 {
    margin: 0;
    max-width: 900px;
    font-size: clamp(3.1rem, 8vw, 7.4rem);
    line-height: .94;
    letter-spacing: -.055em;
}

.hero h1 span {
    color: var(--accent-light);
}

.hero-copy {
    max-width: 680px;
    margin: 28px 0 0;
    color: #c4c7cd;
    font-size: clamp(1.05rem, 2vw, 1.3rem);
}

.hero-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
    margin-top: 38px;
}

.button {
    min-height: 52px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0 22px;
    border-radius: 999px;
    font-weight: 800;
    transition: transform .2s ease, background .2s ease, border-color .2s ease;
}

.button:hover {
    transform: translateY(-2px);
}

.button-primary {
    background: var(--accent);
    color: #171108;
}

.button-primary:hover {
    background: var(--accent-light);
}

.button-secondary {
    border: 1px solid rgba(255,255,255,.20);
    background: rgba(255,255,255,.04);
}

.button-secondary:hover {
    border-color: rgba(255,255,255,.4);
}

.hero-meta {
    margin-top: 38px;
    display: flex;
    flex-wrap: wrap;
    gap: 12px 28px;
    color: var(--muted);
    font-size: .88rem;
}

/* Sections */

.section {
    padding: 100px 0;
}

.section-dark {
    background: var(--bg-soft);
    border-block: 1px solid var(--border);
}

.section-heading {
    max-width: 700px;
    margin-bottom: 44px;
}

.section-heading h2,
.split h2,
.cta-box h2,
.placeholder-box h2 {
    margin: 0;
    font-size: clamp(2rem, 4vw, 3.5rem);
    line-height: 1.05;
    letter-spacing: -.035em;
}

.section-heading > p:last-child,
.lead,
.cta-box p,
.placeholder-box p {
    color: var(--muted);
    font-size: 1.05rem;
}

.card-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 18px;
}

.service-card {
    min-height: 315px;
    display: flex;
    flex-direction: column;
    padding: 30px;
    border: 1px solid var(--border);
    border-radius: var(--radius);
    background: linear-gradient(145deg, rgba(255,255,255,.055), rgba(255,255,255,.018));
}

.card-number {
    color: var(--accent);
    font-size: .8rem;
    font-weight: 800;
    letter-spacing: .15em;
}

.service-card h3 {
    margin: auto 0 12px;
    font-size: 1.5rem;
}

.service-card p {
    margin: 0 0 20px;
    color: var(--muted);
}

.service-card a {
    color: var(--accent-light);
    font-weight: 700;
}

.split {
    display: grid;
    grid-template-columns: 1.05fr .95fr;
    gap: 70px;
    align-items: center;
}

.check-list {
    list-style: none;
    padding: 0;
    margin: 28px 0 34px;
}

.check-list li {
    position: relative;
    padding: 10px 0 10px 30px;
    border-bottom: 1px solid var(--border);
}

.check-list li::before {
    content: "✓";
    position: absolute;
    left: 0;
    color: var(--accent);
    font-weight: 900;
}

.shop-preview {
    padding: 32px;
    border: 1px solid var(--border);
    border-radius: 24px;
    background:
        radial-gradient(circle at 90% 0%, rgba(231,180,88,.12), transparent 35%),
        var(--surface);
    box-shadow: var(--shadow);
}

.shop-preview h3 {
    margin: 18px 0 0;
    font-size: 2rem;
}

.shop-preview > p {
    color: var(--muted);
}

.shop-badge {
    display: inline-block;
    padding: 7px 11px;
    border-radius: 999px;
    background: rgba(231,180,88,.12);
    color: var(--accent-light);
    font-size: .75rem;
    font-weight: 800;
}

.shop-preview-card {
    display: flex;
    justify-content: space-between;
    gap: 20px;
    padding: 18px 0;
    border-top: 1px solid var(--border);
}

.shop-preview-card span {
    color: var(--muted);
}

.shop-preview-card strong {
    text-align: right;
}

.cta-box {
    padding: 42px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 30px;
    border: 1px solid rgba(231,180,88,.25);
    border-radius: 24px;
    background:
        radial-gradient(circle at 10% 50%, rgba(231,180,88,.12), transparent 30%),
        var(--surface);
}

/* Unterseiten */

.page-hero {
    padding: 100px 0 70px;
    background:
        radial-gradient(circle at 70% 10%, rgba(231,180,88,.10), transparent 25%),
        var(--bg-soft);
    border-bottom: 1px solid var(--border);
}

.page-hero h1 {
    font-size: clamp(3rem, 7vw, 6rem);
}

.page-hero p:not(.eyebrow) {
    max-width: 720px;
    color: var(--muted);
    font-size: 1.1rem;
}

.placeholder-box {
    max-width: 800px;
    padding: 40px;
    border: 1px dashed rgba(255,255,255,.18);
    border-radius: var(--radius);
    background: rgba(255,255,255,.025);
}

.placeholder-box > span {
    display: inline-block;
    margin-bottom: 16px;
    color: var(--accent);
    font-size: .75rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .14em;
}

/* Footer */

.site-footer {
    padding-top: 65px;
    background: #050607;
    border-top: 1px solid var(--border);
}

.footer-grid {
    display: grid;
    grid-template-columns: 2fr 1fr 1fr;
    gap: 50px;
}

.footer-brand {
    font-size: 1.35rem;
    font-weight: 800;
}

.footer-grid p {
    max-width: 430px;
    color: var(--muted);
}

.footer-grid h3 {
    margin-top: 0;
    font-size: .9rem;
}

.footer-grid > div:not(:first-child) {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.footer-grid a {
    color: var(--muted);
}

.footer-grid a:hover {
    color: var(--accent-light);
}

.footer-bottom {
    margin-top: 50px;
    padding: 22px 0;
    display: flex;
    justify-content: space-between;
    gap: 20px;
    color: #747984;
    border-top: 1px solid var(--border);
    font-size: .8rem;
}

/* Responsive */

@media (max-width: 980px) {
    .nav-toggle {
        display: block;
    }

    .main-nav {
        position: absolute;
        top: 78px;
        left: 0;
        right: 0;
        display: none;
        flex-direction: column;
        align-items: stretch;
        gap: 0;
        padding: 12px 20px 24px;
        background: rgba(8,9,11,.98);
        border-bottom: 1px solid var(--border);
    }

    .main-nav.is-open {
        display: flex;
    }

    .main-nav a {
        padding: 13px 4px;
        border-bottom: 1px solid var(--border);
    }

    .main-nav .nav-cta {
        margin-top: 12px;
        text-align: center;
        border-bottom: 0;
    }

    .card-grid {
        grid-template-columns: 1fr;
    }

    .split {
        grid-template-columns: 1fr;
        gap: 40px;
    }

    .cta-box {
        align-items: flex-start;
        flex-direction: column;
    }
}

@media (max-width: 650px) {
    .container {
        width: min(calc(100% - 28px), var(--max-width));
    }

    .brand-text small {
        display: none;
    }

    .hero {
        min-height: auto;
    }

    .hero-content {
        padding-block: 90px;
    }

    .hero h1 {
        font-size: clamp(3.25rem, 16vw, 5.2rem);
    }

    .hero-actions .button {
        width: 100%;
    }

    .section {
        padding: 70px 0;
    }

    .shop-preview,
    .cta-box,
    .placeholder-box {
        padding: 26px;
    }

    .shop-preview-card {
        flex-direction: column;
        gap: 4px;
    }

    .shop-preview-card strong {
        text-align: left;
    }

    .footer-grid {
        grid-template-columns: 1fr;
        gap: 30px;
    }

    .footer-bottom {
        flex-direction: column;
    }
}

/* =========================================================
   BUCHUNGSFORMULAR
   ========================================================= */

.booking-section {
    background:
        radial-gradient(circle at 80% 10%, rgba(231,180,88,.065), transparent 24%),
        var(--bg);
}

.booking-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 340px;
    gap: 34px;
    align-items: start;
}

.booking-main {
    min-width: 0;
}

.test-notice,
.form-error-summary {
    display: flex;
    flex-direction: column;
    gap: 3px;
    margin-bottom: 18px;
    padding: 16px 18px;
    border-radius: 14px;
    font-size: .92rem;
}

.test-notice {
    border: 1px solid rgba(231,180,88,.30);
    background: rgba(231,180,88,.08);
}

.test-notice strong {
    color: var(--accent-light);
}

.test-notice span,
.form-error-summary span {
    color: var(--muted);
}

.form-error-summary {
    border: 1px solid rgba(255,107,107,.35);
    background: rgba(255,107,107,.08);
}

.form-error-summary strong,
.field-error {
    color: #ff9c9c;
}

.booking-form {
    overflow: hidden;
    border: 1px solid var(--border);
    border-radius: 24px;
    background: rgba(255,255,255,.025);
    box-shadow: var(--shadow);
}

.form-section {
    padding: 34px;
    border-bottom: 1px solid var(--border);
}

.form-section-heading {
    display: flex;
    align-items: flex-start;
    gap: 16px;
    margin-bottom: 26px;
}

.form-section-heading > span {
    flex: 0 0 auto;
    width: 42px;
    height: 42px;
    display: grid;
    place-items: center;
    border: 1px solid rgba(231,180,88,.35);
    border-radius: 50%;
    color: var(--accent);
    font-size: .78rem;
    font-weight: 850;
}

.form-section-heading h2 {
    margin: 0;
    font-size: 1.45rem;
    line-height: 1.2;
}

.form-section-heading p {
    margin: 5px 0 0;
    color: var(--muted);
    font-size: .92rem;
}

.form-grid {
    display: grid;
    gap: 20px;
}

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

.form-field-full {
    grid-column: 1 / -1;
}

.form-field {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.form-field label {
    font-size: .9rem;
    font-weight: 750;
}

.form-field label em,
.checkbox-row em {
    color: var(--accent);
    font-style: normal;
}

.form-field input,
.form-field select,
.form-field textarea {
    width: 100%;
    min-height: 51px;
    padding: 13px 14px;
    border: 1px solid rgba(255,255,255,.13);
    border-radius: 12px;
    outline: none;
    background: #0d0f12;
    color: var(--text);
    font: inherit;
    transition: border-color .18s ease, box-shadow .18s ease, background .18s ease;
}

.form-field select {
    cursor: pointer;
}

.form-field textarea {
    min-height: 160px;
    resize: vertical;
}

.form-field input::placeholder,
.form-field textarea::placeholder {
    color: #6f747e;
}

.form-field input:focus,
.form-field select:focus,
.form-field textarea:focus {
    border-color: rgba(231,180,88,.65);
    background: #101216;
    box-shadow: 0 0 0 3px rgba(231,180,88,.09);
}

.field-error {
    display: block;
    font-size: .8rem;
}

.field-meta {
    display: flex;
    justify-content: space-between;
    gap: 20px;
    color: #747984;
    font-size: .75rem;
}

.form-consent {
    padding: 25px 34px;
    border-bottom: 1px solid var(--border);
}

.checkbox-row {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    color: #c3c6cb;
    cursor: pointer;
    font-size: .87rem;
}

.checkbox-row input {
    flex: 0 0 auto;
    width: 18px;
    height: 18px;
    margin-top: 3px;
    accent-color: var(--accent);
}

.checkbox-row a {
    color: var(--accent-light);
    text-decoration: underline;
    text-underline-offset: 3px;
}

.form-submit-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    padding: 28px 34px;
}

.form-submit-row > div {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.form-submit-row > div span {
    max-width: 520px;
    color: var(--muted);
    font-size: .8rem;
}

.form-submit-row button {
    border: 0;
    cursor: pointer;
    white-space: nowrap;
}

.honeypot {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    overflow: hidden !important;
    clip: rect(0 0 0 0) !important;
    white-space: nowrap !important;
}

.booking-sidebar {
    position: sticky;
    top: 105px;
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.sidebar-card {
    padding: 25px;
    border: 1px solid var(--border);
    border-radius: 18px;
    background: var(--surface);
}

.sidebar-card-muted {
    background: rgba(255,255,255,.025);
}

.sidebar-card-muted p {
    margin: 8px 0 0;
    color: var(--muted);
    font-size: .9rem;
}

.process-list {
    list-style: none;
    margin: 0;
    padding: 0;
}

.process-list li {
    display: grid;
    grid-template-columns: 34px 1fr;
    gap: 12px;
    padding: 15px 0;
    border-top: 1px solid var(--border);
}

.process-list li:first-child {
    border-top: 0;
    padding-top: 2px;
}

.process-list li > span {
    width: 30px;
    height: 30px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    background: rgba(231,180,88,.10);
    color: var(--accent);
    font-size: .75rem;
    font-weight: 850;
}

.process-list div {
    display: flex;
    flex-direction: column;
}

.process-list strong {
    font-size: .9rem;
}

.process-list small {
    margin-top: 3px;
    color: var(--muted);
    line-height: 1.45;
}

.form-success {
    display: flex;
    gap: 18px;
    padding: 28px;
    border: 1px solid rgba(231,180,88,.30);
    border-radius: 18px;
    background: rgba(231,180,88,.07);
}

.form-success-icon {
    flex: 0 0 auto;
    width: 46px;
    height: 46px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    background: var(--accent);
    color: #171108;
    font-size: 1.25rem;
    font-weight: 900;
}

.form-success h2 {
    margin: 0;
    font-size: clamp(1.7rem, 4vw, 2.5rem);
}

.form-success p:last-child {
    margin-bottom: 0;
    color: #c7c9ce;
}

.request-summary {
    margin-top: 18px;
    padding: 28px;
    border: 1px solid var(--border);
    border-radius: 18px;
    background: var(--surface);
}

.request-summary h3 {
    margin-top: 0;
}

.request-summary dl {
    margin: 0 0 25px;
}

.request-summary dl > div {
    display: grid;
    grid-template-columns: 130px 1fr;
    gap: 20px;
    padding: 11px 0;
    border-top: 1px solid var(--border);
}

.request-summary dt {
    color: var(--muted);
}

.request-summary dd {
    margin: 0;
    font-weight: 650;
}

@media (max-width: 980px) {
    .booking-layout {
        grid-template-columns: 1fr;
    }

    .booking-sidebar {
        position: static;
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 650px) {
    .form-section,
    .form-consent,
    .form-submit-row {
        padding: 24px 20px;
    }

    .form-grid-2 {
        grid-template-columns: 1fr;
    }

    .form-field-full {
        grid-column: auto;
    }

    .form-submit-row {
        flex-direction: column;
        align-items: stretch;
    }

    .form-submit-row .button {
        width: 100%;
    }

    .booking-sidebar {
        grid-template-columns: 1fr;
    }

    .form-success {
        flex-direction: column;
    }

    .request-summary dl > div {
        grid-template-columns: 1fr;
        gap: 2px;
    }
}

/* =========================================================
   V4 – V2 BASIS + BILDER + ÜBERARBEITETER HEADER
   ========================================================= */

/* Zweizeiliger Header */
.site-header {
    background: rgba(7, 8, 10, .92);
    box-shadow: 0 10px 40px rgba(0, 0, 0, .16);
}

.header-topline {
    border-bottom: 1px solid rgba(231, 180, 88, .16);
    background: linear-gradient(90deg, rgba(231, 180, 88, .08), rgba(255,255,255,.01), rgba(231, 180, 88, .06));
}

.header-topline-inner {
    min-height: 30px;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 22px;
    color: #9da2ab;
    font-size: .65rem;
    font-weight: 750;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.header-topline-inner span {
    position: relative;
}

.header-topline-inner span + span::before {
    content: "";
    position: absolute;
    left: -12px;
    top: 50%;
    width: 3px;
    height: 3px;
    border-radius: 50%;
    background: var(--accent);
    transform: translateY(-50%);
}

.header-inner {
    min-height: 84px;
}

.brand-mark {
    position: relative;
    width: 50px;
    height: 50px;
    border: 1px solid rgba(231,180,88,.46);
    background: radial-gradient(circle at 50% 35%, rgba(231,180,88,.15), rgba(255,255,255,.01));
    box-shadow: inset 0 0 22px rgba(231,180,88,.06);
    font-size: .92rem;
}

.brand-spark {
    position: absolute;
    top: -6px;
    right: -3px;
    color: var(--accent-light);
    font-size: .8rem;
    text-shadow: 0 0 12px rgba(255,215,139,.7);
}

.brand-text strong {
    font-size: 1.02rem;
    letter-spacing: .08em;
}

.brand-text small {
    letter-spacing: .03em;
}

.main-nav {
    gap: 20px;
}

.main-nav > a:not(.nav-cta) {
    position: relative;
    padding: 30px 0 28px;
    font-size: .9rem;
}

.main-nav > a:not(.nav-cta)::after {
    content: "";
    position: absolute;
    left: 0;
    right: 100%;
    bottom: 19px;
    height: 1px;
    background: var(--accent);
    transition: right .2s ease;
}

.main-nav > a:not(.nav-cta):hover::after,
.main-nav > a.active:not(.nav-cta)::after {
    right: 0;
}

.main-nav > a.active:not(.nav-cta) {
    color: var(--accent-light);
}

.nav-cta {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding-inline: 18px;
    box-shadow: 0 8px 28px rgba(231,180,88,.12);
}

.nav-cta.active {
    background: var(--accent-light);
}

/* Festes Hero-Bild, aber V2-Anordnung bleibt */
.hero.hero-with-image {
    background:
        linear-gradient(90deg, rgba(7,8,10,.92) 0%, rgba(7,8,10,.78) 44%, rgba(7,8,10,.54) 68%, rgba(7,8,10,.78) 100%),
        url('/assets/images/hero.jpg') center center / cover no-repeat fixed;
}

.hero.hero-with-image::before {
    content: "";
    position: absolute;
    inset: 0;
    background: radial-gradient(circle at 72% 30%, rgba(231,180,88,.16), transparent 26%);
    pointer-events: none;
}

.hero-image-note {
    position: absolute;
    right: 24px;
    bottom: 18px;
    z-index: 3;
    padding: 7px 10px;
    border: 1px solid rgba(255,255,255,.1);
    border-radius: 999px;
    background: rgba(5,6,8,.55);
    color: rgba(255,255,255,.5);
    font-size: .67rem;
    backdrop-filter: blur(10px);
}

.hero-image-note strong {
    color: rgba(255,255,255,.7);
}

/* Bilder in V2-Leistungskarten */
.service-card.service-card-image {
    min-height: 0;
    padding: 0;
    overflow: hidden;
    transition: transform .22s ease, border-color .22s ease, box-shadow .22s ease;
}

.service-card.service-card-image:hover {
    transform: translateY(-4px);
    border-color: rgba(231,180,88,.30);
    box-shadow: 0 22px 55px rgba(0,0,0,.30);
}

.service-image-wrap {
    position: relative;
    overflow: hidden;
    aspect-ratio: 16 / 10;
    background: #0c0d10;
}

.service-image-wrap::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(to top, rgba(8,9,11,.6), transparent 55%);
}

.service-image-wrap img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .35s ease;
}

.service-card:hover .service-image-wrap img {
    transform: scale(1.035);
}

.service-image-wrap .card-number {
    position: absolute;
    left: 18px;
    bottom: 16px;
    z-index: 2;
    padding: 7px 10px;
    border: 1px solid rgba(231,180,88,.28);
    border-radius: 999px;
    background: rgba(8,9,11,.72);
    backdrop-filter: blur(8px);
}

.service-card-body {
    display: flex;
    flex-direction: column;
    flex: 1;
    padding: 24px 26px 26px;
}

.service-card-body h3 {
    margin: 0 0 10px;
}

.service-card-body p {
    flex: 1;
}

/* Kompakter Video-Bereich */
.section-video-preview {
    padding-top: 18px;
}

.video-preview-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 18px;
}

.video-preview-card {
    overflow: hidden;
    border: 1px solid var(--border);
    border-radius: var(--radius);
    background: var(--surface);
    transition: transform .22s ease, border-color .22s ease;
}

.video-preview-card:hover {
    transform: translateY(-3px);
    border-color: rgba(231,180,88,.28);
}

.video-preview-media {
    position: relative;
    aspect-ratio: 16 / 9;
    overflow: hidden;
}

.video-preview-media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.video-preview-media::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(to top, rgba(8,9,11,.55), transparent 62%);
}

.video-play {
    position: absolute;
    left: 18px;
    bottom: 18px;
    z-index: 2;
    width: 48px;
    height: 48px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    background: var(--accent);
    color: #171108;
    font-size: 1rem;
    box-shadow: 0 10px 28px rgba(0,0,0,.25);
}

.video-preview-copy {
    padding: 18px 20px 20px;
    display: flex;
    justify-content: space-between;
    gap: 12px;
    align-items: baseline;
}

.video-preview-copy strong {
    font-size: 1rem;
}

.video-preview-copy span {
    color: var(--muted);
    font-size: .75rem;
}

/* Bild im V2-Silvester-Kasten */
.shop-preview {
    overflow: hidden;
}

.shop-preview-image {
    margin: -32px -32px 24px;
    aspect-ratio: 16 / 8;
    overflow: hidden;
    border-bottom: 1px solid var(--border);
}

.shop-preview-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* Abschlussbereich mit dezentem Hintergrundbild */
.cta-box-image {
    position: relative;
    overflow: hidden;
}

.cta-background-image {
    position: absolute;
    inset: 0;
    background:
        linear-gradient(90deg, rgba(21,24,29,.98) 0%, rgba(21,24,29,.9) 60%, rgba(21,24,29,.68) 100%),
        url('/assets/images/event.jpg') center / cover no-repeat;
    opacity: .72;
}

.cta-content,
.cta-button {
    position: relative;
    z-index: 2;
}

@media (max-width: 1080px) {
    .header-topline-inner {
        justify-content: center;
    }

    .main-nav {
        gap: 15px;
    }
}

@media (max-width: 980px) {
    .header-topline {
        display: none;
    }

    .header-inner {
        min-height: 78px;
    }

    .main-nav > a:not(.nav-cta) {
        padding: 13px 4px;
    }

    .main-nav > a:not(.nav-cta)::after {
        display: none;
    }

    .hero.hero-with-image {
        background:
            linear-gradient(90deg, rgba(7,8,10,.90), rgba(7,8,10,.66)),
            url('/assets/images/hero.jpg') center / cover no-repeat;
    }

    .video-preview-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 650px) {
    .hero-image-note {
        display: none;
    }

    .brand-mark {
        width: 44px;
        height: 44px;
    }

    .brand-text strong {
        font-size: .88rem;
    }

    .service-card-body {
        padding: 22px;
    }

    .shop-preview-image {
        margin: -26px -26px 22px;
    }

    .video-preview-copy {
        align-items: flex-start;
        flex-direction: column;
        gap: 2px;
    }
}

/* ADMIN V6 */
.admin-body{min-height:100vh;background:#090a0d}.admin-header{position:sticky;top:0;z-index:80;border-bottom:1px solid var(--border);background:rgba(8,9,11,.94);backdrop-filter:blur(14px)}.admin-header-inner{min-height:76px;display:flex;justify-content:space-between;align-items:center;gap:24px}.admin-brand{display:flex;align-items:center;gap:12px}.admin-brand>span:last-child{display:flex;flex-direction:column;line-height:1.1}.admin-brand small{margin-top:4px;color:var(--muted)}.admin-nav{display:flex;gap:18px;color:var(--muted)}.admin-main{min-height:calc(100vh - 76px)}.admin-auth-section{min-height:calc(100vh - 76px);display:grid;place-items:center;padding:50px 20px}.admin-auth-card{width:min(100%,520px);padding:36px;border:1px solid var(--border);border-radius:24px;background:var(--surface);box-shadow:var(--shadow)}.admin-auth-card h1{margin:0;font-size:clamp(2.2rem,5vw,3.4rem)}.admin-muted{color:var(--muted)}.admin-form{display:flex;flex-direction:column;gap:18px;margin-top:24px}.admin-form label{display:flex;flex-direction:column;gap:8px;font-weight:700}.admin-form input,.admin-form select,.admin-form textarea{min-height:52px;padding:13px 15px;border-radius:14px;border:1px solid rgba(255,255,255,.12);background:#0f1217;color:var(--text);font:inherit}.admin-form textarea{min-height:160px}.admin-section{padding:62px 0 90px}.admin-page-heading{margin-bottom:30px;display:flex;align-items:flex-end;justify-content:space-between;gap:24px}.admin-page-heading h1{margin:0;font-size:clamp(2.4rem,5vw,4rem)}.admin-secondary-link,.admin-back{color:var(--accent-light);font-weight:700}.admin-back{display:inline-block;margin-bottom:20px}.admin-stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:24px}.admin-stat-card{padding:22px;border:1px solid var(--border);border-radius:18px;background:var(--surface)}.admin-stat-card span{display:block;color:var(--muted)}.admin-stat-card strong{display:block;margin-top:8px;font-size:2rem}.admin-filter-row{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:18px}.admin-filter-row a{padding:8px 12px;border:1px solid var(--border);border-radius:999px;color:var(--muted)}.admin-filter-row a.active,.admin-filter-row a:hover{color:var(--accent-light);border-color:var(--border-strong)}.admin-table-card,.admin-detail-card,.admin-edit-card{border:1px solid var(--border);border-radius:22px;background:var(--surface);box-shadow:var(--shadow)}.admin-table-wrap{overflow-x:auto}.admin-table{width:100%;border-collapse:collapse;min-width:900px}.admin-table th,.admin-table td{padding:16px 18px;text-align:left;border-bottom:1px solid var(--border)}.admin-table th{color:var(--muted);font-size:.78rem;text-transform:uppercase}.admin-table a{font-weight:700}.admin-empty{padding:50px 28px;text-align:center}.status-badge{display:inline-flex;padding:4px 10px;border-radius:999px;font-size:.76rem;font-weight:800;border:1px solid var(--border)}.status-neu{color:#f0c97a}.status-gebucht{color:#b9e8c4}.status-abgesagt{color:#efb4b4}.admin-detail-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:22px;align-items:start}.admin-detail-card,.admin-edit-card{padding:28px}.admin-detail-list>div{display:grid;grid-template-columns:180px 1fr;gap:18px;padding:12px 0;border-bottom:1px solid var(--border)}.admin-detail-list dt{color:var(--muted)}.admin-detail-list dd{margin:0;font-weight:650}.admin-message-box{padding:18px;border-radius:16px;background:#0f1217;border:1px solid var(--border)}@media(max-width:900px){.admin-stat-grid{grid-template-columns:repeat(2,1fr)}.admin-detail-grid{grid-template-columns:1fr}}@media(max-width:650px){.admin-header-inner,.admin-page-heading{align-items:flex-start;flex-direction:column}.admin-header-inner{padding-block:14px}.admin-stat-grid{grid-template-columns:1fr 1fr}.admin-detail-list>div{grid-template-columns:1fr}}


/* =========================================================
   V6.1 – 1:1 LOGO + NEUER FIRMENNAME
   ========================================================= */

.brand {
    flex-shrink: 0;
    gap: 14px;
}

.brand-logo-wrap {
    width: 62px;
    height: 62px;
    flex: 0 0 62px;
    display: grid;
    place-items: center;
    overflow: hidden;
    border-radius: 14px;
    border: 1px solid rgba(231,180,88,.35);
    background: rgba(255,255,255,.025);
    box-shadow: 0 8px 24px rgba(0,0,0,.18);
}

.brand-logo {
    width: 100%;
    height: 100%;
    object-fit: contain;
    object-position: center;
}

.brand-text strong {
    max-width: 330px;
    font-size: .98rem;
    line-height: 1.1;
    letter-spacing: .055em;
}

.brand-text strong span {
    color: var(--accent-light);
}

.brand-text small {
    margin-top: 7px;
    font-size: .67rem;
    letter-spacing: .055em;
    text-transform: uppercase;
}

.admin-logo-wrap {
    width: 48px;
    height: 48px;
    flex: 0 0 48px;
    overflow: hidden;
    border-radius: 11px;
    border: 1px solid rgba(231,180,88,.30);
    background: rgba(255,255,255,.025);
}

.admin-logo {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.admin-brand strong {
    font-size: .92rem;
}

@media (max-width: 1180px) {
    .brand-logo-wrap {
        width: 54px;
        height: 54px;
        flex-basis: 54px;
    }

    .brand-text strong {
        max-width: 245px;
        font-size: .86rem;
    }

    .main-nav {
        gap: 14px;
    }

    .main-nav > a:not(.nav-cta) {
        font-size: .84rem;
    }
}

@media (max-width: 980px) {
    .brand-logo-wrap {
        width: 52px;
        height: 52px;
        flex-basis: 52px;
    }

    .brand-text strong {
        max-width: none;
        font-size: .9rem;
    }
}

@media (max-width: 580px) {
    .brand {
        gap: 10px;
    }

    .brand-logo-wrap {
        width: 48px;
        height: 48px;
        flex-basis: 48px;
        border-radius: 10px;
    }

    .brand-text strong {
        max-width: 200px;
        font-size: .75rem;
        letter-spacing: .035em;
    }

    .brand-text small {
        display: none;
    }
}


/* =========================================================
   V7 – HERO IN 100 % ORIGINALFARBE
   Kein globaler Farbfilter über dem Hintergrundbild.
   Nur hinter dem Text liegt eine lokale transparente Fläche.
   ========================================================= */
.hero.hero-with-image {
    background-image: url('/assets/images/hero.jpg');
    background-position: center 45%;
    background-size: cover;
    background-repeat: no-repeat;
    background-attachment: fixed;
}

.hero.hero-with-image::before,
.hero.hero-with-image::after,
.hero.hero-with-image .hero-glow {
    display: none !important;
}

.hero.hero-with-image .hero-content {
    isolation: isolate;
}

.hero.hero-with-image .hero-content::before {
    content: "";
    position: absolute;
    z-index: -1;
    left: -30px;
    top: 65px;
    bottom: 65px;
    width: min(790px, calc(100% + 30px));
    border: 1px solid rgba(255,255,255,.10);
    border-radius: 26px;
    background: rgba(5,6,8,.56);
    backdrop-filter: blur(5px);
    box-shadow: 0 24px 70px rgba(0,0,0,.25);
}

.hero.hero-with-image .hero-copy,
.hero.hero-with-image .hero-meta {
    color: #f0f1f3;
    text-shadow: 0 2px 14px rgba(0,0,0,.85);
}

.hero.hero-with-image h1,
.hero.hero-with-image .eyebrow {
    text-shadow: 0 3px 18px rgba(0,0,0,.85);
}

.hero-image-note { display: none !important; }

/* Silvester Shop */
.shop-hero-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:24px; }
.shop-toolbar { display:flex; justify-content:space-between; align-items:center; gap:18px; margin-bottom:28px; flex-wrap:wrap; }
.shop-categories { display:flex; flex-wrap:wrap; gap:8px; }
.shop-categories a { padding:9px 13px; border:1px solid var(--border); border-radius:999px; color:var(--muted); font-size:.86rem; }
.shop-categories a.active,.shop-categories a:hover { color:var(--accent-light); border-color:var(--border-strong); background:rgba(220,163,74,.08); }
.cart-shortcut { display:inline-flex; align-items:center; gap:9px; padding:10px 14px; border-radius:999px; border:1px solid var(--border-strong); background:rgba(220,163,74,.07); font-weight:800; }
.cart-shortcut span,.cart-link-count { min-width:24px; height:24px; display:inline-grid; place-items:center; border-radius:50%; background:var(--accent); color:#171108; font-size:.76rem; }
.shop-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
.product-card { overflow:hidden; border:1px solid var(--border); border-radius:22px; background:var(--surface); box-shadow:var(--shadow); display:flex; flex-direction:column; }
.product-image { position:relative; aspect-ratio:4/3; overflow:hidden; background:#0d0f13; }
.product-image img { width:100%; height:100%; object-fit:cover; }
.product-category { position:absolute; left:14px; top:14px; padding:6px 9px; border-radius:999px; background:rgba(6,7,9,.76); border:1px solid rgba(255,255,255,.12); backdrop-filter:blur(8px); font-size:.72rem; color:var(--accent-light); font-weight:800; }
.product-body { padding:22px; display:flex; flex-direction:column; flex:1; }
.product-manufacturer { color:var(--muted); font-size:.78rem; text-transform:uppercase; letter-spacing:.08em; }
.product-body h2 { margin:5px 0 10px; font-size:1.35rem; line-height:1.15; }
.product-description { color:var(--muted); margin:0 0 16px; }
.product-facts { display:flex; flex-wrap:wrap; gap:7px; margin-bottom:18px; }
.product-facts span { padding:5px 8px; border-radius:8px; background:rgba(255,255,255,.04); border:1px solid var(--border); font-size:.75rem; color:#d7d9de; }
.product-bottom { margin-top:auto; display:flex; align-items:flex-end; justify-content:space-between; gap:14px; }
.product-price { font-size:1.55rem; font-weight:900; letter-spacing:-.03em; }
.product-stock { display:block; color:var(--muted); font-size:.76rem; margin-top:2px; }
.product-stock.low { color:#f0c97a; }.product-stock.out { color:#efb4b4; }
.add-cart-form { display:flex; align-items:center; gap:8px; }
.add-cart-form input { width:62px; min-height:44px; border-radius:12px; border:1px solid var(--border); background:#0f1217; color:var(--text); padding:8px; }
.button-small { min-height:44px; padding:0 15px; font-size:.86rem; }
.shop-empty { padding:48px; border:1px dashed var(--border); border-radius:22px; text-align:center; background:rgba(255,255,255,.02); }
.shop-notice { margin-top:30px; padding:18px 20px; border-left:3px solid var(--accent); background:rgba(220,163,74,.06); color:var(--muted); border-radius:0 14px 14px 0; }
.shop-alert { margin-bottom:22px; }
.cart-layout { display:grid; grid-template-columns:1fr 360px; gap:24px; align-items:start; }
.cart-card,.cart-summary { border:1px solid var(--border); border-radius:22px; background:var(--surface); box-shadow:var(--shadow); }
.cart-card { overflow:hidden; }
.cart-item { display:grid; grid-template-columns:110px 1fr auto; gap:18px; padding:18px; align-items:center; border-bottom:1px solid var(--border); }
.cart-item:last-child { border-bottom:0; }
.cart-item img { width:110px; height:85px; object-fit:cover; border-radius:12px; }
.cart-item h3 { margin:0 0 4px; }.cart-item p { margin:0; color:var(--muted); font-size:.86rem; }
.cart-item-actions { display:flex; flex-direction:column; align-items:flex-end; gap:8px; }
.cart-item-actions input { width:66px; min-height:40px; border-radius:10px; border:1px solid var(--border); background:#0f1217; color:var(--text); padding:7px; }
.cart-remove { border:0; background:none; color:#efb4b4; cursor:pointer; padding:0; }
.cart-summary { padding:24px; position:sticky; top:115px; }.cart-summary h2 { margin-top:0; }
.cart-total-row { display:flex; justify-content:space-between; gap:20px; padding:16px 0; border-top:1px solid var(--border); margin-top:14px; font-size:1.2rem; }
.cart-summary .button { width:100%; margin-top:12px; }.cart-summary small { display:block; color:var(--muted); margin-top:12px; }
.cart-link { display:inline-flex!important; align-items:center; gap:7px; }

/* Admin Produkte */
.admin-toolbar { display:flex; justify-content:space-between; gap:16px; align-items:center; margin-bottom:22px; flex-wrap:wrap; }
.admin-product-thumb { width:64px; height:48px; border-radius:8px; object-fit:cover; background:#0f1217; }
.admin-form-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:18px; }.admin-form-grid .full { grid-column:1/-1; }
.admin-checkbox { display:flex!important; flex-direction:row!important; align-items:center; gap:9px!important; }.admin-checkbox input { width:auto!important; min-height:0!important; }

@media (max-width: 980px) {
    .hero.hero-with-image { background-attachment: scroll; background-position:center center; }
    .hero.hero-with-image .hero-content::before { left:-18px; right:-18px; width:auto; top:55px; bottom:55px; }
    .shop-grid { grid-template-columns:repeat(2,1fr); }
    .cart-layout { grid-template-columns:1fr; }.cart-summary { position:static; }
}
@media (max-width: 650px) {
    .hero.hero-with-image .hero-content::before { left:-8px; right:-8px; top:35px; bottom:35px; border-radius:20px; background:rgba(5,6,8,.63); }
    .shop-grid { grid-template-columns:1fr; }.product-bottom { align-items:stretch; flex-direction:column; }.add-cart-form { width:100%; }.add-cart-form .button { flex:1; }
    .cart-item { grid-template-columns:80px 1fr; }.cart-item img { width:80px; height:70px; }.cart-item-actions { grid-column:1/-1; flex-direction:row; justify-content:flex-end; align-items:center; }
    .admin-form-grid { grid-template-columns:1fr; }.admin-form-grid .full { grid-column:auto; }
}


/* =========================================================
   V8 – CHECKOUT, VORBESTELLUNGEN & ABHOLZEITEN
   ========================================================= */

.checkout-layout {
    display: grid;
    grid-template-columns: minmax(0,1fr) 370px;
    gap: 24px;
    align-items: start;
}

.checkout-card,
.checkout-summary,
.checkout-success {
    border: 1px solid var(--border);
    border-radius: 24px;
    background: var(--surface);
    box-shadow: var(--shadow);
}

.checkout-card { padding: 30px; }

.checkout-summary {
    position: sticky;
    top: 115px;
    padding: 25px;
}

.checkout-summary h2 { margin-top: 0; }

.checkout-summary-item {
    display: flex;
    justify-content: space-between;
    gap: 20px;
    padding: 11px 0;
    border-bottom: 1px solid var(--border);
    font-size: .9rem;
}

.checkout-summary-item span { color: var(--muted); }
.checkout-summary .button { width: 100%; margin-top: 14px; }
.checkout-summary small { display: block; margin-top: 14px; color: var(--muted); }

.checkout-section-title {
    display: flex;
    align-items: flex-start;
    gap: 14px;
    margin-bottom: 22px;
}

.checkout-section-title > span {
    width: 40px;
    height: 40px;
    flex: 0 0 40px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    background: rgba(220,163,74,.12);
    border: 1px solid var(--border-strong);
    color: var(--accent-light);
    font-weight: 900;
}

.checkout-section-title h2 {
    margin: 0;
    font-size: 1.45rem;
}

.checkout-section-title p {
    margin: 3px 0 0;
    color: var(--muted);
}

.checkout-section-spaced {
    margin-top: 38px;
}

.pickup-slot-grid {
    display: grid;
    grid-template-columns: repeat(2,1fr);
    gap: 12px;
}

.pickup-slot {
    position: relative;
    cursor: pointer;
}

.pickup-slot input {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}

.pickup-slot > span {
    min-height: 112px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 17px;
    border: 1px solid var(--border);
    border-radius: 16px;
    background: #0f1217;
    transition: border-color .18s ease, background .18s ease, transform .18s ease;
}

.pickup-slot:hover > span {
    border-color: var(--border-strong);
    transform: translateY(-1px);
}

.pickup-slot input:checked + span {
    border-color: var(--accent);
    background: rgba(220,163,74,.09);
    box-shadow: inset 0 0 0 1px rgba(220,163,74,.20);
}

.pickup-slot strong {
    color: var(--accent-light);
    font-size: .85rem;
}

.pickup-slot b {
    margin-top: 3px;
    font-size: 1.05rem;
}

.pickup-slot small {
    margin-top: 6px;
    color: var(--muted);
}

.checkout-checks {
    margin-top: 24px;
    padding-top: 6px;
    border-top: 1px solid var(--border);
}

.checkout-checks a {
    color: var(--accent-light);
    text-decoration: underline;
}

.checkout-submit {
    width: 100%;
    margin-top: 8px;
}

.checkout-submit:disabled {
    opacity: .45;
    cursor: not-allowed;
    transform: none;
}

.checkout-success {
    max-width: 900px;
    margin-inline: auto;
    padding: 42px;
}

.checkout-success h2 {
    margin: 0;
    font-size: clamp(2.3rem,5vw,4rem);
}

.checkout-confirm-grid {
    display: grid;
    grid-template-columns: repeat(3,1fr);
    gap: 14px;
    margin: 28px 0;
}

.checkout-confirm-grid > div {
    padding: 18px;
    border-radius: 16px;
    border: 1px solid var(--border);
    background: #0f1217;
}

.checkout-confirm-grid span {
    display: block;
    color: var(--muted);
    font-size: .78rem;
    margin-bottom: 5px;
}

.checkout-confirm-grid strong {
    font-size: 1rem;
}

/* Admin Bestellungen / Abholzeiten */
.pickup-admin-grid {
    display: grid;
    grid-template-columns: 390px minmax(0,1fr);
    gap: 22px;
    align-items: start;
}

.pickup-table { min-width: 720px; }

.order-status-neu { color: #f0c97a; }
.order-status-bestaetigt { color: #bcd3ff; }
.order-status-bereit { color: #d7c3ff; }
.order-status-abgeholt { color: #b9e8c4; }
.order-status-storniert { color: #efb4b4; }

.order-item-list {
    border: 1px solid var(--border);
    border-radius: 16px;
    overflow: hidden;
}

.order-item-row {
    display: grid;
    grid-template-columns: 1fr 110px 110px;
    gap: 16px;
    padding: 13px 16px;
    border-bottom: 1px solid var(--border);
    align-items: center;
}

.order-item-row:last-child { border-bottom: 0; }

.order-item-row span:nth-child(2),
.order-item-row strong {
    text-align: right;
}

.order-grand-total {
    background: rgba(220,163,74,.06);
    font-size: 1.08rem;
}

@media (max-width: 1000px) {
    .checkout-layout,
    .pickup-admin-grid {
        grid-template-columns: 1fr;
    }

    .checkout-summary { position: static; }
}

@media (max-width: 700px) {
    .pickup-slot-grid,
    .checkout-confirm-grid {
        grid-template-columns: 1fr;
    }

    .checkout-card,
    .checkout-success {
        padding: 23px;
    }

    .order-item-row {
        grid-template-columns: 1fr auto;
    }

    .order-item-row span:nth-child(2) {
        display: none;
    }
}


/* =========================================================
   V9 – ZAHLUNGSARTEN + UNTERSCHRIFT
   ========================================================= */

.payment-method-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 12px;
}

.payment-method {
    position: relative;
    cursor: pointer;
}

.payment-method input {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}

.payment-method > span {
    min-height: 125px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 18px;
    border-radius: 17px;
    border: 1px solid var(--border);
    background: #0f1217;
    transition: .18s ease;
}

.payment-method strong {
    font-size: 1rem;
    color: var(--text);
}

.payment-method small {
    margin-top: 7px;
    color: var(--muted);
}

.payment-method:hover > span,
.payment-method input:checked + span {
    border-color: var(--accent);
    background: rgba(220,163,74,.08);
    box-shadow: inset 0 0 0 1px rgba(220,163,74,.14);
}

.pickup-signature-panel {
    margin-top: 24px;
    padding: 24px;
    border: 1px solid var(--border-strong);
    border-radius: 20px;
    background: rgba(220,163,74,.055);
}

.signature-agreement {
    color: #d5d7dc;
    font-size: .92rem;
    line-height: 1.65;
}

.signature-wrap {
    margin-top: 20px;
}

.signature-label-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 20px;
    margin-bottom: 8px;
}

.signature-clear {
    border: 0;
    background: transparent;
    color: var(--accent-light);
    cursor: pointer;
    text-decoration: underline;
}

#signature-canvas {
    width: 100%;
    height: 180px;
    display: block;
    border-radius: 14px;
    border: 1px solid #aaa;
    background: #fff;
    touch-action: none;
}

.signature-wrap small {
    display: block;
    margin-top: 7px;
    color: var(--muted);
}

.checkout-legal-note {
    margin: 14px 0 0;
    color: var(--muted);
    font-size: .78rem;
    text-align: center;
}

.payment-instruction-card {
    margin: 24px 0;
    padding: 24px;
    border: 1px solid var(--border-strong);
    border-radius: 18px;
    background: #0f1217;
}

.payment-instruction-card h3 {
    margin-top: 0;
}

.payment-instruction-card dl > div {
    display: grid;
    grid-template-columns: 160px 1fr;
    gap: 16px;
    padding: 8px 0;
    border-bottom: 1px solid var(--border);
}

.payment-instruction-card dt {
    color: var(--muted);
}

.payment-instruction-card dd {
    margin: 0;
    font-weight: 700;
}

.payment-status {
    display: inline-block;
    margin-top: 3px;
    padding: 3px 8px;
    border-radius: 999px;
    font-size: .72rem;
    font-weight: 800;
}

.payment-status-offen {
    color: #f0c97a;
    background: rgba(220,163,74,.10);
}

.payment-status-bezahlt {
    color: #b9e8c4;
    background: rgba(87,169,107,.12);
}

.payment-status-fehlgeschlagen,
.payment-status-erstattet {
    color: #efb4b4;
    background: rgba(188,77,77,.10);
}

.stored-signature {
    display: block;
    width: min(100%, 500px);
    max-height: 160px;
    object-fit: contain;
    object-position: left center;
    margin: 16px 0;
    padding: 10px;
    background: #fff;
    border-radius: 12px;
}

.print-slip-button {
    margin-top: 12px;
}

@media (max-width: 900px) {
    .payment-method-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 600px) {
    .payment-instruction-card dl > div {
        grid-template-columns: 1fr;
        gap: 2px;
    }

    #signature-canvas {
        height: 160px;
    }
}


/* =========================================================
   V11 – SHOP-SUCHE, PRODUKTDETAILS, BILD-UPLOAD
   ========================================================= */

.shop-search-panel {
    margin-bottom: 20px;
    padding: 18px;
    border: 1px solid var(--border);
    border-radius: 20px;
    background: var(--surface);
}

.shop-search-main {
    display: grid;
    grid-template-columns: minmax(250px,1.6fr) minmax(170px,.8fr) minmax(190px,.9fr) auto;
    gap: 12px;
    align-items: end;
}

.shop-search-main label,
.admin-product-filter label {
    display: flex;
    flex-direction: column;
    gap: 7px;
}

.shop-search-main label > span,
.admin-product-filter label > span {
    font-size: .76rem;
    font-weight: 800;
    color: var(--muted);
    text-transform: uppercase;
    letter-spacing: .07em;
}

.shop-search-main input,
.shop-search-main select,
.admin-product-filter input,
.admin-product-filter select {
    width: 100%;
    min-height: 48px;
    padding: 11px 13px;
    border: 1px solid rgba(255,255,255,.12);
    border-radius: 13px;
    background: #0f1217;
    color: var(--text);
    font: inherit;
}

.shop-result-row {
    min-height: 44px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 15px;
    margin-bottom: 15px;
    color: var(--muted);
}

.shop-result-row strong {
    color: var(--text);
}

.shop-result-row a {
    color: var(--accent-light);
}

.product-card-image-link {
    display: block;
}

.product-card h2 a:hover {
    color: var(--accent-light);
}

.product-image {
    position: relative;
}

.product-rest-badge {
    position: absolute;
    top: 15px;
    right: 15px;
    padding: 6px 9px;
    border-radius: 999px;
    background: rgba(141,31,31,.94);
    color: #fff;
    font-size: .68rem;
    font-weight: 900;
    letter-spacing: .07em;
}

.product-card-actions {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}

.product-card-actions .add-cart-form {
    flex-wrap: nowrap;
}

.product-card-actions .add-cart-form input[type="number"] {
    width: 58px;
}

/* Product detail */
.product-detail-hero {
    padding: 54px 0 95px;
    background:
        radial-gradient(circle at 76% 10%, rgba(220,163,74,.08), transparent 24%),
        var(--bg);
}

.product-back-link {
    display: inline-block;
    margin-bottom: 24px;
    color: var(--accent-light);
    font-weight: 750;
}

.product-detail-grid {
    display: grid;
    grid-template-columns: minmax(0,1.08fr) minmax(360px,.92fr);
    gap: 42px;
    align-items: start;
}

.product-detail-image {
    position: relative;
    overflow: hidden;
    border: 1px solid var(--border);
    border-radius: 26px;
    background: #111419;
    box-shadow: var(--shadow);
}

.product-detail-image img {
    width: 100%;
    aspect-ratio: 1 / 1;
    object-fit: contain;
    background: #0c0e12;
}

.product-detail-content {
    padding-top: 12px;
}

.product-detail-content h1 {
    margin: 8px 0 16px;
    font-size: clamp(2.5rem,5vw,4.8rem);
    line-height: .98;
    letter-spacing: -.045em;
}

.product-detail-price {
    margin-bottom: 9px;
    font-size: clamp(2rem,4vw,3.1rem);
    color: var(--accent-light);
    font-weight: 900;
}

.product-stock-large {
    display: inline-block;
    margin-bottom: 24px;
}

.product-detail-description {
    color: #c7cbd2;
    font-size: 1.03rem;
}

.product-detail-facts {
    display: grid;
    grid-template-columns: repeat(2,1fr);
    gap: 10px;
    margin: 24px 0;
}

.product-detail-facts > div {
    padding: 15px;
    border: 1px solid var(--border);
    border-radius: 15px;
    background: var(--surface);
}

.product-detail-facts span {
    display: block;
    color: var(--muted);
    font-size: .74rem;
    text-transform: uppercase;
    letter-spacing: .06em;
}

.product-detail-facts strong {
    display: block;
    margin-top: 3px;
}

.product-detail-cart {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    align-items: end;
    margin-top: 27px;
}

.product-detail-cart label {
    display: flex;
    flex-direction: column;
    gap: 6px;
    color: var(--muted);
    font-size: .78rem;
    font-weight: 800;
    text-transform: uppercase;
}

.product-detail-cart input {
    width: 84px;
    min-height: 52px;
    padding: 10px 12px;
    border: 1px solid var(--border);
    border-radius: 13px;
    background: #0f1217;
    color: var(--text);
    font: inherit;
}

.product-video-button {
    display: inline-flex;
    margin-top: 20px;
    color: var(--accent-light);
    font-weight: 800;
}

.product-detail-notice {
    margin-top: 26px;
}

/* Admin product UX */
.admin-product-filter {
    margin-bottom: 18px;
    display: grid;
    grid-template-columns: minmax(220px,1.4fr) minmax(180px,.8fr) minmax(170px,.7fr) auto auto;
    gap: 10px;
    align-items: end;
    padding: 16px;
    border: 1px solid var(--border);
    border-radius: 18px;
    background: var(--surface);
}

.admin-stock-pill {
    min-width: 38px;
    display: inline-flex;
    justify-content: center;
    padding: 5px 9px;
    border-radius: 999px;
    font-weight: 900;
    font-size: .78rem;
}

.admin-stock-pill.ok {
    color: #b9e8c4;
    background: rgba(87,169,107,.12);
}

.admin-stock-pill.low {
    color: #f0c97a;
    background: rgba(220,163,74,.10);
}

.admin-stock-pill.soldout {
    color: #efb4b4;
    background: rgba(188,77,77,.10);
}

.admin-product-editor-grid {
    display: grid;
    grid-template-columns: minmax(0,1fr) 330px;
    gap: 22px;
    align-items: start;
}

.admin-product-preview {
    position: sticky;
    top: 104px;
    padding: 24px;
    border: 1px solid var(--border);
    border-radius: 22px;
    background: var(--surface);
    box-shadow: var(--shadow);
}

.admin-product-preview-image {
    overflow: hidden;
    border-radius: 16px;
    border: 1px solid var(--border);
    background: #0f1217;
}

.admin-product-preview-image img {
    width: 100%;
    aspect-ratio: 1 / 1;
    object-fit: contain;
}

.admin-product-preview h2 {
    margin-bottom: 8px;
}

.admin-product-preview p {
    color: var(--muted);
}

.admin-stock-warning {
    margin: 12px 0;
    padding: 11px 13px;
    border-radius: 12px;
    color: #f0c97a;
    background: rgba(220,163,74,.10);
}

.admin-stock-warning.soldout {
    color: #efb4b4;
    background: rgba(188,77,77,.10);
}

.admin-form input[type="file"] {
    padding: 10px;
}

@media (max-width: 1050px) {
    .shop-search-main,
    .admin-product-filter {
        grid-template-columns: 1fr 1fr;
    }

    .product-detail-grid,
    .admin-product-editor-grid {
        grid-template-columns: 1fr;
    }

    .admin-product-preview {
        position: static;
    }
}

@media (max-width: 700px) {
    .shop-search-main,
    .admin-product-filter,
    .product-detail-facts {
        grid-template-columns: 1fr;
    }

    .shop-search-main .button,
    .admin-product-filter .button {
        width: 100%;
    }

    .product-detail-hero {
        padding-top: 34px;
    }

    .product-detail-content h1 {
        font-size: clamp(2.4rem,12vw,4rem);
    }

    .product-detail-cart {
        align-items: stretch;
        flex-direction: column;
    }

    .product-detail-cart label,
    .product-detail-cart input,
    .product-detail-cart .button {
        width: 100%;
    }
}


/* =========================================================
   V12 – BESTELLSTATUS + ADMIN DASHBOARD
   ========================================================= */

/* Kunden-Bestellstatus */
.order-status-hero {
    min-height: 360px;
}

.order-lookup-grid {
    display: grid;
    grid-template-columns: minmax(320px,.72fr) minmax(0,1.28fr);
    gap: 24px;
    align-items: start;
}

.order-lookup-card,
.order-customer-status,
.order-lookup-info {
    border: 1px solid var(--border);
    border-radius: 24px;
    background: var(--surface);
    box-shadow: var(--shadow);
}

.order-lookup-card {
    padding: 28px;
}

.order-lookup-card h2,
.order-lookup-info h2 {
    margin-top: 0;
}

.order-lookup-form {
    display: flex;
    flex-direction: column;
    gap: 17px;
}

.order-lookup-form label {
    display: flex;
    flex-direction: column;
    gap: 8px;
    font-weight: 750;
}

.order-lookup-form input {
    width: 100%;
    min-height: 52px;
    padding: 12px 14px;
    border: 1px solid rgba(255,255,255,.12);
    border-radius: 14px;
    background: #0f1217;
    color: var(--text);
    font: inherit;
}

.order-lookup-help,
.order-lookup-privacy {
    margin: 18px 0 0;
    color: var(--muted);
    font-size: .8rem;
    line-height: 1.55;
}

.order-lookup-info {
    padding: 32px;
}

.order-lookup-info > p:not(.eyebrow) {
    color: var(--muted);
}

.order-lookup-info-list {
    margin-top: 28px;
    display: grid;
    gap: 12px;
}

.order-lookup-info-list > div {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 15px;
    border: 1px solid var(--border);
    border-radius: 15px;
    background: #0f1217;
}

.order-lookup-info-list span {
    width: 36px;
    height: 36px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    border: 1px solid var(--border-strong);
    color: var(--accent-light);
    font-weight: 900;
}

.order-lookup-info-list p {
    margin: 0;
}

.order-customer-status {
    padding: 30px;
}

.order-status-heading {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 20px;
    margin-bottom: 26px;
}

.order-status-heading h2 {
    margin: 0;
    font-size: clamp(1.7rem,4vw,2.6rem);
}

.customer-order-progress {
    display: grid;
    grid-template-columns: repeat(4,1fr);
    gap: 8px;
    margin: 24px 0 28px;
}

.customer-progress-step {
    position: relative;
    padding: 16px 12px;
    border: 1px solid var(--border);
    border-radius: 15px;
    background: #0f1217;
    opacity: .52;
}

.customer-progress-step > span {
    width: 30px;
    height: 30px;
    display: grid;
    place-items: center;
    margin-bottom: 10px;
    border-radius: 50%;
    border: 1px solid rgba(255,255,255,.18);
    font-size: .78rem;
    font-weight: 900;
}

.customer-progress-step strong,
.customer-progress-step small {
    display: block;
}

.customer-progress-step small {
    margin-top: 5px;
    color: var(--muted);
    line-height: 1.35;
}

.customer-progress-step.done {
    opacity: 1;
    border-color: rgba(87,169,107,.32);
    background: rgba(87,169,107,.06);
}

.customer-progress-step.done > span {
    color: #b9e8c4;
    border-color: rgba(87,169,107,.38);
    background: rgba(87,169,107,.12);
}

.customer-order-info-grid {
    display: grid;
    grid-template-columns: repeat(2,1fr);
    gap: 11px;
    margin: 25px 0;
}

.customer-order-info-grid > div {
    padding: 15px;
    border: 1px solid var(--border);
    border-radius: 15px;
    background: #0f1217;
}

.customer-order-info-grid span {
    display: block;
    color: var(--muted);
    font-size: .75rem;
    text-transform: uppercase;
    letter-spacing: .06em;
}

.customer-order-info-grid strong {
    display: block;
    margin-top: 4px;
}

.customer-order-items {
    overflow: hidden;
    border: 1px solid var(--border);
    border-radius: 15px;
}

.customer-order-items > div {
    display: flex;
    justify-content: space-between;
    gap: 18px;
    padding: 12px 15px;
    border-bottom: 1px solid var(--border);
}

.customer-order-items > div:last-child {
    border-bottom: 0;
}

.order-status-cancelled {
    margin: 0 0 22px;
}

/* Admin V12 Dashboard */
.admin-dashboard-actions {
    display: flex;
    gap: 9px;
    flex-wrap: wrap;
}

.dashboard-kpi-grid {
    display: grid;
    grid-template-columns: repeat(4,1fr);
    gap: 14px;
    margin-bottom: 22px;
}

.dashboard-kpi {
    min-height: 145px;
    padding: 22px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    border: 1px solid var(--border);
    border-radius: 20px;
    background: var(--surface);
    box-shadow: var(--shadow);
}

.dashboard-kpi > span {
    color: var(--muted);
    font-size: .84rem;
    font-weight: 700;
}

.dashboard-kpi > strong {
    margin: 8px 0;
    font-size: 2.45rem;
    line-height: 1;
}

.dashboard-kpi > small {
    color: var(--muted);
}

.dashboard-kpi:hover {
    border-color: var(--border-strong);
    transform: translateY(-1px);
}

.dashboard-kpi-warning {
    border-color: rgba(220,163,74,.34);
    background: linear-gradient(145deg,rgba(220,163,74,.08),var(--surface));
}

.dashboard-pickup-banner {
    margin-bottom: 22px;
    padding: 20px 22px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 22px;
    border: 1px solid var(--border-strong);
    border-radius: 19px;
    background: rgba(220,163,74,.055);
}

.dashboard-pickup-banner strong,
.dashboard-pickup-banner span {
    display: block;
}

.dashboard-pickup-banner strong {
    font-size: 1.15rem;
}

.dashboard-pickup-banner span {
    margin-top: 4px;
    color: var(--muted);
    font-size: .88rem;
}

.dashboard-columns {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 22px;
}

.dashboard-panel {
    border: 1px solid var(--border);
    border-radius: 22px;
    background: var(--surface);
    box-shadow: var(--shadow);
    overflow: hidden;
}

.dashboard-panel-heading {
    padding: 22px 22px 16px;
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 20px;
    border-bottom: 1px solid var(--border);
}

.dashboard-panel-heading h2 {
    margin: 0;
}

.dashboard-panel-heading > a {
    color: var(--accent-light);
    font-size: .84rem;
    font-weight: 800;
}

.dashboard-list {
    display: flex;
    flex-direction: column;
}

.dashboard-list-item {
    padding: 15px 18px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 20px;
    border-bottom: 1px solid var(--border);
}

.dashboard-list-item:last-child {
    border-bottom: 0;
}

.dashboard-list-item:hover {
    background: rgba(255,255,255,.025);
}

.dashboard-list-item strong,
.dashboard-list-item span,
.dashboard-list-item small {
    display: block;
}

.dashboard-list-item > div:first-child span {
    margin-top: 4px;
    color: var(--muted);
    font-size: .84rem;
}

.dashboard-list-meta {
    flex-shrink: 0;
    text-align: right;
}

.dashboard-list-meta small {
    margin-top: 5px;
    color: var(--muted);
}

.admin-empty.compact {
    padding: 28px 20px;
}

.dashboard-quicklinks {
    display: grid;
    grid-template-columns: repeat(4,1fr);
    gap: 12px;
    margin-top: 22px;
}

.dashboard-quicklinks > a {
    padding: 17px;
    border: 1px solid var(--border);
    border-radius: 17px;
    background: #101318;
}

.dashboard-quicklinks strong,
.dashboard-quicklinks span {
    display: block;
}

.dashboard-quicklinks span {
    margin-top: 5px;
    color: var(--muted);
    font-size: .78rem;
}

.dashboard-quicklinks > a:hover {
    border-color: var(--border-strong);
}

@media (max-width: 1050px) {
    .dashboard-kpi-grid,
    .dashboard-quicklinks {
        grid-template-columns: repeat(2,1fr);
    }

    .dashboard-columns,
    .order-lookup-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 700px) {
    .customer-order-progress,
    .customer-order-info-grid {
        grid-template-columns: 1fr;
    }

    .dashboard-kpi-grid,
    .dashboard-quicklinks {
        grid-template-columns: 1fr;
    }

    .dashboard-pickup-banner,
    .dashboard-list-item,
    .order-status-heading {
        align-items: flex-start;
        flex-direction: column;
    }

    .dashboard-list-meta {
        text-align: left;
    }

    .order-customer-status,
    .order-lookup-card,
    .order-lookup-info {
        padding: 22px;
    }
}


/* =========================================================
   V13 – SILVESTER ABHOLMODUS
   ========================================================= */
.pickup-mode-header-actions{display:flex;flex-wrap:wrap;gap:9px}.pickup-date-tabs{display:flex;gap:9px;overflow-x:auto;padding-bottom:8px;margin-bottom:18px}.pickup-date-tabs a{min-width:145px;padding:13px 15px;border:1px solid var(--border);border-radius:15px;background:var(--surface);flex:0 0 auto}.pickup-date-tabs strong,.pickup-date-tabs span{display:block}.pickup-date-tabs span{margin-top:4px;color:var(--muted);font-size:.77rem}.pickup-date-tabs a.active{border-color:var(--accent);background:rgba(220,163,74,.09)}.pickup-mode-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:18px}.pickup-mode-kpis>div{min-height:112px;padding:18px;border:1px solid var(--border);border-radius:18px;background:var(--surface)}.pickup-mode-kpis span,.pickup-mode-kpis strong,.pickup-mode-kpis small{display:block}.pickup-mode-kpis span{color:var(--muted);font-size:.78rem}.pickup-mode-kpis strong{margin-top:7px;font-size:2rem}.pickup-mode-kpis small{margin-top:2px;color:var(--muted)}.pickup-mode-kpis .warning{border-color:rgba(220,163,74,.36);background:rgba(220,163,74,.07)}.pickup-mode-filter{display:grid;grid-template-columns:minmax(190px,.7fr) minmax(280px,1.3fr) auto auto;gap:10px;align-items:end;margin-bottom:18px;padding:16px;border:1px solid var(--border);border-radius:18px;background:var(--surface)}.pickup-mode-filter label{display:flex;flex-direction:column;gap:7px}.pickup-mode-filter label>span{color:var(--muted);font-size:.73rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.pickup-mode-filter select,.pickup-mode-filter input{width:100%;min-height:48px;padding:11px 13px;border:1px solid rgba(255,255,255,.12);border-radius:13px;background:#0f1217;color:var(--text);font:inherit}.pickup-order-list{display:grid;gap:12px}.pickup-order-card{overflow:hidden;border:1px solid var(--border);border-radius:19px;background:var(--surface);box-shadow:0 10px 30px rgba(0,0,0,.13)}.pickup-order-card.is-collected{opacity:.66;border-color:rgba(87,169,107,.28)}.pickup-order-main{display:grid;grid-template-columns:92px minmax(0,1fr) auto;gap:18px;align-items:center;padding:19px}.pickup-order-time{text-align:center;padding:12px 8px;border:1px solid var(--border);border-radius:14px;background:#0f1217}.pickup-order-time strong,.pickup-order-time span{display:block}.pickup-order-time strong{font-size:1.25rem}.pickup-order-time span{margin-top:3px;color:var(--muted);font-size:.72rem}.pickup-order-customer .eyebrow{margin-bottom:4px}.pickup-order-customer h2{margin:0;font-size:1.35rem}.pickup-contact-row{display:flex;flex-wrap:wrap;gap:7px;align-items:center;margin-top:6px;color:var(--muted);font-size:.85rem}.pickup-contact-row a{color:var(--accent-light)}.pickup-items-summary{margin:10px 0 0;color:#c7cbd2;font-size:.82rem;line-height:1.45}.pickup-order-state{display:flex;flex-direction:column;gap:7px;align-items:flex-end}.pickup-order-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding:12px 19px;border-top:1px solid var(--border);background:rgba(255,255,255,.018)}.pickup-order-actions form{margin:0}.pickup-action-button,.pickup-action-done,.pickup-detail-link{min-height:40px;display:inline-flex;align-items:center;justify-content:center;padding:8px 12px;border-radius:11px;font:inherit;font-size:.79rem;font-weight:850}.pickup-action-button{border:1px solid var(--border);cursor:pointer;background:#12161c;color:var(--text)}.pickup-action-button:hover{border-color:var(--accent)}.pickup-action-button.paid{border-color:rgba(87,169,107,.30);color:#b9e8c4}.pickup-action-button.ready{border-color:rgba(149,113,209,.32);color:#d7c3ff}.pickup-action-button.collected{border-color:rgba(220,163,74,.35);color:var(--accent-light)}.pickup-action-button:disabled{opacity:.35;cursor:not-allowed}.pickup-action-done{color:#b9e8c4;border:1px solid rgba(87,169,107,.24);background:rgba(87,169,107,.06)}.pickup-action-done.collected{color:var(--accent-light);border-color:rgba(220,163,74,.25);background:rgba(220,163,74,.06)}.pickup-detail-link{margin-left:auto;color:var(--accent-light)}@media(max-width:1050px){.pickup-mode-kpis{grid-template-columns:repeat(2,1fr)}.pickup-mode-filter{grid-template-columns:1fr 1fr}.pickup-order-main{grid-template-columns:82px minmax(0,1fr)}.pickup-order-state{grid-column:1/-1;flex-direction:row;align-items:flex-start;padding-left:100px}}@media(max-width:700px){.pickup-mode-kpis,.pickup-mode-filter{grid-template-columns:1fr}.pickup-mode-filter .button{width:100%}.pickup-order-main{grid-template-columns:1fr}.pickup-order-time{width:110px;text-align:left}.pickup-order-state{grid-column:auto;padding-left:0;flex-wrap:wrap}.pickup-order-actions{align-items:stretch;flex-direction:column}.pickup-order-actions form,.pickup-order-actions button,.pickup-action-done,.pickup-detail-link{width:100%;margin-left:0}}


/* =========================================================
   V14 – ÖFFENTLICHE WEBSITE / LEISTUNGSSEITEN
   ========================================================= */

/* Header dropdown */
.nav-dropdown { position:relative; display:flex; align-items:stretch; }
.nav-dropdown-trigger { border:0; background:transparent; color:#dedede; font:inherit; cursor:pointer; padding:30px 0 28px; display:flex; align-items:center; gap:6px; position:relative; }
.nav-dropdown-trigger::after { content:""; position:absolute; left:0; right:100%; bottom:19px; height:1px; background:var(--accent); transition:right .2s ease; }
.nav-dropdown:hover .nav-dropdown-trigger::after,.nav-dropdown:focus-within .nav-dropdown-trigger::after,.nav-dropdown.active .nav-dropdown-trigger::after { right:0; }
.nav-dropdown.active .nav-dropdown-trigger,.nav-dropdown:hover .nav-dropdown-trigger,.nav-dropdown:focus-within .nav-dropdown-trigger { color:var(--accent-light); }
.nav-dropdown-menu { position:absolute; z-index:50; top:72px; left:50%; width:360px; padding:9px; opacity:0; visibility:hidden; transform:translate(-50%,8px); border:1px solid var(--border); border-radius:18px; background:rgba(13,15,19,.98); box-shadow:0 24px 70px rgba(0,0,0,.45); backdrop-filter:blur(18px); transition:.18s ease; }
.nav-dropdown:hover .nav-dropdown-menu,.nav-dropdown:focus-within .nav-dropdown-menu,.nav-dropdown.is-open .nav-dropdown-menu { opacity:1; visibility:visible; transform:translate(-50%,0); }
.nav-dropdown-menu a { display:block; padding:12px 13px; border-radius:11px; }
.nav-dropdown-menu a:hover { background:rgba(231,180,88,.07); }
.nav-dropdown-menu strong,.nav-dropdown-menu small { display:block; }
.nav-dropdown-menu strong { color:#f5f5f4; font-size:.89rem; }
.nav-dropdown-menu small { margin-top:3px; color:var(--muted); font-size:.72rem; line-height:1.35; }

/* Startseite */
.home-intro-grid { display:grid; grid-template-columns:1fr .75fr; gap:70px; align-items:end; margin-bottom:42px; }
.home-intro-grid h2,.about-statement h2 { margin:0; font-size:clamp(2.3rem,4.5vw,4.4rem); line-height:1; letter-spacing:-.045em; }
.home-intro-grid>p { margin:0; color:var(--muted); font-size:1.08rem; line-height:1.7; }
.public-service-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:18px; }
.public-service-card { position:relative; min-height:360px; overflow:hidden; border:1px solid var(--border); border-radius:24px; background:#101216; }
.public-service-card img { width:100%; height:100%; position:absolute; inset:0; object-fit:cover; transition:transform .4s ease; }
.public-service-card::after { content:""; position:absolute; inset:0; background:linear-gradient(to top,rgba(6,7,9,.94) 0%,rgba(6,7,9,.42) 48%,rgba(6,7,9,.08) 75%); }
.public-service-card:hover img { transform:scale(1.035); }
.public-service-overlay { position:absolute; z-index:2; left:24px; right:24px; bottom:24px; }
.public-service-overlay small,.public-service-overlay strong,.public-service-overlay em { display:block; }
.public-service-overlay small { color:var(--accent-light); font-weight:900; letter-spacing:.12em; }
.public-service-overlay strong { margin-top:6px; color:#fff; font-size:1.7rem; }
.public-service-overlay em { margin-top:6px; color:#d7d9dd; font-style:normal; font-size:.88rem; }
.process-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:14px; }
.process-card { padding:24px; border:1px solid var(--border); border-radius:20px; background:var(--surface); }
.process-card>span { width:42px; height:42px; display:grid; place-items:center; border:1px solid var(--border-strong); border-radius:50%; color:var(--accent-light); font-weight:900; }
.process-card h3 { margin:22px 0 8px; font-size:1.25rem; }
.process-card p { margin:0; color:var(--muted); line-height:1.55; }
.compact-actions { margin-top:25px; }
.shop-preview-live .shop-badge { background:rgba(87,169,107,.12); color:#b9e8c4; }

/* Public service pages */
.service-page-hero { padding:65px 0 76px; border-bottom:1px solid var(--border); background:radial-gradient(circle at 15% 10%,rgba(231,180,88,.06),transparent 35%),var(--bg-soft); }
.service-page-hero-grid { display:grid; grid-template-columns:minmax(0,1fr) minmax(380px,.78fr); gap:52px; align-items:center; }
.service-page-hero-copy h1 { margin:0; font-size:clamp(3rem,6vw,6.1rem); line-height:.95; letter-spacing:-.052em; }
.service-page-hero-copy>p:not(.eyebrow) { max-width:700px; margin:25px 0 0; color:#c4c7cd; font-size:1.12rem; line-height:1.65; }
.service-page-hero-media { position:relative; overflow:hidden; border:1px solid var(--border); border-radius:26px; background:#0e1014; box-shadow:var(--shadow); }
.service-page-hero-media img { width:100%; aspect-ratio:4/5; object-fit:cover; display:block; }
.service-page-hero-media::after { content:""; position:absolute; inset:0; background:linear-gradient(to top,rgba(8,9,11,.35),transparent 35%); pointer-events:none; }
.service-page-hero-media span { position:absolute; z-index:2; left:14px; bottom:14px; padding:7px 10px; border-radius:999px; background:rgba(5,6,8,.72); color:rgba(255,255,255,.68); font-size:.68rem; backdrop-filter:blur(8px); }
.feature-card-grid { display:grid; gap:16px; }
.feature-card-grid.three { grid-template-columns:repeat(3,1fr); }
.feature-card { min-height:260px; display:flex; flex-direction:column; padding:27px; border:1px solid var(--border); border-radius:21px; background:linear-gradient(145deg,rgba(255,255,255,.045),rgba(255,255,255,.015)); }
a.feature-card:hover { border-color:var(--border-strong); transform:translateY(-2px); }
.feature-card>span { color:var(--accent); font-size:.75rem; font-weight:900; letter-spacing:.13em; }
.feature-card h3 { margin:auto 0 10px; font-size:1.45rem; }
.feature-card p { margin:0; color:var(--muted); line-height:1.6; }
.feature-card em { margin-top:20px; color:var(--accent-light); font-style:normal; font-weight:800; }
.editorial-split { align-items:stretch; }
.editorial-split.reverse>div:first-child { order:1; }
.editorial-image { overflow:hidden; min-height:520px; border:1px solid var(--border); border-radius:24px; background:#0e1014; }
.editorial-image img { width:100%; height:100%; object-fit:cover; }
.section-tight { padding-top:35px; }
.public-cta { display:flex; align-items:center; justify-content:space-between; gap:35px; padding:36px 40px; border:1px solid rgba(231,180,88,.25); border-radius:24px; background:radial-gradient(circle at 12% 50%,rgba(231,180,88,.11),transparent 34%),var(--surface); }
.public-cta h2 { margin:0; font-size:clamp(2rem,4vw,3.35rem); line-height:1.04; letter-spacing:-.04em; }
.public-cta p:not(.eyebrow) { max-width:720px; margin-bottom:0; color:var(--muted); }
.public-cta>.button { flex:0 0 auto; }
.crosslink-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:12px; }
.crosslink-grid a { padding:20px; border:1px solid var(--border); border-radius:17px; background:var(--surface); }
.crosslink-grid a:hover { border-color:var(--border-strong); }
.crosslink-grid strong,.crosslink-grid span { display:block; }
.crosslink-grid span { margin-top:5px; color:var(--accent-light); font-size:.83rem; }
.crosslink-grid.compact { margin-top:25px; }
.about-statement { max-width:1050px; }
.about-statement>p:last-child { max-width:780px; color:var(--muted); font-size:1.1rem; line-height:1.7; }
.value-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; }
.value-card { padding:30px; border:1px solid var(--border); border-radius:22px; background:var(--surface); }
.value-card>span { color:var(--accent); font-size:.75rem; font-weight:900; letter-spacing:.13em; }
.value-card h3 { margin:28px 0 9px; font-size:1.6rem; }
.value-card p { margin:0; color:var(--muted); line-height:1.6; }

/* Contact */
.contact-path-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; }
.contact-path-card { min-height:300px; display:flex; flex-direction:column; padding:28px; border:1px solid var(--border); border-radius:22px; background:var(--surface); }
.contact-path-card.primary { border-color:rgba(231,180,88,.32); background:linear-gradient(145deg,rgba(231,180,88,.09),var(--surface)); }
.contact-path-card>span { color:var(--accent); font-size:.75rem; font-weight:900; }
.contact-path-card h2 { margin:auto 0 10px; font-size:1.65rem; }
.contact-path-card p { margin:0; color:var(--muted); line-height:1.6; }
.contact-path-card em { margin-top:20px; color:var(--accent-light); font-style:normal; font-weight:800; }
.contact-info-layout { display:grid; grid-template-columns:1fr .72fr; gap:40px; align-items:start; }
.contact-info-layout h2 { margin:0; font-size:clamp(2.1rem,4vw,3.6rem); line-height:1.03; }
.contact-placeholder-list { margin-top:28px; overflow:hidden; border:1px solid var(--border); border-radius:18px; }
.contact-placeholder-list>div { display:flex; justify-content:space-between; gap:20px; padding:15px 17px; border-bottom:1px solid var(--border); }
.contact-placeholder-list>div:last-child { border-bottom:0; }
.contact-placeholder-list span { color:var(--muted); }
.contact-next-steps { padding:29px; border:1px solid var(--border); border-radius:22px; background:var(--surface); }
.contact-next-steps h3 { margin:0; font-size:1.8rem; }
.contact-next-steps p:not(.eyebrow) { color:var(--muted); }
.contact-next-steps .button { width:100%; margin-top:9px; }

/* Footer */
.footer-grid-v14 { grid-template-columns:1.7fr 1fr 1fr 1fr; }
.footer-primary-link { display:inline-block; margin-top:12px; color:var(--accent-light); font-weight:800; }

@media(max-width:1180px){
    .main-nav{gap:13px}.main-nav>a:not(.nav-cta){font-size:.84rem}.nav-dropdown-trigger{font-size:.84rem}.brand-text strong{max-width:220px}
}
@media(max-width:980px){
    .nav-dropdown{display:block;width:100%}.nav-dropdown-trigger{width:100%;justify-content:space-between;padding:13px 4px;text-align:left}.nav-dropdown-trigger::after{display:none}.nav-dropdown-menu{position:static;width:100%;padding:0 0 4px 13px;opacity:1;visibility:visible;transform:none;border:0;border-radius:0;background:transparent;box-shadow:none;backdrop-filter:none;display:none}.nav-dropdown.is-open .nav-dropdown-menu{display:block}.nav-dropdown-menu a{padding:9px 8px;border-left:1px solid var(--border);border-radius:0}.nav-dropdown-menu small{display:none}
    .home-intro-grid,.service-page-hero-grid,.contact-info-layout{grid-template-columns:1fr;gap:32px}.service-page-hero-media{max-width:720px}.service-page-hero-media img{aspect-ratio:16/10}.process-grid{grid-template-columns:repeat(2,1fr)}.feature-card-grid.three,.contact-path-grid,.value-grid{grid-template-columns:1fr 1fr}.footer-grid-v14{grid-template-columns:1fr 1fr}.editorial-image{min-height:400px}
}
@media(max-width:700px){
    .public-service-grid,.process-grid,.feature-card-grid.three,.contact-path-grid,.value-grid,.crosslink-grid{grid-template-columns:1fr}.public-service-card{min-height:300px}.home-intro-grid{margin-bottom:28px}.service-page-hero{padding:42px 0 55px}.service-page-hero-copy h1{font-size:clamp(2.7rem,13vw,4.5rem)}.service-page-hero-media span{display:none}.editorial-split.reverse>div:first-child{order:0}.editorial-image{min-height:300px}.public-cta{align-items:flex-start;flex-direction:column;padding:28px}.public-cta>.button{width:100%}.footer-grid-v14{grid-template-columns:1fr}.contact-placeholder-list>div{align-items:flex-start;flex-direction:column;gap:4px}
}


/* =========================================================
   V14.1 – STARTSEITEN-HERO
   - dieselbe /assets/images/hero.jpg für beide Darstellungen
   - große Hintergrundversion absichtlich unscharf
   - kleinere Version links scharf mit dünnem Rahmen
   - Textkasten weiter rechts
   ========================================================= */

.hero.hero-with-image.hero-v14-1 {
    min-height: 760px;
    background: #08090b;
    background-image: none !important;
    background-attachment: scroll !important;
}

/* Unscharfes großes Hero-Bild im Hintergrund */
.hero.hero-with-image.hero-v14-1::before {
    content: "" !important;
    display: block !important;
    position: absolute;
    z-index: 0;
    inset: -28px;
    background-image: url('/assets/images/hero.jpg');
    background-position: center 45%;
    background-size: cover;
    background-repeat: no-repeat;
    filter: blur(12px);
    transform: scale(1.055);
    opacity: .94;
    pointer-events: none;
}

/* Kein zusätzlicher Gesamtfilter über dem Bild */
.hero.hero-with-image.hero-v14-1::after {
    display: none !important;
}

.hero.hero-with-image.hero-v14-1 .hero-content {
    position: relative;
    z-index: 2;
    isolation: auto;
    padding-block: 95px 105px;
}

/* Alte lokale Hintergrundfläche aus früheren Versionen abschalten */
.hero.hero-with-image.hero-v14-1 .hero-content::before {
    content: none !important;
    display: none !important;
}

.hero-v14-1-layout {
    display: grid;
    grid-template-columns: minmax(300px, .78fr) minmax(560px, 1.22fr);
    gap: clamp(34px, 5vw, 78px);
    align-items: center;
}

/* Kleine scharfe Version derselben hero.jpg */
.hero-focus-card {
    width: 100%;
    max-width: 480px;
    margin: 0;
    justify-self: start;
    overflow: hidden;
    border: 1px solid rgba(255,255,255,.48);
    border-radius: 20px;
    background: #0b0d10;
    box-shadow: 0 26px 70px rgba(0,0,0,.38);
}

.hero-focus-card img {
    display: block;
    width: 100%;
    aspect-ratio: 16 / 10;
    object-fit: cover;
    object-position: center;
}

/* Der eigentliche Textkasten sitzt jetzt rechts */
.hero-text-panel {
    width: 100%;
    max-width: 720px;
    justify-self: end;
    padding: clamp(28px, 3.4vw, 48px);
    border: 1px solid rgba(255,255,255,.13);
    border-radius: 26px;
    background: rgba(5,6,8,.62);
    backdrop-filter: blur(11px);
    -webkit-backdrop-filter: blur(11px);
    box-shadow: 0 26px 75px rgba(0,0,0,.34);
}

.hero.hero-with-image.hero-v14-1 .hero-text-panel h1 {
    max-width: 690px;
    font-size: clamp(2.9rem, 5.8vw, 6rem);
}

.hero.hero-with-image.hero-v14-1 .hero-copy {
    max-width: 620px;
    color: #f0f1f3;
    text-shadow: 0 2px 14px rgba(0,0,0,.72);
}

.hero.hero-with-image.hero-v14-1 .hero-meta {
    color: #f0f1f3;
    text-shadow: 0 2px 14px rgba(0,0,0,.72);
}

.hero.hero-with-image.hero-v14-1 h1,
.hero.hero-with-image.hero-v14-1 .eyebrow {
    text-shadow: 0 3px 18px rgba(0,0,0,.78);
}

@media (max-width: 1080px) {
    .hero.hero-with-image.hero-v14-1 {
        min-height: auto;
    }

    .hero-v14-1-layout {
        grid-template-columns: minmax(250px, .68fr) minmax(0, 1.32fr);
        gap: 30px;
    }

    .hero-focus-card {
        max-width: 390px;
    }

    .hero-text-panel {
        padding: 30px;
    }
}

@media (max-width: 820px) {
    .hero-v14-1-layout {
        grid-template-columns: 1fr;
    }

    .hero-focus-card {
        width: min(100%, 520px);
        max-width: none;
        justify-self: center;
        order: 2;
    }

    .hero-text-panel {
        max-width: none;
        justify-self: stretch;
        order: 1;
    }
}

@media (max-width: 650px) {
    .hero.hero-with-image.hero-v14-1 .hero-content {
        padding-block: 48px 60px;
    }

    .hero.hero-with-image.hero-v14-1::before {
        filter: blur(9px);
        inset: -18px;
    }

    .hero-text-panel {
        padding: 23px 20px;
        border-radius: 20px;
    }

    .hero-focus-card {
        border-radius: 16px;
    }

    .hero-focus-card img {
        aspect-ratio: 16 / 9;
    }
}


/* =========================================================
   V14.2 – SCHARFES HERO-BILD GRÖSSER
   ========================================================= */

.hero-v14-1-layout {
    grid-template-columns: minmax(420px, 1fr) minmax(520px, 1fr);
    gap: clamp(28px, 4vw, 58px);
}

.hero-focus-card {
    width: 100%;
    max-width: 620px;
}

.hero-focus-card img {
    aspect-ratio: 16 / 10;
}

@media (max-width: 1180px) {
    .hero-v14-1-layout {
        grid-template-columns: minmax(360px, .9fr) minmax(0, 1.1fr);
        gap: 28px;
    }

    .hero-focus-card {
        max-width: 540px;
    }
}

@media (max-width: 900px) {
    .hero-v14-1-layout {
        grid-template-columns: 1fr;
    }

    .hero-focus-card {
        width: min(100%, 680px);
        max-width: none;
        justify-self: center;
        order: 2;
    }

    .hero-text-panel {
        order: 1;
    }
}

/* =========================================================
   V15 – GALERIE, MEDIA, FOOTER-FEINSCHLIFF
   ========================================================= */

.gallery-page-hero {
    min-height: 430px;
    display: flex;
    align-items: center;
    background:
        radial-gradient(circle at 78% 18%, rgba(220,163,74,.10), transparent 28%),
        linear-gradient(135deg,#0c0e12,#08090b);
}

.gallery-page-hero .container {
    max-width: 920px;
    margin-left: max(calc((100vw - var(--container, 1220px))/2), 24px);
}

.gallery-page-hero h1 {
    max-width: 850px;
}

.gallery-page-hero p:not(.eyebrow) {
    max-width: 760px;
    color: var(--muted);
    font-size: 1.05rem;
}

.gallery-filter {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 24px;
}

.gallery-filter button {
    min-height: 42px;
    padding: 9px 14px;
    border: 1px solid var(--border);
    border-radius: 999px;
    background: var(--surface);
    color: var(--muted);
    font: inherit;
    font-size: .82rem;
    font-weight: 800;
    cursor: pointer;
}

.gallery-filter button:hover,
.gallery-filter button.active {
    color: #101114;
    border-color: var(--accent);
    background: var(--accent-light);
}

.gallery-masonry-grid {
    display: grid;
    grid-template-columns: repeat(3,1fr);
    gap: 14px;
}

.gallery-masonry-item,
.gallery-card {
    position: relative;
    display: block;
    overflow: hidden;
    border: 1px solid rgba(255,255,255,.10);
    border-radius: 20px;
    background: #0d0f13;
    box-shadow: 0 14px 38px rgba(0,0,0,.18);
}

.gallery-masonry-item:nth-child(5n+1) {
    grid-row: span 2;
}

.gallery-masonry-item img {
    width: 100%;
    height: 100%;
    min-height: 320px;
    object-fit: cover;
    transition: transform .35s ease;
}

.gallery-masonry-item:nth-child(5n+1) img {
    min-height: 654px;
}

.gallery-masonry-item > span,
.gallery-card-overlay {
    position: absolute;
    inset: auto 0 0;
    padding: 46px 18px 17px;
    display: flex;
    flex-direction: column;
    gap: 4px;
    background: linear-gradient(transparent,rgba(5,6,8,.93));
}

.gallery-masonry-item small,
.gallery-card-overlay small {
    color: var(--accent-light);
    font-size: .68rem;
    font-weight: 900;
    letter-spacing: .09em;
    text-transform: uppercase;
}

.gallery-masonry-item strong,
.gallery-card-overlay strong {
    color: #fff;
    font-size: 1.08rem;
}

.gallery-masonry-item em,
.gallery-card-overlay em {
    color: #c8cbd0;
    font-size: .78rem;
    font-style: normal;
    line-height: 1.4;
}

.gallery-masonry-item:hover img,
.gallery-card:hover img {
    transform: scale(1.035);
}

.gallery-masonry-item[hidden] {
    display: none !important;
}

.gallery-strip-heading {
    align-items: end;
}

.gallery-strip-grid {
    display: grid;
    grid-template-columns: repeat(3,1fr);
    gap: 14px;
}

.gallery-card {
    min-height: 315px;
}

.gallery-card img {
    width: 100%;
    height: 315px;
    object-fit: cover;
    transition: transform .35s ease;
}

.media-video-grid {
    display: grid;
    grid-template-columns: repeat(3,1fr);
    gap: 16px;
}

.media-video-card {
    overflow: hidden;
    border: 1px solid var(--border);
    border-radius: 20px;
    background: var(--surface);
}

.media-video-thumb {
    position: relative;
    overflow: hidden;
}

.media-video-thumb img {
    width: 100%;
    aspect-ratio: 16/9;
    object-fit: cover;
    opacity: .76;
}

.media-video-thumb span {
    position: absolute;
    inset: 50% auto auto 50%;
    width: 58px;
    height: 58px;
    display: grid;
    place-items: center;
    transform: translate(-50%,-50%);
    border: 1px solid rgba(255,255,255,.45);
    border-radius: 50%;
    background: rgba(7,8,10,.62);
    color: #fff;
    font-size: 1.15rem;
}

.media-video-card > div:last-child {
    padding: 20px;
}

.media-video-card small {
    color: var(--accent-light);
    font-weight: 900;
    letter-spacing: .08em;
}

.media-video-card h3 {
    margin: 7px 0;
}

.media-video-card p {
    margin: 0 0 11px;
    color: var(--muted);
}

.media-video-card b {
    color: #d2d4d8;
    font-size: .77rem;
}

/* Lightbox */
body.lightbox-open {
    overflow: hidden;
}

.gallery-lightbox {
    position: fixed;
    z-index: 9999;
    inset: 0;
    display: none;
    place-items: center;
    padding: 24px;
}

.gallery-lightbox.is-open {
    display: grid;
}

.gallery-lightbox-backdrop {
    position: absolute;
    inset: 0;
    background: rgba(2,3,5,.92);
    backdrop-filter: blur(8px);
}

.gallery-lightbox-dialog {
    position: relative;
    z-index: 1;
    width: min(1180px,94vw);
    max-height: 92vh;
    display: grid;
    grid-template-columns: 54px minmax(0,1fr) 54px;
    align-items: center;
}

.gallery-lightbox-dialog figure {
    margin: 0;
    overflow: hidden;
    border: 1px solid rgba(255,255,255,.16);
    border-radius: 22px;
    background: #08090b;
    box-shadow: 0 35px 110px rgba(0,0,0,.62);
}

.gallery-lightbox-dialog figure img {
    width: 100%;
    max-height: 76vh;
    display: block;
    object-fit: contain;
    background: #050608;
}

.gallery-lightbox-dialog figcaption {
    padding: 15px 18px 17px;
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.gallery-lightbox-dialog figcaption strong {
    color: #fff;
}

.gallery-lightbox-dialog figcaption span {
    color: var(--muted);
    font-size: .85rem;
}

.gallery-lightbox-close,
.gallery-lightbox-nav {
    border: 1px solid rgba(255,255,255,.16);
    background: rgba(14,16,20,.78);
    color: #fff;
    cursor: pointer;
}

.gallery-lightbox-close {
    position: absolute;
    z-index: 3;
    top: 12px;
    right: 66px;
    width: 42px;
    height: 42px;
    border-radius: 50%;
    font-size: 1.65rem;
}

.gallery-lightbox-nav {
    width: 44px;
    height: 58px;
    border-radius: 13px;
    font-size: 2rem;
}

.gallery-lightbox-prev { justify-self: start; }
.gallery-lightbox-next { justify-self: end; }

/* Globaler CTA + Footer */
.global-footer-cta {
    padding: 55px 0;
    border-top: 1px solid var(--border);
    background:
        radial-gradient(circle at 82% 20%,rgba(220,163,74,.10),transparent 25%),
        #0d0f13;
}

.global-footer-cta-inner {
    display: grid;
    grid-template-columns: minmax(0,1fr) auto;
    gap: 34px;
    align-items: center;
}

.global-footer-cta h2 {
    max-width: 780px;
    margin: 5px 0 10px;
}

.global-footer-cta p:not(.eyebrow) {
    max-width: 720px;
    margin: 0;
    color: var(--muted);
}

.global-footer-cta-actions {
    display: flex;
    gap: 9px;
    flex-wrap: wrap;
    justify-content: flex-end;
}

.site-footer-v15 {
    border-top: 1px solid rgba(255,255,255,.08);
}

@media (max-width: 980px) {
    .gallery-masonry-grid,
    .gallery-strip-grid,
    .media-video-grid {
        grid-template-columns: repeat(2,1fr);
    }

    .gallery-masonry-item:nth-child(5n+1) {
        grid-row: auto;
    }

    .gallery-masonry-item:nth-child(5n+1) img,
    .gallery-masonry-item img {
        min-height: 330px;
    }

    .global-footer-cta-inner {
        grid-template-columns: 1fr;
    }

    .global-footer-cta-actions {
        justify-content: flex-start;
    }
}

@media (max-width: 650px) {
    .gallery-masonry-grid,
    .gallery-strip-grid,
    .media-video-grid {
        grid-template-columns: 1fr;
    }

    .gallery-masonry-item img,
    .gallery-masonry-item:nth-child(5n+1) img,
    .gallery-card img {
        min-height: 270px;
        height: 270px;
    }

    .gallery-filter {
        flex-wrap: nowrap;
        overflow-x: auto;
        padding-bottom: 7px;
    }

    .gallery-filter button {
        flex: 0 0 auto;
    }

    .gallery-lightbox {
        padding: 12px;
    }

    .gallery-lightbox-dialog {
        width: 100%;
        grid-template-columns: 1fr;
    }

    .gallery-lightbox-nav {
        position: absolute;
        z-index: 4;
        top: 44%;
        width: 42px;
        height: 52px;
    }

    .gallery-lightbox-prev { left: 8px; }
    .gallery-lightbox-next { right: 8px; }

    .gallery-lightbox-close {
        right: 10px;
        top: 10px;
    }

    .global-footer-cta-actions,
    .global-footer-cta-actions .button {
        width: 100%;
    }
}


/* =========================================================
   V16 – FAQ, SEO-/LEGAL-VORBEREITUNG, KONTAKT, 404
   ========================================================= */
:focus-visible{outline:2px solid var(--accent-light);outline-offset:3px}
.faq-page-layout{display:grid;grid-template-columns:320px minmax(0,1fr);gap:30px;align-items:start}.faq-side-card{position:sticky;top:110px;padding:25px;border:1px solid var(--border);border-radius:22px;background:var(--surface);box-shadow:var(--shadow)}.faq-side-card h2{margin-top:0}.faq-side-card p:not(.eyebrow){color:var(--muted)}.faq-side-card .button{width:100%;margin-top:9px}.faq-groups{display:grid;gap:38px}.faq-group>h2{margin-top:0}.faq-list{display:grid;gap:10px}.faq-item{overflow:hidden;border:1px solid var(--border);border-radius:16px;background:var(--surface)}.faq-item summary{min-height:64px;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:17px 19px;cursor:pointer;color:var(--text);font-weight:800;list-style:none}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary span{color:var(--accent-light);font-size:1.35rem;transition:transform .2s ease}.faq-item[open] summary span{transform:rotate(45deg)}.faq-item>div{padding:0 19px 18px;color:var(--muted);line-height:1.65}.faq-item>div p{margin:0}
.section-faq-teaser{background:radial-gradient(circle at 15% 25%,rgba(220,163,74,.09),transparent 25%),var(--bg)}.faq-teaser-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:40px;align-items:center}.faq-teaser-list{display:grid;gap:10px}.faq-teaser-list a{display:grid;grid-template-columns:48px minmax(0,1fr) auto;gap:14px;align-items:center;padding:16px;border:1px solid var(--border);border-radius:16px;background:var(--surface)}.faq-teaser-list span{width:38px;height:38px;display:grid;place-items:center;border-radius:50%;color:var(--accent-light);background:rgba(220,163,74,.09);font-weight:900}.faq-teaser-list em{color:var(--accent-light);font-style:normal;font-size:.8rem;white-space:nowrap}
.micro-help-row{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:24px;border:1px solid var(--border);border-radius:20px;background:var(--surface)}.micro-help-row h2{margin:0;font-size:clamp(1.4rem,3vw,2.2rem)}
.legal-layout{display:grid;grid-template-columns:300px minmax(0,1fr);gap:32px;align-items:start}.legal-note-card{position:sticky;top:110px;padding:24px;border:1px solid rgba(220,163,74,.28);border-radius:20px;background:rgba(220,163,74,.055)}.legal-note-card h2{margin-top:0}.legal-note-card p:not(.eyebrow){color:var(--muted)}.legal-content{display:grid;gap:14px}.legal-content section{padding:24px;border:1px solid var(--border);border-radius:18px;background:var(--surface)}.legal-content section h2{margin-top:0;font-size:1.35rem}.legal-content section p{color:#c8cbd1;line-height:1.7}.contact-live-list a{color:var(--accent-light)}.footer-direct-contact{display:flex;flex-direction:column;gap:4px;margin-top:14px}.footer-direct-contact a{color:var(--accent-light);font-size:.85rem}
.error-page{min-height:70vh;display:flex;align-items:center;padding:90px 0;background:radial-gradient(circle at 30% 20%,rgba(220,163,74,.10),transparent 25%),var(--bg)}.error-page-inner{max-width:820px}.error-code{color:rgba(255,255,255,.06);font-size:clamp(7rem,22vw,16rem);line-height:.72;font-weight:950;letter-spacing:-.08em;margin-bottom:28px}.error-page h1{font-size:clamp(2.7rem,7vw,5.7rem);margin:8px 0 20px}.error-page p:not(.eyebrow){max-width:680px;color:var(--muted);font-size:1.03rem;line-height:1.7}
@media(max-width:900px){.faq-page-layout,.faq-teaser-grid,.legal-layout{grid-template-columns:1fr}.faq-side-card,.legal-note-card{position:static}.faq-teaser-list a{grid-template-columns:44px 1fr}.faq-teaser-list em{grid-column:2}}
@media(max-width:650px){.micro-help-row{align-items:stretch;flex-direction:column}.micro-help-row .button{width:100%}.global-footer-cta-actions{width:100%}.global-footer-cta-actions .button{width:100%}.faq-item summary{font-size:.93rem}}


/* =========================================================
   V17 – SEO MAX + BREITER BUTTON-HEADER
   ========================================================= */

/* Mehr Platz für den Desktop-Header */
:root { --header-max-width: 1540px; }
.site-header .header-inner,
.site-header .header-topline-inner {
    width: min(calc(100% - 34px), var(--header-max-width));
    max-width: none;
}

.header-inner {
    min-height: 94px;
    gap: 22px;
}

.brand { flex: 0 0 auto; }
.brand-logo-wrap { flex: 0 0 auto; }
.brand-text strong,
.brand-text small { white-space: nowrap; }
.brand-text strong { font-size: .92rem; letter-spacing: .055em; }
.brand-text small { font-size: .66rem; }

.main-nav {
    flex: 0 1 auto;
    justify-content: flex-end;
    gap: 8px;
    font-size: .82rem;
    white-space: nowrap;
}

/* Jeder normale Menüpunkt als kleiner dauerhafter Button */
.main-nav > a:not(.nav-cta),
.nav-dropdown-trigger {
    min-height: 42px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 9px 12px !important;
    border: 1px solid rgba(255,255,255,.12) !important;
    border-radius: 999px;
    background: rgba(255,255,255,.025) !important;
    color: #e4e5e8;
    line-height: 1;
    white-space: nowrap;
}

.main-nav > a:not(.nav-cta)::after,
.nav-dropdown-trigger::after { display: none !important; }

.main-nav > a:not(.nav-cta):hover,
.main-nav > a.active:not(.nav-cta),
.nav-dropdown:hover .nav-dropdown-trigger,
.nav-dropdown:focus-within .nav-dropdown-trigger,
.nav-dropdown.active .nav-dropdown-trigger {
    color: var(--accent-light);
    border-color: rgba(231,180,88,.48) !important;
    background: rgba(231,180,88,.08) !important;
}

.cart-link { gap: 6px; }
.cart-link-count {
    min-width: 21px;
    height: 21px;
    font-size: .68rem;
}

.nav-cta {
    min-height: 44px;
    padding: 10px 15px;
    white-space: nowrap;
}

.nav-dropdown { display: flex; align-items: center; }
.nav-dropdown-menu { top: calc(100% + 1px); }

/* Sichtbare Breadcrumbs unterstützen Orientierung und interne Verlinkung */
.seo-breadcrumbs {
    border-bottom: 1px solid rgba(255,255,255,.055);
    background: rgba(255,255,255,.012);
}
.seo-breadcrumbs .container {
    min-height: 38px;
    display: flex;
    align-items: center;
    gap: 8px;
    overflow-x: auto;
    color: #8f949d;
    font-size: .72rem;
    white-space: nowrap;
}
.seo-breadcrumbs a:hover { color: var(--accent-light); }
.seo-breadcrumbs strong { color: #c8cbd1; font-weight: 700; }
.seo-breadcrumbs span { color: rgba(231,180,88,.55); }

@media (max-width: 1320px) {
    .site-header .header-inner,
    .site-header .header-topline-inner { width: min(calc(100% - 24px), 1480px); }
    .header-inner { gap: 14px; }
    .main-nav { gap: 6px; font-size: .76rem; }
    .main-nav > a:not(.nav-cta), .nav-dropdown-trigger { padding: 8px 9px !important; }
    .brand-text small { display: none; }
    .brand-text strong { font-size: .82rem; }
}


/* Mobile nutzt weiterhin das aufklappbare Menü; Buttons bleiben klar getrennt. */
@media (max-width: 980px) {
    .site-header .header-inner,
    .site-header .header-topline-inner { width: min(calc(100% - 30px), var(--max-width)); }
    .header-inner { min-height: 82px; }
    .brand-text strong span { display: inline; }
    .brand-text small { display: block; }
    .main-nav { white-space: normal; }
    .main-nav > a:not(.nav-cta),
    .nav-dropdown-trigger {
        width: 100%;
        min-height: 46px;
        justify-content: space-between;
        padding: 11px 14px !important;
        border-radius: 12px;
        white-space: normal;
    }
    .nav-dropdown { width: 100%; display: block; }
    .nav-dropdown-menu { margin-top: 7px; }
    .nav-cta { width: 100%; justify-content: center; }
}


/* V17 Header-Sicherheitsbreakpoint: bevor Buttons gequetscht werden, mobile Navigation. */
@media (max-width: 1120px) and (min-width: 981px) {
    .header-topline { display: none; }
    .header-inner { min-height: 82px; }
    .nav-toggle { display: block; }
    .main-nav {
        position: absolute;
        top: 82px;
        left: 0;
        right: 0;
        display: none;
        flex-direction: column;
        align-items: stretch;
        gap: 8px;
        padding: 14px 20px 24px;
        background: rgba(8,9,11,.985);
        border-bottom: 1px solid var(--border);
        white-space: normal;
    }
    .main-nav.is-open { display: flex; }
    .main-nav > a:not(.nav-cta), .nav-dropdown-trigger {
        width: 100%;
        min-height: 46px;
        justify-content: space-between;
        padding: 11px 14px !important;
        border-radius: 12px;
    }
    .nav-dropdown { display: block; width: 100%; }
    .nav-dropdown-menu {
        position: static;
        width: 100%;
        margin-top: 7px;
        padding: 0 0 4px 13px;
        opacity: 1;
        visibility: visible;
        transform: none;
        border: 0;
        border-radius: 0;
        background: transparent;
        box-shadow: none;
        backdrop-filter: none;
        display: none;
    }
    .nav-dropdown.is-open .nav-dropdown-menu { display: block; }
    .nav-dropdown-menu a { padding: 9px 8px; border-left: 1px solid var(--border); border-radius: 0; }
    .nav-dropdown-menu small { display: none; }
    .nav-cta { width: 100%; justify-content: center; }
}


/* V17 regionale SEO-Inhaltsbereiche */
.regional-seo-split { display:grid; grid-template-columns:1fr .9fr; gap:38px; align-items:center; }
.regional-seo-split h2 { margin:0; font-size:clamp(2.3rem,4.7vw,4.5rem); line-height:1; letter-spacing:-.045em; }
.regional-keyword-links { display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.regional-keyword-links a { padding:18px; border:1px solid var(--border); border-radius:16px; background:rgba(255,255,255,.025); }
.regional-keyword-links strong,.regional-keyword-links span { display:block; }
.regional-keyword-links span { margin-top:5px; color:var(--accent-light); font-size:.78rem; }
.region-seo-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:15px; }
.region-seo-grid article { padding:28px; border:1px solid var(--border); border-radius:21px; background:var(--surface); }
.region-seo-grid article>span { color:var(--accent); font-weight:900; font-size:.75rem; }
.region-seo-grid h3 { margin:28px 0 10px; font-size:1.55rem; }
.region-seo-grid p { color:var(--muted); line-height:1.65; }
.region-seo-grid a { color:var(--accent-light); font-weight:800; }
.regional-inline-link { display:flex; align-items:center; justify-content:space-between; gap:25px; padding:24px 28px; border:1px solid var(--border); border-radius:19px; background:var(--surface); }
.regional-inline-link h2 { margin:0; }
.regional-inline-link p:not(.eyebrow) { margin:4px 0 0; color:var(--muted); }
@media(max-width:900px){ .regional-seo-split,.region-seo-grid{grid-template-columns:1fr}.regional-keyword-links{grid-template-columns:1fr 1fr} }
@media(max-width:650px){ .regional-keyword-links{grid-template-columns:1fr}.regional-inline-link{align-items:stretch;flex-direction:column}.regional-inline-link .button{width:100%} }


/* =========================================================
   V17.1 – HERO-PROPORTIONEN EINHEITLICH
   Bilder = 16:9 | Textfelder = 1:1
   ========================================================= */

/* Startseite: großes scharfes Hero-Bild links 16:9 */
.hero-v14-1-layout {
    grid-template-columns: minmax(0, 1.28fr) minmax(410px, .72fr);
    gap: clamp(30px, 4vw, 58px);
    align-items: center;
}

.hero-focus-card {
    width: 100%;
    max-width: none;
    aspect-ratio: 16 / 9;
}

.hero-focus-card img {
    width: 100%;
    height: 100%;
    aspect-ratio: auto;
    object-fit: cover;
}

/* Startseiten-Textkasten exakt quadratisch */
.hero-text-panel {
    width: 100%;
    max-width: 610px;
    aspect-ratio: 1 / 1;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: clamp(26px, 3vw, 44px);
}

.hero.hero-with-image.hero-v14-1 .hero-text-panel h1 {
    font-size: clamp(2.35rem, 4.35vw, 4.75rem);
    line-height: .96;
}

/* Alle Leistungs-Heros: links 1:1 Text, rechts 16:9 Bild */
.service-page-hero-grid {
    grid-template-columns: minmax(340px, .72fr) minmax(0, 1.28fr);
    gap: clamp(30px, 4vw, 54px);
    align-items: center;
}

.service-page-hero-copy {
    width: 100%;
    aspect-ratio: 1 / 1;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: clamp(27px, 3vw, 42px);
    border: 1px solid var(--border);
    border-radius: 26px;
    background: linear-gradient(145deg, rgba(255,255,255,.045), rgba(255,255,255,.018));
    box-shadow: var(--shadow);
}

.service-page-hero-copy h1 {
    font-size: clamp(2.2rem, 4.1vw, 4.65rem);
    line-height: .96;
}

.service-page-hero-copy > p:not(.eyebrow) {
    margin-top: 20px;
    font-size: clamp(.94rem, 1.15vw, 1.08rem);
    line-height: 1.55;
}

.service-page-hero-copy .hero-actions {
    margin-top: 22px;
    flex-wrap: wrap;
}

.service-page-hero-media {
    width: 100%;
    aspect-ratio: 16 / 9;
}

.service-page-hero-media img {
    width: 100%;
    height: 100%;
    aspect-ratio: auto;
    object-fit: cover;
}

/* Tablet: Proportionen bleiben, aber stapeln sauber */
@media (max-width: 980px) {
    .hero-v14-1-layout,
    .service-page-hero-grid {
        grid-template-columns: 1fr;
    }

    .hero-focus-card,
    .service-page-hero-media {
        width: min(100%, 820px);
        justify-self: center;
    }

    .hero-text-panel,
    .service-page-hero-copy {
        width: min(100%, 620px);
        justify-self: center;
    }

    .hero-text-panel {
        order: 1;
    }

    .hero-focus-card {
        order: 2;
    }
}

/* Auf kleinen Handys darf das Textfeld wachsen, damit nichts abgeschnitten wird. */
@media (max-width: 620px) {
    .hero-text-panel,
    .service-page-hero-copy {
        aspect-ratio: auto;
        min-height: 0;
    }

    .hero-focus-card,
    .service-page-hero-media {
        aspect-ratio: 16 / 9;
    }
}

/* =========================================================
   V17.2 – HERO-TEXTFELDER BREITER
   Bilder bleiben 16:9 und in vergleichbarer Größe.
   Textfelder werden deutlich breiter statt quadratisch.
   ========================================================= */

/* Nur die Hero-Container dürfen breiter als der normale Seiteninhalt werden. */
.hero-v14-1-layout,
.service-page-hero-grid {
    width: min(calc(100% - 40px), 1420px);
}

/* Startseite: Bildgröße ungefähr beibehalten, Textfeld bekommt mehr Breite. */
.hero-v14-1-layout {
    grid-template-columns: minmax(620px, 1.1fr) minmax(560px, .9fr);
    gap: clamp(30px, 3.5vw, 54px);
}

.hero-text-panel {
    max-width: 680px;
    aspect-ratio: 4 / 3;
    padding: clamp(28px, 3vw, 46px);
}

.hero.hero-with-image.hero-v14-1 .hero-text-panel h1 {
    font-size: clamp(2.45rem, 4vw, 4.65rem);
}

/* Leistungsseiten: Text deutlich breiter, Bild bleibt dominant und 16:9. */
.service-page-hero-grid {
    grid-template-columns: minmax(560px, .9fr) minmax(680px, 1.1fr);
    gap: clamp(30px, 3.5vw, 54px);
}

.service-page-hero-copy {
    aspect-ratio: 4 / 3;
    padding: clamp(30px, 3vw, 46px);
}

.service-page-hero-copy h1 {
    font-size: clamp(2.35rem, 3.8vw, 4.45rem);
}

/* Früher stapeln, bevor breite Textfelder gequetscht werden. */
@media (max-width: 1240px) {
    .hero-v14-1-layout,
    .service-page-hero-grid {
        width: min(calc(100% - 40px), 1180px);
        grid-template-columns: 1fr;
    }

    .hero-focus-card,
    .service-page-hero-media {
        width: min(100%, 820px);
        justify-self: center;
    }

    .hero-text-panel,
    .service-page-hero-copy {
        width: min(100%, 760px);
        max-width: 760px;
        justify-self: center;
        aspect-ratio: 4 / 3;
    }

    .hero-text-panel {
        order: 1;
    }

    .hero-focus-card {
        order: 2;
    }
}

@media (max-width: 700px) {
    .hero-v14-1-layout,
    .service-page-hero-grid {
        width: min(calc(100% - 28px), 1180px);
    }

    .hero-text-panel,
    .service-page-hero-copy {
        aspect-ratio: auto;
        width: 100%;
        max-width: none;
    }
}


/* =========================================================
   V17.5 – PRODUKTKLASSEN / ADR
   ========================================================= */
.restricted-shop-label {
    display:inline-flex;
    align-items:center;
    min-height:38px;
    padding:7px 11px;
    border:1px solid rgba(220,163,74,.35);
    border-radius:10px;
    color:var(--accent-light);
    background:rgba(220,163,74,.06);
    font-size:.76rem;
    font-weight:850;
    white-space:nowrap;
}
.restricted-product-notice { border-color:rgba(220,163,74,.32); }


/* =========================================================
   V17.9 – ADMIN PRODUKTE VERWALTEN
   ========================================================= */
.admin-product-filter-v179 {
    grid-template-columns: minmax(190px,1.2fr) repeat(3,minmax(155px,.8fr)) auto auto;
}

.admin-products-table-v179 {
    min-width: 1180px;
}

.admin-product-row-hidden {
    opacity: .68;
    background: rgba(255,255,255,.018);
}

.admin-product-visibility {
    display: inline-flex;
    align-items: center;
    min-height: 30px;
    padding: 5px 10px;
    border: 1px solid var(--border);
    border-radius: 999px;
    font-size: .76rem;
    font-weight: 850;
    white-space: nowrap;
}

.admin-product-visibility.is-active {
    color: #b9e8c4;
    border-color: rgba(87,169,107,.30);
    background: rgba(87,169,107,.07);
}

.admin-product-visibility.is-hidden {
    color: #c8cbd1;
    background: rgba(255,255,255,.035);
}

.admin-product-actions-v179,
.admin-product-heading-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
    align-items: center;
}

.admin-product-actions-v179 form,
.admin-product-heading-actions form {
    margin: 0;
}

.button-danger {
    border: 1px solid rgba(209,88,88,.38);
    background: rgba(209,88,88,.09);
    color: #ffc3c3;
}

.button-danger:hover:not(:disabled) {
    border-color: rgba(209,88,88,.72);
}

.button-danger:disabled {
    opacity: .35;
    cursor: not-allowed;
}

.admin-product-public-link {
    color: var(--accent-light);
    font-size: .82rem;
    font-weight: 800;
    white-space: nowrap;
}

.admin-product-order-note {
    display: block;
    margin-top: 5px;
    color: var(--muted);
}

@media(max-width:1100px){
    .admin-product-filter-v179 {
        grid-template-columns: 1fr 1fr;
    }
}

@media(max-width:650px){
    .admin-product-filter-v179 {
        grid-template-columns: 1fr;
    }

    .admin-product-heading-actions {
        width: 100%;
    }

    .admin-product-heading-actions .button,
    .admin-product-heading-actions form,
    .admin-product-heading-actions form .button {
        width: 100%;
    }
}


/* V17.10 – gespeichertes Produkt in Adminliste hervorheben */
.admin-products-table-v179 tr:target td {
    background: rgba(220,163,74,.10);
    box-shadow: inset 0 1px rgba(220,163,74,.25), inset 0 -1px rgba(220,163,74,.25);
}


/* =========================================================
   V17.12 – STORNIERTE BESTELLUNGEN LÖSCHEN
   ========================================================= */
.admin-delete-order-form {
    display: grid;
    gap: 8px;
    margin: 16px 0 22px;
    padding: 16px;
    border: 1px solid rgba(220,80,80,.28);
    border-radius: 14px;
    background: rgba(220,80,80,.055);
}
.admin-delete-order-form small { color: var(--muted); line-height: 1.45; }
.admin-inline-actions { display:flex; flex-wrap:wrap; gap:7px; align-items:center; }
.admin-inline-actions form { margin:0; }


/* =========================================================
   V17.13 – ADMIN FINANZEN / KALKULATION
   ========================================================= */
.finance-subtitle{color:var(--muted);margin:.25rem 0 0}.finance-year-filter label{display:grid;gap:6px;color:var(--muted);font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.finance-year-filter select{min-width:135px;min-height:44px;padding:9px 12px;border:1px solid var(--border);border-radius:12px;background:#0f1217;color:var(--text)}
.finance-kpi-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:20px 0}.finance-kpi{padding:20px;border:1px solid var(--border);border-radius:18px;background:var(--surface)}.finance-kpi span,.finance-kpi strong,.finance-kpi small{display:block}.finance-kpi span{color:var(--muted);font-size:.78rem}.finance-kpi strong{margin:7px 0 3px;font-size:clamp(1.45rem,3vw,2.25rem)}.finance-kpi small{color:var(--muted)}.finance-kpi.primary{border-color:rgba(220,163,74,.35);background:rgba(220,163,74,.06)}.finance-kpi.profit{border-color:rgba(87,169,107,.32);background:rgba(87,169,107,.055)}.finance-kpi.profit strong{color:#b9e8c4}
.finance-split-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:24px}.finance-summary-card{padding:22px;border:1px solid var(--border);border-radius:19px;background:var(--surface)}.finance-card-heading{display:flex;justify-content:space-between;gap:20px;align-items:flex-start}.finance-card-heading h2{margin:0}.finance-card-heading>strong{font-size:2rem;color:var(--accent-light)}.finance-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:18px}.finance-metrics>div{padding:13px;border:1px solid var(--border);border-radius:13px;background:rgba(255,255,255,.018)}.finance-metrics span,.finance-metrics strong{display:block}.finance-metrics span{color:var(--muted);font-size:.75rem}.finance-metrics strong{margin-top:5px}
.finance-table-section{margin-top:24px;padding:20px;border:1px solid var(--border);border-radius:20px;background:var(--surface)}.finance-table td small{display:block;color:var(--muted);margin-top:3px}.finance-inline-form{display:flex;gap:7px;align-items:center}.finance-inline-form input{width:105px;min-height:39px;padding:8px 10px;border:1px solid var(--border);border-radius:10px;background:#0f1217;color:var(--text)}.finance-inline-form.booking{flex-wrap:wrap}.finance-inline-form.booking label{display:flex;gap:5px;align-items:center}.finance-inline-form.booking label span{color:var(--muted);font-size:.7rem;font-weight:900}.finance-profit-cell{font-weight:900;color:#b9e8c4;white-space:nowrap}.finance-note{color:var(--muted);font-size:.85rem}.finance-disclaimer{margin-top:22px}.finance-input-pair{display:grid;grid-template-columns:1fr 1fr;gap:10px}.form-help{display:block;color:var(--muted);margin-top:-3px;line-height:1.45}
@media(max-width:1050px){.finance-kpi-grid{grid-template-columns:repeat(2,1fr)}.finance-split-grid{grid-template-columns:1fr}.finance-metrics{grid-template-columns:repeat(3,1fr)}}
@media(max-width:700px){.finance-kpi-grid,.finance-metrics,.finance-input-pair{grid-template-columns:1fr}.finance-inline-form{align-items:stretch;flex-direction:column}.finance-inline-form input{width:100%}.finance-inline-form.booking label{align-items:stretch;flex-direction:column}.finance-year-filter{width:100%}.finance-year-filter select{width:100%}}

/* =========================================================
   V17.14 – ADMIN PANEL REDESIGN
   Übersichtlichere Oberfläche + Header wie Hauptwebsite
   ========================================================= */
.admin-body {
    background:
        radial-gradient(circle at 12% -10%, rgba(220,163,74,.08), transparent 30rem),
        #090a0d;
}

.admin-shell-v1714 {
    width: min(calc(100% - 36px), 1480px);
    margin-inline: auto;
}

.admin-header-v1714 {
    position: sticky;
    top: 0;
    z-index: 120;
    border-bottom: 1px solid rgba(255,255,255,.08);
    background: rgba(8,9,11,.96);
    backdrop-filter: blur(18px);
    box-shadow: 0 10px 35px rgba(0,0,0,.18);
}

.admin-topline-v1714 {
    border-bottom: 1px solid rgba(255,255,255,.055);
    background: rgba(255,255,255,.018);
}

.admin-topline-inner-v1714 {
    min-height: 29px;
    display: flex;
    justify-content: flex-end;
    align-items: center;
    gap: 24px;
    color: rgba(255,255,255,.48);
    font-size: .67rem;
    text-transform: uppercase;
    letter-spacing: .095em;
}

.admin-topline-inner-v1714 span + span {
    position: relative;
}

.admin-topline-inner-v1714 span + span::before {
    content: "";
    position: absolute;
    left: -13px;
    top: 50%;
    width: 3px;
    height: 3px;
    border-radius: 50%;
    background: rgba(231,180,88,.65);
    transform: translateY(-50%);
}

.admin-header-main-v1714 {
    min-height: 88px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
}

.admin-brand-v1714 {
    min-width: 275px;
    display: flex;
    align-items: center;
    gap: 12px;
    color: var(--text);
}

.admin-brand-logo-v1714 {
    width: 56px;
    height: 56px;
    flex: 0 0 56px;
    overflow: hidden;
    display: grid;
    place-items: center;
    border: 1px solid rgba(231,180,88,.34);
    border-radius: 13px;
    background: rgba(255,255,255,.025);
    box-shadow: 0 9px 25px rgba(0,0,0,.18);
}

.admin-brand-logo-v1714 img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.admin-brand-copy-v1714 {
    display: flex;
    flex-direction: column;
    line-height: 1.08;
}

.admin-brand-copy-v1714 strong {
    max-width: 235px;
    font-size: .82rem;
    letter-spacing: .045em;
}

.admin-brand-copy-v1714 strong em {
    color: var(--accent-light);
    font-style: normal;
}

.admin-brand-copy-v1714 small {
    margin-top: 7px;
    color: var(--muted);
    font-size: .67rem;
    text-transform: uppercase;
    letter-spacing: .11em;
}

.admin-nav-v1714 {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 7px;
    white-space: nowrap;
}

.admin-nav-button-v1714,
.admin-nav-dropdown-trigger-v1714 {
    min-height: 39px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    padding: 8px 12px;
    border: 1px solid rgba(255,255,255,.105);
    border-radius: 10px;
    background: rgba(255,255,255,.025);
    color: #dedede;
    font: inherit;
    font-size: .79rem;
    font-weight: 730;
    cursor: pointer;
    transition: border-color .18s ease, background .18s ease, color .18s ease, transform .18s ease;
}

.admin-nav-button-v1714:hover,
.admin-nav-button-v1714.active,
.admin-nav-dropdown-v1714.active > .admin-nav-dropdown-trigger-v1714,
.admin-nav-dropdown-v1714.is-open > .admin-nav-dropdown-trigger-v1714,
.admin-nav-dropdown-trigger-v1714:hover {
    color: var(--accent-light);
    border-color: rgba(231,180,88,.42);
    background: rgba(220,163,74,.085);
}

.admin-nav-button-v1714:active,
.admin-nav-dropdown-trigger-v1714:active {
    transform: translateY(1px);
}

.admin-nav-dropdown-v1714 {
    position: relative;
}

.admin-nav-dropdown-menu-v1714 {
    position: absolute;
    top: calc(100% + 10px);
    left: 50%;
    z-index: 20;
    width: 330px;
    padding: 8px;
    opacity: 0;
    visibility: hidden;
    transform: translate(-50%, 7px);
    border: 1px solid rgba(255,255,255,.105);
    border-radius: 17px;
    background: rgba(13,15,19,.985);
    box-shadow: 0 28px 75px rgba(0,0,0,.5);
    backdrop-filter: blur(20px);
    transition: opacity .17s ease, visibility .17s ease, transform .17s ease;
}

.admin-nav-dropdown-menu-right-v1714 {
    left: auto;
    right: 0;
    transform: translate(0,7px);
}

.admin-nav-dropdown-v1714:hover > .admin-nav-dropdown-menu-v1714,
.admin-nav-dropdown-v1714:focus-within > .admin-nav-dropdown-menu-v1714,
.admin-nav-dropdown-v1714.is-open > .admin-nav-dropdown-menu-v1714 {
    opacity: 1;
    visibility: visible;
    transform: translate(-50%,0);
}

.admin-nav-dropdown-v1714:hover > .admin-nav-dropdown-menu-right-v1714,
.admin-nav-dropdown-v1714:focus-within > .admin-nav-dropdown-menu-right-v1714,
.admin-nav-dropdown-v1714.is-open > .admin-nav-dropdown-menu-right-v1714 {
    transform: translate(0,0);
}

.admin-nav-dropdown-menu-v1714 a,
.admin-nav-user-v1714 {
    display: block;
    padding: 12px 13px;
    border-radius: 11px;
}

.admin-nav-dropdown-menu-v1714 a:hover {
    background: rgba(231,180,88,.075);
}

.admin-nav-dropdown-menu-v1714 strong,
.admin-nav-dropdown-menu-v1714 small {
    display: block;
}

.admin-nav-dropdown-menu-v1714 strong {
    color: #f5f5f4;
    font-size: .88rem;
}

.admin-nav-dropdown-menu-v1714 small {
    margin-top: 3px;
    color: var(--muted);
    font-size: .72rem;
    line-height: 1.35;
}

.admin-nav-user-v1714 {
    margin-top: 5px;
    padding-top: 14px;
    border-top: 1px solid var(--border);
}

.admin-nav-logout-v1714 strong { color: #efb4b4; }

.admin-nav-toggle-v1714 {
    display: none;
    width: 46px;
    height: 42px;
    padding: 10px;
    border: 1px solid rgba(255,255,255,.12);
    border-radius: 11px;
    background: rgba(255,255,255,.025);
    cursor: pointer;
}

.admin-nav-toggle-v1714 span {
    display: block;
    height: 2px;
    margin: 4px 0;
    border-radius: 3px;
    background: #e8e8e8;
    transition: .2s ease;
}

.admin-main-v1714 { min-height: calc(100vh - 150px); }

.admin-main-v1714 .container {
    width: min(calc(100% - 36px), 1360px);
}

.admin-main-v1714 .admin-section {
    padding-top: 46px;
}

.admin-main-v1714 .admin-page-heading {
    align-items: center;
    margin-bottom: 24px;
    padding-bottom: 22px;
    border-bottom: 1px solid rgba(255,255,255,.075);
}

.admin-main-v1714 .admin-page-heading h1 {
    font-size: clamp(2rem,4.5vw,3.25rem);
    letter-spacing: -.045em;
}

.admin-main-v1714 .admin-page-heading .eyebrow {
    margin-bottom: 7px;
}

.admin-main-v1714 .admin-stat-card,
.admin-main-v1714 .dashboard-kpi,
.admin-main-v1714 .dashboard-panel,
.admin-main-v1714 .admin-table-card,
.admin-main-v1714 .admin-detail-card,
.admin-main-v1714 .admin-edit-card,
.admin-main-v1714 .finance-summary-card,
.admin-main-v1714 .finance-card,
.admin-main-v1714 .finance-table-section {
    border-color: rgba(255,255,255,.085);
    background: linear-gradient(145deg, rgba(24,27,33,.96), rgba(17,19,24,.96));
    box-shadow: 0 16px 44px rgba(0,0,0,.20);
}

.admin-main-v1714 .dashboard-kpi,
.admin-main-v1714 .admin-stat-card {
    position: relative;
    overflow: hidden;
}

.admin-main-v1714 .dashboard-kpi::before,
.admin-main-v1714 .admin-stat-card::before {
    content: "";
    position: absolute;
    inset: 0 auto 0 0;
    width: 3px;
    background: linear-gradient(to bottom, var(--accent), transparent);
    opacity: .75;
}

.admin-main-v1714 .dashboard-kpi:hover {
    transform: translateY(-2px);
    border-color: rgba(231,180,88,.30);
}

.admin-main-v1714 .admin-table-card,
.admin-main-v1714 .finance-table-section {
    overflow: hidden;
}

.admin-main-v1714 .admin-table th {
    background: rgba(255,255,255,.025);
    color: rgba(255,255,255,.52);
    letter-spacing: .07em;
}

.admin-main-v1714 .admin-table tbody tr {
    transition: background .16s ease;
}

.admin-main-v1714 .admin-table tbody tr:hover {
    background: rgba(255,255,255,.022);
}

.admin-main-v1714 .admin-filter-row {
    gap: 7px;
}

.admin-main-v1714 .admin-filter-row a {
    background: rgba(255,255,255,.018);
}

.admin-main-v1714 .admin-filter-row a.active,
.admin-main-v1714 .admin-filter-row a:hover {
    background: rgba(220,163,74,.075);
}

.admin-main-v1714 .admin-form input,
.admin-main-v1714 .admin-form select,
.admin-main-v1714 .admin-form textarea,
.admin-main-v1714 .admin-product-filter input,
.admin-main-v1714 .admin-product-filter select,
.admin-main-v1714 .finance-inline-form input {
    border-color: rgba(255,255,255,.11);
    background: rgba(10,12,15,.72);
}

.admin-main-v1714 .admin-form input:focus,
.admin-main-v1714 .admin-form select:focus,
.admin-main-v1714 .admin-form textarea:focus,
.admin-main-v1714 .admin-product-filter input:focus,
.admin-main-v1714 .admin-product-filter select:focus,
.admin-main-v1714 .finance-inline-form input:focus {
    outline: none;
    border-color: rgba(231,180,88,.55);
    box-shadow: 0 0 0 3px rgba(231,180,88,.07);
}

.admin-main-v1714 .dashboard-quicklinks {
    gap: 12px;
}

.admin-main-v1714 .dashboard-quicklinks a {
    min-height: 105px;
    border-color: rgba(255,255,255,.085);
    background: rgba(255,255,255,.022);
    transition: transform .18s ease, border-color .18s ease, background .18s ease;
}

.admin-main-v1714 .dashboard-quicklinks a:hover {
    transform: translateY(-2px);
    border-color: rgba(231,180,88,.32);
    background: rgba(220,163,74,.05);
}

.admin-footer-v1714 {
    border-top: 1px solid rgba(255,255,255,.06);
    background: rgba(6,7,9,.72);
}

.admin-footer-inner-v1714 {
    min-height: 62px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    color: var(--muted);
    font-size: .76rem;
}

.admin-footer-inner-v1714 a {
    color: var(--accent-light);
    font-weight: 700;
}

@media (max-width: 1240px) {
    .admin-header-main-v1714 { gap: 14px; }
    .admin-brand-v1714 { min-width: 235px; }
    .admin-brand-logo-v1714 { width: 50px; height: 50px; flex-basis: 50px; }
    .admin-brand-copy-v1714 strong { max-width: 185px; font-size: .72rem; }
    .admin-nav-v1714 { gap: 5px; }
    .admin-nav-button-v1714,
    .admin-nav-dropdown-trigger-v1714 { padding-inline: 9px; font-size: .72rem; }
}

@media (max-width: 1040px) {
    .admin-topline-v1714 { display: none; }
    .admin-header-main-v1714 { min-height: 78px; }
    .admin-nav-toggle-v1714 { display: block; }
    .admin-nav-v1714 {
        position: absolute;
        top: 78px;
        left: 0;
        right: 0;
        display: none;
        max-height: calc(100vh - 90px);
        overflow-y: auto;
        padding: 13px 18px 20px;
        border-top: 1px solid var(--border);
        border-bottom: 1px solid var(--border);
        background: rgba(10,11,14,.985);
        box-shadow: 0 22px 50px rgba(0,0,0,.42);
        white-space: normal;
    }
    .admin-nav-v1714.is-open {
        display: flex;
        flex-direction: column;
        align-items: stretch;
    }
    .admin-nav-button-v1714,
    .admin-nav-dropdown-trigger-v1714 {
        width: 100%;
        justify-content: space-between;
        min-height: 46px;
        padding: 10px 13px;
        font-size: .86rem;
    }
    .admin-nav-dropdown-v1714 { width: 100%; }
    .admin-nav-dropdown-menu-v1714,
    .admin-nav-dropdown-menu-right-v1714 {
        position: static;
        width: 100%;
        display: none;
        margin-top: 6px;
        padding: 5px 8px 6px 14px;
        opacity: 1;
        visibility: visible;
        transform: none !important;
        border: 0;
        border-left: 1px solid rgba(231,180,88,.24);
        border-radius: 0;
        background: transparent;
        box-shadow: none;
        backdrop-filter: none;
    }
    .admin-nav-dropdown-v1714:hover > .admin-nav-dropdown-menu-v1714,
    .admin-nav-dropdown-v1714:focus-within > .admin-nav-dropdown-menu-v1714 { display: none; }
    .admin-nav-dropdown-v1714.is-open > .admin-nav-dropdown-menu-v1714 { display: block; }
    .admin-nav-user-v1714 { border-top-color: rgba(255,255,255,.06); }
    .admin-main-v1714 { min-height: calc(100vh - 78px); }
}

@media (max-width: 700px) {
    .admin-shell-v1714,
    .admin-main-v1714 .container { width: min(calc(100% - 24px), 1480px); }
    .admin-brand-v1714 { min-width: 0; gap: 10px; }
    .admin-brand-logo-v1714 { width: 46px; height: 46px; flex-basis: 46px; border-radius: 10px; }
    .admin-brand-copy-v1714 strong { max-width: 190px; font-size: .67rem; }
    .admin-brand-copy-v1714 small { display: none; }
    .admin-main-v1714 .admin-section { padding-top: 30px; padding-bottom: 62px; }
    .admin-main-v1714 .admin-page-heading {
        align-items: stretch;
        gap: 16px;
    }
    .admin-main-v1714 .admin-page-heading > :last-child:not(:first-child) {
        width: 100%;
    }
    .admin-main-v1714 .admin-dashboard-actions,
    .admin-main-v1714 .admin-toolbar {
        width: 100%;
    }
    .admin-main-v1714 .admin-dashboard-actions .button,
    .admin-main-v1714 .admin-toolbar .button {
        flex: 1;
    }
    .admin-footer-inner-v1714 {
        min-height: 72px;
        flex-direction: column;
        justify-content: center;
        align-items: flex-start;
        gap: 4px;
    }
}

/* =========================================================
   V17.15 – SEO-Startseite
   ========================================================= */
.home-seo-hero .hero-text-panel h1 span{color:var(--accent-light)}
.home-facts-band{border-top:1px solid var(--border);border-bottom:1px solid var(--border);background:#0b0d10}
.home-facts-grid{display:grid;grid-template-columns:repeat(4,1fr)}
.home-facts-grid>div{min-height:126px;padding:24px 26px;border-right:1px solid var(--border);display:flex;flex-direction:column;justify-content:center}
.home-facts-grid>div:first-child{border-left:1px solid var(--border)}
.home-facts-grid span{color:var(--muted);font-size:.72rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}
.home-facts-grid strong{margin-top:7px;color:var(--text);font-size:1.22rem}
.home-facts-grid small{margin-top:5px;color:var(--muted);line-height:1.45}
.home-seo-content-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:56px;align-items:center}
.home-seo-copy h2,.home-expertise-grid h2{margin:0;font-size:clamp(2.35rem,4.5vw,4.7rem);line-height:.98;letter-spacing:-.045em}
.home-seo-copy>p:not(.eyebrow),.home-expertise-grid>div>p:not(.eyebrow){color:var(--muted);line-height:1.75}
.home-seo-copy .lead,.home-expertise-grid .lead{color:#e5e6e8!important;font-size:1.08rem}
.home-showtype-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.home-showtype-grid article{min-height:205px;padding:23px;border:1px solid var(--border);border-radius:18px;background:rgba(255,255,255,.025)}
.home-showtype-grid article>span{color:var(--accent-light);font-weight:900;font-size:.78rem;letter-spacing:.11em}
.home-showtype-grid h3{margin:28px 0 9px;font-size:1.18rem}
.home-showtype-grid p{margin:0;color:var(--muted);line-height:1.6;font-size:.92rem}
.home-region-seo .regional-seo-split{align-items:start}
.home-region-seo .regional-seo-split>div:first-child>p:not(.eyebrow){color:var(--muted);line-height:1.7}
.home-region-seo .regional-keyword-links{grid-template-columns:1fr 1fr}
.process-grid-six{grid-template-columns:repeat(3,1fr)}
.process-grid-six .process-card{min-height:215px}
.home-laser-seo .editorial-split{align-items:center}
.home-laser-seo .editorial-image{min-height:520px}
.home-laser-seo .editorial-image img{width:100%;height:100%;object-fit:cover}
.home-laser-seo .editorial-split>div:last-child>p:not(.eyebrow){color:var(--muted);line-height:1.7}
.home-expertise-grid{display:grid;grid-template-columns:1.1fr .7fr;gap:54px;align-items:center}
.home-business-card{padding:30px;border:1px solid rgba(231,180,88,.24);border-radius:24px;background:linear-gradient(145deg,rgba(220,163,74,.08),rgba(255,255,255,.025));box-shadow:var(--shadow)}
.home-business-card-kicker{display:block;color:var(--accent-light);font-size:.72rem;font-weight:900;letter-spacing:.12em}
.home-business-card>strong{display:block;margin-top:12px;font-size:1.35rem}
.home-business-card>p{color:var(--muted);line-height:1.65}
.home-business-card>a{display:block;margin-top:8px;color:#fff;font-weight:750}
.home-business-card-links{display:flex;gap:14px;flex-wrap:wrap;margin-top:24px;padding-top:18px;border-top:1px solid var(--border)}
.home-business-card-links a{color:var(--accent-light);font-weight:800}
.home-faq-full{background:radial-gradient(circle at 10% 15%,rgba(220,163,74,.09),transparent 25%),var(--bg)}
.home-faq-grid{align-items:start}
.home-faq-grid>div:first-child{position:sticky;top:120px}
.home-faq-grid .faq-list{gap:11px}
.home-final-cta .cta-content{max-width:760px}
@media(max-width:1000px){
    .home-facts-grid{grid-template-columns:1fr 1fr}
    .home-facts-grid>div:nth-child(odd){border-left:1px solid var(--border)}
    .home-seo-content-grid,.home-expertise-grid{grid-template-columns:1fr}
    .process-grid-six{grid-template-columns:1fr 1fr}
    .home-faq-grid>div:first-child{position:static}
}
@media(max-width:650px){
    .home-facts-grid,.home-showtype-grid,.process-grid-six{grid-template-columns:1fr}
    .home-facts-grid>div{border-left:1px solid var(--border)}
    .home-region-seo .regional-keyword-links{grid-template-columns:1fr}
    .home-laser-seo .editorial-image{min-height:320px}
    .home-business-card{padding:24px}
}

/* V17.16 – Dienstleistungen SEO & Leistungsumfang */
.services-seo-hero .service-page-hero-copy > p:not(.eyebrow){max-width:760px}
.services-hero-tags{display:flex;flex-wrap:wrap;gap:9px;margin-top:24px}
.services-hero-tags span{display:inline-flex;align-items:center;min-height:36px;padding:8px 12px;border:1px solid var(--border);border-radius:999px;background:rgba(255,255,255,.025);color:#d8dadd;font-size:.78rem;font-weight:750;letter-spacing:.02em}
.services-heading-wide{max-width:900px;margin-bottom:34px}
.services-heading-wide>p:not(.eyebrow){max-width:820px;color:var(--muted);font-size:1.02rem;line-height:1.72}
.services-feature-grid .feature-card{display:flex;flex-direction:column;min-height:285px}
.services-feature-grid .feature-card p{flex:1}
.services-feature-grid .feature-card a{margin-top:16px;color:var(--accent-light);font-weight:800;font-size:.87rem}
.services-scope-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:stretch}
.services-scope-card{position:relative;padding:32px;border:1px solid var(--border);border-radius:24px;background:var(--surface);box-shadow:var(--shadow)}
.services-scope-card-positive{background:linear-gradient(145deg,rgba(220,163,74,.09),rgba(255,255,255,.02)),var(--surface)}
.services-scope-card-neutral{background:linear-gradient(145deg,rgba(255,255,255,.035),transparent),var(--surface)}
.services-scope-icon{width:48px;height:48px;display:grid;place-items:center;margin-bottom:22px;border:1px solid rgba(220,163,74,.32);border-radius:50%;background:rgba(220,163,74,.08);color:var(--accent-light);font-size:1.25rem;font-weight:950}
.services-scope-card h3{margin:5px 0 22px;font-size:clamp(1.45rem,2.2vw,2.1rem)}
.services-check-list{margin-top:0}
.services-neutral-list{display:grid;gap:13px;margin:0;padding:0;list-style:none}
.services-neutral-list li{position:relative;padding-left:27px;color:#c1c4ca;line-height:1.55}
.services-neutral-list li::before{content:'–';position:absolute;left:3px;top:0;color:var(--accent-light);font-weight:900}
.services-neutral-list strong{color:#f2f2f2}
.services-scope-note{display:flex;gap:12px;align-items:flex-start;margin-top:18px;padding:16px 18px;border:1px solid rgba(220,163,74,.24);border-radius:15px;background:rgba(220,163,74,.055);color:#c8cbd0;line-height:1.55}
.services-scope-note strong{flex:0 0 auto;color:var(--accent-light)}
.services-process-grid .feature-card{min-height:220px}
.services-region-links{display:flex;flex-wrap:wrap;gap:18px;margin-top:22px}
.services-region-links a{color:var(--accent-light);font-weight:850}
.services-faq-layout{grid-template-columns:300px minmax(0,1fr)}
.services-final-cta p{max-width:720px}
@media(max-width:900px){.services-scope-grid{grid-template-columns:1fr}.services-faq-layout{grid-template-columns:1fr}.services-faq-layout .faq-side-card{position:static}.services-scope-card{padding:26px}}
@media(max-width:600px){.services-hero-tags{gap:7px}.services-hero-tags span{font-size:.72rem}.services-scope-card{padding:22px}.services-scope-note{flex-direction:column;gap:5px}.services-region-links{flex-direction:column;gap:10px}}


/* ============================================================
   V17.17 – Dienstleistungsseite nach bisheriger Website
   ============================================================ */
.old-services-hero .service-page-hero-copy{max-width:780px}
.old-service-grid{display:grid;gap:28px}
.old-service-card{
    display:grid;
    grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);
    overflow:hidden;
    border:1px solid var(--border);
    border-radius:26px;
    background:linear-gradient(145deg,rgba(255,255,255,.035),rgba(255,255,255,.012)),var(--surface);
    box-shadow:var(--shadow);
}
.old-service-card-reverse .old-service-image{order:2}
.old-service-card-reverse .old-service-content{order:1}
.old-service-image{min-height:390px;background:#0b0b0c}
.old-service-image img{display:block;width:100%;height:100%;min-height:390px;object-fit:cover}
.old-service-content{display:flex;flex-direction:column;justify-content:center;padding:44px}
.old-service-content h2{margin:.2rem 0 1rem;font-size:clamp(2rem,4vw,3.6rem)}
.old-service-content>p:not(.eyebrow):not(.old-service-note){color:#c8cbd0;line-height:1.72}
.old-service-price{
    display:flex;
    flex-wrap:wrap;
    align-items:baseline;
    gap:10px 18px;
    margin:22px 0;
    padding:18px 20px;
    border:1px solid rgba(220,163,74,.27);
    border-radius:16px;
    background:rgba(220,163,74,.055);
}
.old-service-price span{font-size:.78rem;font-weight:850;letter-spacing:.12em;text-transform:uppercase;color:#9d9fa5}
.old-service-price strong{font-size:clamp(1.25rem,2.4vw,1.8rem);color:var(--accent-light)}
.old-service-note{margin:-6px 0 22px;color:#aeb0b5;font-size:.92rem}
.old-service-content .button{align-self:flex-start;margin-top:4px}
.old-scope-grid .services-scope-card{min-height:100%}
.old-services-extra .section-heading{max-width:900px}
.old-services-stats{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:18px;
    margin-top:34px;
}
.old-services-stats>div{
    padding:26px 20px;
    text-align:center;
    border:1px solid var(--border);
    border-radius:18px;
    background:var(--surface);
}
.old-services-stats strong{display:block;font-size:clamp(2rem,5vw,3.7rem);line-height:1;color:var(--accent-light)}
.old-services-stats span{display:block;margin-top:9px;color:#b9bbc0;font-weight:750}
@media(max-width:900px){
    .old-service-card{grid-template-columns:1fr}
    .old-service-card-reverse .old-service-image,
    .old-service-card-reverse .old-service-content{order:initial}
    .old-service-image,.old-service-image img{min-height:300px}
    .old-service-content{padding:30px}
}
@media(max-width:620px){
    .old-service-image,.old-service-image img{min-height:230px}
    .old-service-content{padding:23px}
    .old-services-stats{grid-template-columns:1fr}
}


/* ============================================================
   V17.18 – Systemfeuerwerk / Palettenoption
   ============================================================ */
.systemfirework-option{
    display:flex;
    gap:16px;
    align-items:flex-start;
    padding:20px;
    border:1px solid rgba(220,163,74,.35);
    border-radius:18px;
    background:linear-gradient(145deg,rgba(220,163,74,.10),rgba(255,255,255,.025));
    cursor:pointer;
}
.systemfirework-option input{
    width:22px;
    height:22px;
    margin-top:3px;
    accent-color:var(--accent);
}
.systemfirework-option-copy{display:grid;gap:6px}
.systemfirework-option-copy strong{font-size:1.08rem}
.systemfirework-option-copy b{color:var(--accent-light)}
.systemfirework-option-copy small{color:#b9bbc0;line-height:1.55}
.systemfirework-summary-line[hidden]{display:none!important}
.systemfirework-success{border-color:rgba(220,163,74,.38)}
.systemfirework-admin-details strong{color:var(--accent-light)}
.admin-card-divider{border:0;border-top:1px solid var(--border);margin:28px 0}
.admin-danger-zone{
    padding:20px;
    border:1px solid rgba(220,80,80,.32);
    border-radius:16px;
    background:rgba(160,35,35,.08);
}
.admin-danger-zone h3{margin:.25rem 0 .6rem}
.admin-danger-zone p:not(.eyebrow){color:#bfc1c6}


/* ============================================================
   V17.19 – Checkout Submit / sichtbare Validierung
   ============================================================ */
.checkout-inline-errors{margin:22px 0 14px}
.checkout-inline-errors ul,.checkout-error-box ul{margin:.7rem 0 0;padding-left:1.2rem}
.checkout-submit-blocker{margin:16px 0}
.checkout-field-invalid{
    outline:2px solid rgba(255,95,95,.9)!important;
    outline-offset:3px;
    box-shadow:0 0 0 5px rgba(255,95,95,.10)!important;
}
canvas.checkout-field-invalid{border-color:rgba(255,95,95,.95)!important}
.checkout-submit[disabled]{cursor:not-allowed;opacity:.66}


/* ============================================================
   V17.20 – Über uns komplett neu / Team der alten Website
   ============================================================ */
.about-v1720-hero{
    position:relative;
    overflow:hidden;
    padding:92px 0 76px;
    background:
        radial-gradient(circle at 12% 18%,rgba(220,163,74,.13),transparent 28%),
        radial-gradient(circle at 92% 35%,rgba(255,255,255,.035),transparent 30%),
        #090a0c;
}
.about-v1720-hero-grid{
    display:grid;
    grid-template-columns:minmax(0,1.05fr) minmax(420px,.95fr);
    gap:58px;
    align-items:center;
}
.about-v1720-hero-copy h1{
    max-width:760px;
    margin:.22rem 0 1.2rem;
    font-size:clamp(3.2rem,7vw,6.8rem);
    line-height:.92;
    letter-spacing:-.055em;
}
.about-v1720-lead{
    max-width:760px;
    color:#c8cbd0;
    font-size:clamp(1.02rem,1.5vw,1.18rem);
    line-height:1.75;
}
.about-v1720-facts{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:10px;
    margin:30px 0;
}
.about-v1720-facts>div{
    min-height:108px;
    padding:18px;
    border:1px solid var(--border);
    border-radius:16px;
    background:rgba(255,255,255,.025);
}
.about-v1720-facts strong{
    display:block;
    color:var(--accent-light);
    font-size:1.65rem;
    line-height:1;
}
.about-v1720-facts span{
    display:block;
    margin-top:9px;
    color:#b9bcc2;
    font-size:.78rem;
    font-weight:750;
    line-height:1.4;
}
.about-v1720-hero-media{
    position:relative;
    overflow:hidden;
    aspect-ratio:4/5;
    max-height:680px;
    border:1px solid rgba(220,163,74,.30);
    border-radius:26px;
    background:#111318;
    box-shadow:var(--shadow);
}
.about-v1720-hero-media img{
    width:100%;
    height:100%;
    object-fit:cover;
}
.about-v1720-hero-media::after{
    content:'';
    position:absolute;
    inset:0;
    background:linear-gradient(to top,rgba(6,7,9,.88),transparent 48%);
    pointer-events:none;
}
.about-v1720-media-badge{
    position:absolute;
    z-index:2;
    left:24px;
    right:24px;
    bottom:24px;
    padding:18px 20px;
    border:1px solid rgba(255,255,255,.14);
    border-radius:15px;
    background:rgba(9,10,12,.78);
    backdrop-filter:blur(12px);
}
.about-v1720-media-badge span{
    display:block;
    color:var(--accent-light);
    font-size:.69rem;
    font-weight:900;
    letter-spacing:.13em;
}
.about-v1720-media-badge strong{
    display:block;
    margin-top:6px;
    color:#fff;
    font-size:1.05rem;
}
.about-v1720-story-grid{
    display:grid;
    grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);
    gap:70px;
    align-items:start;
}
.about-v1720-story h2{
    margin:.25rem 0 0;
    font-size:clamp(2.4rem,5vw,5rem);
    line-height:.98;
    letter-spacing:-.045em;
}
.about-v1720-story-copy{
    padding-top:12px;
}
.about-v1720-story-copy p{
    color:#c2c5ca;
    line-height:1.8;
    font-size:1.03rem;
}
.about-v1720-story-copy strong{color:#fff}
.about-v1720-owner-card{
    display:grid;
    grid-template-columns:340px minmax(0,1fr);
    overflow:hidden;
    border:1px solid rgba(220,163,74,.24);
    border-radius:26px;
    background:linear-gradient(145deg,rgba(220,163,74,.08),rgba(255,255,255,.02));
}
.about-v1720-owner-visual{
    min-height:390px;
    display:flex;
    flex-direction:column;
    justify-content:flex-end;
    padding:34px;
    background:
        radial-gradient(circle at 28% 18%,rgba(220,163,74,.24),transparent 35%),
        linear-gradient(145deg,#17191e,#090a0d);
}
.about-v1720-owner-monogram{
    width:124px;
    height:124px;
    display:grid;
    place-items:center;
    border:1px solid rgba(220,163,74,.42);
    border-radius:50%;
    background:rgba(220,163,74,.08);
    color:var(--accent-light);
    font-size:2.7rem;
    font-weight:950;
    letter-spacing:-.04em;
}
.about-v1720-owner-visual span{
    margin-top:22px;
    color:#b8bbc0;
    font-weight:800;
    letter-spacing:.08em;
    text-transform:uppercase;
    font-size:.72rem;
}
.about-v1720-owner-copy{
    padding:48px;
    align-self:center;
}
.about-v1720-owner-copy h2{
    margin:.2rem 0 .5rem;
    font-size:clamp(2.5rem,5vw,5.2rem);
    line-height:.95;
}
.about-v1720-role{
    margin:0 0 24px;
    color:var(--accent-light)!important;
    font-weight:850;
}
.about-v1720-owner-copy>p:not(.eyebrow){
    max-width:760px;
    color:#c4c7cc;
    line-height:1.75;
}
.about-v1720-owner-links{
    display:flex;
    flex-wrap:wrap;
    gap:18px;
    margin-top:24px;
}
.about-v1720-owner-links a{
    color:var(--accent-light);
    font-weight:850;
}
.about-v1720-team-heading{
    max-width:900px;
}
.about-v1720-team-heading>p:not(.eyebrow){
    max-width:800px;
    color:var(--muted);
    line-height:1.7;
}
.about-v1720-team-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:18px;
    margin-top:34px;
}
.about-v1720-team-card{
    display:grid;
    grid-template-columns:92px minmax(0,1fr);
    gap:22px;
    padding:28px;
    border:1px solid var(--border);
    border-radius:20px;
    background:linear-gradient(145deg,rgba(255,255,255,.028),rgba(255,255,255,.012)),var(--surface);
    box-shadow:0 12px 34px rgba(0,0,0,.18);
}
.about-v1720-team-card-featured{
    border-color:rgba(220,163,74,.32);
    background:linear-gradient(145deg,rgba(220,163,74,.08),rgba(255,255,255,.018)),var(--surface);
}
.about-v1720-avatar{
    width:78px;
    height:78px;
    display:grid;
    place-items:center;
    border:1px solid rgba(220,163,74,.30);
    border-radius:50%;
    background:#101217;
    color:var(--accent-light);
    font-size:1.25rem;
    font-weight:950;
}
.about-v1720-team-card h3{
    margin:.22rem 0 .3rem;
    font-size:1.55rem;
}
.about-v1720-team-role{
    display:block;
    margin-bottom:12px;
    color:#aeb1b7;
    font-size:.84rem;
    font-weight:750;
}
.about-v1720-team-card p:last-child{
    margin:0;
    color:#bdc0c5;
    line-height:1.65;
}
.about-v1720-work-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:14px;
}
.about-v1720-work-grid article{
    min-height:230px;
    padding:27px;
    border:1px solid var(--border);
    border-radius:18px;
    background:rgba(255,255,255,.025);
}
.about-v1720-work-grid article>span{
    color:var(--accent-light);
    font-size:.76rem;
    font-weight:950;
    letter-spacing:.13em;
}
.about-v1720-work-grid h3{
    margin:42px 0 10px;
    font-size:1.28rem;
}
.about-v1720-work-grid p{
    margin:0;
    color:#b9bcc1;
    line-height:1.65;
}
.about-v1720-cta p{
    max-width:760px;
}
@media(max-width:1000px){
    .about-v1720-hero-grid{grid-template-columns:1fr}
    .about-v1720-hero-media{max-width:680px;aspect-ratio:16/10}
    .about-v1720-story-grid{grid-template-columns:1fr;gap:28px}
    .about-v1720-owner-card{grid-template-columns:260px minmax(0,1fr)}
    .about-v1720-work-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:760px){
    .about-v1720-hero{padding:62px 0 52px}
    .about-v1720-facts{grid-template-columns:1fr}
    .about-v1720-hero-media{aspect-ratio:4/3}
    .about-v1720-owner-card{grid-template-columns:1fr}
    .about-v1720-owner-visual{min-height:240px}
    .about-v1720-owner-copy{padding:30px}
    .about-v1720-team-grid{grid-template-columns:1fr}
}
@media(max-width:560px){
    .about-v1720-team-card{grid-template-columns:1fr;padding:23px}
    .about-v1720-work-grid{grid-template-columns:1fr}
    .about-v1720-media-badge{left:14px;right:14px;bottom:14px}
}


/* ============================================================
   V17.21 – Über uns mit Bildlayout wie alte Website
   ============================================================ */
.about-v1721-hero{
    padding:88px 0 70px;
    background:
        radial-gradient(circle at 12% 18%,rgba(220,163,74,.12),transparent 28%),
        radial-gradient(circle at 88% 14%,rgba(255,255,255,.04),transparent 22%),
        #090a0c;
}
.about-v1721-hero-heading{
    max-width:940px;
    margin:0 auto 38px;
    text-align:center;
}
.about-v1721-hero-heading h1{
    margin:.25rem 0 1rem;
    font-size:clamp(3rem,7vw,6.1rem);
    line-height:.95;
    letter-spacing:-.05em;
}
.about-v1721-hero-heading p:not(.eyebrow){
    max-width:840px;
    margin:0 auto;
    color:#c4c7cc;
    line-height:1.75;
}
.about-v1721-top-grid{
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(300px,1fr) minmax(0,1fr);
    gap:22px;
    align-items:stretch;
}
.about-v1721-profile-card,
.about-v1721-duo-image{
    min-height:100%;
    aspect-ratio:1/1;
    border:1px solid var(--border);
    border-radius:24px;
    overflow:hidden;
    background:linear-gradient(145deg,rgba(255,255,255,.028),rgba(255,255,255,.012)),var(--surface);
    box-shadow:var(--shadow);
}
.about-v1721-profile-card{
    display:flex;
}
.about-v1721-profile-copy{
    display:flex;
    flex-direction:column;
    justify-content:center;
    width:100%;
    padding:34px;
}
.about-v1721-profile-copy h2{
    margin:.2rem 0 .45rem;
    font-size:clamp(2rem,3.6vw,3.3rem);
    line-height:.95;
}
.about-v1721-role{
    display:block;
    margin-bottom:14px;
    color:var(--accent-light);
    font-size:.9rem;
    font-weight:850;
    line-height:1.45;
}
.about-v1721-profile-copy p:last-child{
    margin:0;
    color:#c1c4c9;
    line-height:1.72;
}
.about-v1721-duo-image{
    position:relative;
    background:#0f1115;
}
.about-v1721-duo-image img{
    display:block;
    width:100%;
    height:100%;
    object-fit:cover;
}
.about-v1721-duo-image::after{
    content:'';
    position:absolute;
    inset:0;
    background:linear-gradient(to top,rgba(7,8,10,.88),transparent 52%);
    pointer-events:none;
}
.about-v1721-duo-badge{
    position:absolute;
    left:16px;
    right:16px;
    bottom:16px;
    z-index:2;
    padding:14px 16px;
    border:1px solid rgba(255,255,255,.16);
    border-radius:14px;
    background:rgba(8,9,11,.72);
    backdrop-filter:blur(10px);
}
.about-v1721-duo-badge span{
    display:block;
    color:var(--accent-light);
    font-size:.68rem;
    font-weight:900;
    letter-spacing:.13em;
}
.about-v1721-duo-badge strong{
    display:block;
    margin-top:5px;
    font-size:1rem;
    color:#fff;
}
.about-v1721-intro-grid{
    display:grid;
    grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);
    gap:56px;
    align-items:start;
}
.about-v1721-intro h2{
    margin:.25rem 0 0;
    font-size:clamp(2.2rem,4vw,4.6rem);
    line-height:1;
    letter-spacing:-.045em;
}
.about-v1721-intro p{
    color:#c4c7cc;
    line-height:1.78;
}
.about-v1721-team-heading{
    max-width:960px;
}
.about-v1721-member-list{
    display:grid;
    gap:24px;
    margin-top:34px;
}
.about-v1721-member-row{
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr);
    gap:0;
    border:1px solid var(--border);
    border-radius:24px;
    overflow:hidden;
    background:linear-gradient(145deg,rgba(255,255,255,.03),rgba(255,255,255,.012)),var(--surface);
    box-shadow:var(--shadow);
}
.about-v1721-member-row-reverse .about-v1721-member-image{order:2}
.about-v1721-member-row-reverse .about-v1721-member-text{order:1}
.about-v1721-member-image,
.about-v1721-member-text{
    aspect-ratio:1/1;
}
.about-v1721-member-image{
    background:#0e1014;
}
.about-v1721-member-image img{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
}
.about-v1721-member-text{
    display:flex;
    flex-direction:column;
    justify-content:center;
    padding:38px;
}
.about-v1721-member-text h3{
    margin:.2rem 0 .45rem;
    font-size:clamp(2rem,3.4vw,3rem);
    line-height:.96;
}
.about-v1721-member-text p:last-child{
    margin:0;
    color:#c0c3c8;
    line-height:1.72;
}
.about-v1721-work-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:14px;
}
.about-v1721-work-grid article{
    min-height:220px;
    padding:26px;
    border:1px solid var(--border);
    border-radius:18px;
    background:var(--surface);
}
.about-v1721-work-grid article>span{
    color:var(--accent-light);
    font-size:.76rem;
    font-weight:950;
    letter-spacing:.14em;
}
.about-v1721-work-grid h3{
    margin:40px 0 10px;
    font-size:1.22rem;
}
.about-v1721-work-grid p{
    margin:0;
    color:#b9bcc1;
    line-height:1.64;
}
@media(max-width:1100px){
    .about-v1721-top-grid{
        grid-template-columns:1fr;
    }
    .about-v1721-profile-card,
    .about-v1721-duo-image{
        aspect-ratio:16/11;
    }
    .about-v1721-intro-grid{
        grid-template-columns:1fr;
        gap:24px;
    }
}
@media(max-width:820px){
    .about-v1721-member-row,
    .about-v1721-member-row-reverse{
        grid-template-columns:1fr;
    }
    .about-v1721-member-row-reverse .about-v1721-member-image,
    .about-v1721-member-row-reverse .about-v1721-member-text{
        order:initial;
    }
    .about-v1721-member-image,
    .about-v1721-member-text{
        aspect-ratio:auto;
    }
    .about-v1721-member-image{
        min-height:320px;
    }
    .about-v1721-member-text{
        padding:26px;
    }
    .about-v1721-work-grid{
        grid-template-columns:1fr 1fr;
    }
}
@media(max-width:560px){
    .about-v1721-profile-copy{
        padding:24px;
    }
    .about-v1721-profile-card,
    .about-v1721-duo-image{
        aspect-ratio:1/1;
    }
    .about-v1721-member-image{
        min-height:250px;
    }
    .about-v1721-work-grid{
        grid-template-columns:1fr;
    }
}


/* ============================================================
   V17.22 – Christoph/Jannis größer + breitere Beschreibungen
   ============================================================ */
.about-v1721-hero > .container{
    width:min(97vw,1640px);
    max-width:1640px;
}
.about-v1721-top-grid{
    grid-template-columns:minmax(310px,1.02fr) minmax(500px,1.55fr) minmax(310px,1.02fr);
    gap:14px;
}
.about-v1721-profile-copy{
    padding:22px 18px;
}
.about-v1721-profile-copy h2{
    font-size:clamp(2.2rem,3.35vw,3.8rem);
}
.about-v1721-role{
    margin-bottom:12px;
}
.about-v1721-profile-copy p:last-child{
    font-size:clamp(.97rem,1.05vw,1.1rem);
    line-height:1.65;
}
.about-v1721-duo-image{
    border-color:rgba(220,163,74,.42);
}
.about-v1721-duo-badge{
    left:10px;
    right:10px;
    bottom:10px;
}
.finance-booking-pending{
    opacity:.9;
}
.finance-booking-pending td{
    background:rgba(255,255,255,.012);
}
.finance-booking-counted td{
    background:rgba(220,163,74,.028);
}
.finance-table td small{
    display:block;
    margin-top:6px;
    color:#9fa2a8;
}
@media(max-width:1320px){
    .about-v1721-top-grid{
        grid-template-columns:minmax(270px,1fr) minmax(420px,1.34fr) minmax(270px,1fr);
    }
}
@media(max-width:1100px){
    .about-v1721-top-grid{
        grid-template-columns:1fr;
    }
    .about-v1721-profile-card{
        aspect-ratio:auto;
    }
    .about-v1721-duo-image{
        aspect-ratio:1/1;
        width:min(100%,780px);
        margin-inline:auto;
    }
    .about-v1721-profile-copy{
        padding:28px;
    }
}


/* ============================================================
   V17.23 – Über-uns Layout-Fix: keine Überlappungen, gleiche Abstände
   ============================================================ */

.about-v1721-hero > .container{
    width:min(96vw,1560px);
    max-width:1560px;
}

/* Obere Dreiergruppe */
.about-v1721-top-grid{
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(420px,1.34fr) minmax(0,1fr);
    gap:24px;
    align-items:stretch;
}

.about-v1721-profile-card,
.about-v1721-duo-image{
    min-width:0;
    width:100%;
    border-radius:24px;
    box-sizing:border-box;
}

/* Nur das Bild bleibt quadratisch.
   Die Textfelder dürfen sich an den Inhalt anpassen und können deshalb nicht mehr überlaufen. */
.about-v1721-profile-card{
    aspect-ratio:auto !important;
    min-height:100%;
    overflow:hidden;
    display:flex;
}

.about-v1721-duo-image{
    aspect-ratio:1/1 !important;
    align-self:center;
    overflow:hidden;
}

.about-v1721-profile-copy{
    width:100%;
    min-width:0;
    padding:32px;
    display:flex;
    flex-direction:column;
    justify-content:center;
    box-sizing:border-box;
}

.about-v1721-profile-copy .eyebrow,
.about-v1721-profile-copy h2,
.about-v1721-profile-copy .about-v1721-role,
.about-v1721-profile-copy p{
    max-width:100%;
    overflow-wrap:break-word;
    word-break:normal;
}

.about-v1721-profile-copy h2{
    margin:.25rem 0 .6rem;
    font-size:clamp(2.05rem,3vw,3.45rem);
    line-height:1;
}

.about-v1721-role{
    margin-bottom:18px;
    line-height:1.5;
}

.about-v1721-profile-copy p:last-child{
    margin:0;
    font-size:1rem;
    line-height:1.72;
}

/* Einheitliche Abstände der gesamten Über-uns-Seite */
.about-v1721-hero-heading{
    margin-bottom:40px;
}

.about-v1721-intro-grid{
    gap:40px;
}

.about-v1721-member-list{
    gap:24px;
    margin-top:40px;
}

/* Teamzeilen: gleiche Hälfte, gleiche Innenabstände, kein Überlaufen */
.about-v1721-member-row{
    grid-template-columns:minmax(0,1fr) minmax(0,1fr);
    gap:0;
    align-items:stretch;
    overflow:hidden;
}

.about-v1721-member-image,
.about-v1721-member-text{
    min-width:0;
    box-sizing:border-box;
}

.about-v1721-member-image{
    aspect-ratio:1/1;
    min-height:0;
    overflow:hidden;
}

.about-v1721-member-image img{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
}

.about-v1721-member-text{
    aspect-ratio:auto !important;
    min-height:100%;
    padding:32px;
    justify-content:center;
    overflow:hidden;
}

.about-v1721-member-text h3,
.about-v1721-member-text p,
.about-v1721-member-text .about-v1721-role{
    max-width:100%;
    overflow-wrap:break-word;
}

/* Arbeitskarten ebenfalls mit einheitlichem Abstand */
.about-v1721-work-grid{
    gap:24px;
}

/* Tablet: rechtzeitig auf eine Spalte wechseln, bevor etwas eng wird */
@media(max-width:1180px){
    .about-v1721-top-grid{
        grid-template-columns:1fr;
        gap:24px;
    }

    .about-v1721-profile-card{
        min-height:0;
    }

    .about-v1721-duo-image{
        width:min(100%,720px);
        margin-inline:auto;
    }

    .about-v1721-profile-copy{
        padding:32px;
    }
}

/* Teamzeilen auf Tablet sauber stapeln */
@media(max-width:860px){
    .about-v1721-member-row,
    .about-v1721-member-row-reverse{
        grid-template-columns:1fr;
        gap:0;
    }

    .about-v1721-member-row-reverse .about-v1721-member-image,
    .about-v1721-member-row-reverse .about-v1721-member-text{
        order:initial;
    }

    .about-v1721-member-image{
        aspect-ratio:1/1;
        min-height:0;
    }

    .about-v1721-member-text{
        min-height:0;
        padding:30px;
    }

    .about-v1721-intro-grid{
        gap:24px;
    }
}

/* Smartphone */
@media(max-width:600px){
    .about-v1721-hero{
        padding:58px 0 48px;
    }

    .about-v1721-hero > .container{
        width:min(92vw,100%);
    }

    .about-v1721-top-grid,
    .about-v1721-member-list,
    .about-v1721-work-grid{
        gap:18px;
    }

    .about-v1721-profile-copy,
    .about-v1721-member-text{
        padding:24px;
    }

    .about-v1721-duo-image{
        width:100%;
    }
}


/* ============================================================
   V17.25 – MOBILE OPTIMIERUNG
   WICHTIG: Diese Regeln greifen ausschließlich unter 900px.
   Desktop/PC bleibt unverändert.
   ============================================================ */

@media (max-width: 900px) {
    html,
    body {
        max-width: 100%;
        overflow-x: hidden;
    }

    body {
        -webkit-text-size-adjust: 100%;
        text-size-adjust: 100%;
    }

    img,
    video,
    iframe,
    canvas {
        max-width: 100%;
    }

    .container,
    .site-header .header-inner,
    .site-header .header-topline-inner {
        width: min(calc(100% - 28px), var(--max-width, 1220px));
    }

    .section {
        padding-top: 58px;
        padding-bottom: 58px;
    }

    .section-tight {
        padding-top: 38px;
        padding-bottom: 38px;
    }

    .section-heading {
        margin-bottom: 28px;
    }

    .section-heading h2,
    .public-cta h2,
    .cta-box h2 {
        overflow-wrap: break-word;
    }

    /* ---------------------------------------------------------
       Header / Navigation
       --------------------------------------------------------- */
    .header-topline {
        display: none !important;
    }

    .header-inner {
        min-height: 74px !important;
        gap: 12px;
        position: relative;
    }

    .brand {
        min-width: 0;
        max-width: calc(100% - 58px);
        gap: 10px;
    }

    .brand-logo-wrap {
        width: 48px;
        height: 48px;
        flex: 0 0 48px;
    }

    .brand-text {
        min-width: 0;
    }

    .brand-text strong {
        display: block;
        max-width: 100%;
        white-space: normal !important;
        font-size: .76rem !important;
        line-height: 1.13;
        letter-spacing: .035em !important;
    }

    .brand-text small {
        display: none !important;
    }

    .nav-toggle {
        display: block !important;
        flex: 0 0 44px;
        margin-left: auto;
    }

    .main-nav {
        position: absolute !important;
        top: 74px !important;
        left: 0 !important;
        right: 0 !important;
        z-index: 120;
        display: none !important;
        flex-direction: column;
        align-items: stretch;
        gap: 8px !important;
        max-height: calc(100dvh - 74px);
        overflow-y: auto;
        overscroll-behavior: contain;
        padding: 14px 14px 22px !important;
        border-top: 1px solid var(--border);
        border-bottom: 1px solid var(--border);
        background: rgba(8,9,11,.985);
        box-shadow: 0 22px 55px rgba(0,0,0,.48);
        white-space: normal !important;
    }

    .main-nav.is-open {
        display: flex !important;
    }

    .main-nav > a:not(.nav-cta),
    .nav-dropdown-trigger,
    .nav-cta {
        width: 100% !important;
        min-height: 48px !important;
        border-radius: 12px !important;
        justify-content: space-between !important;
        font-size: .9rem !important;
    }

    .nav-cta {
        justify-content: center !important;
    }

    .nav-dropdown {
        width: 100%;
        display: block !important;
    }

    .nav-dropdown-menu {
        position: static !important;
        width: 100% !important;
        min-width: 0 !important;
        margin-top: 7px !important;
        padding: 6px 0 6px 12px !important;
        border: 0 !important;
        border-left: 1px solid rgba(231,180,88,.28) !important;
        border-radius: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
        opacity: 1 !important;
        visibility: visible !important;
        transform: none !important;
        display: none !important;
    }

    .nav-dropdown.is-open .nav-dropdown-menu {
        display: grid !important;
    }

    .nav-dropdown-menu a {
        min-width: 0;
        padding: 11px 10px !important;
        border-radius: 10px !important;
    }

    .nav-dropdown-menu strong,
    .nav-dropdown-menu small {
        white-space: normal;
    }

    .seo-breadcrumbs .container {
        width: 100%;
        padding-inline: 14px;
        scrollbar-width: thin;
    }

    /* ---------------------------------------------------------
       Hero / allgemeine Seitentitel
       --------------------------------------------------------- */
    .hero,
    .page-hero,
    .gallery-page-hero {
        min-height: 0 !important;
    }

    .hero-content {
        padding-top: 54px;
        padding-bottom: 62px;
    }

    .hero h1,
    .page-hero h1,
    .gallery-page-hero h1 {
        max-width: 100%;
        font-size: clamp(2.45rem, 11vw, 4.7rem) !important;
        line-height: .96 !important;
        overflow-wrap: break-word;
    }

    .page-hero {
        padding-top: 54px;
        padding-bottom: 54px;
    }

    .page-hero p:not(.eyebrow),
    .hero-copy,
    .service-page-hero-copy > p:not(.eyebrow) {
        font-size: 1rem !important;
        line-height: 1.65 !important;
    }

    .hero-actions,
    .compact-actions {
        flex-wrap: wrap;
    }

    .hero-text-panel,
    .service-page-hero-copy {
        width: 100% !important;
        max-width: none !important;
        min-height: 0 !important;
        aspect-ratio: auto !important;
    }

    .hero-focus-card,
    .service-page-hero-media {
        width: 100% !important;
        max-width: none !important;
        aspect-ratio: 16 / 9 !important;
    }

    .service-page-hero {
        padding-top: 44px;
        padding-bottom: 54px;
    }

    .hero-v14-1-layout,
    .service-page-hero-grid {
        width: min(calc(100% - 28px), 1180px) !important;
        grid-template-columns: 1fr !important;
        gap: 24px !important;
    }

    /* ---------------------------------------------------------
       Alle großen Inhaltsgrids
       --------------------------------------------------------- */
    .home-intro-grid,
    .home-seo-content-grid,
    .home-expertise-grid,
    .regional-seo-split,
    .editorial-split,
    .contact-info-layout,
    .faq-page-layout,
    .faq-teaser-grid,
    .legal-layout,
    .booking-layout,
    .cart-layout,
    .checkout-layout,
    .product-detail-grid,
    .about-v1721-intro-grid,
    .services-faq-layout,
    .finance-split-grid {
        grid-template-columns: 1fr !important;
        gap: 26px !important;
    }

    .home-facts-grid {
        grid-template-columns: repeat(2, minmax(0,1fr)) !important;
    }

    .home-facts-grid > div {
        min-height: 112px;
        border: 1px solid var(--border) !important;
    }

    .home-showtype-grid,
    .feature-card-grid.three,
    .region-seo-grid,
    .contact-path-grid,
    .old-services-stats,
    .process-grid,
    .process-grid-six,
    .about-v1721-work-grid {
        grid-template-columns: repeat(2, minmax(0,1fr)) !important;
    }

    .home-faq-grid > div:first-child,
    .faq-side-card,
    .legal-note-card,
    .cart-summary,
    .checkout-summary {
        position: static !important;
        top: auto !important;
    }

    .home-laser-seo .editorial-image,
    .editorial-image {
        min-height: 340px !important;
    }

    .public-cta,
    .global-footer-cta-inner {
        align-items: stretch !important;
        flex-direction: column !important;
    }

    .public-cta {
        padding: 28px !important;
    }

    .public-cta > .button {
        align-self: flex-start;
    }

    /* ---------------------------------------------------------
       Formulare / Buchung / Checkout
       --------------------------------------------------------- */
    input,
    select,
    textarea,
    button {
        max-width: 100%;
    }

    input,
    select,
    textarea {
        font-size: 16px !important; /* verhindert iOS-Zoom */
    }

    .form-grid,
    .form-grid-2,
    .admin-form-grid {
        grid-template-columns: 1fr !important;
    }

    .form-field-full,
    .admin-form-grid .full {
        grid-column: auto !important;
    }

    .form-section,
    .form-consent,
    .form-submit-row,
    .checkout-card {
        padding: 26px !important;
    }

    .form-submit-row {
        align-items: stretch !important;
        flex-direction: column !important;
    }

    .form-submit-row .button,
    .checkout-submit {
        width: 100%;
    }

    .booking-sidebar {
        position: static !important;
        grid-template-columns: 1fr !important;
    }

    .pickup-slot-grid,
    .payment-method-grid,
    .checkout-confirm-grid {
        grid-template-columns: 1fr !important;
    }

    .pickup-slot > span {
        min-height: 96px;
    }

    .checkout-section-title {
        gap: 11px;
    }

    .checkout-section-title > span {
        width: 36px;
        height: 36px;
        flex-basis: 36px;
    }

    .checkout-summary-item,
    .cart-total-row {
        gap: 12px;
    }

    .systemfirework-option {
        gap: 12px;
        padding: 17px;
    }

    /* ---------------------------------------------------------
       Shop / Produkte / Warenkorb
       --------------------------------------------------------- */
    .shop-grid {
        grid-template-columns: repeat(2, minmax(0,1fr)) !important;
    }

    .shop-toolbar,
    .shop-search-panel,
    .shop-search-main {
        align-items: stretch !important;
    }

    .shop-search-main {
        width: 100%;
    }

    .product-detail-hero {
        padding-top: 38px;
        padding-bottom: 54px;
    }

    .product-detail-image {
        max-width: 680px;
        margin-inline: auto;
    }

    .product-detail-content h1 {
        overflow-wrap: break-word;
    }

    .product-detail-facts {
        grid-template-columns: repeat(2, minmax(0,1fr)) !important;
    }

    .product-detail-cart {
        flex-wrap: wrap;
    }

    .cart-item {
        grid-template-columns: 96px minmax(0,1fr) !important;
        gap: 14px !important;
    }

    .cart-item img {
        width: 96px !important;
        height: 82px !important;
    }

    .cart-item-actions {
        grid-column: 1 / -1;
        flex-direction: row !important;
        justify-content: flex-end;
        align-items: center !important;
    }

    /* ---------------------------------------------------------
       Dienstleistungen / Über uns
       --------------------------------------------------------- */
    .old-service-card,
    .old-service-card-reverse {
        grid-template-columns: 1fr !important;
    }

    .old-service-card-reverse .old-service-image,
    .old-service-card-reverse .old-service-content {
        order: initial !important;
    }

    .old-service-content {
        padding: 30px !important;
    }

    .about-v1721-top-grid {
        grid-template-columns: 1fr !important;
        gap: 24px !important;
    }

    .about-v1721-profile-card {
        aspect-ratio: auto !important;
    }

    .about-v1721-duo-image {
        width: min(100%, 720px) !important;
        margin-inline: auto;
    }

    .about-v1721-member-row,
    .about-v1721-member-row-reverse {
        grid-template-columns: 1fr !important;
    }

    .about-v1721-member-row-reverse .about-v1721-member-image,
    .about-v1721-member-row-reverse .about-v1721-member-text {
        order: initial !important;
    }

    .about-v1721-member-image {
        aspect-ratio: 1 / 1 !important;
    }

    .about-v1721-member-text {
        aspect-ratio: auto !important;
        min-height: 0 !important;
    }

    /* ---------------------------------------------------------
       Galerie
       --------------------------------------------------------- */
    .gallery-masonry-grid {
        grid-template-columns: repeat(2, minmax(0,1fr)) !important;
        gap: 14px !important;
    }

    .gallery-masonry-item,
    .gallery-masonry-item:nth-child(5n+1) {
        grid-column: auto !important;
        grid-row: auto !important;
    }

    .gallery-strip-grid {
        grid-template-columns: repeat(2, minmax(0,1fr)) !important;
    }

    .gallery-lightbox-dialog {
        width: min(calc(100% - 24px), 900px) !important;
        max-height: calc(100dvh - 24px) !important;
    }

    .gallery-lightbox-dialog figure {
        max-height: calc(100dvh - 48px);
    }

    .gallery-lightbox-dialog img {
        max-height: calc(100dvh - 145px);
        object-fit: contain;
    }

    /* ---------------------------------------------------------
       FAQ / Recht / Kontakt
       --------------------------------------------------------- */
    .faq-side-card,
    .legal-note-card {
        position: static !important;
    }

    .faq-item summary {
        min-height: 58px;
    }

    .contact-path-card {
        min-width: 0;
    }

    /* ---------------------------------------------------------
       Footer
       --------------------------------------------------------- */
    .footer-grid,
    .footer-grid-v14 {
        grid-template-columns: repeat(2, minmax(0,1fr)) !important;
        gap: 28px !important;
    }

    .footer-bottom,
    .global-footer-cta-inner {
        gap: 18px;
    }

    .global-footer-cta-actions {
        width: 100%;
    }

    /* ---------------------------------------------------------
       Admin – ebenfalls handyfreundlich
       --------------------------------------------------------- */
    .admin-main-v1714 .container,
    .admin-shell-v1714 {
        width: min(calc(100% - 24px), 1480px) !important;
    }

    .admin-main-v1714 .admin-page-heading {
        align-items: stretch !important;
        flex-direction: column !important;
    }

    .admin-stat-grid,
    .finance-kpi-grid,
    .finance-metrics {
        grid-template-columns: repeat(2, minmax(0,1fr)) !important;
    }

    .admin-detail-grid,
    .admin-product-editor-grid,
    .pickup-admin-grid {
        grid-template-columns: 1fr !important;
    }

    .admin-table-wrap,
    .finance-table-section {
        width: 100%;
        max-width: 100%;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }

    .admin-table {
        min-width: 760px;
    }

    .admin-detail-list > div {
        grid-template-columns: 1fr !important;
        gap: 4px !important;
    }
}

@media (max-width: 700px) {
    .container,
    .site-header .header-inner,
    .site-header .header-topline-inner {
        width: min(calc(100% - 24px), var(--max-width, 1220px));
    }

    .section {
        padding-top: 48px;
        padding-bottom: 48px;
    }

    .eyebrow {
        font-size: .69rem;
        letter-spacing: .17em;
    }

    .hero h1,
    .page-hero h1,
    .gallery-page-hero h1 {
        font-size: clamp(2.2rem, 12vw, 3.7rem) !important;
    }

    .section-heading h2,
    .home-seo-copy h2,
    .home-expertise-grid h2,
    .regional-seo-split h2,
    .about-v1721-intro h2 {
        font-size: clamp(2rem, 9vw, 3.1rem) !important;
    }

    .hero-actions,
    .compact-actions,
    .global-footer-cta-actions,
    .about-v1721-owner-links {
        width: 100%;
        flex-direction: column;
        align-items: stretch;
    }

    .hero-actions .button,
    .compact-actions .button,
    .global-footer-cta-actions .button,
    .public-cta > .button {
        width: 100%;
        justify-content: center;
        text-align: center;
    }

    .hero-text-panel,
    .service-page-hero-copy {
        padding: 24px 22px !important;
        border-radius: 20px !important;
    }

    .hero-focus-card,
    .service-page-hero-media {
        border-radius: 18px !important;
    }

    .home-facts-grid,
    .home-showtype-grid,
    .feature-card-grid.three,
    .region-seo-grid,
    .contact-path-grid,
    .old-services-stats,
    .process-grid,
    .process-grid-six,
    .about-v1721-work-grid,
    .finance-kpi-grid,
    .finance-metrics,
    .admin-stat-grid {
        grid-template-columns: 1fr !important;
    }

    .regional-keyword-links {
        grid-template-columns: 1fr !important;
    }

    .regional-inline-link,
    .micro-help-row {
        align-items: stretch !important;
        flex-direction: column !important;
    }

    .regional-inline-link .button,
    .micro-help-row .button {
        width: 100%;
    }

    .form-section,
    .form-consent,
    .form-submit-row,
    .checkout-card,
    .checkout-summary,
    .cart-summary,
    .legal-content section,
    .faq-side-card,
    .legal-note-card {
        padding: 22px !important;
    }

    .request-summary {
        padding: 22px;
    }

    .request-summary dl > div {
        grid-template-columns: 1fr !important;
        gap: 3px !important;
    }

    .shop-grid {
        grid-template-columns: 1fr !important;
    }

    .shop-toolbar {
        flex-direction: column;
        align-items: stretch !important;
    }

    .shop-categories {
        overflow-x: auto;
        flex-wrap: nowrap;
        padding-bottom: 6px;
        scrollbar-width: thin;
    }

    .shop-categories a {
        flex: 0 0 auto;
    }

    .product-bottom,
    .product-card-actions {
        align-items: stretch !important;
        flex-direction: column !important;
    }

    .add-cart-form {
        width: 100%;
    }

    .add-cart-form .button {
        flex: 1;
    }

    .product-detail-facts {
        grid-template-columns: 1fr !important;
    }

    .product-detail-cart {
        align-items: stretch !important;
        flex-direction: column !important;
    }

    .product-detail-cart label,
    .product-detail-cart input,
    .product-detail-cart .button {
        width: 100%;
    }

    .cart-item {
        grid-template-columns: 78px minmax(0,1fr) !important;
        padding: 15px !important;
    }

    .cart-item img {
        width: 78px !important;
        height: 70px !important;
    }

    .cart-item-actions {
        justify-content: space-between !important;
    }

    .checkout-summary-item,
    .cart-total-row {
        align-items: flex-start;
    }

    .old-service-image,
    .old-service-image img {
        min-height: 250px !important;
    }

    .old-service-content {
        padding: 24px !important;
    }

    .old-service-price {
        align-items: flex-start;
        flex-direction: column;
    }

    .about-v1721-profile-copy,
    .about-v1721-member-text {
        padding: 24px !important;
    }

    .gallery-masonry-grid,
    .gallery-strip-grid {
        grid-template-columns: 1fr !important;
    }

    .gallery-filter {
        overflow-x: auto;
        flex-wrap: nowrap !important;
        padding-bottom: 6px;
    }

    .gallery-filter button {
        flex: 0 0 auto;
    }

    .faq-teaser-list a {
        grid-template-columns: 40px minmax(0,1fr) !important;
    }

    .faq-teaser-list em {
        grid-column: 2 !important;
    }

    .footer-grid,
    .footer-grid-v14 {
        grid-template-columns: 1fr !important;
        gap: 26px !important;
    }

    .footer-bottom {
        align-items: flex-start !important;
        flex-direction: column !important;
    }

    /* Admin */
    .admin-main-v1714 .admin-section {
        padding-top: 28px !important;
        padding-bottom: 50px !important;
    }

    .admin-dashboard-actions,
    .admin-toolbar,
    .admin-product-heading-actions,
    .admin-inline-actions {
        width: 100%;
        align-items: stretch !important;
        flex-direction: column !important;
    }

    .admin-dashboard-actions .button,
    .admin-toolbar .button,
    .admin-product-heading-actions .button,
    .admin-inline-actions .button,
    .admin-inline-actions form,
    .admin-inline-actions form .button {
        width: 100%;
    }

    .finance-inline-form,
    .finance-inline-form.booking label,
    .finance-input-pair {
        align-items: stretch !important;
        flex-direction: column !important;
        grid-template-columns: 1fr !important;
    }

    .finance-inline-form input,
    .finance-year-filter,
    .finance-year-filter select {
        width: 100% !important;
    }
}

@media (max-width: 480px) {
    .container,
    .site-header .header-inner,
    .site-header .header-topline-inner {
        width: min(calc(100% - 20px), var(--max-width, 1220px));
    }

    .header-inner {
        min-height: 68px !important;
    }

    .main-nav {
        top: 68px !important;
        max-height: calc(100dvh - 68px);
        padding-inline: 10px !important;
    }

    .brand-logo-wrap {
        width: 44px;
        height: 44px;
        flex-basis: 44px;
    }

    .brand-text strong {
        font-size: .7rem !important;
    }

    .nav-toggle {
        width: 42px;
        height: 42px;
        flex-basis: 42px;
    }

    .hero-content {
        padding-top: 42px;
        padding-bottom: 48px;
    }

    .page-hero,
    .service-page-hero {
        padding-top: 40px;
        padding-bottom: 44px;
    }

    .hero h1,
    .page-hero h1,
    .gallery-page-hero h1 {
        font-size: clamp(2rem, 12.5vw, 3.15rem) !important;
    }

    .hero-text-panel,
    .service-page-hero-copy,
    .public-cta,
    .form-section,
    .form-consent,
    .form-submit-row,
    .checkout-card,
    .checkout-summary,
    .cart-summary,
    .legal-content section,
    .faq-side-card,
    .legal-note-card,
    .about-v1721-profile-copy,
    .about-v1721-member-text {
        padding: 19px !important;
    }

    .button,
    button.button {
        min-height: 46px;
    }

    .checkout-section-title h2 {
        font-size: 1.22rem;
    }

    .pickup-slot > span {
        min-height: 88px;
        padding: 14px;
    }

    .systemfirework-option {
        padding: 15px;
    }

    .product-body {
        padding: 18px;
    }

    .cart-item {
        grid-template-columns: 68px minmax(0,1fr) !important;
        gap: 11px !important;
    }

    .cart-item img {
        width: 68px !important;
        height: 62px !important;
    }

    .cart-item-actions {
        grid-column: 1 / -1;
        flex-wrap: wrap;
    }

    .about-v1721-duo-badge {
        left: 8px !important;
        right: 8px !important;
        bottom: 8px !important;
    }

    .gallery-lightbox-nav {
        width: 40px !important;
        height: 40px !important;
    }

    .admin-brand-copy-v1714 strong {
        max-width: 150px !important;
        font-size: .61rem !important;
    }

    .admin-brand-logo-v1714 {
        width: 42px !important;
        height: 42px !important;
        flex-basis: 42px !important;
    }

    .admin-stat-grid,
    .finance-kpi-grid,
    .finance-metrics {
        grid-template-columns: 1fr !important;
    }
}

/* Touch-Geräte: Hover-Bewegungen abschalten, ohne Desktop zu verändern. */
@media (hover: none) and (pointer: coarse) {
    .button:hover,
    .product-card:hover,
    .gallery-masonry-item:hover img,
    .contact-path-card:hover,
    .dashboard-quicklinks a:hover {
        transform: none !important;
    }
}


/* ============================================================
   V17.26 – Hochzeit & Geburtstag thematisch gestaltet
   ============================================================ */

/* ---------------- Hochzeit: Champagner / Rosé / Gold ---------------- */
.wedding-v1726-hero{
    --wedding-champagne:#ead7b5;
    --wedding-rose:#c98f94;
    --wedding-cream:#f2e8da;
    padding:76px 0 74px;
    overflow:hidden;
    background:
        radial-gradient(circle at 14% 14%,rgba(201,143,148,.16),transparent 30%),
        radial-gradient(circle at 88% 18%,rgba(234,215,181,.10),transparent 28%),
        linear-gradient(145deg,#100e10,#090a0c 58%,#0e0d0d);
    border-bottom:1px solid rgba(234,215,181,.12);
}
.wedding-v1726-hero-grid{display:grid;grid-template-columns:minmax(0,1.02fr) minmax(400px,.98fr);gap:54px;align-items:center}
.wedding-v1726-copy h1{margin:.25rem 0 1.2rem;font-size:clamp(3.5rem,6.8vw,7.2rem);line-height:.9;letter-spacing:-.058em}
.wedding-v1726-copy h1 span{color:var(--wedding-champagne)}
.wedding-v1726-copy>p:not(.eyebrow){max-width:720px;color:#d1c8c5;font-size:1.12rem;line-height:1.72}
.wedding-v1726-copy .button-primary{background:linear-gradient(135deg,#e2bf82,#c9898e);border-color:transparent;color:#14100f}
.wedding-v1726-copy .button-secondary{border-color:rgba(234,215,181,.34)}
.wedding-v1726-visual{position:relative;overflow:hidden;aspect-ratio:4/5;border:1px solid rgba(234,215,181,.24);border-radius:30px;background:#111;box-shadow:0 30px 80px rgba(0,0,0,.40)}
.wedding-v1726-visual img{width:100%;height:100%;object-fit:cover;display:block}
.wedding-v1726-visual:after{content:'';position:absolute;inset:0;background:linear-gradient(to top,rgba(10,8,9,.83),transparent 50%);pointer-events:none}
.wedding-v1726-image-note{position:absolute;z-index:2;left:20px;right:20px;bottom:20px;padding:17px 19px;border:1px solid rgba(255,255,255,.14);border-radius:16px;background:rgba(13,10,11,.72);backdrop-filter:blur(12px)}
.wedding-v1726-image-note span{display:block;color:var(--wedding-champagne);font-size:.68rem;font-weight:900;letter-spacing:.15em}
.wedding-v1726-image-note strong{display:block;margin-top:6px;color:#fff;font-size:1.03rem}
.wedding-v1726-quickfacts{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:30px}
.wedding-v1726-quickfacts div{padding:17px;border:1px solid rgba(234,215,181,.15);border-radius:15px;background:rgba(255,255,255,.025)}
.wedding-v1726-quickfacts strong{display:block;color:var(--wedding-champagne);font-size:1.12rem}
.wedding-v1726-quickfacts span{display:block;margin-top:5px;color:#ada4a4;font-size:.72rem;font-weight:700}
.wedding-v1726-intro{background:linear-gradient(180deg,#111013,#0b0c0e)}
.wedding-v1726-intro-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:68px;align-items:start}
.wedding-v1726-intro h2{margin:.25rem 0 0;font-size:clamp(2.5rem,5vw,5.2rem);line-height:.96;letter-spacing:-.05em;color:#f2e8da}
.wedding-v1726-intro-copy p{color:#c8c0bf;line-height:1.82;font-size:1.04rem}
.wedding-v1726-moments{background:#f0e8dd;color:#1b1718}
.wedding-v1726-moments .eyebrow{color:#9d676c}
.wedding-v1726-moments h2{color:#201a1b}
.wedding-v1726-moment-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.wedding-v1726-moment-grid article{min-height:280px;padding:30px;border:1px solid rgba(70,50,50,.10);border-radius:22px;background:rgba(255,255,255,.45);box-shadow:0 18px 46px rgba(51,37,37,.06)}
.wedding-v1726-moment-grid article>span{color:#b5757c;font-size:.76rem;font-weight:950;letter-spacing:.14em}
.wedding-v1726-moment-grid h3{margin:62px 0 12px;font-size:1.55rem;color:#231c1d}
.wedding-v1726-moment-grid p{margin:0;color:#655b5d;line-height:1.68}
.wedding-v1726-detail-grid{display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);border:1px solid rgba(234,215,181,.16);border-radius:26px;overflow:hidden;background:linear-gradient(145deg,rgba(201,143,148,.07),rgba(255,255,255,.018)),#101114}
.wedding-v1726-detail-image{min-height:520px}
.wedding-v1726-detail-image img{width:100%;height:100%;object-fit:cover;display:block}
.wedding-v1726-detail-copy{padding:50px;align-self:center}
.wedding-v1726-detail-copy h2{margin:.25rem 0 1rem;font-size:clamp(2.5rem,5vw,4.8rem);line-height:.96}
.wedding-v1726-detail-copy>p{color:#c4bec0;line-height:1.72}
.wedding-v1726-list{list-style:none;padding:0;margin:25px 0 30px;display:grid;gap:12px}
.wedding-v1726-list li{display:flex;gap:11px;align-items:flex-start;color:#d3cdce}
.wedding-v1726-list li span{color:#d9ac8e;font-weight:950}
.wedding-v1726-process{background:radial-gradient(circle at 50% 0,rgba(201,143,148,.075),transparent 38%),#08090b}
.wedding-v1726-process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}
.wedding-v1726-process-grid article{min-height:220px;padding:27px;border:1px solid rgba(234,215,181,.13);border-radius:18px;background:rgba(255,255,255,.02)}
.wedding-v1726-process-grid strong{color:#d9b994;font-size:.77rem;letter-spacing:.13em}
.wedding-v1726-process-grid h3{margin:42px 0 10px;font-size:1.3rem}
.wedding-v1726-process-grid p{margin:0;color:#aaa5a6;line-height:1.65}
.wedding-v1726-faq{background:linear-gradient(180deg,#111013,#0b0c0e)}
.wedding-v1726-faq-grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:52px;align-items:start}
.wedding-v1726-faq-grid h2{font-size:clamp(2.3rem,4.5vw,4.6rem);line-height:.98}
.wedding-v1726-faq-grid>div:first-child>p:not(.eyebrow){color:#bcb5b6;line-height:1.72}
.wedding-v1726-faq-list{display:grid;gap:10px}
.wedding-v1726-faq-list details{border:1px solid rgba(234,215,181,.14);border-radius:15px;background:rgba(255,255,255,.025);padding:0 20px}
.wedding-v1726-faq-list summary{cursor:pointer;padding:18px 0;font-weight:850;color:#eee3d5}
.wedding-v1726-faq-list p{padding:0 0 18px;margin:0;color:#b9b2b3;line-height:1.7}
.wedding-v1726-final{background:#f0e8dd;color:#1d1819}
.wedding-v1726-final-card{display:flex;justify-content:space-between;align-items:center;gap:28px;padding:38px 42px;border:1px solid rgba(80,55,55,.12);border-radius:24px;background:rgba(255,255,255,.50)}
.wedding-v1726-final-card h2{margin:.2rem 0 .5rem;color:#211b1c;font-size:clamp(2rem,4vw,3.8rem)}
.wedding-v1726-final-card p:not(.eyebrow){margin:0;color:#62585a}
.wedding-v1726-final-card .eyebrow{color:#9d676c}
.wedding-v1726-final-card .button-primary{background:linear-gradient(135deg,#dba97f,#c68188);border-color:transparent;color:#171211}

/* ---------------- Geburtstag: Feuerorange / Kupfer / Pflaume ---------------- */
.birthday-v1726-hero{
    --birthday-orange:#e08a45;
    --birthday-copper:#c66d3d;
    --birthday-plum:#9e5267;
    padding:76px 0 74px;
    overflow:hidden;
    background:
        radial-gradient(circle at 12% 15%,rgba(224,138,69,.18),transparent 30%),
        radial-gradient(circle at 88% 20%,rgba(158,82,103,.12),transparent 28%),
        linear-gradient(145deg,#100d0d,#090a0c 60%,#100c10);
    border-bottom:1px solid rgba(224,138,69,.12);
}
.birthday-v1726-hero-grid{display:grid;grid-template-columns:minmax(0,1.02fr) minmax(400px,.98fr);gap:54px;align-items:center}
.birthday-v1726-copy h1{margin:.25rem 0 1.2rem;font-size:clamp(3.5rem,6.8vw,7.2rem);line-height:.9;letter-spacing:-.058em}
.birthday-v1726-copy h1 span{color:#f0a35f}
.birthday-v1726-copy>p:not(.eyebrow){max-width:720px;color:#cec5c2;font-size:1.12rem;line-height:1.72}
.birthday-v1726-copy .button-primary{background:linear-gradient(135deg,#e08a45,#a94f64);border-color:transparent;color:#160e0c}
.birthday-v1726-copy .button-secondary{border-color:rgba(224,138,69,.30)}
.birthday-v1726-visual{position:relative;overflow:hidden;aspect-ratio:4/5;border:1px solid rgba(224,138,69,.22);border-radius:30px;background:#111;box-shadow:0 30px 80px rgba(0,0,0,.40)}
.birthday-v1726-visual img{width:100%;height:100%;object-fit:cover;display:block}
.birthday-v1726-visual:after{content:'';position:absolute;inset:0;background:linear-gradient(to top,rgba(12,7,8,.86),transparent 52%);pointer-events:none}
.birthday-v1726-image-note{position:absolute;z-index:2;left:20px;right:20px;bottom:20px;padding:17px 19px;border:1px solid rgba(255,255,255,.14);border-radius:16px;background:rgba(12,8,9,.74);backdrop-filter:blur(12px)}
.birthday-v1726-image-note span{display:block;color:#f0a35f;font-size:.68rem;font-weight:900;letter-spacing:.15em}
.birthday-v1726-image-note strong{display:block;margin-top:6px;color:#fff;font-size:1.03rem}
.birthday-v1726-quickfacts{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:30px}
.birthday-v1726-quickfacts div{padding:17px;border:1px solid rgba(224,138,69,.14);border-radius:15px;background:rgba(255,255,255,.025)}
.birthday-v1726-quickfacts strong{display:block;color:#f0a35f;font-size:1.12rem}
.birthday-v1726-quickfacts span{display:block;margin-top:5px;color:#aaa2a1;font-size:.72rem;font-weight:700}
.birthday-v1726-intro{background:linear-gradient(180deg,#100e0e,#0b0c0e)}
.birthday-v1726-intro-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:68px;align-items:start}
.birthday-v1726-intro h2{margin:.25rem 0 0;font-size:clamp(2.5rem,5vw,5.2rem);line-height:.96;letter-spacing:-.05em}
.birthday-v1726-intro-copy p{color:#c3bbba;line-height:1.82;font-size:1.04rem}
.birthday-v1726-options{background:linear-gradient(145deg,#1a0f0d,#181014 65%,#110e10)}
.birthday-v1726-option-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.birthday-v1726-option-grid article{min-height:280px;padding:30px;border:1px solid rgba(224,138,69,.15);border-radius:22px;background:linear-gradient(145deg,rgba(224,138,69,.06),rgba(158,82,103,.04))}
.birthday-v1726-option-grid article>span{color:#f0a35f;font-size:.76rem;font-weight:950;letter-spacing:.14em}
.birthday-v1726-option-grid h3{margin:62px 0 12px;font-size:1.55rem}
.birthday-v1726-option-grid p{margin:0;color:#bbb1b0;line-height:1.68}
.birthday-v1726-details{background:#08090b}
.birthday-v1726-detail-grid{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);border:1px solid rgba(224,138,69,.15);border-radius:26px;overflow:hidden;background:linear-gradient(145deg,rgba(224,138,69,.055),rgba(158,82,103,.03)),#101114}
.birthday-v1726-detail-copy{padding:50px;align-self:center}
.birthday-v1726-detail-copy h2{margin:.25rem 0 1rem;font-size:clamp(2.5rem,5vw,4.8rem);line-height:.96}
.birthday-v1726-detail-copy>p{color:#beb6b5;line-height:1.72}
.birthday-v1726-detail-image{min-height:520px}
.birthday-v1726-detail-image img{width:100%;height:100%;object-fit:cover;display:block}
.birthday-v1726-list{list-style:none;padding:0;margin:25px 0 30px;display:grid;gap:12px}
.birthday-v1726-list li{display:flex;gap:11px;align-items:flex-start;color:#d0c8c6}
.birthday-v1726-list li span{color:#f0a35f;font-weight:950}
.birthday-v1726-process{background:linear-gradient(180deg,#111013,#0b0c0e)}
.birthday-v1726-process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}
.birthday-v1726-process-grid article{min-height:220px;padding:27px;border:1px solid rgba(224,138,69,.12);border-radius:18px;background:rgba(255,255,255,.02)}
.birthday-v1726-process-grid strong{color:#ec9450;font-size:.77rem;letter-spacing:.13em}
.birthday-v1726-process-grid h3{margin:42px 0 10px;font-size:1.3rem}
.birthday-v1726-process-grid p{margin:0;color:#aaa3a2;line-height:1.65}
.birthday-v1726-region{background:linear-gradient(135deg,#1c100d,#160e13)}
.birthday-v1726-region-card{display:flex;justify-content:space-between;align-items:center;gap:28px;padding:38px 42px;border:1px solid rgba(224,138,69,.15);border-radius:24px;background:rgba(255,255,255,.025)}
.birthday-v1726-region-card h2{margin:.2rem 0 .5rem;font-size:clamp(2rem,4vw,3.7rem)}
.birthday-v1726-region-card p:not(.eyebrow){max-width:800px;margin:0;color:#bdb3b0;line-height:1.68}
.birthday-v1726-faq{background:#0a0b0d}
.birthday-v1726-faq-grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:52px;align-items:start}
.birthday-v1726-faq-grid h2{font-size:clamp(2.3rem,4.5vw,4.6rem);line-height:.98}
.birthday-v1726-faq-grid>div:first-child>p:not(.eyebrow){color:#b9b2b0;line-height:1.72}
.birthday-v1726-faq-list{display:grid;gap:10px}
.birthday-v1726-faq-list details{border:1px solid rgba(224,138,69,.13);border-radius:15px;background:rgba(255,255,255,.024);padding:0 20px}
.birthday-v1726-faq-list summary{cursor:pointer;padding:18px 0;font-weight:850;color:#f0d3bd}
.birthday-v1726-faq-list p{padding:0 0 18px;margin:0;color:#b8afad;line-height:1.7}
.birthday-v1726-final{background:linear-gradient(135deg,#21110c,#1a0e14)}
.birthday-v1726-final-card{display:flex;justify-content:space-between;align-items:center;gap:28px;padding:38px 42px;border:1px solid rgba(224,138,69,.16);border-radius:24px;background:rgba(255,255,255,.025)}
.birthday-v1726-final-card h2{margin:.2rem 0 .5rem;font-size:clamp(2rem,4vw,3.8rem)}
.birthday-v1726-final-card p:not(.eyebrow){margin:0;color:#bdb3b0}
.birthday-v1726-final-card .button-primary{background:linear-gradient(135deg,#e08a45,#a94f64);border-color:transparent;color:#150d0c}

@media(max-width:980px){
    .wedding-v1726-hero-grid,.birthday-v1726-hero-grid,.wedding-v1726-intro-grid,.birthday-v1726-intro-grid,.wedding-v1726-detail-grid,.birthday-v1726-detail-grid,.wedding-v1726-faq-grid,.birthday-v1726-faq-grid{grid-template-columns:1fr}
    .wedding-v1726-visual,.birthday-v1726-visual{max-width:720px;aspect-ratio:16/10}
    .wedding-v1726-detail-image,.birthday-v1726-detail-image{min-height:360px}
    .wedding-v1726-process-grid,.birthday-v1726-process-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:700px){
    .wedding-v1726-hero,.birthday-v1726-hero{padding:48px 0 54px}
    .wedding-v1726-hero-grid,.birthday-v1726-hero-grid{gap:26px}
    .wedding-v1726-copy h1,.birthday-v1726-copy h1{font-size:clamp(2.55rem,12vw,4.1rem)}
    .wedding-v1726-quickfacts,.birthday-v1726-quickfacts,.wedding-v1726-moment-grid,.birthday-v1726-option-grid,.wedding-v1726-process-grid,.birthday-v1726-process-grid{grid-template-columns:1fr}
    .wedding-v1726-visual,.birthday-v1726-visual{aspect-ratio:4/3;border-radius:20px}
    .wedding-v1726-intro-grid,.birthday-v1726-intro-grid{gap:24px}
    .wedding-v1726-moment-grid article,.birthday-v1726-option-grid article{min-height:0}
    .wedding-v1726-moment-grid h3,.birthday-v1726-option-grid h3{margin-top:34px}
    .wedding-v1726-detail-copy,.birthday-v1726-detail-copy{padding:24px}
    .wedding-v1726-detail-image,.birthday-v1726-detail-image{min-height:270px}
    .wedding-v1726-region-card,.birthday-v1726-region-card,.wedding-v1726-final-card,.birthday-v1726-final-card{align-items:stretch;flex-direction:column;padding:25px}
    .wedding-v1726-region-card .button,.birthday-v1726-region-card .button,.wedding-v1726-final-card .button,.birthday-v1726-final-card .button{width:100%;justify-content:center}
}


/* ============================================================
   V17.27 – Events, Firmen & Mega Events
   ============================================================ */

/* ---------- EVENT: Petrol / Cyan / warm Gold ---------- */
.event-v1727-hero{
    --event-cyan:#66d7d1;
    --event-petrol:#1d7778;
    --event-gold:#e2a657;
    padding:76px 0 74px;
    overflow:hidden;
    background:
        radial-gradient(circle at 13% 14%,rgba(102,215,209,.15),transparent 30%),
        radial-gradient(circle at 88% 18%,rgba(226,166,87,.11),transparent 28%),
        linear-gradient(145deg,#081113,#090a0c 62%,#10100c);
    border-bottom:1px solid rgba(102,215,209,.12)
}
.event-v1727-hero-grid{display:grid;grid-template-columns:minmax(0,1.03fr) minmax(400px,.97fr);gap:54px;align-items:center}
.event-v1727-copy h1{margin:.25rem 0 1.2rem;font-size:clamp(3.45rem,6.8vw,7.1rem);line-height:.9;letter-spacing:-.058em}
.event-v1727-copy h1 span{color:#7de2dc}
.event-v1727-copy>p:not(.eyebrow){max-width:720px;color:#c7cecd;font-size:1.12rem;line-height:1.72}
.event-v1727-copy .button-primary{background:linear-gradient(135deg,#70ddd7,#e2a657);border-color:transparent;color:#071111}
.event-v1727-copy .button-secondary{border-color:rgba(102,215,209,.30)}
.event-v1727-visual{position:relative;overflow:hidden;aspect-ratio:4/5;border:1px solid rgba(102,215,209,.22);border-radius:30px;background:#0b1112;box-shadow:0 30px 80px rgba(0,0,0,.40)}
.event-v1727-visual img{width:100%;height:100%;object-fit:cover;display:block}
.event-v1727-visual:after{content:'';position:absolute;inset:0;background:linear-gradient(to top,rgba(5,13,14,.88),transparent 54%);pointer-events:none}
.event-v1727-image-note{position:absolute;z-index:2;left:20px;right:20px;bottom:20px;padding:17px 19px;border:1px solid rgba(255,255,255,.14);border-radius:16px;background:rgba(6,17,18,.74);backdrop-filter:blur(12px)}
.event-v1727-image-note span{display:block;color:#78dfd9;font-size:.68rem;font-weight:900;letter-spacing:.15em}
.event-v1727-image-note strong{display:block;margin-top:6px;color:#fff;font-size:1.03rem}
.event-v1727-quickfacts{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:30px}
.event-v1727-quickfacts div{padding:17px;border:1px solid rgba(102,215,209,.14);border-radius:15px;background:rgba(255,255,255,.025)}
.event-v1727-quickfacts strong{display:block;color:#79e1db;font-size:1.12rem}
.event-v1727-quickfacts span{display:block;margin-top:5px;color:#a7b0af;font-size:.72rem;font-weight:700}
.event-v1727-intro{background:linear-gradient(180deg,#0d1213,#0b0c0e)}
.event-v1727-intro-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:68px;align-items:start}
.event-v1727-intro h2{margin:.25rem 0 0;font-size:clamp(2.5rem,5vw,5.2rem);line-height:.96;letter-spacing:-.05em}
.event-v1727-intro-copy p{color:#bec7c6;line-height:1.82;font-size:1.04rem}
.event-v1727-formats{background:linear-gradient(145deg,#0b1a1b,#121510 70%,#0d1112)}
.event-v1727-format-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.event-v1727-format-grid article{min-height:280px;padding:30px;border:1px solid rgba(102,215,209,.15);border-radius:22px;background:linear-gradient(145deg,rgba(102,215,209,.055),rgba(226,166,87,.035))}
.event-v1727-format-grid article>span{color:#79e1db;font-size:.76rem;font-weight:950;letter-spacing:.14em}
.event-v1727-format-grid h3{margin:62px 0 12px;font-size:1.55rem}
.event-v1727-format-grid p{margin:0;color:#b6bfbe;line-height:1.68}
.event-v1727-details{background:#08090b}
.event-v1727-detail-grid{display:grid;grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr);border:1px solid rgba(102,215,209,.15);border-radius:26px;overflow:hidden;background:linear-gradient(145deg,rgba(102,215,209,.045),rgba(226,166,87,.025)),#101315}
.event-v1727-detail-image{min-height:520px}.event-v1727-detail-image img{width:100%;height:100%;object-fit:cover;display:block}
.event-v1727-detail-copy{padding:50px;align-self:center}.event-v1727-detail-copy h2{margin:.25rem 0 1rem;font-size:clamp(2.5rem,5vw,4.8rem);line-height:.96}
.event-v1727-detail-copy>p{color:#bac4c3;line-height:1.72}
.event-v1727-list{list-style:none;padding:0;margin:25px 0 30px;display:grid;gap:12px}
.event-v1727-list li{display:flex;gap:11px;align-items:flex-start;color:#ced5d4}.event-v1727-list li span{color:#79e1db;font-weight:950}
.event-v1727-process{background:linear-gradient(180deg,#0d1113,#090b0c)}
.event-v1727-process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}
.event-v1727-process-grid article{min-height:220px;padding:27px;border:1px solid rgba(102,215,209,.12);border-radius:18px;background:rgba(255,255,255,.02)}
.event-v1727-process-grid strong{color:#75ddd7;font-size:.77rem;letter-spacing:.13em}
.event-v1727-process-grid h3{margin:42px 0 10px;font-size:1.3rem}.event-v1727-process-grid p{margin:0;color:#a8b1b0;line-height:1.65}
.event-v1727-faq{background:linear-gradient(180deg,#0b1112,#08090b)}
.event-v1727-faq-grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:52px;align-items:start}
.event-v1727-faq-grid h2{font-size:clamp(2.3rem,4.5vw,4.6rem);line-height:.98}.event-v1727-faq-grid>div:first-child>p:not(.eyebrow){color:#b6c0bf;line-height:1.72}
.event-v1727-faq-list{display:grid;gap:10px}.event-v1727-faq-list details{border:1px solid rgba(102,215,209,.13);border-radius:15px;background:rgba(255,255,255,.024);padding:0 20px}
.event-v1727-faq-list summary{cursor:pointer;padding:18px 0;font-weight:850;color:#d8efed}.event-v1727-faq-list p{padding:0 0 18px;margin:0;color:#b4bebd;line-height:1.7}
.event-v1727-final{background:linear-gradient(135deg,#0b2324,#1b180f)}.event-v1727-final-card{display:flex;justify-content:space-between;align-items:center;gap:28px;padding:38px 42px;border:1px solid rgba(102,215,209,.16);border-radius:24px;background:rgba(255,255,255,.025)}
.event-v1727-final-card h2{margin:.2rem 0 .5rem;font-size:clamp(2rem,4vw,3.8rem)}.event-v1727-final-card p:not(.eyebrow){margin:0;color:#b8c1c0}.event-v1727-final-card .button-primary{background:linear-gradient(135deg,#70ddd7,#e2a657);border-color:transparent;color:#071111}

/* ---------- CORPORATE: Navy / Steel / Gold ---------- */
.corporate-v1727-hero{padding:76px 0 74px;overflow:hidden;background:radial-gradient(circle at 12% 15%,rgba(76,126,183,.18),transparent 30%),radial-gradient(circle at 88% 20%,rgba(214,173,88,.12),transparent 28%),linear-gradient(145deg,#0a1019,#090a0d 62%,#12100b);border-bottom:1px solid rgba(92,145,204,.13)}
.corporate-v1727-hero-grid{display:grid;grid-template-columns:minmax(0,1.03fr) minmax(400px,.97fr);gap:54px;align-items:center}
.corporate-v1727-copy h1{margin:.25rem 0 1.2rem;font-size:clamp(3.35rem,6.5vw,6.9rem);line-height:.9;letter-spacing:-.058em}.corporate-v1727-copy h1 span{color:#dfbd72}
.corporate-v1727-copy>p:not(.eyebrow){max-width:720px;color:#c4cad1;font-size:1.12rem;line-height:1.72}
.corporate-v1727-copy .button-primary{background:linear-gradient(135deg,#557fae,#dfbd72);border-color:transparent;color:#0a0f15}.corporate-v1727-copy .button-secondary{border-color:rgba(97,145,198,.32)}
.corporate-v1727-visual{position:relative;overflow:hidden;aspect-ratio:4/5;border:1px solid rgba(97,145,198,.23);border-radius:30px;background:#0c1017;box-shadow:0 30px 80px rgba(0,0,0,.40)}
.corporate-v1727-visual img{width:100%;height:100%;object-fit:cover;display:block}.corporate-v1727-visual:after{content:'';position:absolute;inset:0;background:linear-gradient(to top,rgba(6,10,17,.89),transparent 54%);pointer-events:none}
.corporate-v1727-image-note{position:absolute;z-index:2;left:20px;right:20px;bottom:20px;padding:17px 19px;border:1px solid rgba(255,255,255,.14);border-radius:16px;background:rgba(7,12,19,.76);backdrop-filter:blur(12px)}
.corporate-v1727-image-note span{display:block;color:#dfbd72;font-size:.68rem;font-weight:900;letter-spacing:.15em}.corporate-v1727-image-note strong{display:block;margin-top:6px;color:#fff;font-size:1.03rem}
.corporate-v1727-quickfacts{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:30px}.corporate-v1727-quickfacts div{padding:17px;border:1px solid rgba(97,145,198,.15);border-radius:15px;background:rgba(255,255,255,.025)}
.corporate-v1727-quickfacts strong{display:block;color:#e1bf76;font-size:1.12rem}.corporate-v1727-quickfacts span{display:block;margin-top:5px;color:#a8adb5;font-size:.72rem;font-weight:700}
.corporate-v1727-intro{background:linear-gradient(180deg,#0d1118,#0b0c0f)}.corporate-v1727-intro-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:68px;align-items:start}
.corporate-v1727-intro h2{margin:.25rem 0 0;font-size:clamp(2.5rem,5vw,5.2rem);line-height:.96;letter-spacing:-.05em}.corporate-v1727-intro-copy p{color:#bdc2ca;line-height:1.82;font-size:1.04rem}
.corporate-v1727-occasions{background:linear-gradient(145deg,#101826,#17140e 78%,#0e1117)}.corporate-v1727-occasion-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.corporate-v1727-occasion-grid article{min-height:280px;padding:30px;border:1px solid rgba(97,145,198,.16);border-radius:22px;background:linear-gradient(145deg,rgba(77,124,177,.06),rgba(214,173,88,.035))}
.corporate-v1727-occasion-grid article>span{color:#dfbd72;font-size:.76rem;font-weight:950;letter-spacing:.14em}.corporate-v1727-occasion-grid h3{margin:62px 0 12px;font-size:1.55rem}.corporate-v1727-occasion-grid p{margin:0;color:#b7bbc2;line-height:1.68}
.corporate-v1727-details{background:#08090b}.corporate-v1727-detail-grid{display:grid;grid-template-columns:minmax(0,.94fr) minmax(0,1.06fr);border:1px solid rgba(97,145,198,.15);border-radius:26px;overflow:hidden;background:linear-gradient(145deg,rgba(77,124,177,.045),rgba(214,173,88,.025)),#101216}
.corporate-v1727-detail-copy{padding:50px;align-self:center}.corporate-v1727-detail-copy h2{margin:.25rem 0 1rem;font-size:clamp(2.5rem,5vw,4.8rem);line-height:.96}.corporate-v1727-detail-copy>p{color:#bbc0c8;line-height:1.72}
.corporate-v1727-detail-image{min-height:520px}.corporate-v1727-detail-image img{width:100%;height:100%;object-fit:cover;display:block}
.corporate-v1727-list{list-style:none;padding:0;margin:25px 0 30px;display:grid;gap:12px}.corporate-v1727-list li{display:flex;gap:11px;align-items:flex-start;color:#ccd0d7}.corporate-v1727-list li span{color:#dfbd72;font-weight:950}
.corporate-v1727-process{background:linear-gradient(180deg,#0f1219,#0a0c10)}.corporate-v1727-process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.corporate-v1727-process-grid article{min-height:220px;padding:27px;border:1px solid rgba(97,145,198,.12);border-radius:18px;background:rgba(255,255,255,.02)}
.corporate-v1727-process-grid strong{color:#dfbd72;font-size:.77rem;letter-spacing:.13em}.corporate-v1727-process-grid h3{margin:42px 0 10px;font-size:1.3rem}.corporate-v1727-process-grid p{margin:0;color:#aab0b8;line-height:1.65}
.corporate-v1727-faq{background:#0a0c10}.corporate-v1727-faq-grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:52px;align-items:start}.corporate-v1727-faq-grid h2{font-size:clamp(2.3rem,4.5vw,4.6rem);line-height:.98}
.corporate-v1727-faq-grid>div:first-child>p:not(.eyebrow){color:#b7bcc4;line-height:1.72}.corporate-v1727-faq-list{display:grid;gap:10px}.corporate-v1727-faq-list details{border:1px solid rgba(97,145,198,.13);border-radius:15px;background:rgba(255,255,255,.024);padding:0 20px}
.corporate-v1727-faq-list summary{cursor:pointer;padding:18px 0;font-weight:850;color:#e7dbbf}.corporate-v1727-faq-list p{padding:0 0 18px;margin:0;color:#b3b8bf;line-height:1.7}
.corporate-v1727-final{background:linear-gradient(135deg,#101a2a,#211b0d)}.corporate-v1727-final-card{display:flex;justify-content:space-between;align-items:center;gap:28px;padding:38px 42px;border:1px solid rgba(97,145,198,.16);border-radius:24px;background:rgba(255,255,255,.025)}
.corporate-v1727-final-card h2{margin:.2rem 0 .5rem;font-size:clamp(2rem,4vw,3.8rem)}.corporate-v1727-final-card p:not(.eyebrow){margin:0;color:#b8bdc5}.corporate-v1727-final-card .button-primary{background:linear-gradient(135deg,#557fae,#dfbd72);border-color:transparent;color:#0a0f15}

/* ---------- MEGA: Deep Black / Red / Gold ---------- */
.mega-v1727-hero{padding:78px 0 76px;overflow:hidden;background:radial-gradient(circle at 12% 14%,rgba(210,72,55,.20),transparent 32%),radial-gradient(circle at 89% 16%,rgba(232,174,67,.17),transparent 30%),linear-gradient(145deg,#100706,#08090b 58%,#171007);border-bottom:1px solid rgba(232,174,67,.16)}
.mega-v1727-hero-grid{display:grid;grid-template-columns:minmax(0,1.03fr) minmax(420px,.97fr);gap:56px;align-items:center}.mega-v1727-copy h1{margin:.25rem 0 1.2rem;font-size:clamp(3.7rem,7.2vw,7.8rem);line-height:.88;letter-spacing:-.062em}.mega-v1727-copy h1 span{color:#eab147}
.mega-v1727-copy>p:not(.eyebrow){max-width:760px;color:#ccc4bd;font-size:1.14rem;line-height:1.74}.mega-v1727-copy .button-primary{background:linear-gradient(135deg,#d74a39,#eab147);border-color:transparent;color:#140907}.mega-v1727-copy .button-secondary{border-color:rgba(234,177,71,.32)}
.mega-v1727-visual{position:relative;overflow:hidden;aspect-ratio:4/5;border:1px solid rgba(234,177,71,.26);border-radius:30px;background:#0f0c09;box-shadow:0 32px 90px rgba(0,0,0,.48)}.mega-v1727-visual img{width:100%;height:100%;object-fit:cover;display:block}.mega-v1727-visual:after{content:'';position:absolute;inset:0;background:linear-gradient(to top,rgba(12,6,4,.90),transparent 54%);pointer-events:none}
.mega-v1727-image-note{position:absolute;z-index:2;left:20px;right:20px;bottom:20px;padding:17px 19px;border:1px solid rgba(255,255,255,.14);border-radius:16px;background:rgba(17,8,5,.76);backdrop-filter:blur(12px)}.mega-v1727-image-note span{display:block;color:#eab147;font-size:.68rem;font-weight:900;letter-spacing:.15em}.mega-v1727-image-note strong{display:block;margin-top:6px;color:#fff;font-size:1.03rem}
.mega-v1727-quickfacts{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:30px}.mega-v1727-quickfacts div{padding:17px;border:1px solid rgba(234,177,71,.15);border-radius:15px;background:rgba(255,255,255,.025)}.mega-v1727-quickfacts strong{display:block;color:#eab147;font-size:1.12rem}.mega-v1727-quickfacts span{display:block;margin-top:5px;color:#aaa29c;font-size:.72rem;font-weight:700}
.mega-v1727-intro{background:linear-gradient(180deg,#110c0a,#0a0b0d)}.mega-v1727-intro-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:68px;align-items:start}.mega-v1727-intro h2{margin:.25rem 0 0;font-size:clamp(2.6rem,5vw,5.4rem);line-height:.95;letter-spacing:-.05em}.mega-v1727-intro-copy p{color:#c3bbb5;line-height:1.82;font-size:1.04rem}
.mega-v1727-formats{background:linear-gradient(145deg,#1b0c09,#17110a 74%,#0d0e10)}.mega-v1727-format-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.mega-v1727-format-grid article{min-height:290px;padding:30px;border:1px solid rgba(234,177,71,.16);border-radius:22px;background:linear-gradient(145deg,rgba(215,74,57,.065),rgba(234,177,71,.04))}
.mega-v1727-format-grid article>span{color:#eab147;font-size:.76rem;font-weight:950;letter-spacing:.14em}.mega-v1727-format-grid h3{margin:66px 0 12px;font-size:1.55rem}.mega-v1727-format-grid p{margin:0;color:#bcb4ae;line-height:1.68}
.mega-v1727-budget{background:#08090b}.mega-v1727-budget-card{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:40px;padding:46px;border:1px solid rgba(234,177,71,.18);border-radius:28px;background:linear-gradient(145deg,rgba(215,74,57,.055),rgba(234,177,71,.035)),#101010}.mega-v1727-budget-copy h2{margin:.2rem 0 1rem;color:#eab147;font-size:clamp(3rem,6vw,6rem);line-height:.9}.mega-v1727-budget-copy p{color:#bfb6af;line-height:1.72}
.mega-v1727-budget-scale{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.mega-v1727-budget-scale div{padding:22px;border:1px solid rgba(234,177,71,.12);border-radius:17px;background:rgba(255,255,255,.025)}.mega-v1727-budget-scale span{display:block;color:#f1c061;font-size:1.35rem;font-weight:900}.mega-v1727-budget-scale small{display:block;margin-top:6px;color:#aaa19a}
.mega-v1727-details{background:#090a0c}.mega-v1727-detail-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);border:1px solid rgba(234,177,71,.16);border-radius:26px;overflow:hidden;background:linear-gradient(145deg,rgba(215,74,57,.04),rgba(234,177,71,.025)),#111113}.mega-v1727-detail-image{min-height:540px}.mega-v1727-detail-image img{width:100%;height:100%;object-fit:cover;display:block}.mega-v1727-detail-copy{padding:50px;align-self:center}.mega-v1727-detail-copy h2{margin:.25rem 0 1rem;font-size:clamp(2.5rem,5vw,4.8rem);line-height:.96}
.mega-v1727-list{list-style:none;padding:0;margin:25px 0 30px;display:grid;gap:12px}.mega-v1727-list li{display:flex;gap:11px;align-items:flex-start;color:#cec6c0}.mega-v1727-list li span{color:#eab147;font-weight:950}
.mega-v1727-process{background:linear-gradient(180deg,#111012,#09090b)}.mega-v1727-process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.mega-v1727-process-grid article{min-height:220px;padding:27px;border:1px solid rgba(234,177,71,.12);border-radius:18px;background:rgba(255,255,255,.02)}.mega-v1727-process-grid strong{color:#eab147;font-size:.77rem;letter-spacing:.13em}.mega-v1727-process-grid h3{margin:42px 0 10px;font-size:1.3rem}.mega-v1727-process-grid p{margin:0;color:#aaa29d;line-height:1.65}
.mega-v1727-faq{background:#0a0909}.mega-v1727-faq-grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:52px;align-items:start}.mega-v1727-faq-grid h2{font-size:clamp(2.3rem,4.5vw,4.6rem);line-height:.98}.mega-v1727-faq-grid>div:first-child>p:not(.eyebrow){color:#bbb2ac;line-height:1.72}.mega-v1727-faq-list{display:grid;gap:10px}.mega-v1727-faq-list details{border:1px solid rgba(234,177,71,.14);border-radius:15px;background:rgba(255,255,255,.024);padding:0 20px}.mega-v1727-faq-list summary{cursor:pointer;padding:18px 0;font-weight:850;color:#f0d3a0}.mega-v1727-faq-list p{padding:0 0 18px;margin:0;color:#b7afa9;line-height:1.7}
.mega-v1727-final{background:linear-gradient(135deg,#1d0b08,#22180a)}.mega-v1727-final-card{display:flex;justify-content:space-between;align-items:center;gap:28px;padding:38px 42px;border:1px solid rgba(234,177,71,.18);border-radius:24px;background:rgba(255,255,255,.025)}.mega-v1727-final-card h2{margin:.2rem 0 .5rem;font-size:clamp(2rem,4vw,3.8rem)}.mega-v1727-final-card p:not(.eyebrow){margin:0;color:#bdb4ad}.mega-v1727-final-card .button-primary{background:linear-gradient(135deg,#d74a39,#eab147);border-color:transparent;color:#140907}

@media(max-width:980px){
    .event-v1727-hero-grid,.corporate-v1727-hero-grid,.mega-v1727-hero-grid,
    .event-v1727-intro-grid,.corporate-v1727-intro-grid,.mega-v1727-intro-grid,
    .event-v1727-detail-grid,.corporate-v1727-detail-grid,.mega-v1727-detail-grid,
    .event-v1727-faq-grid,.corporate-v1727-faq-grid,.mega-v1727-faq-grid,
    .mega-v1727-budget-card{grid-template-columns:1fr}
    .event-v1727-visual,.corporate-v1727-visual,.mega-v1727-visual{max-width:720px;aspect-ratio:16/10}
    .event-v1727-detail-image,.corporate-v1727-detail-image,.mega-v1727-detail-image{min-height:360px}
    .event-v1727-process-grid,.corporate-v1727-process-grid,.mega-v1727-process-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:700px){
    .event-v1727-hero,.corporate-v1727-hero,.mega-v1727-hero{padding:48px 0 54px}
    .event-v1727-hero-grid,.corporate-v1727-hero-grid,.mega-v1727-hero-grid{gap:26px}
    .event-v1727-copy h1,.corporate-v1727-copy h1,.mega-v1727-copy h1{font-size:clamp(2.55rem,12vw,4.1rem)}
    .event-v1727-quickfacts,.corporate-v1727-quickfacts,.mega-v1727-quickfacts,
    .event-v1727-format-grid,.corporate-v1727-occasion-grid,.mega-v1727-format-grid,
    .event-v1727-process-grid,.corporate-v1727-process-grid,.mega-v1727-process-grid,
    .mega-v1727-budget-scale{grid-template-columns:1fr}
    .event-v1727-visual,.corporate-v1727-visual,.mega-v1727-visual{aspect-ratio:4/3;border-radius:20px}
    .event-v1727-intro-grid,.corporate-v1727-intro-grid,.mega-v1727-intro-grid{gap:24px}
    .event-v1727-format-grid article,.corporate-v1727-occasion-grid article,.mega-v1727-format-grid article{min-height:0}
    .event-v1727-format-grid h3,.corporate-v1727-occasion-grid h3,.mega-v1727-format-grid h3{margin-top:34px}
    .event-v1727-detail-copy,.corporate-v1727-detail-copy,.mega-v1727-detail-copy,.mega-v1727-budget-card{padding:24px}
    .event-v1727-detail-image,.corporate-v1727-detail-image,.mega-v1727-detail-image{min-height:270px}
    .event-v1727-final-card,.corporate-v1727-final-card,.mega-v1727-final-card{align-items:stretch;flex-direction:column;padding:25px}
    .event-v1727-final-card .button,.corporate-v1727-final-card .button,.mega-v1727-final-card .button{width:100%;justify-content:center}
}


/* ============================================================
   V17.28 – Kostenlose Beratung / Dienstleistungen / Lasershow
   ============================================================ */

/* Header consultation button */
.nav-consultation{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    min-height:42px;
    padding:0 14px;
    border:1px solid rgba(231,180,88,.30);
    border-radius:12px;
    background:rgba(231,180,88,.07);
    color:#f1d79f;
    font:inherit;
    font-size:.78rem;
    font-weight:850;
    cursor:pointer;
    white-space:nowrap;
    transition:border-color .2s ease,background .2s ease,transform .2s ease;
}
.nav-consultation:hover{border-color:rgba(231,180,88,.62);background:rgba(231,180,88,.13);transform:translateY(-1px)}
.nav-consultation span:last-child{display:grid;place-items:center;width:21px;height:21px;border-radius:50%;background:rgba(231,180,88,.14)}

/* Consultation modal */
.consultation-open-body{overflow:hidden}
.consultation-modal{position:fixed;inset:0;z-index:1000;display:none;align-items:center;justify-content:center;padding:20px}
.consultation-modal.is-open{display:flex}
.consultation-backdrop{position:absolute;inset:0;background:rgba(1,2,4,.84);backdrop-filter:blur(8px)}
.consultation-dialog{position:relative;z-index:2;width:min(940px,100%);max-height:calc(100dvh - 40px);overflow:auto;display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);border:1px solid rgba(231,180,88,.24);border-radius:26px;background:linear-gradient(145deg,#111318,#090a0d);box-shadow:0 35px 100px rgba(0,0,0,.55)}
.consultation-close{position:absolute;z-index:3;top:14px;right:14px;width:42px;height:42px;border:1px solid rgba(255,255,255,.12);border-radius:50%;background:rgba(7,8,10,.72);color:#fff;font-size:1.55rem;cursor:pointer}
.consultation-dialog-intro{padding:48px 42px;background:radial-gradient(circle at 20% 20%,rgba(231,180,88,.16),transparent 34%),linear-gradient(160deg,#17140e,#0b0d10)}
.consultation-dialog-intro h2{margin:.25rem 0 1rem;font-size:clamp(2.3rem,4vw,4.3rem);line-height:.94}
.consultation-dialog-intro>p:not(.eyebrow){color:#c4c0b7;line-height:1.72}
.consultation-benefits{display:flex;flex-wrap:wrap;gap:8px;margin-top:26px}
.consultation-benefits span{padding:8px 10px;border:1px solid rgba(231,180,88,.16);border-radius:999px;color:#e9cf98;font-size:.74rem;font-weight:800}
.consultation-form{display:grid;gap:16px;padding:48px 42px}
.consultation-form>label,.consultation-form-grid label{display:grid;gap:7px;color:#d7d9dd;font-weight:750;font-size:.82rem}
.consultation-form input,.consultation-form textarea{width:100%;border:1px solid var(--border);border-radius:12px;background:#0b0d10;color:#fff;padding:13px 14px;font:inherit}
.consultation-form input:focus,.consultation-form textarea:focus{outline:none;border-color:rgba(231,180,88,.68);box-shadow:0 0 0 4px rgba(231,180,88,.08)}
.consultation-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}
.consultation-consent{grid-template-columns:22px minmax(0,1fr)!important;align-items:flex-start!important;gap:10px!important;font-weight:500!important;color:#aeb1b7!important;line-height:1.55}
.consultation-consent input{width:19px;height:19px;margin-top:2px;accent-color:#d9a54b}
.consultation-consent a{color:#e4c580}
.consultation-submit{width:100%;margin-top:3px}
.consultation-form>small{color:#8f9298}
.consultation-honeypot{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.consultation-toast{position:fixed;z-index:1100;right:18px;bottom:18px;width:min(410px,calc(100% - 36px));padding:16px 18px;border-radius:15px;box-shadow:0 20px 55px rgba(0,0,0,.40);animation:consultationToastIn .28s ease}
.consultation-toast strong,.consultation-toast span{display:block}
.consultation-toast span{margin-top:4px;line-height:1.5}
.consultation-toast-success{border:1px solid rgba(81,191,125,.34);background:#102219;color:#d8f6e3}
.consultation-toast-error{border:1px solid rgba(226,91,80,.35);background:#2a1110;color:#ffd9d5}
@keyframes consultationToastIn{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}

/* Admin consultation */
.consultation-admin-stats{grid-template-columns:repeat(4,minmax(0,1fr))}
.consultation-question-cell{max-width:360px;line-height:1.5}
.consultation-contact-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}
.consultation-admin-question{font-size:1rem;line-height:1.7}
.consultation-status-neu{background:rgba(231,180,88,.12);color:#f0cf89}
.consultation-status-in_bearbeitung{background:rgba(92,151,219,.12);color:#a8d0ff}
.consultation-status-beantwortet{background:rgba(99,188,143,.12);color:#b1edca}
.consultation-status-erledigt{background:rgba(255,255,255,.08);color:#c7cad0}
.dashboard-kpi-consultation{border-color:rgba(231,180,88,.24)!important}

/* LASERSHOW */
.laser-v1728-hero{padding:78px 0 76px;overflow:hidden;background:radial-gradient(circle at 13% 15%,rgba(75,85,255,.22),transparent 31%),radial-gradient(circle at 88% 18%,rgba(0,223,255,.14),transparent 28%),linear-gradient(145deg,#070916,#090a0d 60%,#071116)}
.laser-v1728-hero-grid{display:grid;grid-template-columns:minmax(0,1.02fr) minmax(400px,.98fr);gap:54px;align-items:center}
.laser-v1728-copy h1{margin:.22rem 0 1.15rem;font-size:clamp(3.5rem,7vw,7.25rem);line-height:.89;letter-spacing:-.06em}.laser-v1728-copy h1 span{background:linear-gradient(90deg,#8d8cff,#5be8ff);-webkit-background-clip:text;background-clip:text;color:transparent}
.laser-v1728-copy>p:not(.eyebrow){max-width:730px;color:#c2c7d2;font-size:1.12rem;line-height:1.72}
.laser-v1728-copy .button-primary{background:linear-gradient(135deg,#6868ff,#40d7ef);border-color:transparent;color:#050916}
.laser-v1728-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:30px}.laser-v1728-facts div{padding:17px;border:1px solid rgba(104,104,255,.18);border-radius:15px;background:rgba(255,255,255,.026)}.laser-v1728-facts strong{display:block;color:#94eaff;font-size:1.05rem}.laser-v1728-facts span{display:block;margin-top:5px;color:#a7acb7;font-size:.72rem;font-weight:700}
.laser-v1728-visual{position:relative;overflow:hidden;aspect-ratio:4/5;border:1px solid rgba(91,232,255,.23);border-radius:30px;background:#080b17;box-shadow:0 30px 85px rgba(0,0,0,.44)}.laser-v1728-visual img{width:100%;height:100%;object-fit:cover;display:block}.laser-v1728-visual:after{content:'';position:absolute;inset:0;background:linear-gradient(to top,rgba(4,8,19,.9),transparent 54%)}
.laser-v1728-visual-note{position:absolute;z-index:2;left:20px;right:20px;bottom:20px;padding:17px 19px;border:1px solid rgba(255,255,255,.14);border-radius:16px;background:rgba(4,8,18,.75);backdrop-filter:blur(12px)}.laser-v1728-visual-note span{display:block;color:#74e7ff;font-size:.68rem;font-weight:900;letter-spacing:.15em}.laser-v1728-visual-note strong{display:block;margin-top:6px;color:#fff}
.laser-v1728-intro{background:linear-gradient(180deg,#0a0c17,#090a0c)}.laser-v1728-intro-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:68px}.laser-v1728-intro h2{margin:.25rem 0 0;font-size:clamp(2.5rem,5vw,5.2rem);line-height:.96}.laser-v1728-intro-grid>div:last-child p{color:#bdc2cc;line-height:1.82;font-size:1.04rem}
.laser-v1728-services{background:linear-gradient(145deg,#0e1024,#071318)}.laser-v1728-service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.laser-v1728-service-grid article{min-height:250px;padding:28px;border:1px solid rgba(104,104,255,.14);border-radius:20px;background:linear-gradient(145deg,rgba(104,104,255,.055),rgba(64,215,239,.035))}.laser-v1728-service-grid span{color:#73e7ff;font-size:.75rem;font-weight:950}.laser-v1728-service-grid h3{margin:46px 0 10px;font-size:1.35rem}.laser-v1728-service-grid p{margin:0;color:#abb1be;line-height:1.65}
.laser-v1728-highlight{background:#08090c}.laser-v1728-highlight-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);overflow:hidden;border:1px solid rgba(91,232,255,.15);border-radius:27px;background:#101219}.laser-v1728-highlight-image{min-height:520px}.laser-v1728-highlight-image img{width:100%;height:100%;object-fit:cover}.laser-v1728-highlight-copy{padding:48px;align-self:center}.laser-v1728-highlight-copy h2{font-size:clamp(2.5rem,5vw,4.7rem);line-height:.96}.laser-v1728-highlight-copy>p{color:#b9bec8;line-height:1.7}.laser-v1728-tags{display:flex;flex-wrap:wrap;gap:9px;margin:24px 0}.laser-v1728-tags span{padding:9px 11px;border:1px solid rgba(91,232,255,.15);border-radius:999px;color:#cbeef5;background:rgba(91,232,255,.04);font-size:.78rem;font-weight:750}
.laser-v1728-events{background:linear-gradient(180deg,#0b0d1b,#08090d)}.laser-v1728-event-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.laser-v1728-event-grid article{min-height:190px;padding:25px;border:1px solid rgba(104,104,255,.12);border-radius:18px;background:rgba(255,255,255,.02)}.laser-v1728-event-grid strong{color:#b3b5ff;font-size:1.2rem}.laser-v1728-event-grid p{color:#aeb4c0;line-height:1.64}
.laser-v1728-faq{background:#08090c}.laser-v1728-faq-grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:52px}.laser-v1728-faq-grid h2{font-size:clamp(2.3rem,4.5vw,4.5rem)}.laser-v1728-faq-grid>div:first-child>p:not(.eyebrow){color:#b8bdc7;line-height:1.7}.laser-v1728-faq-list{display:grid;gap:10px}.laser-v1728-faq-list details{padding:0 20px;border:1px solid rgba(91,232,255,.13);border-radius:15px;background:rgba(255,255,255,.022)}.laser-v1728-faq-list summary{padding:18px 0;cursor:pointer;color:#d8e9f4;font-weight:850}.laser-v1728-faq-list p{margin:0;padding:0 0 18px;color:#adb3bd;line-height:1.68}
.laser-v1728-final{background:linear-gradient(135deg,#101136,#071b21)}.laser-v1728-final-card{display:flex;justify-content:space-between;align-items:center;gap:28px;padding:38px 42px;border:1px solid rgba(91,232,255,.16);border-radius:24px;background:rgba(255,255,255,.024)}.laser-v1728-final-card h2{margin:.2rem 0 .5rem;font-size:clamp(2rem,4vw,3.8rem)}.laser-v1728-final-card p:not(.eyebrow){margin:0;color:#b8bdc7}

/* DIENSTLEISTUNGEN */
.services-v1728-hero{padding:78px 0 76px;overflow:hidden;background:radial-gradient(circle at 12% 15%,rgba(231,180,88,.17),transparent 31%),radial-gradient(circle at 88% 18%,rgba(111,131,163,.11),transparent 29%),linear-gradient(145deg,#12100b,#090a0d 62%,#0d1117)}
.services-v1728-hero-grid{display:grid;grid-template-columns:minmax(0,1.03fr) minmax(400px,.97fr);gap:54px;align-items:center}.services-v1728-copy h1{margin:.22rem 0 1.15rem;font-size:clamp(3.45rem,6.8vw,7rem);line-height:.9;letter-spacing:-.06em}.services-v1728-copy h1 span{color:#e4bd75}.services-v1728-copy>p:not(.eyebrow){max-width:740px;color:#c6c3bc;font-size:1.12rem;line-height:1.72}
.services-v1728-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:30px}.services-v1728-facts div{padding:17px;border:1px solid rgba(231,180,88,.14);border-radius:15px;background:rgba(255,255,255,.025)}.services-v1728-facts strong{display:block;color:#e7c27d;font-size:1.03rem}.services-v1728-facts span{display:block;margin-top:5px;color:#aaa8a3;font-size:.72rem;font-weight:700}
.services-v1728-visual{position:relative;overflow:hidden;aspect-ratio:4/5;border:1px solid rgba(231,180,88,.22);border-radius:30px;background:#10100e;box-shadow:0 30px 85px rgba(0,0,0,.43)}.services-v1728-visual img{width:100%;height:100%;object-fit:cover}.services-v1728-visual:after{content:'';position:absolute;inset:0;background:linear-gradient(to top,rgba(10,8,5,.9),transparent 54%)}.services-v1728-visual-note{position:absolute;z-index:2;left:20px;right:20px;bottom:20px;padding:17px 19px;border:1px solid rgba(255,255,255,.14);border-radius:16px;background:rgba(12,10,7,.75);backdrop-filter:blur(12px)}.services-v1728-visual-note span{display:block;color:#e7c27d;font-size:.68rem;font-weight:900;letter-spacing:.15em}.services-v1728-visual-note strong{display:block;margin-top:6px}
.services-v1728-overview{background:#090a0c}.services-v1728-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}.services-v1728-card{min-height:320px;display:flex;flex-direction:column;padding:29px;border:1px solid rgba(231,180,88,.12);border-radius:21px;background:linear-gradient(145deg,rgba(231,180,88,.035),rgba(255,255,255,.015));text-decoration:none;color:inherit;transition:transform .2s,border-color .2s}.services-v1728-card:hover{transform:translateY(-3px);border-color:rgba(231,180,88,.34)}.services-v1728-card>span{color:#dcb568;font-size:.75rem;font-weight:950}.services-v1728-card h3{margin:46px 0 10px;font-size:1.42rem}.services-v1728-card p{color:#b4b6bb;line-height:1.65}.services-v1728-card strong{margin-top:auto;color:#e8c985}.services-v1728-card em{margin-top:16px;color:#ddd;font-style:normal;font-weight:800}.services-v1728-card-mega{background:linear-gradient(145deg,rgba(206,70,50,.07),rgba(231,180,88,.035))}.services-v1728-card-laser{background:linear-gradient(145deg,rgba(95,92,246,.075),rgba(71,213,235,.03))}
.services-v1728-advice{background:linear-gradient(135deg,#161209,#0c1015)}.services-v1728-advice-card{display:flex;justify-content:space-between;align-items:center;gap:34px;padding:42px;border:1px solid rgba(231,180,88,.17);border-radius:25px;background:rgba(255,255,255,.024)}.services-v1728-advice-card h2{margin:.2rem 0 .6rem;font-size:clamp(2.2rem,4.6vw,4.6rem);line-height:.96}.services-v1728-advice-card p:not(.eyebrow){max-width:800px;color:#bcb9b1;line-height:1.7}
.services-v1728-scope{background:#0a0b0d}.services-v1728-system{background:linear-gradient(145deg,#10110e,#090a0c)}.services-v1728-system-grid{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);overflow:hidden;border:1px solid rgba(231,180,88,.14);border-radius:26px;background:#111316}.services-v1728-system-grid>div:first-child{padding:48px;align-self:center}.services-v1728-system-grid h2{font-size:clamp(2.4rem,5vw,4.8rem);line-height:.96}.services-v1728-system-grid p{color:#b9b9b5;line-height:1.7}.services-v1728-system-image{min-height:480px}.services-v1728-system-image img{width:100%;height:100%;object-fit:cover}
.services-v1728-final{background:linear-gradient(135deg,#171208,#101319)}.services-v1728-final-card{display:flex;justify-content:space-between;align-items:center;gap:28px;padding:38px 42px;border:1px solid rgba(231,180,88,.17);border-radius:24px;background:rgba(255,255,255,.024)}.services-v1728-final-card h2{margin:.2rem 0 .5rem;font-size:clamp(2rem,4vw,3.8rem)}.services-v1728-final-card p:not(.eyebrow){margin:0;color:#b9b7b1}

@media(max-width:1100px){
    .consultation-dialog{grid-template-columns:1fr;max-width:680px}
    .consultation-dialog-intro{padding:34px}
    .consultation-form{padding:34px}
    .laser-v1728-hero-grid,.services-v1728-hero-grid,.laser-v1728-intro-grid,.laser-v1728-highlight-grid,.laser-v1728-faq-grid,.services-v1728-system-grid{grid-template-columns:1fr}
    .laser-v1728-visual,.services-v1728-visual{max-width:720px;aspect-ratio:16/10}
    .laser-v1728-service-grid,.laser-v1728-event-grid,.services-v1728-grid{grid-template-columns:repeat(2,1fr)}
    .laser-v1728-highlight-image,.services-v1728-system-image{min-height:350px}
    .services-v1728-advice-card,.laser-v1728-final-card,.services-v1728-final-card{align-items:stretch;flex-direction:column}
}
@media(max-width:900px){
    .main-nav .nav-consultation{width:100%!important;min-height:48px!important}
}
@media(max-width:700px){
    .consultation-modal{padding:10px;align-items:flex-start;overflow-y:auto}
    .consultation-dialog{max-height:none;margin:10px 0;border-radius:20px}
    .consultation-dialog-intro,.consultation-form{padding:24px}
    .consultation-form-grid{grid-template-columns:1fr}
    .laser-v1728-hero,.services-v1728-hero{padding:48px 0 54px}
    .laser-v1728-copy h1,.services-v1728-copy h1{font-size:clamp(2.55rem,12vw,4rem)}
    .laser-v1728-facts,.services-v1728-facts,.laser-v1728-service-grid,.laser-v1728-event-grid,.services-v1728-grid{grid-template-columns:1fr}
    .laser-v1728-visual,.services-v1728-visual{aspect-ratio:4/3}
    .laser-v1728-highlight-copy,.services-v1728-system-grid>div:first-child{padding:24px}
    .laser-v1728-highlight-image,.services-v1728-system-image{min-height:260px}
    .services-v1728-advice-card,.laser-v1728-final-card,.services-v1728-final-card{padding:25px}
    .services-v1728-advice-card .button,.laser-v1728-final-card .button,.services-v1728-final-card .button{width:100%;justify-content:center}
    .consultation-admin-stats{grid-template-columns:1fr!important}
    .consultation-contact-actions{flex-direction:column}.consultation-contact-actions .button{width:100%}
}

/* ============================================================
   V17.29 – Leistungsseiten: Clipping-Schutz, Themenkarten & Glow
   ============================================================ */

/* 1) Stabilität: lange Texte und Grid-Inhalte dürfen nie kollidieren. */
.services-v1728-hero-grid > *,
.services-v1728-grid > *,
.services-v1728-system-grid > *,
.services-v1728-advice-card > *,
.services-v1728-final-card > *,
.wedding-v1726-hero-grid > *,
.wedding-v1726-intro-grid > *,
.wedding-v1726-detail-grid > *,
.birthday-v1726-hero-grid > *,
.birthday-v1726-intro-grid > *,
.birthday-v1726-detail-grid > *,
.event-v1727-hero-grid > *,
.event-v1727-intro-grid > *,
.event-v1727-detail-grid > *,
.corporate-v1727-hero-grid > *,
.corporate-v1727-intro-grid > *,
.corporate-v1727-detail-grid > *,
.mega-v1727-hero-grid > *,
.mega-v1727-intro-grid > *,
.mega-v1727-detail-grid > *,
.laser-v1728-hero-grid > *,
.laser-v1728-intro-grid > *,
.laser-v1728-highlight-grid > *,
.laser-v1728-faq-grid > * {
    min-width: 0;
}

.services-v1728-copy h1,
.services-v1728-copy p,
.services-v1728-card h3,
.services-v1728-card p,
.services-v1728-card strong,
.services-v1728-card em,
.services-v1728-advice-card h2,
.services-v1728-advice-card p,
.services-v1728-system-grid h2,
.services-v1728-system-grid p,
.services-v1728-final-card h2,
.services-v1728-final-card p,
.wedding-v1726-copy h1,
.birthday-v1726-copy h1,
.event-v1727-copy h1,
.corporate-v1727-copy h1,
.mega-v1727-copy h1,
.laser-v1728-copy h1,
.wedding-v1726-moment-grid h3,
.birthday-v1726-occasion-grid h3,
.event-v1727-format-grid h3,
.corporate-v1727-occasion-grid h3,
.mega-v1727-format-grid h3,
.laser-v1728-service-grid h3,
.laser-v1728-event-grid strong {
    max-width: 100%;
    overflow-wrap: break-word;
    word-break: normal;
    hyphens: auto;
}

.services-v1728-grid {
    align-items: stretch;
}

.services-v1728-card {
    --service-accent: #e7b458;
    --service-accent-2: #f0d08f;
    --service-accent-rgb: 231,180,88;
    position: relative;
    isolation: isolate;
    min-height: 350px;
    height: auto;
    overflow: hidden;
    border-color: rgba(var(--service-accent-rgb), .28);
    background:
        radial-gradient(circle at 90% 10%, rgba(var(--service-accent-rgb), .12), transparent 34%),
        linear-gradient(145deg, rgba(var(--service-accent-rgb), .055), rgba(255,255,255,.015));
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.025),
        0 18px 46px rgba(0,0,0,.20);
    transition: transform .22s ease, border-color .22s ease, box-shadow .22s ease, background .22s ease;
}

.services-v1728-card::before {
    content: '';
    position: absolute;
    inset: 0 auto 0 0;
    width: 3px;
    background: linear-gradient(to bottom, var(--service-accent), var(--service-accent-2));
    box-shadow: 0 0 18px rgba(var(--service-accent-rgb), .55);
    pointer-events: none;
}

.services-v1728-card:hover,
.services-v1728-card:focus-visible {
    transform: translateY(-4px);
    border-color: rgba(var(--service-accent-rgb), .62);
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.04),
        0 0 0 1px rgba(var(--service-accent-rgb), .16),
        0 0 28px rgba(var(--service-accent-rgb), .20),
        0 24px 58px rgba(0,0,0,.30);
    outline: none;
}

.services-v1728-card > span {
    color: var(--service-accent);
}

.services-v1728-card h3 {
    margin: 38px 0 12px;
    line-height: 1.08;
}

.services-v1728-card p {
    margin: 0 0 22px;
}

.services-v1728-card strong {
    color: var(--service-accent-2);
    line-height: 1.35;
}

.services-v1728-card em {
    align-self: flex-start;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 40px;
    max-width: 100%;
    padding: 9px 13px;
    border: 1px solid rgba(var(--service-accent-rgb), .42);
    border-radius: 11px;
    color: #fff;
    background: rgba(var(--service-accent-rgb), .08);
    box-shadow:
        0 0 0 1px rgba(var(--service-accent-rgb), .06),
        0 0 16px rgba(var(--service-accent-rgb), .17);
    line-height: 1.25;
}

.services-v1728-card:hover em,
.services-v1728-card:focus-visible em {
    border-color: rgba(var(--service-accent-rgb), .72);
    background: rgba(var(--service-accent-rgb), .13);
    box-shadow:
        0 0 0 1px rgba(var(--service-accent-rgb), .13),
        0 0 22px rgba(var(--service-accent-rgb), .31);
}

/* Themenfarben entsprechend den Zielseiten. */
.services-v1728-card-wedding {
    --service-accent: #e2bf82;
    --service-accent-2: #d79ba0;
    --service-accent-rgb: 226,191,130;
    background:
        radial-gradient(circle at 90% 10%, rgba(201,137,142,.16), transparent 36%),
        linear-gradient(145deg, rgba(226,191,130,.075), rgba(201,137,142,.035));
}
.services-v1728-card-event {
    --service-accent: #70ddd7;
    --service-accent-2: #e2a657;
    --service-accent-rgb: 112,221,215;
    background:
        radial-gradient(circle at 90% 10%, rgba(112,221,215,.14), transparent 36%),
        linear-gradient(145deg, rgba(102,215,209,.07), rgba(226,166,87,.035));
}
.services-v1728-card-corporate {
    --service-accent: #6f9bd0;
    --service-accent-2: #dfbd72;
    --service-accent-rgb: 111,155,208;
    background:
        radial-gradient(circle at 90% 10%, rgba(85,127,174,.17), transparent 36%),
        linear-gradient(145deg, rgba(85,127,174,.075), rgba(223,189,114,.035));
}
.services-v1728-card-mega {
    --service-accent: #e05a49;
    --service-accent-2: #eab147;
    --service-accent-rgb: 224,90,73;
    background:
        radial-gradient(circle at 90% 10%, rgba(215,74,57,.18), transparent 36%),
        linear-gradient(145deg, rgba(215,74,57,.08), rgba(234,177,71,.04));
}
.services-v1728-card-laser {
    --service-accent: #8585ff;
    --service-accent-2: #55dff5;
    --service-accent-rgb: 133,133,255;
    background:
        radial-gradient(circle at 90% 10%, rgba(64,215,239,.14), transparent 36%),
        linear-gradient(145deg, rgba(104,104,255,.09), rgba(64,215,239,.035));
}
.services-v1728-card-system {
    --service-accent: #e89a42;
    --service-accent-2: #f1c56e;
    --service-accent-rgb: 232,154,66;
    background:
        radial-gradient(circle at 90% 10%, rgba(232,154,66,.15), transparent 36%),
        linear-gradient(145deg, rgba(197,104,35,.08), rgba(241,197,110,.035));
}

/* 2) Buttons leuchten passend zur jeweiligen Leistungsseite. */
[class*="wedding-v1726-"] .button {
    box-shadow: 0 0 0 1px rgba(226,191,130,.13), 0 0 22px rgba(201,137,142,.22);
}
[class*="wedding-v1726-"] .button:hover,
[class*="wedding-v1726-"] .button:focus-visible {
    box-shadow: 0 0 0 1px rgba(226,191,130,.34), 0 0 30px rgba(201,137,142,.35);
}

[class*="birthday-v1726-"] .button {
    box-shadow: 0 0 0 1px rgba(224,138,69,.14), 0 0 22px rgba(169,79,100,.22);
}
[class*="birthday-v1726-"] .button:hover,
[class*="birthday-v1726-"] .button:focus-visible {
    box-shadow: 0 0 0 1px rgba(224,138,69,.35), 0 0 30px rgba(169,79,100,.34);
}

[class*="event-v1727-"] .button {
    box-shadow: 0 0 0 1px rgba(112,221,215,.13), 0 0 22px rgba(102,215,209,.22);
}
[class*="event-v1727-"] .button:hover,
[class*="event-v1727-"] .button:focus-visible {
    box-shadow: 0 0 0 1px rgba(112,221,215,.36), 0 0 30px rgba(102,215,209,.36);
}

[class*="corporate-v1727-"] .button {
    box-shadow: 0 0 0 1px rgba(111,155,208,.13), 0 0 22px rgba(85,127,174,.24);
}
[class*="corporate-v1727-"] .button:hover,
[class*="corporate-v1727-"] .button:focus-visible {
    box-shadow: 0 0 0 1px rgba(111,155,208,.36), 0 0 30px rgba(85,127,174,.38);
}

[class*="mega-v1727-"] .button {
    box-shadow: 0 0 0 1px rgba(224,90,73,.14), 0 0 24px rgba(215,74,57,.24);
}
[class*="mega-v1727-"] .button:hover,
[class*="mega-v1727-"] .button:focus-visible {
    box-shadow: 0 0 0 1px rgba(234,177,71,.36), 0 0 32px rgba(215,74,57,.40);
}

[class*="laser-v1728-"] .button {
    box-shadow: 0 0 0 1px rgba(133,133,255,.15), 0 0 24px rgba(64,215,239,.22);
}
[class*="laser-v1728-"] .button:hover,
[class*="laser-v1728-"] .button:focus-visible {
    box-shadow: 0 0 0 1px rgba(85,223,245,.38), 0 0 32px rgba(104,104,255,.40);
}

[class*="services-v1728-"] .button {
    box-shadow: 0 0 0 1px rgba(231,180,88,.14), 0 0 23px rgba(231,180,88,.21);
}
[class*="services-v1728-"] .button:hover,
[class*="services-v1728-"] .button:focus-visible {
    box-shadow: 0 0 0 1px rgba(231,180,88,.38), 0 0 31px rgba(231,180,88,.36);
}

/* Die Beratung in den Themenbereichen soll ebenfalls sichtbar glühen. */
[class*="wedding-v1726-"] .consultation-open,
[class*="birthday-v1726-"] .consultation-open,
[class*="event-v1727-"] .consultation-open,
[class*="corporate-v1727-"] .consultation-open,
[class*="mega-v1727-"] .consultation-open,
[class*="laser-v1728-"] .consultation-open,
[class*="services-v1728-"] .consultation-open {
    position: relative;
}

/* 3) Zusätzliche Clipping-Sicherheit für Leistungs-Karten. */
.wedding-v1726-moment-grid article,
.birthday-v1726-occasion-grid article,
.event-v1727-format-grid article,
.corporate-v1727-occasion-grid article,
.mega-v1727-format-grid article,
.laser-v1728-service-grid article,
.laser-v1728-event-grid article,
.wedding-v1726-process-grid article,
.birthday-v1726-process-grid article,
.event-v1727-process-grid article,
.corporate-v1727-process-grid article,
.mega-v1727-process-grid article {
    min-width: 0;
    height: auto;
    overflow: visible;
}

.wedding-v1726-moment-grid p,
.birthday-v1726-occasion-grid p,
.event-v1727-format-grid p,
.corporate-v1727-occasion-grid p,
.mega-v1727-format-grid p,
.laser-v1728-service-grid p,
.laser-v1728-event-grid p,
.wedding-v1726-process-grid p,
.birthday-v1726-process-grid p,
.event-v1727-process-grid p,
.corporate-v1727-process-grid p,
.mega-v1727-process-grid p {
    overflow-wrap: break-word;
    hyphens: auto;
}

/* Zwischenstufe: bevor Texte auf kleineren Notebooks zu eng werden. */
@media (max-width: 1260px) and (min-width: 1101px) {
    .services-v1728-grid {
        grid-template-columns: repeat(2, minmax(0,1fr));
    }
    .services-v1728-card {
        min-height: 330px;
    }
}

@media (max-width: 1100px) {
    .services-v1728-card {
        min-height: 0;
    }
    .services-v1728-card h3 {
        margin-top: 30px;
    }
}

@media (max-width: 700px) {
    .services-v1728-card {
        padding: 24px;
        border-radius: 18px;
    }
    .services-v1728-card h3 {
        margin-top: 26px;
        font-size: 1.32rem;
    }
    .services-v1728-card em {
        width: 100%;
    }
}

@media (hover:none) and (pointer:coarse) {
    .services-v1728-card:hover {
        transform: none;
    }
}

/* V17.29 – letzte Sicherheitsregeln für lange Leistungsinhalte */
.birthday-v1726-option-grid article,
.birthday-v1726-option-grid > *,
.services-scope-grid > *,
.services-scope-card,
.services-scope-card li,
.services-scope-note,
.services-v1728-facts > *,
.laser-v1728-facts > *,
.event-v1727-quickfacts > *,
.corporate-v1727-quickfacts > *,
.mega-v1727-quickfacts > *,
.wedding-v1726-quickfacts > *,
.birthday-v1726-quickfacts > * {
    min-width: 0;
}

.birthday-v1726-option-grid h3,
.birthday-v1726-option-grid p,
.services-scope-card h3,
.services-scope-card li,
.services-scope-note span,
.services-v1728-facts strong,
.services-v1728-facts span,
.laser-v1728-facts strong,
.laser-v1728-facts span,
.event-v1727-quickfacts strong,
.event-v1727-quickfacts span,
.corporate-v1727-quickfacts strong,
.corporate-v1727-quickfacts span,
.mega-v1727-quickfacts strong,
.mega-v1727-quickfacts span,
.wedding-v1726-quickfacts strong,
.wedding-v1726-quickfacts span,
.birthday-v1726-quickfacts strong,
.birthday-v1726-quickfacts span {
    overflow-wrap: break-word;
    hyphens: auto;
}

/* Leichter Glow auch in der globalen Kopfzeile. */
.nav-consultation {
    box-shadow: 0 0 0 1px rgba(231,180,88,.08), 0 0 16px rgba(231,180,88,.14);
}
.nav-consultation:hover,
.nav-consultation:focus-visible {
    box-shadow: 0 0 0 1px rgba(231,180,88,.26), 0 0 24px rgba(231,180,88,.28);
}
.nav-cta {
    box-shadow: 0 0 0 1px rgba(220,163,74,.08), 0 0 16px rgba(220,163,74,.13);
}
.nav-cta:hover,
.nav-cta:focus-visible {
    box-shadow: 0 0 0 1px rgba(220,163,74,.28), 0 0 24px rgba(220,163,74,.26);
}


/* ============================================================
   V17.30 – Gesamte Website: Design-Politur & Seitenfarben
   ============================================================ */

/* Einheitliche Lesbarkeit und Abstände auf allen öffentlichen Seiten */
body[class^="page-"]{
    --page-accent:#e7b458;
    --page-accent-2:#f0d08f;
    --page-accent-rgb:231,180,88;
    --page-soft:rgba(231,180,88,.08);
}
body[class^="page-"] main{overflow:hidden}
body[class^="page-"] h1,
body[class^="page-"] h2,
body[class^="page-"] h3{ text-wrap:balance; }
body[class^="page-"] p,
body[class^="page-"] li{ text-wrap:pretty; }
body[class^="page-"] :is(.section-heading,.page-hero .container,.public-cta>div,.home-intro-grid>*,.legal-content,.faq-groups)>p:not(.eyebrow){line-height:1.72}
body[class^="page-"] :is(.section-heading,.services-heading-wide){max-width:960px}
body[class^="page-"] .section-heading>p:last-child{max-width:800px;color:#b8bbc1}
body[class^="page-"] :is(.hero-actions,.compact-actions){gap:12px}
body[class^="page-"] .button{min-height:46px;border-radius:12px;font-weight:850;letter-spacing:.01em}
body[class^="page-"] :is(.feature-card,.process-card,.faq-item,.contact-path-card,.region-seo-grid article,.crosslink-grid>a,.crosslink-grid>button){min-width:0}
body[class^="page-"] :is(.feature-card,.process-card,.contact-path-card,.region-seo-grid article,.crosslink-grid>a,.crosslink-grid>button) :is(h2,h3,strong,p,span){overflow-wrap:break-word}

/* Seitenfarbsystem – nur Akzente, damit alles zusammengehört */
body.page-home{--page-accent:#e6ae4d;--page-accent-2:#62d6d3;--page-accent-rgb:230,174,77}
body.page-feuerwerk{--page-accent:#ed9c45;--page-accent-2:#f0c66f;--page-accent-rgb:237,156,69}
body.page-hochzeiten{--page-accent:#e2bf82;--page-accent-2:#d79ba0;--page-accent-rgb:226,191,130}
body.page-geburtstagsfeuerwerk{--page-accent:#e08a45;--page-accent-2:#a94f64;--page-accent-rgb:224,138,69}
body.page-events{--page-accent:#70ddd7;--page-accent-2:#e2a657;--page-accent-rgb:112,221,215}
body.page-firmenfeuerwerk{--page-accent:#6f9bd0;--page-accent-2:#dfbd72;--page-accent-rgb:111,155,208}
body.page-mega-events{--page-accent:#e05a49;--page-accent-2:#eab147;--page-accent-rgb:224,90,73}
body.page-lasershow{--page-accent:#8585ff;--page-accent-2:#55dff5;--page-accent-rgb:133,133,255}
body.page-dienstleistungen{--page-accent:#e7b458;--page-accent-2:#879ab9;--page-accent-rgb:231,180,88}
body.page-einsatzgebiet{--page-accent:#64c69a;--page-accent-2:#dfbd72;--page-accent-rgb:100,198,154}
body.page-galerie{--page-accent:#aa7cf0;--page-accent-2:#df7cb0;--page-accent-rgb:170,124,240}
body.page-ueber-uns{--page-accent:#d4a55d;--page-accent-2:#c9845e;--page-accent-rgb:212,165,93}
body.page-kontakt{--page-accent:#57cfbf;--page-accent-2:#e3b75d;--page-accent-rgb:87,207,191}
body.page-faq{--page-accent:#6ca8e8;--page-accent-2:#62d5d5;--page-accent-rgb:108,168,232}
body.page-silvester,
body.page-produkt,
body.page-warenkorb,
body.page-checkout{--page-accent:#eb8f38;--page-accent-2:#edc45f;--page-accent-rgb:235,143,56}
body.page-bestellstatus{--page-accent:#68c99b;--page-accent-2:#66cbdc;--page-accent-rgb:104,201,155}
body.page-buchung{--page-accent:#e6ad52;--page-accent-2:#df7b4f;--page-accent-rgb:230,173,82}
body.page-impressum{--page-accent:#9ba7b8;--page-accent-2:#d5ac65;--page-accent-rgb:155,167,184}
body.page-datenschutz{--page-accent:#6eb7ad;--page-accent-2:#9aa8bd;--page-accent-rgb:110,183,173}

/* Neutrale Standard-Heros erhalten eine eigene, subtile Farbe. */
body[class^="page-"] .page-hero{
    position:relative;
    background:
        radial-gradient(circle at 12% 18%,rgba(var(--page-accent-rgb),.16),transparent 31%),
        radial-gradient(circle at 88% 14%,color-mix(in srgb,var(--page-accent-2) 13%,transparent),transparent 30%),
        linear-gradient(145deg,#0b0d11,#08090b 68%,#0d0f12);
    border-bottom:1px solid rgba(var(--page-accent-rgb),.12);
}
body[class^="page-"] .page-hero::after{content:'';position:absolute;left:0;right:0;bottom:0;height:1px;background:linear-gradient(90deg,transparent,rgba(var(--page-accent-rgb),.48),transparent)}
body[class^="page-"] .page-hero .eyebrow{color:var(--page-accent)}
body[class^="page-"] .page-hero h1{max-width:1050px}
body[class^="page-"] .page-hero p:not(.eyebrow){max-width:820px;color:#c2c5cb}

/* Dezente Farbinseln auf bisher neutralen Seiten */
body.page-home .home-intro-section,
body.page-einsatzgebiet main>.section:nth-of-type(2),
body.page-faq main>.section,
body.page-kontakt main>.section:nth-of-type(2),
body.page-galerie .gallery-page-section,
body.page-ueber-uns .about-v1721-intro,
body.page-silvester main>.section,
body.page-buchung .booking-section,
body.page-bestellstatus main>.section,
body.page-impressum main>.section,
body.page-datenschutz main>.section{
    background:
        radial-gradient(circle at 92% 8%,rgba(var(--page-accent-rgb),.055),transparent 28%),
        linear-gradient(180deg,#0a0b0d,#090a0c);
}

/* Karten auf neutralen Seiten ziehen die Seitenfarbe auf. */
body[class^="page-"] :is(.feature-card,.process-card,.faq-side-card,.faq-item,.contact-path-card,.region-seo-grid article,.crosslink-grid>a,.crosslink-grid>button,.legal-note-card,.legal-content section,.cart-summary,.checkout-card,.request-summary){
    border-color:rgba(var(--page-accent-rgb),.13);
}
body[class^="page-"] :is(.feature-card,.process-card,.contact-path-card,.region-seo-grid article,.crosslink-grid>a,.crosslink-grid>button):hover,
body[class^="page-"] :is(.feature-card,.process-card,.contact-path-card,.region-seo-grid article,.crosslink-grid>a,.crosslink-grid>button):focus-visible{
    border-color:rgba(var(--page-accent-rgb),.38);
    box-shadow:0 0 0 1px rgba(var(--page-accent-rgb),.08),0 0 24px rgba(var(--page-accent-rgb),.11);
}

/* Kostenlose Beratung darf auf öffentlichen Seiten nie wie ein schwarzer Button wirken. */
body[class^="page-"] .button.consultation-open,
body[class^="page-"] .crosslink-consultation{
    border:1px solid rgba(var(--page-accent-rgb),.58)!important;
    color:#08090b!important;
    background:linear-gradient(135deg,var(--page-accent),var(--page-accent-2))!important;
    box-shadow:0 0 0 1px rgba(var(--page-accent-rgb),.12),0 0 22px rgba(var(--page-accent-rgb),.25)!important;
}
body[class^="page-"] .button.consultation-open:hover,
body[class^="page-"] .button.consultation-open:focus-visible,
body[class^="page-"] .crosslink-consultation:hover,
body[class^="page-"] .crosslink-consultation:focus-visible{
    transform:translateY(-2px);
    box-shadow:0 0 0 1px rgba(var(--page-accent-rgb),.30),0 0 32px rgba(var(--page-accent-rgb),.42)!important;
}
body[class^="page-"] .nav-consultation{
    border-color:rgba(var(--page-accent-rgb),.52);
    color:#08090b;
    background:linear-gradient(135deg,var(--page-accent),var(--page-accent-2));
    box-shadow:0 0 0 1px rgba(var(--page-accent-rgb),.10),0 0 20px rgba(var(--page-accent-rgb),.24);
}
body[class^="page-"] .nav-consultation:hover,
body[class^="page-"] .nav-consultation:focus-visible{background:linear-gradient(135deg,var(--page-accent-2),var(--page-accent));box-shadow:0 0 0 1px rgba(var(--page-accent-rgb),.28),0 0 30px rgba(var(--page-accent-rgb),.38)}

/* Startseite: sechs Leistungsfelder wie auf Dienstleistungen */
.home-services-intro{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:30px 54px;align-items:end;margin:54px 0 28px;padding-top:42px;border-top:1px solid rgba(230,174,77,.14)}
.home-services-intro .eyebrow{grid-column:1/-1;margin:0}
.home-services-intro h3{margin:0;font-size:clamp(2rem,4vw,4rem);line-height:.98}
.home-services-intro>p:last-child{margin:0;color:#b9bdc4;line-height:1.72}
.home-services-v1730-grid{margin-top:0}
.home-services-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin-top:26px}
.home-services-actions .button{min-width:210px}
body.page-home .home-intro-section{padding-top:82px;padding-bottom:92px}
body.page-home .home-intro-grid{gap:36px 64px}
body.page-home .home-intro-grid h2{margin-bottom:0}

/* Startseite selbst bekommt mehr Farbe, ohne die Lesbarkeit zu verlieren. */
body.page-home .home-facts-band{background:linear-gradient(90deg,rgba(230,174,77,.055),rgba(98,214,211,.04)),#090a0c;border-block-color:rgba(230,174,77,.13)}
body.page-home .home-facts-grid>div:nth-child(1){border-color:rgba(230,174,77,.18)}
body.page-home .home-facts-grid>div:nth-child(2){border-color:rgba(98,214,211,.18)}
body.page-home .home-facts-grid>div:nth-child(3){border-color:rgba(211,129,86,.18)}
body.page-home .home-facts-grid>div:nth-child(4){border-color:rgba(112,175,220,.18)}
body.page-home .home-facts-grid>div:nth-child(1) strong{color:#e6ae4d}
body.page-home .home-facts-grid>div:nth-child(2) strong{color:#62d6d3}
body.page-home .home-facts-grid>div:nth-child(3) strong{color:#da8f5c}
body.page-home .home-facts-grid>div:nth-child(4) strong{color:#79b7e1}
body.page-home .home-seo-content{background:radial-gradient(circle at 90% 10%,rgba(230,174,77,.07),transparent 28%),linear-gradient(180deg,#0a0b0d,#090a0c)}
body.page-home .home-region-seo{background:radial-gradient(circle at 8% 12%,rgba(98,214,211,.065),transparent 27%),#090a0c}
body.page-home .home-process-six{background:radial-gradient(circle at 88% 12%,rgba(210,116,78,.055),transparent 27%),#090a0c}
body.page-home .home-laser-seo{background:radial-gradient(circle at 10% 18%,rgba(133,133,255,.065),transparent 30%),#090a0c}
body.page-home .home-expertise-section{background:radial-gradient(circle at 88% 18%,rgba(100,198,154,.05),transparent 28%),#090a0c}

/* Über-uns / Galerie / Kontakt erhalten sichtbarere Akzentlinien. */
body.page-ueber-uns .about-v1721-profile-card,
body.page-ueber-uns .about-v1721-member-row{border-color:rgba(var(--page-accent-rgb),.18)}
body.page-galerie .gallery-masonry-item{border:1px solid rgba(var(--page-accent-rgb),.14)}
body.page-kontakt .contact-path-card.primary{background:linear-gradient(145deg,rgba(var(--page-accent-rgb),.11),rgba(227,183,93,.045))}

/* Shop / Checkout: Orange-Gold zieht sich sichtbar durch die Kaufstrecke. */
body:is(.page-silvester,.page-produkt,.page-warenkorb,.page-checkout) :is(.product-card,.cart-item,.checkout-card,.cart-summary,.product-detail-content){border-color:rgba(var(--page-accent-rgb),.16)}
body:is(.page-silvester,.page-produkt,.page-warenkorb,.page-checkout) .button-primary{box-shadow:0 0 0 1px rgba(var(--page-accent-rgb),.12),0 0 22px rgba(var(--page-accent-rgb),.18)}

/* Zusätzliche Konsistenz für Formulare */
body[class^="page-"] :is(input,select,textarea):focus{border-color:rgba(var(--page-accent-rgb),.64)!important;box-shadow:0 0 0 4px rgba(var(--page-accent-rgb),.08)!important}
body[class^="page-"] :is(.form-section,.checkout-card,.admin-edit-card){min-width:0}

/* Crosslink button behaves like the existing crosslink cards. */
.crosslink-consultation{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;min-height:100%;padding:20px;border-radius:16px;font:inherit;text-align:left;cursor:pointer}
.crosslink-consultation strong{font-size:1rem}.crosslink-consultation span{margin-top:5px;font-size:.78rem}

/* Responsive polish */
@media(max-width:1100px){
    .home-services-intro{grid-template-columns:1fr;gap:16px;margin-top:44px}
    .home-services-intro .eyebrow{grid-column:auto}
}
@media(max-width:700px){
    body[class^="page-"] .section{padding-top:50px;padding-bottom:50px}
    body[class^="page-"] .section-heading{margin-bottom:26px}
    .home-services-intro{padding-top:30px;margin-top:34px}
    .home-services-actions{align-items:stretch;flex-direction:column}
    .home-services-actions .button{width:100%;min-width:0}
    body.page-home .home-intro-section{padding-top:54px;padding-bottom:58px}
}


/* ============================================================
   V17.31 – Mobile-Menü, lesbare Leistungs-Karten & SEO-UX
   ============================================================ */
.services-v1728-card h3,
.services-v1728-card p,
.services-v1728-card strong,
.services-v1728-card em,
.home-services-intro h2,
.home-services-intro p {
    hyphens: none !important;
    -webkit-hyphens: none !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
}
.services-v1728-card h3,
.home-services-intro h2 { text-wrap: balance; }
.services-v1728-card p,
.home-services-intro p { text-wrap: pretty; }
.services-v1728-card em { white-space: normal; }

@media (max-width: 900px) {
    html.mobile-nav-open,
    body.mobile-nav-open {
        height: 100%;
        overflow: hidden !important;
        overscroll-behavior: none;
    }
    body.mobile-nav-open {
        position: fixed;
        left: 0;
        right: 0;
        width: 100%;
    }
    .main-nav {
        position: fixed !important;
        top: 74px !important;
        left: 0 !important;
        right: 0 !important;
        width: 100% !important;
        max-width: 100% !important;
        height: calc(100dvh - 74px) !important;
        max-height: none !important;
        margin: 0 !important;
        padding: 14px 14px max(24px, env(safe-area-inset-bottom)) !important;
        overflow-x: hidden !important;
        overflow-y: auto !important;
        overscroll-behavior-y: contain;
        -webkit-overflow-scrolling: touch;
        scrollbar-gutter: stable;
    }
    .main-nav > *,
    .nav-dropdown,
    .nav-dropdown-menu,
    .nav-dropdown-menu a {
        min-width: 0 !important;
        max-width: 100% !important;
    }
    .nav-dropdown { overflow: visible !important; }
    .nav-dropdown-menu {
        width: 100% !important;
        margin: 6px 0 0 !important;
        padding: 7px !important;
        overflow: hidden !important;
        border: 1px solid rgba(231,180,88,.14) !important;
        border-radius: 12px !important;
        background: rgba(255,255,255,.025) !important;
    }
    .nav-dropdown-menu a {
        display: block !important;
        width: 100% !important;
        padding: 11px 10px !important;
        overflow: hidden !important;
    }
    .nav-dropdown-menu strong,
    .nav-dropdown-menu small {
        display: block !important;
        width: 100% !important;
        max-width: 100% !important;
        white-space: normal !important;
        word-break: normal !important;
        overflow-wrap: normal !important;
        hyphens: none !important;
        -webkit-hyphens: none !important;
    }
    .nav-dropdown-menu strong { font-size: .88rem !important; line-height: 1.28 !important; }
    .nav-dropdown-menu small { margin-top: 3px !important; color: #979da6 !important; font-size: .72rem !important; line-height: 1.35 !important; }
    .main-nav > a:not(.nav-cta),
    .nav-dropdown-trigger,
    .nav-cta,
    .main-nav .nav-consultation { flex: 0 0 auto; }
    .services-v1728-grid,
    .home-services-v1730-grid { grid-template-columns: repeat(2, minmax(0,1fr)) !important; gap: 16px !important; }
    .services-v1728-card { min-width: 0; min-height: 0 !important; }
}
@media (max-width: 620px) {
    .services-v1728-grid,
    .home-services-v1730-grid { grid-template-columns: 1fr !important; }
    .services-v1728-card { padding: 22px !important; }
    .services-v1728-card h3 { margin-top: 24px !important; font-size: 1.28rem !important; line-height: 1.16 !important; }
    .services-v1728-card p { font-size: .96rem; line-height: 1.62; }
}
@media (max-width: 480px) {
    .main-nav { top: 68px !important; height: calc(100dvh - 68px) !important; max-height: none !important; padding-inline: 10px !important; }
    .nav-dropdown-menu { padding: 5px !important; }
    .nav-dropdown-menu a { padding: 10px 9px !important; }
}


/* ============================================================
   V17.32 – Geburtstagsfeuerwerk als 7. Leistung + Shop-Abstand
   ============================================================ */

/* Eigene Themenfarbe der Geburtstagsseite */
.services-v1728-card-birthday {
    --service-accent: #e08a45;
    --service-accent-2: #a94f64;
    --service-accent-rgb: 224,138,69;
    background:
        radial-gradient(circle at 90% 10%, rgba(169,79,100,.17), transparent 36%),
        linear-gradient(145deg, rgba(224,138,69,.085), rgba(169,79,100,.04));
}

/* Bei sieben Karten steht die letzte Karte auf großen Bildschirmen sauber mittig. */
@media (min-width: 1101px) {
    .services-v1728-grid > .services-v1728-card-system:last-child,
    .home-services-v1730-grid > .services-v1728-card-system:last-child {
        grid-column: 2;
    }
}

/* Im Shop liegt der Beratungsbutton bewusst unter den normalen Shop-Aktionen. */
.silvester-hero-consult {
    position: relative;
    z-index: 2;
    display: flex;
    justify-content: flex-start;
    margin-top: 30px;
    padding-bottom: 8px;
}
.silvester-hero-consult .consultation-open {
    margin: 0 !important;
}

/* Tablet: normales Raster, keine erzwungene Zentrierung der letzten Karte. */
@media (max-width: 1100px) {
    .services-v1728-grid > .services-v1728-card-system:last-child,
    .home-services-v1730-grid > .services-v1728-card-system:last-child {
        grid-column: auto;
    }
}

/* Handy: Beratung im Shop noch etwas deutlicher von den oberen Buttons trennen. */
@media (max-width: 700px) {
    .silvester-hero-consult {
        margin-top: 36px;
        padding-bottom: 12px;
    }
    .silvester-hero-consult .consultation-open {
        width: 100%;
        justify-content: center;
    }
}


/* ============================================================
   V17.33 – Produkt-Anträge für nachweispflichtige Shopartikel
   ============================================================ */

.button-restricted,
.restricted-application-button{
    border-color:rgba(224,138,69,.62)!important;
    background:linear-gradient(135deg,#d77738,#b64954)!important;
    color:#fff!important;
    box-shadow:0 0 0 1px rgba(224,138,69,.14),0 0 24px rgba(224,138,69,.18);
}
.button-restricted:hover,
.restricted-application-button:hover{
    box-shadow:0 0 0 1px rgba(224,138,69,.24),0 0 34px rgba(224,138,69,.34);
}
.restricted-product-actions{margin-top:16px;display:flex;flex-wrap:wrap;gap:10px}

.restricted-application-hero{
    padding:58px 0 46px;
    background:
        radial-gradient(circle at 10% 20%,rgba(224,138,69,.16),transparent 31%),
        radial-gradient(circle at 88% 16%,rgba(182,73,84,.13),transparent 28%),
        linear-gradient(145deg,#150b08,#090a0c 66%,#13090d);
    border-bottom:1px solid rgba(224,138,69,.15);
}
.restricted-application-heading{
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(300px,.42fr);
    gap:40px;
    align-items:center;
    margin-top:22px;
}
.restricted-application-heading h1{
    margin:.25rem 0 1rem;
    font-size:clamp(2.7rem,5.5vw,5.8rem);
    line-height:.94;
    overflow-wrap:break-word;
}
.restricted-application-heading>div:first-child>p:not(.eyebrow){
    max-width:820px;
    color:#c8c2be;
    line-height:1.72;
    font-size:1.05rem;
}
.restricted-application-product{
    display:grid;
    grid-template-columns:108px minmax(0,1fr);
    gap:16px;
    align-items:center;
    padding:15px;
    border:1px solid rgba(224,138,69,.18);
    border-radius:18px;
    background:rgba(255,255,255,.025);
}
.restricted-application-product img{
    width:108px;height:108px;object-fit:cover;border-radius:13px;
}
.restricted-application-product span,
.restricted-application-product strong,
.restricted-application-product small{display:block}
.restricted-application-product span{color:#e69a62;font-size:.74rem;font-weight:900;letter-spacing:.08em}
.restricted-application-product strong{margin-top:4px;font-size:1.35rem}
.restricted-application-product small{margin-top:4px;color:#aaa}

.restricted-application-section{background:linear-gradient(180deg,#0b0c0e,#08090b)}
.restricted-application-layout{
    display:grid;
    grid-template-columns:minmax(280px,.36fr) minmax(0,.64fr);
    gap:30px;
    align-items:start;
}
.restricted-application-info{
    position:sticky;
    top:110px;
    padding:28px;
    border:1px solid rgba(224,138,69,.15);
    border-radius:22px;
    background:linear-gradient(145deg,rgba(224,138,69,.055),rgba(182,73,84,.025)),#111316;
}
.restricted-application-info h2{font-size:2rem;line-height:1.03;margin:.2rem 0 1rem}
.restricted-application-info p{color:#bbb7b4;line-height:1.7}
.restricted-application-info ul{margin:22px 0;padding:0;list-style:none;display:grid;gap:11px}
.restricted-application-info li{position:relative;padding-left:24px;color:#d5d1ce;line-height:1.55}
.restricted-application-info li:before{content:'✓';position:absolute;left:0;color:#e39157;font-weight:950}
.restricted-application-legal-note{padding-top:18px;border-top:1px solid rgba(255,255,255,.08);font-size:.88rem}
.restricted-application-form-card{min-width:0}
.restricted-application-form{display:grid;gap:18px}
.restricted-application-form .form-section{
    border:1px solid rgba(224,138,69,.12);
    background:linear-gradient(145deg,rgba(224,138,69,.025),rgba(255,255,255,.012)),#101215;
}
.form-section-heading{display:flex;gap:14px;align-items:flex-start;margin-bottom:24px}
.form-section-heading>span{
    display:grid;place-items:center;flex:0 0 38px;width:38px;height:38px;border-radius:50%;
    background:linear-gradient(135deg,#dc7c3d,#ad4853);color:#fff;font-size:.76rem;font-weight:950;
}
.form-section-heading h2{margin:0;font-size:1.55rem}
.form-section-heading p{margin:4px 0 0;color:#999fa7}
.application-product-summary{
    display:flex;justify-content:space-between;gap:15px;align-items:center;
    margin-bottom:18px;padding:15px 17px;border:1px solid rgba(224,138,69,.13);
    border-radius:13px;background:rgba(224,138,69,.035)
}
.application-product-summary strong,.application-product-summary span{display:block}
.application-product-summary span{color:#aaa;font-size:.88rem;text-align:right}
.restricted-application-form label{min-width:0}
.restricted-application-form input[type=file]{padding:11px;background:#0b0d10}
.restricted-application-form label small{display:block;margin-top:6px;color:#8f949b;line-height:1.45}
.restricted-application-honeypot{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.restricted-application-success{
    padding:40px;border:1px solid rgba(91,196,133,.22);border-radius:24px;
    background:linear-gradient(145deg,rgba(91,196,133,.075),rgba(224,138,69,.025)),#101514;
}
.restricted-application-success h2{font-size:clamp(2.5rem,5vw,4.6rem);margin:.2rem 0 1rem}
.restricted-application-success p{color:#bbc5bf;line-height:1.72}

.product-application-admin-stats{grid-template-columns:repeat(5,minmax(0,1fr))}
.product-application-status-neu{background:rgba(231,180,88,.12);color:#f0cf89}
.product-application-status-nachweis_pruefen{background:rgba(85,145,218,.14);color:#acd4ff}
.product-application-status-rueckfrage{background:rgba(224,138,69,.14);color:#ffc091}
.product-application-status-freigegeben{background:rgba(79,190,126,.14);color:#aee9c7}
.product-application-status-abgelehnt{background:rgba(215,75,69,.14);color:#ffaaa6}
.product-application-status-erledigt{background:rgba(255,255,255,.08);color:#c9ccd1}
.product-application-warning{border-color:rgba(224,138,69,.20)!important;background:rgba(224,138,69,.05)!important}
.dashboard-kpi-product-application{border-color:rgba(224,138,69,.24)!important}

@media(max-width:980px){
    .restricted-application-heading,
    .restricted-application-layout{grid-template-columns:1fr}
    .restricted-application-info{position:static}
    .restricted-application-product{max-width:560px}
    .product-application-admin-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:700px){
    .restricted-application-hero{padding:42px 0 40px}
    .restricted-application-heading{gap:24px}
    .restricted-application-heading h1{font-size:clamp(2.25rem,11vw,3.7rem)}
    .restricted-application-product{grid-template-columns:80px minmax(0,1fr)}
    .restricted-application-product img{width:80px;height:80px}
    .restricted-application-info{padding:22px}
    .application-product-summary{align-items:flex-start;flex-direction:column}
    .application-product-summary span{text-align:left}
    .restricted-application-success{padding:24px}
    .product-application-admin-stats{grid-template-columns:1fr}
}


/* ============================================================
   V17.34 – Kundenkonten, Artikel- & Seitenfreigaben
   ============================================================ */
.customer-account-link{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:0 13px;border:1px solid rgba(102,215,209,.22);border-radius:12px;background:rgba(102,215,209,.055);color:#c9f1ee;text-decoration:none;font-size:.78rem;font-weight:850;white-space:nowrap}
.customer-account-link:hover,.customer-account-link.active{border-color:rgba(102,215,209,.55);box-shadow:0 0 24px rgba(102,215,209,.13)}
.customer-auth-hero,.customer-account-hero{padding:58px 0;background:radial-gradient(circle at 14% 18%,rgba(102,215,209,.14),transparent 30%),radial-gradient(circle at 85% 15%,rgba(231,180,88,.12),transparent 28%),linear-gradient(145deg,#081315,#090a0d 65%,#141008)}
.customer-auth-hero h1,.customer-account-hero h1{margin:.2rem 0 .8rem;font-size:clamp(2.7rem,5vw,5.3rem);line-height:.95}
.customer-auth-hero p:not(.eyebrow),.customer-account-hero p:not(.eyebrow){color:#bbc5c4;max-width:800px;line-height:1.7}
.customer-auth-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.65fr);gap:30px;align-items:start}
.customer-auth-card,.customer-auth-info,.customer-account-card{padding:30px;border:1px solid rgba(102,215,209,.13);border-radius:22px;background:linear-gradient(145deg,rgba(102,215,209,.035),rgba(231,180,88,.02)),#101316}
.customer-auth-info{position:sticky;top:110px}
.customer-auth-info h2,.customer-account-card h2{margin:.2rem 0 1rem;font-size:clamp(1.8rem,3vw,3rem);line-height:1}
.customer-auth-info p:not(.eyebrow),.customer-muted{color:#aeb7b7;line-height:1.7}
.customer-auth-form{display:grid;gap:16px}.customer-auth-form label{display:grid;gap:7px;color:#d7dcdd;font-weight:750}.customer-auth-form input{width:100%;border:1px solid var(--border);border-radius:12px;background:#0b0d10;color:#fff;padding:13px 14px;font:inherit}.customer-auth-switch{margin:20px 0 0;color:#aeb4b5}.customer-auth-switch a{color:#75ded8}
.customer-account-hero-inner{display:flex;justify-content:space-between;align-items:center;gap:24px}
.customer-account-grid,.customer-account-settings{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-bottom:22px}
.customer-permission-list{display:grid;gap:10px}.customer-permission-list>a{display:flex;justify-content:space-between;gap:18px;align-items:center;padding:15px 16px;border:1px solid rgba(255,255,255,.08);border-radius:13px;background:rgba(255,255,255,.02);text-decoration:none;color:inherit}.customer-permission-list strong,.customer-permission-list span{display:block}.customer-permission-list span{margin-top:4px;color:#979fa1;font-size:.82rem}.customer-permission-list em{color:#80e2dc;font-style:normal;font-size:.82rem;font-weight:850;white-space:nowrap}.customer-account-email{color:#9fa5a6}
.customer-product-approved{margin:18px 0;padding:14px 16px;border:1px solid rgba(79,190,126,.24);border-radius:13px;background:rgba(79,190,126,.07)}.customer-product-approved strong,.customer-product-approved span{display:block}.customer-product-approved strong{color:#aee9c7}.customer-product-approved span{margin-top:4px;color:#b2bbb6;font-size:.86rem}
.customer-status-aktiv{background:rgba(79,190,126,.14);color:#aee9c7}.customer-status-gesperrt{background:rgba(215,75,69,.14);color:#ffaaa6}
.customer-admin-search{display:grid!important;grid-template-columns:minmax(240px,1fr) 180px auto!important;gap:10px}
.admin-permission-list{display:grid;gap:10px;margin:18px 0 22px}.admin-permission-list>div{display:flex;justify-content:space-between;gap:14px;align-items:center;padding:13px 14px;border:1px solid rgba(255,255,255,.08);border-radius:12px;background:rgba(255,255,255,.02)}.admin-permission-list strong,.admin-permission-list span{display:block}.admin-permission-list span{color:#92989d;font-size:.8rem;margin-top:3px}.admin-permission-add{padding-top:18px;border-top:1px solid rgba(255,255,255,.07)}
.protected-page-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.protected-page-card{display:flex;flex-direction:column;justify-content:space-between;gap:25px;padding:25px;border:1px solid rgba(255,255,255,.09);border-radius:18px;background:#111316}.protected-page-card.is-protected{border-color:rgba(231,180,88,.28);background:linear-gradient(145deg,rgba(231,180,88,.06),rgba(255,255,255,.015)),#111316}.protected-page-card span{color:#92999c;font-size:.7rem;font-weight:900;letter-spacing:.12em}.protected-page-card.is-protected span{color:#e7c27d}.protected-page-card h2{font-size:1.45rem}.protected-page-card p{color:#8f9699;font-size:.82rem;overflow-wrap:anywhere}.protected-page-card form,.protected-page-card button{width:100%}
.dashboard-kpi-customer{border-color:rgba(102,215,209,.22)!important}

@media(max-width:1100px){
 .protected-page-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .customer-auth-layout{grid-template-columns:1fr}.customer-auth-info{position:static}
}
@media(max-width:900px){.main-nav .customer-account-link{width:100%;min-height:48px}}
@media(max-width:700px){
 .customer-account-grid,.customer-account-settings,.protected-page-grid{grid-template-columns:1fr}
 .customer-account-hero-inner{align-items:stretch;flex-direction:column}.customer-account-hero-inner .button{width:100%}
 .customer-auth-card,.customer-auth-info,.customer-account-card{padding:22px}
 .customer-permission-list>a{align-items:flex-start;flex-direction:column}.customer-permission-list em{white-space:normal}
 .customer-admin-search{grid-template-columns:1fr!important}
 .admin-permission-list>div{align-items:stretch;flex-direction:column}.admin-permission-list form,.admin-permission-list button{width:100%}
}


/* ============================================================
   V17.35 – Bunker Bestand / Header / Admin-Übersicht
   ============================================================ */

/* Kundenkonto im Header deutlich sichtbarer */
.customer-account-link{
    position:relative;
    gap:9px!important;
    min-height:46px!important;
    padding:5px 13px 5px 7px!important;
    border:1px solid rgba(102,215,209,.42)!important;
    background:linear-gradient(135deg,rgba(42,165,164,.28),rgba(231,180,88,.16))!important;
    color:#f4fbfa!important;
    box-shadow:0 0 0 1px rgba(102,215,209,.06),0 0 24px rgba(63,208,201,.12);
}
.customer-account-link.is-logged-in{
    border-color:rgba(102,215,209,.72)!important;
    background:linear-gradient(135deg,#176f73,#8d692d)!important;
    box-shadow:0 0 0 1px rgba(102,215,209,.15),0 0 30px rgba(78,211,205,.23),0 0 45px rgba(231,180,88,.10);
}
.customer-account-link:hover{
    transform:translateY(-1px);
    box-shadow:0 0 0 1px rgba(102,215,209,.22),0 0 36px rgba(78,211,205,.30),0 0 52px rgba(231,180,88,.12)!important;
}
.customer-account-icon{
    display:grid;
    place-items:center;
    flex:0 0 32px;
    width:32px;
    height:32px;
    border-radius:10px;
    background:rgba(4,11,12,.42);
    border:1px solid rgba(255,255,255,.15);
    color:#fff;
    font-size:.78rem;
    font-weight:950;
}
.customer-account-copy{display:grid;gap:1px;line-height:1}
.customer-account-copy strong{font-size:.78rem}
.customer-account-copy small{color:rgba(255,255,255,.7);font-size:.58rem;font-weight:700}
.nav-more-public .nav-dropdown-menu{min-width:310px}
.nav-more-public .nav-dropdown-menu-right{left:auto;right:0}
.nav-bunker-link{
    background:linear-gradient(135deg,rgba(102,215,209,.10),rgba(231,180,88,.07))!important;
    border:1px solid rgba(102,215,209,.14)!important;
}

/* Bunker Bestand – geschützte Kundenansicht */
.bunker-stock-hero{
    padding:64px 0 54px;
    background:
        radial-gradient(circle at 12% 15%,rgba(58,189,179,.20),transparent 31%),
        radial-gradient(circle at 88% 18%,rgba(231,180,88,.15),transparent 29%),
        linear-gradient(145deg,#071314,#090a0d 62%,#171106);
    border-bottom:1px solid rgba(102,215,209,.15);
}
.bunker-stock-hero-inner{display:flex;justify-content:space-between;align-items:center;gap:28px}
.bunker-stock-hero h1{margin:.2rem 0 .8rem;font-size:clamp(3rem,6vw,6.3rem);line-height:.9;letter-spacing:-.055em}
.bunker-stock-hero p:not(.eyebrow){max-width:800px;color:#bdc7c6;line-height:1.72}
.bunker-stock-lock{
    min-width:220px;
    padding:18px 20px;
    border:1px solid rgba(102,215,209,.25);
    border-radius:18px;
    background:rgba(102,215,209,.055);
    box-shadow:0 0 36px rgba(80,213,205,.08);
}
.bunker-stock-lock span{color:#73e0d9}
.bunker-stock-lock strong,.bunker-stock-lock small{display:block}
.bunker-stock-lock strong{margin-top:7px}
.bunker-stock-lock small{margin-top:3px;color:#929c9b}
.bunker-stock-section{background:linear-gradient(180deg,#0a0e0f,#08090b)}
.bunker-stock-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:22px}
.bunker-stock-summary>div{
    padding:20px 22px;
    border:1px solid rgba(102,215,209,.13);
    border-radius:17px;
    background:linear-gradient(145deg,rgba(102,215,209,.04),rgba(231,180,88,.02)),#101315;
}
.bunker-stock-summary span,.bunker-stock-summary strong{display:block}
.bunker-stock-summary span{color:#9da8a7;font-size:.78rem;font-weight:800}
.bunker-stock-summary strong{margin-top:7px;font-size:2rem}
.bunker-stock-filter{
    display:grid;
    grid-template-columns:minmax(220px,1fr) 210px 190px auto;
    gap:10px;
    align-items:end;
    margin-bottom:28px;
    padding:16px;
    border:1px solid rgba(255,255,255,.08);
    border-radius:16px;
    background:#101214;
}
.bunker-stock-filter label{display:grid;gap:6px}
.bunker-stock-filter label>span{color:#999fa1;font-size:.72rem;font-weight:850}
.bunker-stock-filter input,.bunker-stock-filter select{
    width:100%;
    min-height:44px;
    border:1px solid var(--border);
    border-radius:11px;
    background:#090b0d;
    color:#fff;
    padding:0 12px;
    font:inherit;
}
.bunker-stock-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.bunker-stock-card{
    min-width:0;
    overflow:hidden;
    border:1px solid rgba(102,215,209,.12);
    border-radius:21px;
    background:linear-gradient(145deg,rgba(102,215,209,.035),rgba(231,180,88,.018)),#101214;
    transition:.2s transform,.2s border-color,.2s box-shadow;
}
.bunker-stock-card:hover{
    transform:translateY(-3px);
    border-color:rgba(102,215,209,.32);
    box-shadow:0 22px 50px rgba(0,0,0,.28),0 0 28px rgba(102,215,209,.07);
}
.bunker-stock-card.is-soldout{opacity:.64}
.bunker-stock-image{position:relative;display:block;aspect-ratio:1/1;background:#080a0b;overflow:hidden}
.bunker-stock-image img{width:100%;height:100%;object-fit:cover;display:block}
.bunker-stock-amount{
    position:absolute;
    left:12px;
    bottom:12px;
    padding:7px 10px;
    border-radius:999px;
    background:rgba(8,11,12,.88);
    border:1px solid rgba(102,215,209,.28);
    color:#bff5f0;
    font-size:.74rem;
    font-weight:900;
}
.bunker-stock-amount.low{border-color:rgba(231,180,88,.40);color:#f4d398}
.bunker-stock-body{padding:21px;display:flex;flex-direction:column;min-height:300px}
.bunker-stock-meta{display:flex;flex-wrap:wrap;gap:6px}
.bunker-stock-meta span{padding:5px 7px;border-radius:7px;background:rgba(255,255,255,.04);color:#9aa3a3;font-size:.65rem;font-weight:850}
.bunker-stock-body h2{margin:16px 0 4px;font-size:1.35rem;line-height:1.05;overflow-wrap:normal;word-break:normal;hyphens:none}
.bunker-stock-body h2 a{color:#fff;text-decoration:none}
.bunker-stock-maker{margin:0;color:#8e9897}
.bunker-stock-price{margin:20px 0}
.bunker-stock-price strong,.bunker-stock-price span{display:block}
.bunker-stock-price strong{font-size:1.65rem;color:#e7c47f}
.bunker-stock-price span{color:#888f90;font-size:.72rem}
.bunker-stock-permission{margin:0 0 16px;padding:9px 10px;border-radius:9px;font-size:.75rem;font-weight:850}
.bunker-stock-permission.approved{background:rgba(75,187,123,.09);color:#a9e7c2;border:1px solid rgba(75,187,123,.16)}
.bunker-stock-permission.restricted{background:rgba(224,138,69,.08);color:#f3b485;border:1px solid rgba(224,138,69,.15)}
.bunker-stock-body>.button{margin-top:auto;width:100%}
.bunker-stock-empty,.bunker-stock-note{padding:28px;border:1px solid rgba(255,255,255,.08);border-radius:18px;background:#101214}
.bunker-stock-note{margin-top:26px}
.bunker-stock-note strong{font-size:1.1rem}
.bunker-stock-note p{margin:.55rem 0 0;color:#aab1b0;line-height:1.65}

/* Kundenkonto: freigegebener Bunker-Zugang */
.customer-bunker-access-card{
    display:grid;
    grid-template-columns:auto 1fr auto;
    gap:20px;
    align-items:center;
    margin-bottom:22px;
    padding:24px 26px;
    border:1px solid rgba(102,215,209,.30);
    border-radius:21px;
    background:radial-gradient(circle at 8% 20%,rgba(102,215,209,.14),transparent 35%),linear-gradient(135deg,#0d2324,#1c170c);
    color:inherit;
    text-decoration:none;
    box-shadow:0 18px 50px rgba(0,0,0,.22),0 0 30px rgba(102,215,209,.08);
}
.customer-bunker-access-card:hover{border-color:rgba(102,215,209,.55);box-shadow:0 20px 55px rgba(0,0,0,.26),0 0 38px rgba(102,215,209,.16)}
.customer-bunker-access-icon{display:grid;place-items:center;width:54px;height:54px;border-radius:15px;background:linear-gradient(135deg,#268c88,#a47c37);color:#fff}
.customer-bunker-access-card h2{margin:.2rem 0 .4rem;font-size:1.8rem}
.customer-bunker-access-card p:not(.eyebrow){margin:0;color:#aeb9b8}
.customer-bunker-access-card>strong{color:#d9f7f4;white-space:nowrap}

/* Admin Bunker Bestand */
.admin-nav-bunker{border-color:rgba(102,215,209,.22)!important;color:#cff3ef!important}
.admin-nav-bunker.active{background:linear-gradient(135deg,rgba(39,145,143,.22),rgba(231,180,88,.10))!important}
.bunker-admin-stats{grid-template-columns:repeat(5,minmax(0,1fr))}
.bunker-admin-filter{grid-template-columns:minmax(230px,1fr) 190px 180px auto auto!important}
.bunker-admin-table td{vertical-align:middle}
.bunker-admin-product{display:grid;grid-template-columns:54px minmax(150px,1fr);gap:11px;align-items:center}
.bunker-admin-product img{width:54px;height:54px;object-fit:cover;border-radius:10px}
.bunker-admin-product strong,.bunker-admin-product small{display:block}
.bunker-admin-product small{margin-top:3px;color:#8f969a}
.bunker-inline-form{display:grid;grid-template-columns:90px 130px 140px auto;gap:8px;align-items:end;min-width:520px}
.bunker-inline-label{display:block;margin-bottom:4px;color:#8e9698;font-size:.63rem;font-weight:850}
.bunker-inline-form input[type=number],.bunker-inline-form input[name=preis]{width:100%;min-height:38px;border:1px solid var(--border);border-radius:9px;background:#0a0c0e;color:#fff;padding:0 9px;font:inherit}
.bunker-price-input{position:relative}
.bunker-price-input input{padding-right:28px!important}
.bunker-price-input span{position:absolute;right:9px;top:50%;transform:translateY(-50%);color:#8c9395}
.bunker-visible-toggle{display:flex;align-items:center;gap:7px;min-height:38px;color:#b8bfc0;font-size:.75rem;font-weight:750;white-space:nowrap}
.bunker-visible-toggle input{accent-color:#61d5ce}

/* Admin-Startseite übersichtlicher */
.admin-hub-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin-bottom:20px}
.admin-hub-card{min-width:0;padding:20px;border:1px solid rgba(255,255,255,.09);border-radius:17px;background:#101316;text-decoration:none;color:inherit;transition:.2s}
.admin-hub-card:hover{transform:translateY(-2px);border-color:rgba(231,180,88,.25)}
.admin-hub-card span,.admin-hub-card strong,.admin-hub-card small{display:block}
.admin-hub-card span{font-size:.63rem;font-weight:900;letter-spacing:.12em;color:#90979a}
.admin-hub-card strong{margin-top:11px;font-size:1.2rem}
.admin-hub-card small{margin-top:6px;color:#92999c;line-height:1.45}
.admin-hub-shop{border-color:rgba(102,215,209,.16);background:linear-gradient(145deg,rgba(102,215,209,.055),rgba(255,255,255,.01)),#101316}
.admin-hub-orders{border-color:rgba(231,180,88,.16)}
.admin-hub-customers{border-color:rgba(90,144,208,.17)}
.admin-hub-requests{border-color:rgba(224,138,69,.17)}
.protected-page-card.is-permanent{border-color:rgba(102,215,209,.34)!important;background:linear-gradient(145deg,rgba(102,215,209,.08),rgba(231,180,88,.025)),#111316!important}
.protected-page-card small{display:block;margin-top:8px;color:#9ca5a5;line-height:1.45}

@media(max-width:1300px){
    .main-nav{gap:5px!important}
    .main-nav>.nav-home-link{display:none}
    .customer-account-link{padding-right:9px!important}
}
@media(max-width:1100px){
    .bunker-stock-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
    .bunker-stock-filter{grid-template-columns:1fr 1fr}
    .bunker-stock-filter .button{width:100%}
    .bunker-admin-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
    .admin-hub-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:900px){
    .main-nav>.nav-home-link{display:flex}
    .main-nav .customer-account-link{display:flex!important;width:100%!important;min-height:56px!important;justify-content:flex-start!important;padding:7px 10px!important}
    .customer-account-copy strong{font-size:.9rem}
    .customer-account-copy small{font-size:.65rem}
    .nav-more-public .nav-dropdown-menu{min-width:0}
}
@media(max-width:700px){
    .bunker-stock-hero{padding:44px 0}
    .bunker-stock-hero-inner{align-items:stretch;flex-direction:column}
    .bunker-stock-lock{min-width:0;width:100%}
    .bunker-stock-grid,.bunker-stock-summary,.bunker-stock-filter,.admin-hub-grid,.bunker-admin-stats{grid-template-columns:1fr}
    .bunker-stock-body{min-height:0}
    .customer-bunker-access-card{grid-template-columns:1fr;align-items:start;padding:21px}
    .customer-bunker-access-card>strong{white-space:normal}
    .bunker-admin-filter{grid-template-columns:1fr!important}
}


/* ============================================================
   V17.38 – Mehr-Menü sauber + separater Bunker-Preis
   ============================================================ */

@media (min-width:1121px){
    .nav-more-public{position:relative!important;display:flex!important;align-items:center!important}
    .nav-more-public .nav-more-menu{
        top:calc(100% + 10px)!important;
        left:auto!important;
        right:0!important;
        width:350px!important;
        min-width:350px!important;
        padding:10px!important;
        transform:translateY(8px)!important;
        transform-origin:top right;
    }
    .nav-more-public:hover .nav-more-menu,
    .nav-more-public:focus-within .nav-more-menu,
    .nav-more-public.is-open .nav-more-menu{transform:translateY(0)!important}
    .nav-more-public .nav-more-menu:before{
        content:"";
        position:absolute;
        top:-7px;
        right:26px;
        width:13px;
        height:13px;
        border-left:1px solid var(--border);
        border-top:1px solid var(--border);
        background:rgba(13,15,19,.98);
        transform:rotate(45deg);
    }
}
.nav-more-group{position:relative;z-index:1;padding:5px 0}
.nav-more-group + .nav-more-group{margin-top:5px;padding-top:10px;border-top:1px solid rgba(255,255,255,.07)}
.nav-more-group-title{display:block;padding:4px 12px 7px;color:#8e969c;font-size:.62rem;line-height:1;font-weight:950;letter-spacing:.13em;text-transform:uppercase}
.nav-more-menu .nav-bunker-link{background:linear-gradient(135deg,rgba(102,215,209,.10),rgba(231,180,88,.06))!important}

.bunker-stock-image{cursor:default}
.bunker-stock-body h2{color:#fff}
.bunker-stock-price-special{padding:15px 16px;border:1px solid rgba(231,180,88,.18);border-radius:13px;background:linear-gradient(135deg,rgba(231,180,88,.07),rgba(102,215,209,.025))}
.bunker-stock-price-special strong{font-size:1.85rem;color:#f0cc86}
.bunker-stock-readonly{margin-top:auto;padding:10px 11px;border:1px solid rgba(102,215,209,.12);border-radius:10px;background:rgba(102,215,209,.035);color:#a9c9c6;font-size:.74rem;line-height:1.4;font-weight:800;text-align:center}

.bunker-admin-stats{grid-template-columns:repeat(6,minmax(0,1fr))}
.bunker-price-stat{border-color:rgba(102,215,209,.20)!important;background:linear-gradient(145deg,rgba(102,215,209,.055),rgba(231,180,88,.025)),var(--surface)!important}
.bunker-inline-form{grid-template-columns:88px 122px 132px 138px auto!important;min-width:670px!important}
.bunker-inline-form input[name=bunker_preis]{width:100%;min-height:38px;border:1px solid rgba(102,215,209,.30);border-radius:9px;background:#091011;color:#dff8f5;padding:0 28px 0 9px;font:inherit}
.bunker-price-input-special:after{content:"B";position:absolute;top:-8px;right:-5px;display:grid;place-items:center;width:17px;height:17px;border-radius:50%;background:#267f7c;color:#fff;font-size:.56rem;font-weight:950;box-shadow:0 0 14px rgba(102,215,209,.26)}
.bunker-special-price-field small{display:block;margin-top:3px;color:#70aaa5;font-size:.58rem;line-height:1.2}

@media(max-width:1120px){
    .nav-more-public .nav-more-menu{width:100%!important;min-width:0!important;right:auto!important}
    .nav-more-group{padding:4px 0!important}
    .nav-more-group + .nav-more-group{margin-top:4px;padding-top:8px!important;border-top:1px solid rgba(255,255,255,.07)!important}
    .nav-more-group-title{padding:7px 10px 5px!important;color:#8d9699!important;font-size:.61rem!important}
}
@media(max-width:1100px){.bunker-admin-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.bunker-admin-stats{grid-template-columns:1fr}}


/* ============================================================
   V17.39 – Kundenkonten im Admin wieder direkt erreichbar
   ============================================================ */
.admin-nav-customers{
    border-color:rgba(82,158,226,.20)!important;
    color:#d7eaff!important;
}
.admin-nav-customers:hover,
.admin-nav-customers.active{
    border-color:rgba(82,158,226,.48)!important;
    background:rgba(82,158,226,.10)!important;
    color:#e9f4ff!important;
    box-shadow:0 0 22px rgba(82,158,226,.08);
}
.customer-admin-search + .admin-table-card .button-small{
    white-space:nowrap;
}
@media(max-width:1040px){
    .admin-nav-customers{
        order:5;
    }
}


/* ============================================================
   V17.40 – Bunker-Reservierungen / Kategorie-Freigaben / F2+
   ============================================================ */
.bunker-stock-summary{grid-template-columns:repeat(4,minmax(0,1fr))}
.bunker-stock-summary>a{padding:20px 22px;border:1px solid rgba(231,180,88,.20);border-radius:17px;background:linear-gradient(145deg,rgba(231,180,88,.06),rgba(102,215,209,.025)),#101315;color:inherit;text-decoration:none}
.bunker-stock-summary>a span,.bunker-stock-summary>a strong,.bunker-stock-summary>a small{display:block}.bunker-stock-summary>a span{color:#a5a098;font-size:.78rem;font-weight:800}.bunker-stock-summary>a strong{margin-top:7px;font-size:2rem}.bunker-stock-summary>a small{margin-top:3px;color:#d3b978}
.bunker-stock-card.needs-permission{border-color:rgba(224,138,69,.18)}
.bunker-reserve-item-form{display:grid;grid-template-columns:90px 1fr;gap:8px;align-items:end;margin-top:auto}.bunker-reserve-item-form label{display:grid;gap:5px}.bunker-reserve-item-form label span{color:#9ca4a3;font-size:.68rem;font-weight:850}.bunker-reserve-item-form input{width:100%;min-height:40px;border:1px solid rgba(102,215,209,.18);border-radius:9px;background:#080b0d;color:#fff;padding:0 9px}
.bunker-reservation-panel{margin-top:34px;padding:30px;border:1px solid rgba(102,215,209,.18);border-radius:24px;background:linear-gradient(145deg,rgba(102,215,209,.045),rgba(231,180,88,.025)),#101315}
.bunker-reservation-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:28px;margin-bottom:22px}.bunker-reservation-heading h2{margin:.2rem 0 .6rem;font-size:clamp(2rem,4vw,3.8rem)}.bunker-reservation-heading p:not(.eyebrow){max-width:760px;color:#aeb7b6;line-height:1.65}.bunker-reservation-total{text-align:right;min-width:190px;padding:16px;border:1px solid rgba(231,180,88,.16);border-radius:14px}.bunker-reservation-total span,.bunker-reservation-total strong{display:block}.bunker-reservation-total span{color:#aaa;font-size:.72rem}.bunker-reservation-total strong{margin-top:4px;font-size:1.7rem;color:#e9c67e}
.bunker-reservation-items{display:grid;gap:9px;margin-bottom:14px}.bunker-reservation-item{display:grid;grid-template-columns:minmax(0,1fr) 90px 110px 38px;gap:12px;align-items:center;padding:13px 14px;border:1px solid rgba(255,255,255,.07);border-radius:12px;background:rgba(255,255,255,.018)}.bunker-reservation-item strong,.bunker-reservation-item span{display:block}.bunker-reservation-item span{margin-top:3px;color:#949c9b;font-size:.76rem}.bunker-reservation-item label span{margin:0 0 4px}.bunker-reservation-item input{width:100%;min-height:37px;border:1px solid var(--border);border-radius:8px;background:#080a0b;color:#fff;padding:0 8px}.bunker-remove-button{width:34px;height:34px;border:1px solid rgba(215,75,69,.25);border-radius:8px;background:rgba(215,75,69,.08);color:#ffaaa6;cursor:pointer;font-size:1.2rem}
.bunker-reservation-submit{display:grid;gap:18px;margin-top:24px;padding-top:24px;border-top:1px solid rgba(255,255,255,.08)}.bunker-reservation-final{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:18px;border:1px solid rgba(231,180,88,.16);border-radius:15px;background:rgba(231,180,88,.035)}.bunker-reservation-final span,.bunker-reservation-final strong,.bunker-reservation-final small{display:block}.bunker-reservation-final strong{margin-top:2px;font-size:1.65rem}.bunker-reservation-final small{margin-top:3px;color:#999}
.bunker-reservation-success{margin-bottom:22px;padding:25px;border:1px solid rgba(79,190,126,.25);border-radius:20px;background:linear-gradient(145deg,rgba(79,190,126,.08),rgba(102,215,209,.025)),#101513}.bunker-reservation-success h2{margin:.2rem 0 .6rem;font-size:2rem}.bunker-reservation-success p{color:#b3c0b9;line-height:1.65}
.customer-permission-static{padding:15px 16px;border:1px solid rgba(255,255,255,.08);border-radius:13px;background:rgba(255,255,255,.02)}.customer-permission-static strong,.customer-permission-static span{display:block}.customer-permission-static span{margin-top:4px;color:#979fa1;font-size:.82rem}.customer-reservations-card{margin-bottom:22px}
.admin-nav-reservations{border-color:rgba(231,180,88,.18)!important;color:#eed29b!important}.admin-nav-reservations.active,.admin-nav-reservations:hover{background:rgba(231,180,88,.08)!important;border-color:rgba(231,180,88,.40)!important}
.bunker-reservation-stats{grid-template-columns:repeat(5,minmax(0,1fr))}.bunker-reservation-actions{display:flex;gap:7px;flex-wrap:wrap}.bunker-reservation-status-neu{background:rgba(231,180,88,.12);color:#f0cf89}.bunker-reservation-status-bestaetigt{background:rgba(82,158,226,.13);color:#b8d9ff}.bunker-reservation-status-bereit{background:rgba(102,215,209,.12);color:#bff5f0}.bunker-reservation-status-abgeholt{background:rgba(79,190,126,.14);color:#aee9c7}.bunker-reservation-status-storniert{background:rgba(215,75,69,.14);color:#ffaaa6}
.reservation-position-list{display:grid;gap:9px}.reservation-position-list>div{display:flex;justify-content:space-between;gap:18px;padding:13px 14px;border:1px solid rgba(255,255,255,.07);border-radius:11px}.reservation-position-list strong,.reservation-position-list span{display:block}.reservation-position-list span{margin-top:3px;color:#949a9f;font-size:.78rem}.reservation-admin-total{display:flex;justify-content:space-between;align-items:center;margin:18px 0 30px;padding:17px;border-top:2px solid rgba(231,180,88,.35);font-size:1.25rem}.reservation-admin-total strong{font-size:1.6rem}
.admin-hub-reservations{border-color:rgba(231,180,88,.19);background:linear-gradient(145deg,rgba(231,180,88,.055),rgba(255,255,255,.01)),#101316}

@media(max-width:1100px){
    .bunker-stock-summary{grid-template-columns:repeat(2,minmax(0,1fr))}
    .bunker-reservation-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:700px){
    .bunker-stock-summary,.bunker-reservation-stats{grid-template-columns:1fr}
    .bunker-reservation-heading,.bunker-reservation-final{align-items:stretch;flex-direction:column}
    .bunker-reservation-total{text-align:left;min-width:0}
    .bunker-reservation-item{grid-template-columns:1fr 85px}.bunker-reservation-item>strong{grid-column:1}.bunker-remove-button{grid-column:2;grid-row:2}
    .bunker-reserve-item-form{grid-template-columns:1fr}
    .bunker-reservation-panel{padding:21px}
}


/* ============================================================
   V17.41 – Bunker Reservierungen im Finanzen-Tab
   ============================================================ */
.finance-kpi-grid-v1741{grid-template-columns:repeat(3,minmax(0,1fr))}
.finance-kpi.bunker-booked{border-color:rgba(102,215,209,.28);background:linear-gradient(145deg,rgba(102,215,209,.055),rgba(255,255,255,.015)),var(--surface)}
.finance-kpi.bunker-booked strong{color:#bff5f0}
.finance-kpi.bunker-open{border-color:rgba(231,180,88,.26);background:linear-gradient(145deg,rgba(231,180,88,.055),rgba(255,255,255,.015)),var(--surface)}
.finance-kpi.bunker-open strong{color:#f0cf89}
.finance-split-grid-v1741{grid-template-columns:repeat(3,minmax(0,1fr))}
.finance-summary-bunker{border-color:rgba(102,215,209,.18);background:linear-gradient(145deg,rgba(102,215,209,.035),rgba(231,180,88,.018)),var(--surface)}
.finance-bunker-open-line{display:grid;grid-template-columns:1fr auto;gap:5px 14px;align-items:center;margin-top:12px;padding:12px 13px;border:1px solid rgba(231,180,88,.15);border-radius:12px;background:rgba(231,180,88,.035)}
.finance-bunker-open-line span{color:var(--muted);font-size:.74rem}.finance-bunker-open-line strong{color:#f0cf89}.finance-bunker-open-line small{grid-column:1/-1;color:var(--muted);font-size:.68rem}
.finance-bunker-section{border-color:rgba(102,215,209,.14)}
.finance-bunker-pending{background:rgba(231,180,88,.018)}
.finance-bunker-counted{background:rgba(79,190,126,.018)}
.finance-bunker-cancelled{opacity:.58;background:rgba(215,75,69,.02)}
.finance-profit-preview{color:#d9c08d}.finance-profit-preview small{color:var(--muted)!important;font-weight:700}
.finance-bunker-actions{display:flex;gap:6px;flex-wrap:wrap;min-width:160px}
.finance-table button:disabled,.finance-table input:disabled{opacity:.45;cursor:not-allowed}
@media(max-width:1180px){.finance-split-grid-v1741{grid-template-columns:1fr 1fr}.finance-summary-bunker{grid-column:1/-1}}
@media(max-width:900px){.finance-kpi-grid-v1741{grid-template-columns:repeat(2,minmax(0,1fr))}.finance-split-grid-v1741{grid-template-columns:1fr}.finance-summary-bunker{grid-column:auto}}
@media(max-width:700px){.finance-kpi-grid-v1741{grid-template-columns:1fr}.finance-bunker-actions{min-width:0;flex-direction:column}.finance-bunker-actions .button{width:100%}}


/* ============================================================
   V17.42 – Lagerbuch & professionelle Bestandslogik
   ============================================================ */
.admin-nav-ledger{border-color:rgba(92,199,148,.20)!important;color:#c9efd9!important}
.admin-nav-ledger:hover,.admin-nav-ledger.active{border-color:rgba(92,199,148,.48)!important;background:rgba(92,199,148,.09)!important;box-shadow:0 0 22px rgba(92,199,148,.08)}
.bunker-inventory-stats{grid-template-columns:repeat(7,minmax(0,1fr))!important}
.inventory-number{display:inline-flex;min-width:52px;justify-content:center;padding:8px 10px;border-radius:10px;background:rgba(255,255,255,.035);font-size:1.05rem}
.inventory-number.reserved-shop{color:#b8d9ff;border:1px solid rgba(82,158,226,.14)}
.inventory-number.reserved-bunker{color:#f1d196;border:1px solid rgba(231,180,88,.14)}
.inventory-number.available{color:#afe8c7;border:1px solid rgba(79,190,126,.16)}
.bunker-inline-form-inventory{grid-template-columns:110px 122px 132px 138px auto!important;min-width:720px!important}
.inventory-ledger-stats{grid-template-columns:repeat(4,minmax(0,1fr))}
.inventory-ledger-filter{grid-template-columns:minmax(260px,1fr) 220px auto auto!important}
.inventory-ledger-table td{vertical-align:middle}
.inventory-movement-type{display:inline-block;padding:6px 8px;border-radius:8px;background:rgba(255,255,255,.05);font-size:.72rem;font-weight:850;white-space:nowrap}
.inventory-movement-type.type-shop_reservierung{color:#b8d9ff;background:rgba(82,158,226,.10)}
.inventory-movement-type.type-shop_storno{color:#afe8c7;background:rgba(79,190,126,.10)}
.inventory-movement-type.type-bunker_reservierung{color:#efd095;background:rgba(231,180,88,.10)}
.inventory-movement-type.type-bunker_storno{color:#afe8c7;background:rgba(79,190,126,.10)}
.inventory-movement-type.type-manuelle_korrektur,.inventory-movement-type.type-erstbestand{color:#d7c2f5;background:rgba(150,105,205,.10)}
.inventory-delta{font-size:1rem}.inventory-delta.plus{color:#8fdbae}.inventory-delta.minus{color:#f0a18f}
.admin-hub-ledger{border-color:rgba(92,199,148,.18);background:linear-gradient(145deg,rgba(92,199,148,.05),rgba(255,255,255,.01)),#101316}

@media(max-width:1250px){
 .bunker-inventory-stats{grid-template-columns:repeat(4,minmax(0,1fr))!important}
}
@media(max-width:900px){
 .bunker-inventory-stats,.inventory-ledger-stats{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 .inventory-ledger-filter{grid-template-columns:1fr!important}
}
@media(max-width:700px){
 .bunker-inventory-stats,.inventory-ledger-stats{grid-template-columns:1fr!important}
}


/* ============================================================
   V17.43 – Bunker Inventar
   ============================================================ */
.admin-nav-inventory{border-color:rgba(174,132,224,.22)!important;color:#eadcff!important}
.admin-nav-inventory:hover,.admin-nav-inventory.active{border-color:rgba(174,132,224,.48)!important;background:rgba(174,132,224,.09)!important;box-shadow:0 0 22px rgba(174,132,224,.08)}
.bunker-inventory-sync-note{display:flex;align-items:center;gap:12px;margin-bottom:18px;padding:15px 17px;border:1px solid rgba(79,190,126,.20);border-radius:14px;background:linear-gradient(135deg,rgba(79,190,126,.06),rgba(102,215,209,.025))}
.bunker-inventory-sync-note strong{color:#afe8c7;white-space:nowrap}.bunker-inventory-sync-note span{color:#aeb8b5;line-height:1.5}
.bunker-inventory-overview{grid-template-columns:repeat(7,minmax(0,1fr))}
.bunker-inventory-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:24px 0 16px;padding:7px;border:1px solid rgba(255,255,255,.08);border-radius:14px;background:#0d1012}
.bunker-inventory-tabs a{padding:10px 14px;border-radius:10px;color:#a8b0b2;text-decoration:none;font-size:.8rem;font-weight:850}
.bunker-inventory-tabs a:hover,.bunker-inventory-tabs a.active{background:linear-gradient(135deg,rgba(174,132,224,.14),rgba(102,215,209,.06));color:#fff}
.bunker-inventory-filter{grid-template-columns:minmax(250px,1fr) auto auto!important}
.bunker-inventory-tech-filter{grid-template-columns:minmax(220px,1fr) 190px 180px 160px auto!important}
.bunker-inventory-stock-form{display:flex;gap:7px;align-items:center;min-width:185px}
.bunker-inventory-stock-form input{width:82px;min-height:38px;border:1px solid var(--border);border-radius:9px;background:#090b0d;color:#fff;padding:0 8px}
.bunker-inventory-low{background:rgba(231,180,88,.035)!important}.bunker-inventory-low td:first-child{box-shadow:inset 3px 0 0 rgba(231,180,88,.62)}
.inventory-condition{display:inline-block;padding:6px 8px;border-radius:8px;font-size:.72rem;font-weight:850;white-space:nowrap}
.inventory-condition.condition-einsatzbereit{color:#afe8c7;background:rgba(79,190,126,.10)}
.inventory-condition.condition-pruefen{color:#efd095;background:rgba(231,180,88,.10)}
.inventory-condition.condition-defekt{color:#ffaaa6;background:rgba(215,75,69,.11)}
.inventory-condition.condition-ausgemustert{color:#aeb2b7;background:rgba(255,255,255,.06)}
.bunker-inventory-current-stock{margin:12px 0 25px;padding:22px;border:1px solid rgba(174,132,224,.20);border-radius:17px;background:linear-gradient(145deg,rgba(174,132,224,.07),rgba(102,215,209,.025)),#101315}
.bunker-inventory-current-stock strong,.bunker-inventory-current-stock span,.bunker-inventory-current-stock small{display:block}
.bunker-inventory-current-stock strong{font-size:3rem;line-height:1;color:#fff}.bunker-inventory-current-stock span{margin-top:4px;color:#d9c9f1;font-weight:850}.bunker-inventory-current-stock small{margin-top:9px;color:#929a9d}
.bunker-inventory-mini-history{min-width:700px}
.admin-hub-bunker-inventory{border-color:rgba(174,132,224,.18);background:linear-gradient(145deg,rgba(174,132,224,.05),rgba(255,255,255,.01)),#101316}

@media(max-width:1300px){.bunker-inventory-overview{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:1000px){.bunker-inventory-overview{grid-template-columns:repeat(2,minmax(0,1fr))}.bunker-inventory-tech-filter{grid-template-columns:1fr 1fr!important}}
@media(max-width:700px){.bunker-inventory-sync-note{align-items:flex-start;flex-direction:column}.bunker-inventory-overview{grid-template-columns:1fr}.bunker-inventory-filter,.bunker-inventory-tech-filter{grid-template-columns:1fr!important}.bunker-inventory-stock-form{align-items:stretch;flex-direction:column;min-width:145px}.bunker-inventory-stock-form input,.bunker-inventory-stock-form button{width:100%}}


/* V17.44 – Mörserdetails & kompakter Admin-Header */
.bunker-mortar-fields{margin:8px 0 2px;padding:18px;border:1px solid rgba(174,132,224,.22);border-radius:16px;background:radial-gradient(circle at 10% 10%,rgba(174,132,224,.08),transparent 40%),rgba(255,255,255,.018)}
.bunker-mortar-fields[hidden]{display:none!important}.bunker-mortar-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:18px;margin-bottom:15px}.bunker-mortar-heading strong,.bunker-mortar-heading small{display:block}.bunker-mortar-heading strong{font-size:1.05rem}.bunker-mortar-heading small{color:#8f979b;font-size:.72rem}.bunker-mortar-grid{margin:0}.bunker-mortar-fields input[readonly]{color:#bfc8ca;background:rgba(255,255,255,.035)!important}.mortar-list-spec{display:block;max-width:420px;color:#e9ddf8;font-size:.82rem;line-height:1.45}.mortar-list-spec+small{display:block;margin-top:4px;color:#8f969b}
.admin-nav-compact-v1744{gap:7px!important}.admin-nav-compact-v1744 .admin-nav-dropdown-trigger-v1714,.admin-nav-compact-v1744>.admin-nav-button-v1714{padding-inline:13px}.admin-nav-compact-v1744 .admin-nav-storage-trigger{border-color:rgba(174,132,224,.20);color:#eadcff}.admin-nav-compact-v1744 .admin-nav-dropdown-v1714.active>.admin-nav-storage-trigger,.admin-nav-compact-v1744 .admin-nav-dropdown-v1714.is-open>.admin-nav-storage-trigger,.admin-nav-compact-v1744 .admin-nav-storage-trigger:hover{border-color:rgba(174,132,224,.45);background:rgba(174,132,224,.08);color:#f2eaff}.admin-nav-compact-v1744 .admin-nav-dropdown-menu-v1714{width:340px}.admin-nav-compact-v1744 .admin-nav-dropdown-menu-v1714 a{padding:11px 12px}.admin-nav-compact-v1744 .admin-nav-dropdown-menu-v1714 strong{font-size:.85rem}.admin-nav-compact-v1744 .admin-nav-dropdown-menu-v1714 small{font-size:.69rem}
@media(min-width:1041px){.admin-header-main-v1714{min-height:80px;gap:16px}.admin-brand-v1714{min-width:220px}.admin-brand-logo-v1714{width:48px;height:48px;flex-basis:48px}.admin-brand-copy-v1714 strong{max-width:170px;font-size:.72rem}.admin-brand-copy-v1714 small{margin-top:4px;font-size:.61rem}}
@media(max-width:700px){.bunker-mortar-heading{align-items:flex-start;flex-direction:column}}


/* ============================================================
   V17.46 – Admin > Bunker Bestand kompakt
   Öffentliche Bunker-Seite bleibt unverändert.
   ============================================================ */

.admin-body .bunker-admin-table{
    min-width:1080px!important;
    font-size:.75rem!important;
    table-layout:auto;
}

.admin-body .bunker-admin-table th{
    padding:7px 6px!important;
    font-size:.62rem!important;
    line-height:1.1!important;
    letter-spacing:.01em!important;
    white-space:nowrap!important;
}

.admin-body .bunker-admin-table td{
    padding:6px!important;
    vertical-align:middle!important;
}

/* Produkt links kompakter */
.admin-body .bunker-admin-table .bunker-admin-product{
    gap:7px!important;
    min-width:150px!important;
    max-width:190px!important;
}

.admin-body .bunker-admin-table .bunker-admin-product img{
    width:42px!important;
    height:42px!important;
    min-width:42px!important;
    flex:0 0 42px!important;
    border-radius:7px!important;
}

.admin-body .bunker-admin-table .bunker-admin-product strong{
    display:block!important;
    max-width:135px!important;
    font-size:.72rem!important;
    line-height:1.1!important;
}

.admin-body .bunker-admin-table .bunker-admin-product small{
    display:block!important;
    max-width:135px!important;
    margin-top:2px!important;
    font-size:.58rem!important;
    line-height:1.05!important;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
}

/* Kategorie kompakter */
.admin-body .bunker-admin-table td:nth-child(2){
    min-width:64px!important;
    white-space:nowrap!important;
}

.admin-body .bunker-admin-table td:nth-child(2)>strong{
    font-size:.72rem!important;
}

.admin-body .bunker-admin-table td:nth-child(2)>small{
    display:block!important;
    margin-top:2px!important;
    font-size:.56rem!important;
}

/* Bestandszahlen enger */
.admin-body .bunker-admin-table .inventory-number{
    min-width:37px!important;
    padding:5px 6px!important;
    border-radius:7px!important;
    font-size:.78rem!important;
}

/* Die vier Bearbeitungsfelder + Speichern bleiben nebeneinander */
.admin-body .bunker-admin-table .bunker-inline-form-inventory{
    display:grid!important;
    grid-template-columns:76px 88px 94px 95px 72px!important;
    gap:5px!important;
    align-items:end!important;
    min-width:445px!important;
    margin:0!important;
}

.admin-body .bunker-admin-table .bunker-inline-form-inventory label{
    min-width:0!important;
    gap:2px!important;
    margin:0!important;
}

.admin-body .bunker-admin-table .bunker-inline-label{
    display:block!important;
    margin:0 0 2px!important;
    font-size:.54rem!important;
    line-height:1!important;
    font-weight:850!important;
    white-space:nowrap!important;
}

/* Eingaben kleiner */
.admin-body .bunker-admin-table .bunker-inline-form-inventory input[type="number"],
.admin-body .bunker-admin-table .bunker-inline-form-inventory input[inputmode="decimal"]{
    width:100%!important;
    min-width:0!important;
    min-height:30px!important;
    height:30px!important;
    padding:0 6px!important;
    border-radius:6px!important;
    font-size:.68rem!important;
}

.admin-body .bunker-admin-table .bunker-price-input{
    min-width:0!important;
}

.admin-body .bunker-admin-table .bunker-price-input input{
    padding-right:18px!important;
}

.admin-body .bunker-admin-table .bunker-price-input>span{
    right:6px!important;
    font-size:.61rem!important;
}

.admin-body .bunker-admin-table .bunker-special-price-field small{
    display:none!important;
}

/* Shop sichtbar / ausgeblendet kompakter */
.admin-body .bunker-admin-table .bunker-visible-toggle{
    min-width:0!important;
    min-height:30px!important;
    padding:4px 5px!important;
    gap:4px!important;
    border-radius:7px!important;
    font-size:.58rem!important;
    line-height:1!important;
    white-space:nowrap!important;
}

.admin-body .bunker-admin-table .bunker-visible-toggle input{
    width:13px!important;
    height:13px!important;
    min-width:13px!important;
    min-height:13px!important;
    margin:0!important;
}

/* Speichern und Öffnen kleiner, aber gut klickbar */
.admin-body .bunker-admin-table .button{
    min-height:30px!important;
    padding:6px 8px!important;
    border-radius:6px!important;
    font-size:.62rem!important;
    line-height:1!important;
    white-space:nowrap!important;
}

.admin-body .bunker-admin-table td:last-child{
    width:1%!important;
    white-space:nowrap!important;
}

/* Preis/Sichtbarkeit-Spalte soll nicht unnötig wachsen */
.admin-body .bunker-admin-table td:nth-child(7){
    width:455px!important;
    max-width:455px!important;
}

/* Statistiken und Filter darüber ebenfalls etwas dichter */
.admin-body .bunker-inventory-stats{
    gap:8px!important;
    margin-bottom:12px!important;
}

.admin-body .bunker-inventory-stats .admin-stat-card{
    padding:11px 12px!important;
    min-height:82px!important;
}

.admin-body .bunker-inventory-stats .admin-stat-card span{
    font-size:.61rem!important;
}

.admin-body .bunker-inventory-stats .admin-stat-card strong{
    margin-top:3px!important;
    font-size:1.28rem!important;
}

.admin-body .bunker-inventory-stats .admin-stat-card small{
    margin-top:2px!important;
    font-size:.56rem!important;
    line-height:1.15!important;
}

/* Wenn der Bildschirm schmaler ist, bleibt nur die Tabelle scrollbar. */
.admin-body .bunker-admin-table{
    overflow:visible!important;
}

@media(max-width:1250px){
    .admin-body .bunker-admin-table{
        min-width:1030px!important;
    }

    .admin-body .bunker-admin-table .bunker-inline-form-inventory{
        grid-template-columns:72px 82px 88px 90px 68px!important;
        min-width:420px!important;
        gap:4px!important;
    }

    .admin-body .bunker-admin-table td:nth-child(7){
        width:430px!important;
        max-width:430px!important;
    }
}

@media(max-width:800px){
    .admin-body .bunker-admin-table{
        min-width:1000px!important;
    }
}


/* ============================================================
   V17.49 – Bunker Reservierungsbeleg / Rechnung getrennt
   ============================================================ */
.bunker-invoice-admin-meta{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:9px;
    margin:10px 0 16px;
}
.bunker-invoice-admin-meta>div{
    padding:12px 13px;
    border:1px solid rgba(231,180,88,.15);
    border-radius:11px;
    background:rgba(231,180,88,.035);
}
.bunker-invoice-admin-meta span,
.bunker-invoice-admin-meta strong{display:block}
.bunker-invoice-admin-meta span{font-size:.65rem;color:#929a9d}
.bunker-invoice-admin-meta strong{margin-top:3px;color:#efd095}
.bunker-invoice-payment-form{margin-bottom:16px}
.finance-bunker-actions .payment-status{display:inline-flex;align-items:center}

@media(max-width:700px){
    .bunker-invoice-admin-meta{grid-template-columns:1fr}
}


/* ============================================================
   V17.50 – Bedienung / Buttons / Speichern
   ============================================================ */
button.is-submitting,
input[type="submit"].is-submitting{
    cursor:wait!important;
    opacity:.72!important;
    filter:saturate(.7);
}
form[aria-busy="true"]{
    cursor:progress;
}
form[aria-busy="true"] input,
form[aria-busy="true"] select,
form[aria-busy="true"] textarea{
    transition:opacity .15s ease;
}
.alert{
    scroll-margin-top:120px;
}


/* ============================================================
   V17.51 – Recht & Datenschutz 2026
   ============================================================ */
.legal-content section{
    scroll-margin-top:120px;
}
.legal-content section + section{
    margin-top:30px;
}
.legal-content section h2{
    margin-bottom:10px;
}
.legal-content section p{
    line-height:1.72;
}
.legal-content section p + p{
    margin-top:10px;
}
.legal-note-card small{
    display:block;
    margin-top:14px;
    color:var(--muted);
    font-size:.7rem;
}


/* ============================================================
   V17.53 – Bewertungen & Kommentare
   ============================================================ */

.review-stars{
    display:inline-flex;
    color:#f0bd62;
    font-size:.9rem;
    letter-spacing:.08em;
    line-height:1;
    white-space:nowrap;
}

/* Startseiten-Banner direkt unter Hero */
.home-review-banner{
    position:relative;
    overflow:hidden;
    padding:16px 0 18px;
    border-top:1px solid rgba(231,180,88,.16);
    border-bottom:1px solid rgba(231,180,88,.16);
    background:
        radial-gradient(circle at 20% 10%,rgba(231,180,88,.06),transparent 34%),
        linear-gradient(180deg,#0d0f11,#090b0d);
}
.home-review-banner-head{
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:20px;
    margin-bottom:11px;
}
.home-review-banner-head>div{
    display:flex;
    align-items:baseline;
    gap:10px;
}
.home-review-banner-head .eyebrow{
    margin:0;
}
.home-review-banner-head strong{
    color:#f6f2e9;
    font-size:.84rem;
}
.home-review-banner-head>a{
    color:#d6b471;
    text-decoration:none;
    font-size:.72rem;
    font-weight:800;
    white-space:nowrap;
}
.home-review-banner-head>a:hover{color:#fff}

.review-marquee{
    overflow:hidden;
    width:100%;
    mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent);
    -webkit-mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent);
}
.review-marquee-track{
    display:flex;
    width:max-content;
    gap:12px;
    padding:2px 6px;
    animation:reviewMarquee 58s linear infinite;
    will-change:transform;
}
.review-marquee:hover .review-marquee-track{
    animation-play-state:paused;
}
.review-marquee-item{
    display:grid;
    grid-template-columns:auto minmax(280px,430px) auto;
    align-items:center;
    gap:12px;
    min-height:58px;
    padding:10px 14px;
    border:1px solid rgba(255,255,255,.08);
    border-radius:12px;
    background:rgba(255,255,255,.025);
    box-shadow:0 8px 22px rgba(0,0,0,.12);
}
.review-marquee-item p{
    margin:0;
    color:#d9dddd;
    font-size:.76rem;
    line-height:1.42;
}
.review-marquee-item>div{
    display:flex;
    flex-direction:column;
    min-width:120px;
    padding-left:12px;
    border-left:1px solid rgba(255,255,255,.08);
}
.review-marquee-item strong{
    color:#fff;
    font-size:.72rem;
}
.review-marquee-item>div span{
    margin-top:2px;
    color:#8e979a;
    font-size:.62rem;
}

@keyframes reviewMarquee{
    from{transform:translateX(0)}
    to{transform:translateX(calc(-50% - 6px))}
}

/* Öffentliche Bewertungsseite */
.reviews-page-summary{
    display:flex;
    align-items:center;
    gap:10px;
    flex-wrap:wrap;
    margin-top:20px;
}
.reviews-page-summary .review-stars{font-size:1.1rem}
.reviews-page-summary strong{font-size:1.15rem;color:#fff}
.reviews-page-summary small{color:var(--muted)}

.reviews-public-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:16px;
}
.review-card{
    display:flex;
    flex-direction:column;
    min-height:250px;
    padding:22px;
    border:1px solid rgba(255,255,255,.09);
    border-radius:18px;
    background:
        radial-gradient(circle at top left,rgba(231,180,88,.055),transparent 42%),
        linear-gradient(145deg,rgba(255,255,255,.025),rgba(255,255,255,.01)),
        #101315;
    box-shadow:0 15px 38px rgba(0,0,0,.16);
}
.review-card-top{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
}
.review-card time{
    color:#7f898d;
    font-size:.68rem;
}
.review-card blockquote{
    flex:1;
    margin:22px 0;
    color:#e2e6e5;
    font-size:.94rem;
    line-height:1.65;
}
.review-card footer{
    display:flex;
    flex-direction:column;
    gap:3px;
    padding-top:15px;
    border-top:1px solid rgba(255,255,255,.07);
}
.review-card footer strong{color:#fff;font-size:.82rem}
.review-card footer span{color:#d3ad68;font-size:.7rem}
.reviews-public-cta{
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:35px;
    margin-top:32px;
    padding:26px;
    border:1px solid rgba(231,180,88,.15);
    border-radius:18px;
    background:rgba(231,180,88,.035);
}
.reviews-public-cta>div:first-child{max-width:720px}
.public-empty-state{
    max-width:760px;
    margin:0 auto;
    padding:45px 25px;
    text-align:center;
}

/* Admin Bewertungen */
.review-admin-stats{
    grid-template-columns:repeat(4,minmax(0,1fr));
}
.review-admin-note{margin-bottom:16px}
.review-admin-table{min-width:1080px}
.review-admin-comment{
    max-width:390px;
    line-height:1.4;
}
.review-home-badge{
    display:block;
    margin-top:5px;
    color:#efd095;
    font-weight:800;
}
.review-stars-admin{font-size:.78rem}
.review-admin-switches{
    display:flex;
    flex-direction:column;
    justify-content:center;
    gap:7px;
}
.review-card-admin-preview{
    min-height:230px;
    margin-bottom:18px;
}
.admin-hub-reviews{
    border-color:rgba(231,180,88,.18);
    background:linear-gradient(145deg,rgba(231,180,88,.05),rgba(255,255,255,.01)),#101316;
}

@media(max-width:1050px){
    .reviews-public-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
    .review-admin-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:720px){
    .home-review-banner{padding-top:13px}
    .home-review-banner-head{
        align-items:flex-start;
        flex-direction:column;
        gap:5px;
    }
    .home-review-banner-head>div{
        align-items:flex-start;
        flex-direction:column;
        gap:3px;
    }
    .review-marquee{
        mask-image:none;
        -webkit-mask-image:none;
    }
    .review-marquee-track{
        gap:8px;
        animation-duration:48s;
    }
    .review-marquee-item{
        grid-template-columns:1fr;
        gap:7px;
        width:315px;
        min-height:0;
        padding:12px;
    }
    .review-marquee-item p{font-size:.73rem}
    .review-marquee-item>div{
        min-width:0;
        padding:7px 0 0;
        border-left:0;
        border-top:1px solid rgba(255,255,255,.07);
    }
    .reviews-public-grid{grid-template-columns:1fr}
    .review-card{min-height:0}
    .reviews-public-cta{
        align-items:flex-start;
        flex-direction:column;
    }
    .review-admin-stats{grid-template-columns:1fr 1fr}
}

@media(prefers-reduced-motion:reduce){
    .review-marquee-track{
        animation:none!important;
        flex-wrap:wrap;
        width:auto;
        justify-content:center;
    }
    .review-marquee-track>[aria-hidden="true"]{
        display:none;
    }
}


/* ============================================================
   V17.54 – Kunden können Bewertungen direkt veröffentlichen
   ============================================================ */
.public-review-form-wrap{
    display:grid;
    grid-template-columns:minmax(240px,.72fr) minmax(0,1.28fr);
    gap:28px;
    margin-bottom:34px;
    padding:24px;
    border:1px solid rgba(231,180,88,.17);
    border-radius:20px;
    background:
        radial-gradient(circle at 12% 10%,rgba(231,180,88,.065),transparent 38%),
        linear-gradient(145deg,rgba(255,255,255,.022),rgba(255,255,255,.008)),
        #101315;
}
.public-review-form-copy{
    align-self:start;
}
.public-review-form-copy h2{
    margin-top:4px;
}
.public-review-form-copy p:last-child{
    color:var(--muted);
    line-height:1.65;
}
.public-review-form{
    position:relative;
}
.public-review-form textarea{
    resize:vertical;
    min-height:145px;
}
.public-review-notice{
    margin:12px 0 15px;
    color:#90999c;
    font-size:.72rem;
    line-height:1.5;
}
.review-honeypot{
    position:absolute!important;
    left:-10000px!important;
    top:auto!important;
    width:1px!important;
    height:1px!important;
    overflow:hidden!important;
}
.home-review-banner-links{
    display:flex;
    gap:12px;
    align-items:center;
    flex-wrap:wrap;
}
.home-review-banner-links a{
    color:#d6b471;
    text-decoration:none;
    font-size:.72rem;
    font-weight:800;
    white-space:nowrap;
}
.home-review-banner-links a:hover{
    color:#fff;
}

@media(max-width:850px){
    .public-review-form-wrap{
        grid-template-columns:1fr;
        gap:18px;
    }
}
@media(max-width:720px){
    .home-review-banner-links{
        width:100%;
        justify-content:space-between;
    }
}


/* ============================================================
   V17.55 – Bewertungsformular wie Anfrage + Bewertungs-Popup
   ============================================================ */

.reviews-hero-actions{
    display:flex;
    margin-top:20px;
}

.review-write-button{
    display:inline-flex!important;
    align-items:center;
    justify-content:center;
    gap:8px;
    min-height:46px;
    padding:12px 20px!important;
    border:1px solid rgba(255,220,145,.62)!important;
    border-radius:12px!important;
    background:
        linear-gradient(135deg,rgba(255,225,158,.22),rgba(191,123,27,.16)),
        linear-gradient(135deg,#dca94f,#a96f1f)!important;
    box-shadow:
        0 10px 25px rgba(188,123,31,.23),
        inset 0 1px rgba(255,255,255,.22)!important;
    color:#120e07!important;
    font-weight:900!important;
    text-decoration:none!important;
    letter-spacing:.01em;
    transition:transform .16s ease,box-shadow .16s ease,filter .16s ease!important;
}
.review-write-button:hover{
    transform:translateY(-2px);
    filter:brightness(1.08);
    box-shadow:
        0 14px 32px rgba(214,155,55,.32),
        inset 0 1px rgba(255,255,255,.26)!important;
}
.review-write-button span{
    color:#1b1205;
    font-size:1.05em;
}
.review-write-button-small{
    min-height:36px;
    padding:8px 13px!important;
    border-radius:9px!important;
    font-size:.72rem!important;
}
.home-review-all-link{
    color:#d6b471!important;
    text-decoration:none;
    font-size:.72rem;
    font-weight:800;
    white-space:nowrap;
}

.public-review-booking-shell{
    display:grid;
    grid-template-columns:minmax(230px,.62fr) minmax(0,1.38fr);
    gap:26px;
    align-items:start;
    margin-bottom:38px;
}
.public-review-booking-intro{
    position:sticky;
    top:105px;
    padding:24px;
    border:1px solid rgba(231,180,88,.14);
    border-radius:18px;
    background:
        radial-gradient(circle at top left,rgba(231,180,88,.07),transparent 42%),
        #101315;
}
.public-review-booking-intro h2{
    margin:5px 0 10px;
    font-size:1.55rem;
}
.public-review-booking-intro>p:last-of-type{
    color:var(--muted);
    line-height:1.65;
}
.public-review-benefits{
    display:grid;
    gap:8px;
    margin-top:18px;
}
.public-review-benefits span{
    display:flex;
    align-items:center;
    min-height:34px;
    padding:8px 10px;
    border:1px solid rgba(255,255,255,.07);
    border-radius:9px;
    background:rgba(255,255,255,.025);
    color:#d9dddc;
    font-size:.72rem;
    font-weight:700;
}
.public-review-booking-form{
    margin:0;
}
.public-review-booking-form .form-section{
    position:relative;
}
.public-review-booking-form .form-section + .form-section{
    margin-top:14px;
}
.public-review-booking-form textarea{
    min-height:175px;
    resize:vertical;
}
.public-review-booking-form .form-field small{
    display:block;
    margin-top:6px;
    color:#8d9699;
}
.public-review-submit-section{
    margin-bottom:0!important;
}
.public-review-submit-row{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:22px;
}
.public-review-submit-row p{
    max-width:560px;
    margin:0;
    color:#929b9d;
    font-size:.74rem;
    line-height:1.55;
}
.review-submit-button{
    flex:0 0 auto;
    min-width:220px;
}

/* Danke-/Bewertungsaufruf */
.review-thanks-modal{
    position:fixed;
    inset:0;
    z-index:12000;
    display:none;
    align-items:center;
    justify-content:center;
    padding:20px;
}
.review-thanks-modal.is-open{
    display:flex;
}
.review-thanks-backdrop{
    position:absolute;
    inset:0;
    background:rgba(2,3,4,.78);
    backdrop-filter:blur(9px);
    -webkit-backdrop-filter:blur(9px);
}
.review-thanks-dialog{
    position:relative;
    z-index:1;
    width:min(520px,100%);
    padding:30px;
    border:1px solid rgba(237,190,100,.3);
    border-radius:22px;
    background:
        radial-gradient(circle at 50% -10%,rgba(232,178,80,.16),transparent 42%),
        linear-gradient(145deg,#161a1d,#0c0f11);
    box-shadow:0 28px 90px rgba(0,0,0,.55);
    text-align:center;
}
.review-thanks-close{
    position:absolute;
    top:12px;
    right:13px;
    width:38px;
    height:38px;
    border:1px solid rgba(255,255,255,.1);
    border-radius:50%;
    background:rgba(255,255,255,.04);
    color:#d9dddd;
    font-size:1.5rem;
    line-height:1;
    cursor:pointer;
}
.review-thanks-close:hover{
    background:rgba(255,255,255,.08);
    color:#fff;
}
.review-thanks-star{
    display:grid;
    place-items:center;
    width:58px;
    height:58px;
    margin:0 auto 16px;
    border:1px solid rgba(255,221,150,.42);
    border-radius:50%;
    background:linear-gradient(135deg,#e4b35a,#9f691f);
    box-shadow:0 12px 28px rgba(203,143,42,.25);
    color:#171006;
    font-size:1.55rem;
}
.review-thanks-dialog .eyebrow{
    margin-bottom:6px;
}
.review-thanks-dialog h2{
    max-width:430px;
    margin:0 auto 12px;
    color:#fff;
    font-size:1.65rem;
    line-height:1.16;
}
.review-thanks-dialog>p:not(.eyebrow){
    max-width:445px;
    margin:0 auto;
    color:#b8c0c1;
    line-height:1.65;
}
.review-thanks-actions{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:10px;
    margin-top:22px;
}
.review-thanks-dialog>small{
    display:block;
    margin-top:14px;
    color:#7f898c;
    font-size:.67rem;
}
body.review-prompt-open{
    overflow:hidden;
}

@media(max-width:900px){
    .public-review-booking-shell{
        grid-template-columns:1fr;
    }
    .public-review-booking-intro{
        position:static;
    }
}
@media(max-width:700px){
    .public-review-booking-shell{
        gap:14px;
    }
    .public-review-booking-intro{
        padding:19px;
    }
    .public-review-submit-row{
        align-items:stretch;
        flex-direction:column;
    }
    .review-submit-button{
        width:100%;
        min-width:0;
    }
    .review-thanks-dialog{
        padding:27px 18px 21px;
        border-radius:18px;
    }
    .review-thanks-dialog h2{
        font-size:1.35rem;
    }
    .review-thanks-actions{
        align-items:stretch;
        flex-direction:column;
    }
    .review-thanks-actions .button{
        width:100%;
    }
}
@media(prefers-reduced-motion:reduce){
    .review-write-button{
        transition:none!important;
    }
}

/* ============================================================
   V17.56 – Rabattcodes, Glücksrad & Kundenrabatte
   ============================================================ */

/* Checkout Rabatt */
.checkout-discount-card{
    margin:16px 0;
    padding:15px;
    border:1px solid rgba(231,180,88,.18);
    border-radius:14px;
    background:linear-gradient(145deg,rgba(231,180,88,.055),rgba(255,255,255,.015));
}
.checkout-discount-title{display:flex;align-items:center;gap:10px;margin-bottom:11px}
.checkout-discount-title>span{
    display:grid;place-items:center;width:34px;height:34px;border-radius:50%;
    background:linear-gradient(135deg,#e1ad50,#8f5d19);color:#151008;font-weight:950;
    box-shadow:0 7px 20px rgba(199,134,37,.24)
}
.checkout-discount-title>div{display:flex;flex-direction:column;gap:2px}
.checkout-discount-title strong{color:#fff}
.checkout-discount-title small{color:#8f999c;font-size:.65rem}
.checkout-discount-code-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}
.checkout-discount-code-form input{min-width:0;text-transform:uppercase}
.checkout-discount-alert{margin:8px 0 10px;padding:9px 10px;font-size:.72rem}
.checkout-discount-applied{
    display:flex;align-items:center;justify-content:space-between;gap:12px;
    padding:10px 11px;border:1px solid rgba(116,211,147,.18);border-radius:10px;background:rgba(77,176,108,.055)
}
.checkout-discount-applied>div{display:flex;flex-direction:column;gap:2px}
.checkout-discount-applied span{font-size:.62rem;color:#77c98f;font-weight:900;text-transform:uppercase;letter-spacing:.08em}
.checkout-discount-applied strong{font-size:.77rem;color:#e8f3eb}
.checkout-discount-applied em{font-style:normal;color:#89d9a0;font-weight:900;font-size:.78rem}
.checkout-discount-remove-form{margin-top:7px;text-align:right}
.checkout-discount-remove{border:0;background:none;color:#9ca5a7;text-decoration:underline;cursor:pointer;font-size:.68rem}
.checkout-wheel-reward{
    display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:10px;padding:10px 11px;
    border:1px solid rgba(231,180,88,.16);border-radius:10px;background:rgba(231,180,88,.04)
}
.checkout-wheel-reward>div{display:flex;flex-direction:column;gap:2px}
.checkout-wheel-reward span{color:#d2ad67;font-size:.62rem;font-weight:900;text-transform:uppercase;letter-spacing:.06em}
.checkout-wheel-reward strong{color:#f2e7cf;font-size:.74rem}
.checkout-wheel-login{display:block;margin-top:10px;color:#d6b471;font-size:.68rem;text-decoration:none;line-height:1.4}
.checkout-discount-success{border-color:rgba(95,202,128,.2)!important;background:rgba(95,202,128,.05)!important}

/* Buchungsrabatt */
.booking-discount-section{border-color:rgba(231,180,88,.16)!important}
.booking-discount-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,.72fr);gap:14px;align-items:stretch}
.booking-wheel-choice{
    display:flex;flex-direction:column;justify-content:center;gap:7px;padding:15px;
    border:1px solid rgba(231,180,88,.15);border-radius:12px;background:rgba(231,180,88,.035)
}
.booking-wheel-choice .eyebrow{margin:0}.booking-wheel-choice strong{color:#f2d79f}.booking-wheel-choice small{color:#929a9d;line-height:1.5}
.booking-wheel-choice a{color:#e1bd76;font-weight:800;text-decoration:none;font-size:.74rem}
.booking-discount-note{margin-top:12px;padding:10px 12px;border-radius:10px;background:rgba(255,255,255,.025);color:#8f989b;font-size:.7rem;line-height:1.5}
.booking-discount-error{display:block;margin-top:9px}

/* Fixed Glücksrad Trigger */
.discount-wheel-trigger{
    position:fixed;left:16px;bottom:16px;z-index:11000;
    display:flex;align-items:center;gap:8px;padding:7px 10px 7px 7px;
    border:1px solid rgba(243,194,101,.34);border-radius:999px;
    background:rgba(12,15,17,.94);box-shadow:0 12px 35px rgba(0,0,0,.42),0 0 0 1px rgba(255,255,255,.02) inset;
    color:#f4ddb2;cursor:pointer;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)
}
.discount-wheel-trigger:hover{transform:translateY(-2px);border-color:rgba(243,194,101,.6);box-shadow:0 15px 40px rgba(0,0,0,.48),0 0 22px rgba(222,163,54,.12)}
.discount-wheel-trigger.is-used{opacity:0;transform:translateY(10px);pointer-events:none;transition:.6s ease}
.discount-wheel-trigger-disc{
    position:relative;display:grid;place-items:center;width:38px;height:38px;border-radius:50%;
    background:conic-gradient(#d99d3f 0 60deg,#6d4c21 60deg 120deg,#e2b35e 120deg 180deg,#79501c 180deg 240deg,#d89f42 240deg 300deg,#5c431f 300deg 360deg);
    box-shadow:0 0 0 2px #dcb05e inset,0 5px 12px rgba(0,0,0,.28)
}
.discount-wheel-trigger-disc:before{content:"";position:absolute;inset:7px;border-radius:50%;background:#111518;border:1px solid rgba(255,255,255,.08)}
.discount-wheel-trigger-disc i{position:relative;z-index:1;font-style:normal;font-weight:950;color:#f2c66f}
.discount-wheel-trigger-text{font-size:.7rem;font-weight:900;letter-spacing:.04em}

.discount-wheel-modal{position:fixed;inset:0;z-index:11500;display:none;align-items:center;justify-content:center;padding:18px}
.discount-wheel-modal.is-open{display:flex}
.discount-wheel-backdrop{position:absolute;inset:0;background:rgba(2,3,4,.78);backdrop-filter:blur(9px);-webkit-backdrop-filter:blur(9px)}
.discount-wheel-dialog{
    position:relative;z-index:1;width:min(600px,100%);max-height:min(92vh,760px);overflow:auto;padding:28px;
    border:1px solid rgba(231,180,88,.28);border-radius:24px;
    background:radial-gradient(circle at 50% 0,rgba(224,168,66,.13),transparent 38%),linear-gradient(145deg,#171b1e,#0b0e10);
    box-shadow:0 35px 100px rgba(0,0,0,.62);text-align:center
}
.discount-wheel-close{position:absolute;right:13px;top:13px;width:38px;height:38px;border:1px solid rgba(255,255,255,.1);border-radius:50%;background:rgba(255,255,255,.04);color:#dce0df;font-size:1.45rem;cursor:pointer;z-index:5}
.discount-wheel-dialog h2{margin:5px auto 8px;max-width:480px;color:#fff;font-size:1.65rem}
.discount-wheel-copy,.discount-wheel-login-intro>p:not(.eyebrow){max-width:490px;margin:0 auto;color:#aeb7b9;line-height:1.6}
.discount-wheel-dialog>div>small{display:block;margin-top:14px;color:#7f898b;font-size:.67rem;line-height:1.45}
.discount-wheel-login-intro{padding-top:8px}.discount-wheel-mini{display:grid;place-items:center;width:72px;height:72px;margin:0 auto 16px;border-radius:50%;background:conic-gradient(#e2ad50 0 60deg,#63451d 60deg 120deg,#edc36f 120deg 180deg,#77531e 180deg 240deg,#d99d3f 240deg 300deg,#5b421e 300deg 360deg);box-shadow:0 0 0 4px rgba(229,182,92,.3)}
.discount-wheel-mini:before{content:"";position:absolute}.discount-wheel-mini span{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:#101416;color:#f1c568;font-size:1.15rem;font-weight:950}
.discount-wheel-actions,.discount-wheel-result-actions{display:flex;justify-content:center;gap:9px;flex-wrap:wrap;margin-top:20px}
.discount-wheel-stage{position:relative;width:min(340px,78vw);height:min(340px,78vw);margin:20px auto 17px}
.discount-wheel-pointer{position:absolute;z-index:3;left:50%;top:-8px;transform:translateX(-50%);width:0;height:0;border-left:17px solid transparent;border-right:17px solid transparent;border-top:31px solid #f2ca78;filter:drop-shadow(0 4px 6px rgba(0,0,0,.4))}
.discount-wheel{
    position:absolute;inset:0;border-radius:50%;border:7px solid #c58b32;
    background:conic-gradient(from -30deg,#d9a143 0 60deg,#5d4322 60deg 120deg,#e6b961 120deg 180deg,#7b5520 180deg 240deg,#d39234 240deg 300deg,#4f3a20 300deg 360deg);
    box-shadow:0 0 0 4px rgba(255,213,130,.22),0 18px 45px rgba(0,0,0,.42),inset 0 0 35px rgba(0,0,0,.25);
    transition:transform 4.2s cubic-bezier(.12,.72,.12,1);will-change:transform
}
.discount-wheel:after{content:"";position:absolute;inset:13px;border-radius:50%;border:1px solid rgba(255,255,255,.15);pointer-events:none}
.discount-wheel-center{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:grid;place-items:center;width:76px;height:76px;border-radius:50%;background:#0e1214;border:5px solid #d6a046;color:#f2c66e;font-size:1.5rem;font-weight:950;box-shadow:0 8px 18px rgba(0,0,0,.4)}
.wheel-label{position:absolute;left:50%;top:50%;width:56px;margin-left:-28px;margin-top:-12px;text-align:center;color:#fff8e6;font-weight:950;font-size:1rem;text-shadow:0 2px 4px rgba(0,0,0,.7)}
.wheel-label-1{transform:rotate(0deg) translateY(-125px) rotate(0deg)}
.wheel-label-2{transform:rotate(60deg) translateY(-125px) rotate(-60deg)}
.wheel-label-3{transform:rotate(120deg) translateY(-125px) rotate(-120deg)}
.wheel-label-4{transform:rotate(180deg) translateY(-125px) rotate(-180deg)}
.wheel-label-5{transform:rotate(240deg) translateY(-125px) rotate(-240deg)}
.wheel-label-6{transform:rotate(300deg) translateY(-125px) rotate(-300deg)}
.discount-wheel-spin-button{min-width:180px;background:linear-gradient(135deg,#e5b65d,#a56c1d)!important;color:#151008!important;border-color:#e9c274!important;font-weight:950!important;box-shadow:0 10px 26px rgba(205,144,44,.22)!important}
.discount-wheel-spin-button:disabled{opacity:.65;cursor:wait}
.discount-wheel-result{margin-top:19px;padding:18px;border:1px solid rgba(102,211,136,.2);border-radius:14px;background:rgba(80,183,112,.055)}
.discount-wheel-result h3{margin:4px 0 7px;color:#9fe0b3;font-size:1.35rem}
.discount-wheel-result>p:not(.eyebrow){margin:0;color:#b7c0c1;line-height:1.55}
.discount-wheel-error{margin-top:15px}
body.discount-wheel-open{overflow:hidden}

/* Admin Rabatte */
.discount-admin-stats{grid-template-columns:repeat(4,minmax(0,1fr))}
.admin-table-card-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:18px 18px 0}
.admin-table-card-heading h2{margin:3px 0 0}
.discount-code-table{min-width:1030px}.discount-code-table td>small{display:block;margin-top:4px;color:#899295}
.discount-code-pill{display:inline-flex;padding:5px 8px;border-radius:7px;background:rgba(231,180,88,.08);border:1px solid rgba(231,180,88,.16);color:#edcb8b;letter-spacing:.06em}
.discount-wheel-admin-grid{margin-top:18px}
.discount-free-products-form{margin-top:14px}
.discount-free-product-list{display:grid;gap:8px;max-height:490px;overflow:auto;margin-bottom:14px;padding-right:4px}
.discount-free-product-item{display:flex!important;align-items:center;gap:10px;padding:10px 11px;border:1px solid rgba(255,255,255,.07);border-radius:10px;background:rgba(255,255,255,.018);cursor:pointer}
.discount-free-product-item input{width:auto!important;margin:0}.discount-free-product-item span{display:flex;flex-direction:column;gap:3px}.discount-free-product-item strong{color:#e7ebea}.discount-free-product-item small{color:#899295;font-size:.66rem}
.discount-wheel-history{display:grid;gap:8px;max-height:520px;overflow:auto}.discount-wheel-history>div{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 10px;border:1px solid rgba(255,255,255,.065);border-radius:9px}.discount-wheel-history>div>div{display:flex;flex-direction:column;gap:2px}.discount-wheel-history small,.discount-wheel-history span:not(.status-badge){color:#8e9799;font-size:.65rem}
.wheel-status-aktiv{border-color:rgba(236,188,94,.2);color:#edc873}.wheel-status-eingeloest{border-color:rgba(90,200,124,.2);color:#8ad8a1}.wheel-status-widerrufen{border-color:rgba(200,90,90,.2);color:#d98c8c}
.discount-code-input-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}

/* Customer/Admin wheel cards */
.customer-wheel-card{border-color:rgba(231,180,88,.18)!important;background:radial-gradient(circle at top left,rgba(231,180,88,.06),transparent 44%),#101315!important}
.customer-wheel-prize{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:13px;border:1px solid rgba(231,180,88,.15);border-radius:11px;background:rgba(231,180,88,.035)}
.customer-wheel-prize>div{display:flex;flex-direction:column;gap:3px}.customer-wheel-prize span{font-size:.65rem;color:#a38c61}.customer-wheel-prize strong{color:#efd095}.customer-wheel-prize em{font-style:normal;color:#8f999b;font-size:.68rem}
.admin-wheel-customer-history{display:grid;gap:8px}.admin-wheel-customer-history>div{display:flex;justify-content:space-between;gap:10px;padding:10px;border:1px solid rgba(255,255,255,.065);border-radius:9px}.admin-wheel-customer-history>div>div{display:flex;flex-direction:column;gap:2px}.admin-wheel-customer-history small{color:#8e979a}

@media(max-width:950px){
    .discount-admin-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
    .booking-discount-grid{grid-template-columns:1fr}
}
@media(max-width:720px){
    .checkout-discount-code-form{grid-template-columns:1fr}
    .checkout-wheel-reward{align-items:flex-start;flex-direction:column}
    .discount-wheel-trigger{left:10px;bottom:10px;padding-right:8px}.discount-wheel-trigger-text{display:none}
    .discount-wheel-trigger-disc{width:42px;height:42px}
    .discount-wheel-dialog{padding:24px 15px 18px;border-radius:18px}
    .discount-wheel-dialog h2{font-size:1.35rem;padding:0 22px}
    .discount-wheel-stage{width:min(300px,82vw);height:min(300px,82vw)}
    .wheel-label-1{transform:rotate(0deg) translateY(-108px) rotate(0deg)}
    .wheel-label-2{transform:rotate(60deg) translateY(-108px) rotate(-60deg)}
    .wheel-label-3{transform:rotate(120deg) translateY(-108px) rotate(-120deg)}
    .wheel-label-4{transform:rotate(180deg) translateY(-108px) rotate(-180deg)}
    .wheel-label-5{transform:rotate(240deg) translateY(-108px) rotate(-240deg)}
    .wheel-label-6{transform:rotate(300deg) translateY(-108px) rotate(-300deg)}
    .discount-admin-stats{grid-template-columns:1fr 1fr}
    .admin-table-card-heading{align-items:flex-start;flex-direction:column}
}
@media(prefers-reduced-motion:reduce){
    .discount-wheel{transition-duration:.01ms!important}
    .discount-wheel-trigger{transition:none!important}
}


/* ============================================================
   V17.57 – Rabatt-Checkout komfortabler
   ============================================================ */
.checkout-quick-discounts{
    display:grid;
    gap:8px;
    margin:12px 0 14px;
}
.checkout-quick-discounts-label{
    color:#9da6a8;
    font-size:.67rem;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:.06em;
}
.checkout-quick-discount-form{
    margin:0;
}
.checkout-quick-discount-card{
    width:100%;
    display:grid;
    grid-template-columns:40px minmax(0,1fr) auto;
    align-items:center;
    gap:10px;
    padding:11px 12px;
    border:1px solid rgba(231,180,88,.22);
    border-radius:12px;
    background:linear-gradient(135deg,rgba(231,180,88,.08),rgba(255,255,255,.018));
    color:#fff;
    text-align:left;
    cursor:pointer;
    transition:transform .15s ease,border-color .15s ease,background .15s ease;
}
.checkout-quick-discount-card:hover{
    transform:translateY(-1px);
    border-color:rgba(239,197,116,.48);
    background:linear-gradient(135deg,rgba(231,180,88,.12),rgba(255,255,255,.025));
}
.checkout-quick-discount-card>span:nth-child(2){
    display:flex;
    flex-direction:column;
    gap:2px;
}
.checkout-quick-discount-card small{
    color:#9ba4a6;
    font-size:.62rem;
}
.checkout-quick-discount-card strong{
    color:#f4d79e;
    font-size:.77rem;
}
.checkout-quick-discount-card em{
    color:#d9bb7d;
    font-size:.65rem;
    font-style:normal;
    font-weight:900;
    white-space:nowrap;
}
.checkout-quick-discount-icon{
    display:grid;
    place-items:center;
    width:36px;
    height:36px;
    border-radius:50%;
    background:linear-gradient(135deg,#dfad54,#9e681f);
    color:#171006;
    font-weight:950;
}
.checkout-discount-divider{
    display:flex;
    align-items:center;
    gap:8px;
    margin:12px 0 9px;
    color:#7f888b;
    font-size:.61rem;
    text-transform:uppercase;
    letter-spacing:.06em;
}
.checkout-discount-divider::before,
.checkout-discount-divider::after{
    content:"";
    flex:1;
    height:1px;
    background:rgba(255,255,255,.07);
}
.checkout-discount-applied.is-free-product em{
    color:#8fe0b5;
}
.checkout-discount-applied small{
    display:block;
    margin-top:3px;
    color:#90999b;
    font-size:.63rem;
}
.checkout-free-product-line{
    border-top:1px dashed rgba(143,224,181,.18);
}
.checkout-free-product-line small{
    display:inline-block;
    margin-left:5px;
    color:#8fe0b5;
    font-size:.58rem;
    font-weight:900;
    text-transform:uppercase;
}
.checkout-discount-total-line{
    color:#9ee3bc;
}
.checkout-discount-total-line strong{
    color:#9ee3bc!important;
}
.customer-order-discount{
    color:#9ee3bc;
}

@media(max-width:560px){
    .checkout-quick-discount-card{
        grid-template-columns:36px minmax(0,1fr);
    }
    .checkout-quick-discount-card em{
        grid-column:2;
    }
}


/* ============================================================
   V17.58 – Bestellformular im Stil der Anfrageformulare
   ============================================================ */
.checkout-page-hero{
    padding-bottom:34px;
}
.checkout-hero-points{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    margin-top:18px;
}
.checkout-hero-points span{
    display:inline-flex;
    align-items:center;
    min-height:32px;
    padding:7px 10px;
    border:1px solid rgba(231,180,88,.14);
    border-radius:9px;
    background:rgba(255,255,255,.025);
    color:#cdd3d3;
    font-size:.69rem;
    font-weight:750;
}

.checkout-progress-card{
    display:grid;
    grid-template-columns:repeat(5,minmax(0,1fr));
    gap:7px;
    margin-bottom:16px;
    padding:8px;
    border:1px solid rgba(255,255,255,.07);
    border-radius:14px;
    background:rgba(255,255,255,.018);
}
.checkout-progress-card span{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:7px;
    min-height:40px;
    padding:7px;
    border-radius:9px;
    color:#9ba4a6;
    font-size:.65rem;
    font-weight:800;
}
.checkout-progress-card strong{
    display:grid;
    place-items:center;
    width:24px;
    height:24px;
    border:1px solid rgba(231,180,88,.22);
    border-radius:50%;
    background:rgba(231,180,88,.055);
    color:#e4bf76;
    font-size:.6rem;
}

.checkout-card-modern{
    padding:0!important;
    overflow:hidden;
    border-radius:20px!important;
    background:transparent!important;
    border:0!important;
    box-shadow:none!important;
}
.checkout-form-intro{
    margin-bottom:12px;
    padding:22px;
    border:1px solid rgba(231,180,88,.13);
    border-radius:18px;
    background:
        radial-gradient(circle at top left,rgba(231,180,88,.07),transparent 42%),
        linear-gradient(145deg,rgba(255,255,255,.025),rgba(255,255,255,.008)),
        #101315;
}
.checkout-form-intro h2{
    margin:4px 0 7px;
    color:#fff;
    font-size:1.45rem;
}
.checkout-form-intro p:last-child{
    margin:0;
    color:#9ba4a6;
    line-height:1.55;
}

.checkout-modern-form{
    display:grid;
    gap:12px;
}
.checkout-modern-form .checkout-modern-section{
    margin:0!important;
    padding:0!important;
    overflow:hidden;
    border:1px solid rgba(255,255,255,.085);
    border-radius:18px;
    background:
        radial-gradient(circle at 7% -5%,rgba(231,180,88,.045),transparent 34%),
        linear-gradient(145deg,rgba(255,255,255,.022),rgba(255,255,255,.008)),
        #101315;
    box-shadow:0 13px 32px rgba(0,0,0,.13);
}
.checkout-modern-form .checkout-section-title{
    display:flex;
    align-items:flex-start;
    gap:13px;
    margin:0!important;
    padding:17px 19px 14px;
    border-bottom:1px solid rgba(255,255,255,.065);
    background:rgba(255,255,255,.012);
}
.checkout-modern-form .checkout-section-title>span{
    display:grid;
    place-items:center;
    flex:0 0 auto;
    width:34px;
    height:34px;
    border:1px solid rgba(231,180,88,.25);
    border-radius:50%;
    background:rgba(231,180,88,.065);
    color:#e9c57d;
    font-size:.69rem;
    font-weight:900;
}
.checkout-modern-form .checkout-section-title h2{
    margin:0 0 3px;
    color:#fff;
    font-size:1.06rem;
}
.checkout-modern-form .checkout-section-title p{
    margin:0;
    color:#899295;
    font-size:.69rem;
    line-height:1.45;
}

/* Inhalte der einzelnen Bestellschritte */
.checkout-contact-section>.form-grid,
.checkout-pickup-section>.pickup-slot-grid,
.checkout-pickup-section>.alert,
.checkout-system-section>.systemfirework-option,
.checkout-system-section>.shop-notice,
.checkout-payment-section>.payment-method-grid,
.checkout-payment-section>.alert,
.checkout-payment-section>.pickup-signature-panel,
.checkout-confirm-section>.form-group,
.checkout-confirm-section>.checkout-checks,
.checkout-confirm-section>.alert,
.checkout-confirm-section>.checkout-submit,
.checkout-confirm-section>.checkout-legal-note{
    margin-left:19px;
    margin-right:19px;
}
.checkout-contact-section>.form-grid{
    padding:19px 0 20px;
    margin-top:0;
    margin-bottom:0;
}
.checkout-contact-section .form-group{
    margin:0;
}
.checkout-contact-section .form-group input{
    min-height:45px;
    border-radius:10px;
}

.checkout-pickup-section>.pickup-slot-grid{
    padding:19px 0 20px;
    margin-top:0;
    margin-bottom:0;
}
.checkout-pickup-section .pickup-slot{
    min-height:88px;
    border-radius:12px;
    transition:transform .15s ease,border-color .15s ease,background .15s ease;
}
.checkout-pickup-section .pickup-slot:hover{
    transform:translateY(-1px);
    border-color:rgba(231,180,88,.25);
}
.checkout-pickup-section .pickup-slot:has(input:checked){
    border-color:rgba(231,180,88,.48);
    background:rgba(231,180,88,.075);
}

.checkout-system-section>.systemfirework-option,
.checkout-system-section>.shop-notice{
    margin-top:19px;
    margin-bottom:20px;
}
.checkout-system-section .systemfirework-option{
    border-radius:13px;
}

.checkout-payment-section>.payment-method-grid,
.checkout-payment-section>.alert{
    margin-top:19px;
}
.checkout-payment-section>.payment-method-grid{
    margin-bottom:14px;
}
.checkout-payment-section .payment-method{
    min-height:105px;
    padding:14px;
    border-radius:13px;
    transition:transform .15s ease,border-color .15s ease,background .15s ease;
}
.checkout-payment-section .payment-method:hover{
    transform:translateY(-1px);
}
.checkout-payment-section .payment-method:has(input:checked){
    border-color:rgba(231,180,88,.48);
    background:rgba(231,180,88,.07);
}
.checkout-payment-section>.pickup-signature-panel{
    margin-top:0;
    margin-bottom:20px;
    padding:16px;
    border-radius:13px;
}

.checkout-confirm-section>.form-group{
    margin-top:19px;
}
.checkout-confirm-section textarea{
    min-height:120px;
    border-radius:10px;
}
.checkout-confirm-section>.checkout-checks{
    display:grid;
    gap:8px;
    margin-top:13px;
}
.checkout-confirm-section .checkbox-row{
    margin:0;
    padding:11px 12px;
    border:1px solid rgba(255,255,255,.07);
    border-radius:10px;
    background:rgba(255,255,255,.018);
}
.checkout-confirm-section>.checkout-inline-errors,
.checkout-confirm-section>.checkout-submit-blocker{
    margin-top:14px;
}
.checkout-confirm-section>.checkout-submit{
    width:calc(100% - 38px);
    min-height:54px;
    margin-top:15px;
    margin-bottom:0;
    border-radius:12px;
    font-size:.86rem;
    font-weight:900;
    box-shadow:0 12px 30px rgba(199,135,37,.22);
}
.checkout-confirm-section>.checkout-submit:hover:not(:disabled){
    transform:translateY(-1px);
}
.checkout-confirm-section>.checkout-legal-note{
    margin-top:10px;
    margin-bottom:20px;
    color:#7f898c;
    font-size:.64rem;
    line-height:1.45;
}

/* rechte Bestellübersicht */
.checkout-summary{
    position:sticky;
    top:96px;
    align-self:start;
    border-radius:18px!important;
    box-shadow:0 16px 38px rgba(0,0,0,.14);
}
.checkout-summary h2{
    margin-bottom:13px;
}
.checkout-summary .checkout-discount-card{
    border-radius:13px;
}
.checkout-summary .cart-total-row{
    margin-top:13px;
    padding-top:14px;
    border-top:1px solid rgba(255,255,255,.09);
}

/* Rabattkarte rechts ebenfalls ruhiger */
.checkout-summary .checkout-quick-discount-card{
    border-radius:11px;
}
.checkout-summary .checkout-discount-code-form input{
    border-radius:9px;
}

@media(max-width:1050px){
    .checkout-progress-card{
        overflow-x:auto;
        grid-template-columns:repeat(5,minmax(115px,1fr));
    }
    .checkout-summary{
        position:static;
    }
}
@media(max-width:720px){
    .checkout-page-hero{
        padding-bottom:25px;
    }
    .checkout-hero-points{
        display:grid;
        grid-template-columns:1fr;
    }
    .checkout-progress-card{
        display:flex;
        overflow-x:auto;
        scroll-snap-type:x proximity;
    }
    .checkout-progress-card span{
        flex:0 0 122px;
        justify-content:flex-start;
        scroll-snap-align:start;
    }
    .checkout-form-intro{
        padding:17px;
    }
    .checkout-modern-form .checkout-section-title{
        padding:15px;
    }
    .checkout-contact-section>.form-grid,
    .checkout-pickup-section>.pickup-slot-grid,
    .checkout-pickup-section>.alert,
    .checkout-system-section>.systemfirework-option,
    .checkout-system-section>.shop-notice,
    .checkout-payment-section>.payment-method-grid,
    .checkout-payment-section>.alert,
    .checkout-payment-section>.pickup-signature-panel,
    .checkout-confirm-section>.form-group,
    .checkout-confirm-section>.checkout-checks,
    .checkout-confirm-section>.alert,
    .checkout-confirm-section>.checkout-submit,
    .checkout-confirm-section>.checkout-legal-note{
        margin-left:15px;
        margin-right:15px;
    }
    .checkout-contact-section>.form-grid{
        padding:15px 0 16px;
    }
    .checkout-pickup-section>.pickup-slot-grid{
        padding:15px 0 16px;
    }
    .checkout-system-section>.systemfirework-option,
    .checkout-system-section>.shop-notice{
        margin-top:15px;
        margin-bottom:16px;
    }
    .checkout-payment-section>.payment-method-grid,
    .checkout-payment-section>.alert{
        margin-top:15px;
    }
    .checkout-payment-section>.pickup-signature-panel{
        margin-bottom:16px;
    }
    .checkout-confirm-section>.form-group{
        margin-top:15px;
    }
    .checkout-confirm-section>.checkout-submit{
        width:calc(100% - 30px);
    }
}


/* ============================================================
   V17.59 – Buttons systemweit kontrastreicher & klarer
   ============================================================ */

/* Gemeinsame Grundlage */
.button,
button.button,
a.button,
input[type="submit"].button,
input[type="button"].button{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:.45rem;
    min-height:44px;
    padding:.72rem 1.05rem;
    border:1px solid rgba(255,255,255,.14);
    border-radius:10px;
    font-family:inherit;
    font-size:.78rem;
    font-weight:900;
    line-height:1.15;
    letter-spacing:.02em;
    text-decoration:none;
    text-align:center;
    cursor:pointer;
    user-select:none;
    -webkit-user-select:none;
    transition:
        transform .15s ease,
        filter .15s ease,
        background .15s ease,
        border-color .15s ease,
        box-shadow .15s ease,
        color .15s ease;
    box-shadow:0 7px 18px rgba(0,0,0,.18);
}

.button:hover,
button.button:hover,
a.button:hover{
    transform:translateY(-1px);
    filter:brightness(1.06);
}

.button:active,
button.button:active,
a.button:active{
    transform:translateY(0);
}

.button:focus-visible,
button.button:focus-visible,
a.button:focus-visible,
input[type="submit"].button:focus-visible,
input[type="button"].button:focus-visible{
    outline:3px solid rgba(255,205,112,.48);
    outline-offset:3px;
}

/* Primär: deutlich gold/orange */
.button-primary{
    border-color:#f0c066!important;
    background:linear-gradient(135deg,#efbd5d 0%,#c98727 100%)!important;
    color:#171006!important;
    text-shadow:none!important;
    box-shadow:
        0 10px 24px rgba(197,127,31,.26),
        inset 0 1px 0 rgba(255,255,255,.28)!important;
}
.button-primary:hover{
    border-color:#ffd98b!important;
    background:linear-gradient(135deg,#f7cb72 0%,#d69531 100%)!important;
    color:#100b05!important;
}

/* Sekundär: helle Kontur, deutlich sichtbare Schrift */
.button-secondary{
    border-color:rgba(232,196,128,.38)!important;
    background:linear-gradient(180deg,rgba(255,255,255,.075),rgba(255,255,255,.035))!important;
    color:#f2f5f4!important;
    box-shadow:
        0 7px 18px rgba(0,0,0,.15),
        inset 0 1px 0 rgba(255,255,255,.06)!important;
}
.button-secondary:hover{
    border-color:rgba(241,199,116,.65)!important;
    background:linear-gradient(180deg,rgba(237,188,94,.14),rgba(255,255,255,.05))!important;
    color:#ffe4aa!important;
}

/* Gefahr / Löschen */
.button-danger{
    border-color:#e36e69!important;
    background:linear-gradient(135deg,#b84542,#7f2928)!important;
    color:#fff!important;
    box-shadow:0 9px 22px rgba(136,40,37,.26)!important;
}
.button-danger:hover{
    border-color:#ff8d87!important;
    background:linear-gradient(135deg,#cf514d,#912e2c)!important;
}

/* Kleine Buttons bleiben kompakt, aber lesbar */
.button-small{
    min-height:36px!important;
    padding:.52rem .78rem!important;
    border-radius:9px!important;
    font-size:.69rem!important;
    font-weight:900!important;
}

/* Deaktiviert */
.button:disabled,
button.button:disabled,
input.button:disabled,
.button[aria-disabled="true"]{
    opacity:.46!important;
    filter:grayscale(.25)!important;
    cursor:not-allowed!important;
    transform:none!important;
    box-shadow:none!important;
}

/* Formulare: normale Submit-Buttons, die nicht explizit .button haben */
form button[type="submit"]:not(.button),
form input[type="submit"]:not(.button){
    min-height:44px;
    padding:.72rem 1rem;
    border:1px solid #e7b458;
    border-radius:10px;
    background:linear-gradient(135deg,#e9b457,#bd7d24);
    color:#171006;
    font-family:inherit;
    font-size:.77rem;
    font-weight:900;
    letter-spacing:.02em;
    cursor:pointer;
    box-shadow:0 8px 19px rgba(190,121,29,.22);
    transition:transform .15s ease,filter .15s ease,box-shadow .15s ease;
}
form button[type="submit"]:not(.button):hover,
form input[type="submit"]:not(.button):hover{
    transform:translateY(-1px);
    filter:brightness(1.07);
}

/* Text-/Icon-Aktionsbuttons */
.checkout-discount-remove,
.signature-clear,
.consultation-close,
.review-thanks-close,
.admin-back{
    font-weight:850!important;
}
.checkout-discount-remove{
    color:#efca83!important;
}
.signature-clear{
    border-color:rgba(255,255,255,.16)!important;
    background:rgba(255,255,255,.055)!important;
    color:#f0f3f2!important;
}
.signature-clear:hover{
    border-color:rgba(231,180,88,.42)!important;
    color:#f2cd88!important;
}

/* Kundenkonto – Abmelden klar rot statt unscheinbar */
.account-logout-button{
    border:1px solid rgba(239,105,99,.58)!important;
    background:linear-gradient(135deg,#b84440,#752625)!important;
    color:#fff!important;
    font-weight:950!important;
    box-shadow:0 8px 20px rgba(126,38,35,.25)!important;
}
.account-logout-button:hover{
    border-color:#ff8b84!important;
    background:linear-gradient(135deg,#cf514c,#8d2d2b)!important;
    color:#fff!important;
}

/* Falls der Abmeldelink im Header ohne .button gerendert wird */
.site-header a.account-logout-button,
.header-actions a.account-logout-button,
.customer-account-actions a.account-logout-button{
    min-height:38px;
    padding:.58rem .82rem;
    border-radius:9px;
}

/* Admin-Abmelden ebenfalls eindeutig */
.admin-logout-button{
    border:1px solid rgba(239,105,99,.5)!important;
    background:rgba(136,43,40,.78)!important;
    color:#fff!important;
    font-weight:900!important;
}
.admin-logout-button:hover{
    background:#a43b37!important;
    border-color:#f47f79!important;
}

/* Checkout/Review Spezialbuttons lesbarer */
.review-write-button,
.review-submit-button,
.checkout-submit,
.consultation-submit{
    font-weight:950!important;
    letter-spacing:.025em!important;
}
.checkout-submit{
    color:#171006!important;
}
.checkout-quick-discount-card{
    font-family:inherit;
}
.checkout-quick-discount-card strong,
.checkout-discount-code-form .button,
.checkout-discount-remove{
    font-weight:900!important;
}

/* Admin Aktionsbuttons nicht mehr zu dunkel */
.admin-body .button-secondary{
    background:linear-gradient(180deg,#282d30,#1a1e21)!important;
    border-color:rgba(232,196,128,.33)!important;
    color:#f4f5f3!important;
}
.admin-body .button-secondary:hover{
    background:linear-gradient(180deg,#34302a,#211f1c)!important;
    border-color:rgba(239,194,108,.58)!important;
    color:#f4cf89!important;
}
.admin-body .button-primary{
    color:#171006!important;
}

/* Mobile: volle Breite nur wo es ohnehin Aktionsgruppen sind */
@media(max-width:560px){
    .hero-actions .button,
    .compact-actions .button,
    .review-thanks-actions .button{
        min-height:46px;
    }
}


/* ============================================================
   V17.60 – Admin Feuerwerk-Kalender
   ============================================================ */
.calendar-stat-grid{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:16px}
.calendar-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:12px}
.calendar-month-nav{display:flex;align-items:center;gap:10px}
.calendar-month-nav>div{min-width:180px;text-align:center}
.calendar-month-nav>div span,.calendar-month-nav>div strong{display:block}
.calendar-month-nav>div span{color:#8b9497;font-size:.58rem;font-weight:900;letter-spacing:.08em}
.calendar-month-nav>div strong{margin-top:2px;color:#fff;font-size:1.05rem}
.calendar-nav-button,.calendar-add-mini{display:grid;place-items:center;width:38px;height:38px;border:1px solid rgba(231,180,88,.24);border-radius:10px;background:rgba(231,180,88,.05);color:#edc779;text-decoration:none;font-size:1.45rem;font-weight:800}
.calendar-nav-button:hover,.calendar-add-mini:hover{border-color:rgba(239,198,119,.55);background:rgba(231,180,88,.1);color:#fff}
.calendar-filter-form{display:flex;align-items:center;gap:7px;flex-wrap:wrap}
.calendar-filter-form select{min-width:150px;min-height:36px;padding:7px 30px 7px 9px;border-radius:9px}
.calendar-layout{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:14px;align-items:start}
.calendar-month-card,.calendar-upcoming-card{overflow:hidden;border:1px solid rgba(255,255,255,.08);border-radius:17px;background:#0e1113;box-shadow:0 16px 40px rgba(0,0,0,.14)}
.calendar-weekdays{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border-bottom:1px solid rgba(255,255,255,.075);background:rgba(255,255,255,.025)}
.calendar-weekdays span{padding:10px 6px;color:#8e979a;font-size:.62rem;font-weight:900;text-align:center;text-transform:uppercase}
.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}
.calendar-day{min-height:128px;padding:7px;border-right:1px solid rgba(255,255,255,.055);border-bottom:1px solid rgba(255,255,255,.055);background:rgba(255,255,255,.006)}
.calendar-day:nth-child(7n){border-right:0}
.calendar-day.is-other-month{opacity:.38;background:#0b0d0f}
.calendar-day.is-today{background:linear-gradient(145deg,rgba(231,180,88,.075),rgba(255,255,255,.01));box-shadow:inset 0 0 0 1px rgba(231,180,88,.22)}
.calendar-day-head{display:flex;align-items:center;justify-content:space-between;gap:6px;margin-bottom:6px}
.calendar-day-head>span{display:grid;place-items:center;width:27px;height:27px;border-radius:50%;color:#b9c0c1;font-size:.68rem;font-weight:850}
.calendar-day.is-today .calendar-day-head>span{background:#dba84c;color:#151006}
.calendar-day-head>a{display:grid;place-items:center;width:25px;height:25px;border-radius:7px;color:#737d80;text-decoration:none;font-size:1rem;font-weight:900}
.calendar-day-head>a:hover{background:rgba(231,180,88,.08);color:#e5bc6d}
.calendar-day-events{display:grid;gap:4px}
.calendar-event{display:grid;grid-template-columns:28px minmax(0,1fr);align-items:center;gap:4px;min-height:25px;padding:4px 6px;border:1px solid transparent;border-radius:7px;color:#e9eeed;text-decoration:none;font-size:.58rem;line-height:1.2;overflow:hidden}
.calendar-event strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.59rem}
.calendar-event-time{color:inherit;opacity:.75;font-size:.54rem;font-weight:800}
.calendar-event-geplant{background:rgba(93,138,164,.13);border-color:rgba(93,138,164,.24)}
.calendar-event-angebot{background:rgba(183,130,77,.13);border-color:rgba(183,130,77,.25)}
.calendar-event-bestaetigt{background:rgba(77,155,111,.14);border-color:rgba(77,155,111,.25)}
.calendar-event-vorbereitung{background:rgba(209,151,48,.15);border-color:rgba(219,163,57,.29)}
.calendar-event-erledigt{background:rgba(116,121,128,.12);border-color:rgba(116,121,128,.22)}
.calendar-event-abgesagt{background:rgba(171,69,66,.13);border-color:rgba(189,75,71,.25);opacity:.72}
.calendar-more{padding:2px 4px;color:#8e9799;font-size:.55rem}
.calendar-upcoming-card{position:sticky;top:95px}
.calendar-upcoming-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:16px;border-bottom:1px solid rgba(255,255,255,.07)}
.calendar-upcoming-head h2{margin:2px 0 0;font-size:1rem}
.calendar-add-mini{width:34px;height:34px}
.calendar-upcoming-list{display:grid}
.calendar-upcoming-item{display:grid;grid-template-columns:50px minmax(0,1fr);gap:11px;padding:12px 14px;border-bottom:1px solid rgba(255,255,255,.055);color:inherit;text-decoration:none}
.calendar-upcoming-item:hover{background:rgba(255,255,255,.025)}
.calendar-upcoming-item time{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:48px;border:1px solid rgba(231,180,88,.14);border-radius:9px;background:rgba(231,180,88,.04)}
.calendar-upcoming-item time strong{color:#f0ca82;font-size:1rem}
.calendar-upcoming-item time span{max-width:45px;overflow:hidden;color:#8e9799;font-size:.5rem;text-overflow:ellipsis;white-space:nowrap}
.calendar-upcoming-item>div{min-width:0}
.calendar-upcoming-item>div>strong,.calendar-upcoming-item>div>small{display:block}
.calendar-upcoming-item>div>strong{margin-top:4px;overflow:hidden;color:#f2f4f3;font-size:.7rem;text-overflow:ellipsis;white-space:nowrap}
.calendar-upcoming-item>div>small{margin-top:3px;color:#899295;font-size:.58rem;line-height:1.35}
.calendar-upcoming-status{display:inline-flex!important;width:max-content;padding:3px 6px;border:1px solid transparent;border-radius:6px;font-size:.48rem!important;font-weight:900;text-transform:uppercase;letter-spacing:.04em}
.calendar-empty{padding:25px!important}
.calendar-legend{display:flex;flex-wrap:wrap;gap:7px;margin-top:11px}
.calendar-legend-item{display:inline-flex;align-items:center;gap:6px;padding:5px 8px;border:1px solid transparent;border-radius:8px;color:#aab1b2;font-size:.56rem;font-weight:800}
.calendar-legend-item i{width:7px;height:7px;border-radius:50%;background:currentColor}
.calendar-event-form-grid{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:14px;align-items:start}
.calendar-event-form-main{display:grid;gap:12px}
.calendar-edit-card{margin:0!important;overflow:hidden;border:1px solid rgba(255,255,255,.08);border-radius:18px;background:radial-gradient(circle at top left,rgba(231,180,88,.045),transparent 38%),#101315}
.calendar-edit-card .form-section-heading{margin:0;padding:17px 18px 14px;border-bottom:1px solid rgba(255,255,255,.06)}
.calendar-form-fields{padding:18px}
.calendar-form-fields textarea{resize:vertical}
.calendar-event-form-side{position:sticky;top:95px;display:grid;gap:12px}
.calendar-event-summary-card{display:grid;gap:10px}
.calendar-event-summary-card h2{margin:0;font-size:1.15rem}
.calendar-event-summary-card .button{width:100%}
.calendar-save-button{margin-top:5px}
.calendar-edit-summary{display:grid;gap:7px;margin:5px 0}
.calendar-edit-summary>div{padding:9px 10px;border:1px solid rgba(255,255,255,.06);border-radius:9px;background:rgba(255,255,255,.018)}
.calendar-edit-summary span,.calendar-edit-summary strong{display:block}
.calendar-edit-summary span{color:#7f898b;font-size:.55rem;text-transform:uppercase}
.calendar-edit-summary strong{margin-top:2px;color:#e9eceb;font-size:.7rem}
.calendar-edit-status{display:inline-flex;padding:7px 10px;border:1px solid transparent;border-radius:9px;color:#fff;font-size:.66rem;font-weight:900}
.calendar-danger-card p{color:#929a9c}
.admin-hub-calendar{border-color:rgba(231,180,88,.18);background:linear-gradient(145deg,rgba(231,180,88,.055),rgba(255,255,255,.012)),#101316}
.dashboard-calendar-banner{margin-bottom:15px;padding:15px;border:1px solid rgba(231,180,88,.13);border-radius:15px;background:linear-gradient(145deg,rgba(231,180,88,.045),rgba(255,255,255,.012)),#101315}
.dashboard-calendar-banner-head{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:10px}
.dashboard-calendar-banner-head strong{display:block;margin-top:2px}
.dashboard-calendar-items{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.dashboard-calendar-items>a{display:grid;grid-template-columns:auto minmax(0,1fr);gap:9px;align-items:center;padding:10px;border:1px solid rgba(255,255,255,.065);border-radius:10px;background:rgba(255,255,255,.018);color:inherit;text-decoration:none}
.dashboard-calendar-items>a:hover{border-color:rgba(231,180,88,.22);background:rgba(231,180,88,.035)}
.dashboard-calendar-items time{color:#e7bd70;font-size:.7rem;font-weight:900}
.dashboard-calendar-items div{min-width:0}
.dashboard-calendar-items div strong,.dashboard-calendar-items div small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.dashboard-calendar-items div strong{color:#eef1f0;font-size:.68rem}
.dashboard-calendar-items div small{margin-top:2px;color:#818b8e;font-size:.55rem}
.dashboard-calendar-items>a>span{grid-column:1/-1;width:max-content;padding:3px 6px;border:1px solid transparent;border-radius:6px;font-size:.48rem;font-weight:900}
@media(max-width:1150px){.calendar-layout{grid-template-columns:1fr}.calendar-upcoming-card{position:static}.calendar-upcoming-list{grid-template-columns:repeat(2,minmax(0,1fr))}.calendar-event-form-grid{grid-template-columns:1fr}.calendar-event-form-side{position:static;grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){.calendar-toolbar{align-items:flex-start;flex-direction:column}.calendar-filter-form{width:100%}.calendar-filter-form select{flex:1 1 160px}.calendar-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.calendar-month-card{overflow-x:auto}.calendar-weekdays,.calendar-grid{min-width:760px}.dashboard-calendar-items{grid-template-columns:1fr}}
@media(max-width:650px){.calendar-upcoming-list{grid-template-columns:1fr}.calendar-event-form-side{grid-template-columns:1fr}.calendar-stat-grid{grid-template-columns:1fr 1fr}.calendar-filter-form .button{flex:1 1 auto}}


/* ============================================================
   V17.61 – Geschützter Helfer-Kalender
   ============================================================ */
.helper-calendar-hero{padding:42px 0 28px;border-bottom:1px solid rgba(231,180,88,.12);background:radial-gradient(circle at 18% 5%,rgba(231,180,88,.075),transparent 38%),#0c0f11}
.helper-calendar-hero-inner{display:flex;align-items:flex-end;justify-content:space-between;gap:30px}
.helper-calendar-hero h1{margin:4px 0 10px}.helper-calendar-hero p:last-child{max-width:760px;color:#a8b0b1;line-height:1.65}
.helper-calendar-access-badge{flex:0 0 auto;display:grid;grid-template-columns:36px auto;column-gap:10px;align-items:center;min-width:230px;padding:13px;border:1px solid rgba(231,180,88,.18);border-radius:13px;background:rgba(231,180,88,.04)}
.helper-calendar-access-badge>span{grid-row:1/3;display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,#dfad54,#9c681f);color:#151006;font-weight:950}
.helper-calendar-access-badge strong{color:#f2f3f1;font-size:.72rem}.helper-calendar-access-badge small{color:#899295;font-size:.61rem}
.helper-calendar-notice{margin-bottom:16px;padding:13px 15px;border:1px solid rgba(86,151,122,.18);border-radius:12px;background:rgba(86,151,122,.045)}
.helper-calendar-notice strong{color:#a9e1c0}.helper-calendar-notice p{margin:4px 0 0;color:#929b9d;font-size:.72rem}
.helper-calendar-toolbar{display:flex;align-items:center;justify-content:center;gap:14px;margin-bottom:12px}
.helper-calendar-toolbar>a{display:grid;place-items:center;width:40px;height:40px;border:1px solid rgba(231,180,88,.2);border-radius:10px;background:rgba(231,180,88,.04);color:#efc677;text-decoration:none;font-size:1.4rem}
.helper-calendar-toolbar>div{min-width:190px;text-align:center}.helper-calendar-toolbar span,.helper-calendar-toolbar strong{display:block}.helper-calendar-toolbar span{color:#818a8d;font-size:.56rem;font-weight:900}.helper-calendar-toolbar strong{color:#fff}
.helper-calendar-month-wrap{overflow:hidden;margin-bottom:22px;border:1px solid rgba(255,255,255,.075);border-radius:16px;background:#0f1214}
.helper-calendar-weekdays,.helper-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}
.helper-calendar-weekdays{background:rgba(255,255,255,.025);border-bottom:1px solid rgba(255,255,255,.06)}.helper-calendar-weekdays span{padding:9px;color:#879093;font-size:.6rem;font-weight:900;text-align:center}
.helper-calendar-day{min-height:112px;padding:7px;border-right:1px solid rgba(255,255,255,.05);border-bottom:1px solid rgba(255,255,255,.05)}
.helper-calendar-day:nth-child(7n){border-right:0}.helper-calendar-day.is-other-month{opacity:.33}.helper-calendar-day.is-today{background:rgba(231,180,88,.045);box-shadow:inset 0 0 0 1px rgba(231,180,88,.17)}
.helper-calendar-day-number{margin-bottom:5px;color:#aab2b3;font-size:.65rem;font-weight:900}.helper-calendar-day.is-today .helper-calendar-day-number{color:#efc777}
.helper-calendar-mini-event{display:grid;grid-template-columns:29px minmax(0,1fr);gap:4px;margin-top:4px;padding:4px 5px;border:1px solid rgba(231,180,88,.13);border-radius:7px;background:rgba(231,180,88,.04);color:#e4e7e6;text-decoration:none;font-size:.55rem}
.helper-calendar-mini-event span{color:#cba65e;font-weight:850}.helper-calendar-mini-event strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.helper-event-list{display:grid;gap:13px}.helper-event-card{display:grid;grid-template-columns:92px minmax(0,1fr);overflow:hidden;border:1px solid rgba(255,255,255,.08);border-radius:17px;background:radial-gradient(circle at top left,rgba(231,180,88,.05),transparent 36%),#101315}
.helper-event-date{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:18px 10px;border-right:1px solid rgba(255,255,255,.065);background:rgba(231,180,88,.025)}
.helper-event-date strong{color:#efc87e;font-size:1.65rem}.helper-event-date span{color:#e9eceb;font-size:.7rem;font-weight:850}.helper-event-date small{color:#798285;font-size:.58rem}
.helper-event-content{padding:18px}.helper-event-top{display:flex;justify-content:space-between;gap:15px}.helper-event-type{color:#d7ae62;font-size:.58rem;font-weight:900;text-transform:uppercase}.helper-event-top h2{margin:4px 0 0;font-size:1.08rem}
.helper-request-status{display:inline-flex;height:max-content;padding:5px 8px;border-radius:7px;font-size:.56rem;font-weight:900;text-transform:uppercase}
.helper-request-status.is-approved{background:rgba(67,158,105,.13);border:1px solid rgba(67,158,105,.3);color:#9fe2ba}.helper-request-status.is-pending{background:rgba(210,156,55,.13);border:1px solid rgba(210,156,55,.3);color:#f0ca7a}.helper-request-status.is-rejected{background:rgba(190,76,71,.12);border:1px solid rgba(190,76,71,.27);color:#efa29d}
.helper-event-meta{display:flex;flex-wrap:wrap;gap:8px;margin-top:13px}.helper-event-meta>div{min-width:150px;padding:8px 10px;border:1px solid rgba(255,255,255,.055);border-radius:9px;background:rgba(255,255,255,.015)}.helper-event-meta span,.helper-event-meta strong{display:block}.helper-event-meta span{color:#778184;font-size:.52rem;text-transform:uppercase}.helper-event-meta strong{color:#dfe3e2;font-size:.67rem}
.helper-event-note{margin-top:12px;padding:11px 12px;border-left:3px solid #c9943e;background:rgba(201,148,62,.045)}.helper-event-note strong{color:#e3be75;font-size:.65rem}.helper-event-note p{margin:5px 0 0;color:#aeb5b6;font-size:.7rem}
.helper-event-approved-message,.helper-event-pending-message,.helper-event-rejected-message,.helper-event-closed{margin-top:12px;padding:10px 12px;border-radius:9px;font-size:.68rem}.helper-event-approved-message{background:rgba(65,153,101,.065)}.helper-event-pending-message{background:rgba(211,157,58,.055)}.helper-event-rejected-message{background:rgba(183,70,66,.05)}
.helper-request-form{display:grid;gap:9px;margin-top:14px;padding-top:13px;border-top:1px solid rgba(255,255,255,.06)}.helper-request-form label{color:#d7dddd;font-size:.68rem;font-weight:800}.helper-request-form textarea{width:100%;margin-top:6px;resize:vertical}.helper-request-form .button{justify-self:start}.helper-withdraw-form{margin-top:9px}
.customer-helper-calendar-card{border-color:rgba(78,152,177,.18)!important;background:linear-gradient(145deg,rgba(78,152,177,.055),rgba(231,180,88,.025)),#101315!important}
.calendar-helper-admin-card{display:grid;gap:10px}.calendar-helper-admin-list{display:grid;gap:7px}.calendar-helper-admin-item{display:grid;gap:7px;padding:10px;border:1px solid rgba(255,255,255,.065);border-radius:10px;background:rgba(255,255,255,.018)}
.calendar-helper-admin-item strong,.calendar-helper-admin-item span,.calendar-helper-admin-item small{display:block}.calendar-helper-admin-item p{margin:7px 0;color:#b1b8b9;font-size:.65rem}.calendar-helper-admin-actions{display:flex;gap:6px;flex-wrap:wrap}
.helper-admin-status{display:inline-flex!important;width:max-content;padding:4px 7px;border-radius:7px;font-size:.52rem!important;font-weight:900;text-transform:uppercase}.helper-admin-status-angefragt{color:#efca7f;background:rgba(208,153,52,.1)}.helper-admin-status-genehmigt{color:#9fe1b9;background:rgba(61,153,99,.1)}.helper-admin-status-abgelehnt{color:#efa39f;background:rgba(183,70,66,.1)}.helper-admin-status-zurueckgezogen{color:#9da5a7;background:rgba(119,128,132,.1)}
.helper-request-stat-grid{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:14px}.helper-request-stat-grid a{text-decoration:none;color:inherit}.helper-admin-filter-tabs{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:13px}.helper-admin-filter-tabs a{padding:7px 10px;border:1px solid rgba(255,255,255,.07);border-radius:8px;color:#9fa7a9;text-decoration:none;font-size:.65rem;font-weight:850}.helper-admin-filter-tabs a.active,.helper-admin-filter-tabs a:hover{color:#efc778;border-color:rgba(231,180,88,.28)}
.helper-admin-request-grid{display:grid;gap:10px}.helper-admin-request-card{display:grid;grid-template-columns:80px minmax(0,1fr) auto;gap:14px;align-items:center;padding:14px;border:1px solid rgba(255,255,255,.075);border-radius:13px;background:#101315}.helper-admin-request-date{display:flex;flex-direction:column;align-items:center;padding:9px;border:1px solid rgba(231,180,88,.12);border-radius:9px}.helper-admin-request-main{min-width:0}.helper-admin-request-head{display:flex;justify-content:space-between;gap:12px}.helper-admin-request-head h2{margin:2px 0 0;font-size:.9rem}.helper-admin-request-contact{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}.helper-admin-request-contact span{color:#899295;font-size:.58rem}.helper-admin-request-main blockquote{margin:8px 0;padding:8px 10px;border-left:2px solid rgba(231,180,88,.35);color:#b4bbbc;font-size:.65rem}.helper-admin-request-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.helper-admin-request-actions form{margin:0}
.admin-hub-helpers{border-color:rgba(84,151,177,.16);background:linear-gradient(145deg,rgba(84,151,177,.045),rgba(255,255,255,.01)),#101316}
@media(max-width:900px){.helper-calendar-hero-inner{align-items:flex-start;flex-direction:column}.helper-calendar-access-badge{width:100%}.helper-calendar-month-wrap{overflow-x:auto}.helper-calendar-weekdays,.helper-calendar-grid{min-width:760px}.helper-admin-request-card{grid-template-columns:70px minmax(0,1fr)}.helper-admin-request-actions{grid-column:1/-1}}
@media(max-width:650px){.helper-event-card{grid-template-columns:1fr}.helper-event-date{align-items:flex-start;flex-direction:row;gap:6px;justify-content:flex-start;padding:12px 15px;border-right:0;border-bottom:1px solid rgba(255,255,255,.06)}.helper-event-date strong{font-size:1rem}.helper-event-top{flex-direction:column}.helper-event-meta{display:grid;grid-template-columns:1fr}.helper-event-meta>div{min-width:0}.helper-request-form .button{width:100%}.helper-request-stat-grid{grid-template-columns:1fr 1fr}.helper-admin-request-card{grid-template-columns:1fr}.helper-admin-request-actions{grid-column:auto}}

/* ============================================================
   V17.62 – Startseite komplett neu
   ============================================================ */
.home62-hero{position:relative;overflow:hidden;padding:54px 0 50px;border-bottom:1px solid rgba(255,255,255,.055);background:#090b0d}.home62-hero-bg{position:absolute;inset:0;background:radial-gradient(circle at 77% 22%,rgba(228,161,57,.105),transparent 29%),radial-gradient(circle at 7% 65%,rgba(112,59,31,.09),transparent 28%),linear-gradient(180deg,#0b0d0f 0%,#080a0b 100%);pointer-events:none}.home62-hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,.82fr) minmax(420px,1.18fr);gap:46px;align-items:center}.home62-hero-copy{max-width:650px}.home62-hero-copy h1{margin:8px 0 18px;max-width:720px;color:#f5f6f4;font-size:clamp(3rem,5.4vw,5.9rem);line-height:.93;letter-spacing:-.052em}.home62-hero-copy h1 span{color:#dda84d}.home62-hero-copy>p:not(.eyebrow){max-width:610px;margin:0;color:#a9b0b1;font-size:1rem;line-height:1.68}.home62-hero-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:25px}.home62-primary-cta{min-width:175px}.home62-hero-points{display:flex;flex-wrap:wrap;gap:8px 16px;margin-top:21px}.home62-hero-points span{position:relative;padding-left:15px;color:#929b9d;font-size:.67rem;font-weight:750}.home62-hero-points span::before{content:"";position:absolute;left:0;top:.38em;width:6px;height:6px;border-radius:50%;background:#dca84c;box-shadow:0 0 12px rgba(220,168,76,.5)}.home62-hero-visual{position:relative}.home62-hero-visual figure{position:relative;overflow:hidden;margin:0;aspect-ratio:1.22/1;border:1px solid rgba(255,255,255,.09);border-radius:26px;background:#111;box-shadow:0 35px 80px rgba(0,0,0,.45)}.home62-hero-visual figure::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 50%,rgba(4,5,6,.58) 100%),linear-gradient(90deg,rgba(5,6,7,.12),transparent 35%)}.home62-hero-visual img{width:100%;height:100%;object-fit:cover}.home62-hero-badge{position:absolute;left:-22px;bottom:28px;z-index:2;display:grid;gap:3px;min-width:215px;padding:14px 16px;border:1px solid rgba(232,189,110,.25);border-radius:13px;background:rgba(12,14,16,.9);box-shadow:0 16px 34px rgba(0,0,0,.38);backdrop-filter:blur(11px)}.home62-hero-badge span{color:#d8ad61;font-size:.54rem;font-weight:900;letter-spacing:.08em}.home62-hero-badge strong{color:#f4f5f3;font-size:.83rem}
.home62-trust-strip{border-bottom:1px solid rgba(255,255,255,.055);background:#0d1012}.home62-trust-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}.home62-trust-grid>div{padding:17px 22px;border-right:1px solid rgba(255,255,255,.055)}.home62-trust-grid>div:last-child{border-right:0}.home62-trust-grid strong,.home62-trust-grid span{display:block}.home62-trust-grid strong{color:#ecefef;font-size:.88rem}.home62-trust-grid span{margin-top:3px;color:#727c7f;font-size:.59rem}
.home62-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:25px;margin-bottom:24px}.home62-section-head h2{margin:4px 0 0;max-width:760px;font-size:clamp(1.8rem,3vw,3rem);line-height:1.02}.home62-section-head>a,.home62-review-actions>a:not(.review-write-button){color:#d7ad61;font-size:.67rem;font-weight:900;text-decoration:none;white-space:nowrap}.home62-section-head>a:hover,.home62-review-actions>a:not(.review-write-button):hover{color:#fff}
.home62-services{padding-top:70px;padding-bottom:65px}.home62-service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}.home62-service-card{position:relative;min-height:335px;overflow:hidden;border:1px solid rgba(255,255,255,.075);border-radius:16px;background:#111;color:#fff;text-decoration:none;isolation:isolate}.home62-service-card::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(7,8,9,.05) 15%,rgba(7,8,9,.24) 52%,rgba(7,8,9,.93) 100%)}.home62-service-card>img{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;transition:transform .4s ease,filter .3s ease}.home62-service-card:hover>img{transform:scale(1.035);filter:brightness(1.08)}.home62-service-card>span{position:absolute;top:14px;left:14px;padding:5px 7px;border:1px solid rgba(255,255,255,.15);border-radius:7px;background:rgba(7,8,9,.58);color:#e8cb91;font-size:.51rem;font-weight:900;letter-spacing:.07em;text-transform:uppercase;backdrop-filter:blur(8px)}.home62-service-card>div{position:absolute;left:0;right:0;bottom:0;padding:22px 19px 18px}.home62-service-card h3{margin:0;font-size:1.15rem}.home62-service-card p{margin:6px 0 11px;color:#b4bcbd;font-size:.69rem}.home62-service-card strong{color:#e0b468;font-size:.61rem}.home62-service-laser::after{background:linear-gradient(180deg,rgba(22,9,31,.05) 15%,rgba(16,9,28,.25) 52%,rgba(14,8,23,.95) 100%)}.home62-service-bottom{display:flex;align-items:center;justify-content:flex-end;gap:13px;margin-top:16px}.home62-service-bottom p{margin:0;color:#7e888a;font-size:.68rem}
.home62-reviews{overflow:hidden;padding:48px 0 46px;border-top:1px solid rgba(255,255,255,.055);border-bottom:1px solid rgba(255,255,255,.055);background:#0d1012}.home62-review-head{margin-bottom:18px}.home62-review-actions{display:flex;align-items:center;gap:11px}.home62-review-marquee{margin-top:4px}
.home62-gallery-section{padding-top:68px;padding-bottom:54px}.home62-gallery-section .gallery-strip-section,.home62-gallery-section .section{padding-top:0!important;padding-bottom:0!important}.home62-gallery-section .gallery-strip-header,.home62-gallery-section .section-heading{display:none!important}
.home62-process{padding-top:65px;padding-bottom:65px}.home62-process-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.home62-process-grid article{position:relative;min-height:180px;padding:24px;border:1px solid rgba(255,255,255,.075);border-radius:15px;background:radial-gradient(circle at top left,rgba(228,164,65,.055),transparent 38%),rgba(255,255,255,.018)}.home62-process-grid article>span{display:grid;place-items:center;width:35px;height:35px;border:1px solid rgba(228,164,65,.22);border-radius:50%;color:#dda94d;font-size:.65rem;font-weight:900}.home62-process-grid h3{margin:22px 0 7px;color:#f3f5f3;font-size:1rem}.home62-process-grid p{margin:0;color:#899396;font-size:.7rem;line-height:1.5}.home62-process-cta{margin-top:17px}
.home62-shop{padding-top:65px;padding-bottom:65px}.home62-shop-card{display:grid;grid-template-columns:minmax(330px,.9fr) minmax(0,1.1fr);overflow:hidden;padding:0;border:1px solid rgba(255,255,255,.08);border-radius:20px;background:#101315}.home62-shop-image{position:relative;min-height:390px;overflow:hidden}.home62-shop-image::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 50%,rgba(5,6,7,.65))}.home62-shop-image img{width:100%;height:100%;object-fit:cover}.home62-shop-image>span{position:absolute;z-index:2;top:15px;left:15px;padding:6px 8px;border:1px solid rgba(255,255,255,.15);border-radius:7px;background:rgba(6,7,8,.68);color:#e8c477;font-size:.55rem;font-weight:900;letter-spacing:.08em}.home62-shop-copy{align-self:center;max-width:650px;padding:45px}.home62-shop-copy h2{margin:5px 0 12px;font-size:clamp(1.8rem,3vw,3rem);line-height:1.03}.home62-shop-copy>p:not(.eyebrow){margin:0;color:#959ea0;line-height:1.6}.home62-shop-actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:20px}
.home62-region{padding-top:62px;padding-bottom:62px}.home62-region-grid{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:42px;align-items:center}.home62-region h2{margin:5px 0 10px;font-size:clamp(2rem,3.6vw,3.8rem);line-height:.98}.home62-region p:not(.eyebrow){max-width:620px;margin:0 0 18px;color:#929b9e;line-height:1.6}.home62-contact-card{display:grid;gap:5px;padding:22px;border:1px solid rgba(231,180,88,.13);border-radius:15px;background:rgba(231,180,88,.035)}.home62-contact-card>span{color:#d6aa5d;font-size:.53rem;font-weight:900;letter-spacing:.08em}.home62-contact-card>strong{margin-top:4px;color:#f1f3f2;font-size:1rem}.home62-contact-card>p{margin:3px 0 6px!important;color:#848e91!important;font-size:.66rem}.home62-contact-card>a{color:#e7c172;font-size:.68rem;font-weight:850;text-decoration:none}
.home63-section-head{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    gap:28px;
    align-items:end;
    margin-bottom:26px;
}
.home63-section-head h2{
    max-width:780px;
    margin:5px 0 10px;
    font-size:clamp(2rem,3.5vw,3.55rem);
    line-height:.98;
    letter-spacing:-.035em;
}
.home63-section-head p:last-child{
    max-width:700px;
    margin:0;
    color:#8e989a;
    font-size:.76rem;
    line-height:1.6;
}
.home63-section-head>a{
    color:#deb56b;
    font-size:.68rem;
    font-weight:900;
    text-decoration:none;
    white-space:nowrap;
}
.home63-section-head>a:hover{
    color:#fff;
}

.home63-service-grid{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:10px;
}
.home63-service-card{
    --service-accent:#d9aa54;
    --service-soft:rgba(217,170,84,.14);
    --service-border:rgba(217,170,84,.24);
    position:relative;
    isolation:isolate;
    min-height:255px;
    overflow:hidden;
    padding:18px;
    border:1px solid var(--service-border);
    border-radius:16px;
    background:
        linear-gradient(145deg,var(--service-soft),rgba(255,255,255,.014) 44%),
        #101315;
    color:#eef1ef;
    text-decoration:none;
    box-shadow:
        0 16px 35px rgba(0,0,0,.13),
        inset 0 1px 0 rgba(255,255,255,.02);
    transition:
        transform .2s ease,
        border-color .2s ease,
        box-shadow .2s ease,
        background .2s ease;
}
.home63-service-card:hover{
    transform:translateY(-4px);
    border-color:color-mix(in srgb,var(--service-accent) 62%,transparent);
    box-shadow:
        0 22px 45px rgba(0,0,0,.22),
        0 0 28px color-mix(in srgb,var(--service-accent) 11%,transparent);
}
.home63-service-glow{
    position:absolute;
    z-index:-1;
    width:170px;
    height:170px;
    top:-72px;
    right:-62px;
    border-radius:50%;
    background:var(--service-accent);
    opacity:.13;
    filter:blur(10px);
}
.home63-service-card::after{
    content:"";
    position:absolute;
    z-index:-1;
    left:0;
    right:0;
    bottom:0;
    height:3px;
    background:linear-gradient(90deg,var(--service-accent),transparent 92%);
    opacity:.8;
}
.home63-service-index{
    position:absolute;
    top:14px;
    right:15px;
    color:color-mix(in srgb,var(--service-accent) 76%,white 24%);
    font-size:.53rem;
    font-weight:950;
    letter-spacing:.08em;
}
.home63-service-icon{
    display:grid;
    place-items:center;
    width:44px;
    height:44px;
    border:1px solid color-mix(in srgb,var(--service-accent) 34%,transparent);
    border-radius:12px;
    background:color-mix(in srgb,var(--service-accent) 11%,transparent);
    color:color-mix(in srgb,var(--service-accent) 82%,white 18%);
    font-size:1.05rem;
    font-weight:900;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.035);
}
.home63-service-copy{
    position:absolute;
    left:18px;
    right:18px;
    bottom:18px;
}
.home63-service-kicker{
    display:block;
    margin-bottom:6px;
    color:color-mix(in srgb,var(--service-accent) 78%,white 22%);
    font-size:.52rem;
    font-weight:950;
    letter-spacing:.08em;
}
.home63-service-copy h3{
    margin:0;
    color:#f2f4f2;
    font-size:1.08rem;
}
.home63-service-copy p{
    min-height:42px;
    margin:7px 0 12px;
    color:#929b9d;
    font-size:.67rem;
    line-height:1.48;
}
.home63-service-copy strong{
    color:color-mix(in srgb,var(--service-accent) 80%,white 20%);
    font-size:.6rem;
    font-weight:900;
}

/* page-specific colors */
.home63-service-wedding{
    --service-accent:#e5bd9c;
    --service-soft:rgba(190,124,117,.12);
    --service-border:rgba(229,189,156,.24);
}
.home63-service-birthday{
    --service-accent:#d98b4e;
    --service-soft:rgba(135,71,89,.11);
    --service-border:rgba(217,139,78,.24);
}
.home63-service-event{
    --service-accent:#54c4c7;
    --service-soft:rgba(38,112,119,.12);
    --service-border:rgba(84,196,199,.22);
}
.home63-service-corporate{
    --service-accent:#8faac2;
    --service-soft:rgba(44,66,95,.15);
    --service-border:rgba(143,170,194,.23);
}
.home63-service-mega{
    --service-accent:#d85a50;
    --service-soft:rgba(128,35,32,.14);
    --service-border:rgba(216,90,80,.24);
}
.home63-service-laser{
    --service-accent:#9d7cf2;
    --service-soft:rgba(72,47,125,.14);
    --service-border:rgba(157,124,242,.24);
}
.home63-service-system{
    --service-accent:#e29b46;
    --service-soft:rgba(128,72,26,.14);
    --service-border:rgba(226,155,70,.24);
}
.home63-service-service{
    --service-accent:#d8b063;
    --service-soft:rgba(124,96,50,.12);
    --service-border:rgba(216,176,99,.22);
}

.home63-service-cta{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;
    margin-top:12px;
    padding:15px 17px;
    border:1px solid rgba(255,255,255,.065);
    border-radius:12px;
    background:rgba(255,255,255,.015);
}
.home63-service-cta span,
.home63-service-cta strong{
    display:block;
}
.home63-service-cta span{
    color:#8c9698;
    font-size:.52rem;
    font-weight:900;
    letter-spacing:.07em;
}
.home63-service-cta strong{
    margin-top:2px;
    color:#eef1ef;
    font-size:.78rem;
}

/* The gallery/eindrücke section is intentionally removed in V17.63 */

@media(max-width:1100px){
    .home63-service-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
}
@media(max-width:700px){
    .home63-services{
        padding-top:56px;
        padding-bottom:56px;
    }
    .home63-section-head{
        grid-template-columns:1fr;
        gap:10px;
        align-items:start;
    }
    .home63-service-grid{
        grid-template-columns:1fr;
    }
    .home63-service-card{
        min-height:225px;
    }
    .home63-service-copy p{
        min-height:0;
    }
    .home63-service-cta{
        align-items:stretch;
        flex-direction:column;
    }
    .home63-service-cta .button{
        width:100%;
    }
}


/* ============================================================
   V17.64 – Startseite: kräftigere Farben + Prozess ausführlicher
   ============================================================ */

/* Zwischenbanner unter Hero entfernt – dadurch direkter Einstieg in Leistungen */
.home62-trust-strip{
    display:none!important;
}

/* Leistungen: leuchtender und moderner */
.home63-service-card{
    box-shadow:
        0 18px 42px rgba(0,0,0,.16),
        inset 0 1px 0 rgba(255,255,255,.028);
}
.home63-service-card:hover{
    transform:translateY(-5px) scale(1.005);
    box-shadow:
        0 26px 54px rgba(0,0,0,.24),
        0 0 34px color-mix(in srgb,var(--service-accent) 18%,transparent);
}
.home63-service-glow{
    width:190px;
    height:190px;
    top:-78px;
    right:-68px;
    opacity:.22;
    filter:blur(14px);
}
.home63-service-card::after{
    height:4px;
    opacity:1;
}
.home63-service-icon{
    border-color:color-mix(in srgb,var(--service-accent) 48%,transparent);
    background:color-mix(in srgb,var(--service-accent) 15%,transparent);
    box-shadow:
        0 0 20px color-mix(in srgb,var(--service-accent) 12%,transparent),
        inset 0 1px 0 rgba(255,255,255,.05);
}
.home63-service-copy strong{
    text-shadow:0 0 14px color-mix(in srgb,var(--service-accent) 18%,transparent);
}

/* kräftigere Farbtöne */
.home63-service-wedding{
    --service-accent:#ffd1b5;
    --service-soft:rgba(255,160,173,.16);
    --service-border:rgba(255,209,181,.34);
}
.home63-service-birthday{
    --service-accent:#ff9b4a;
    --service-soft:rgba(164,74,106,.16);
    --service-border:rgba(255,155,74,.34);
}
.home63-service-event{
    --service-accent:#55e3e7;
    --service-soft:rgba(33,143,152,.16);
    --service-border:rgba(85,227,231,.33);
}
.home63-service-corporate{
    --service-accent:#9cc9f2;
    --service-soft:rgba(52,86,137,.18);
    --service-border:rgba(156,201,242,.32);
}
.home63-service-mega{
    --service-accent:#ff665d;
    --service-soft:rgba(161,40,36,.18);
    --service-border:rgba(255,102,93,.34);
}
.home63-service-laser{
    --service-accent:#b58cff;
    --service-soft:rgba(88,58,164,.18);
    --service-border:rgba(181,140,255,.34);
}
.home63-service-system{
    --service-accent:#ffae4a;
    --service-soft:rgba(157,87,27,.18);
    --service-border:rgba(255,174,74,.34);
}
.home63-service-service{
    --service-accent:#f0c768;
    --service-soft:rgba(151,114,44,.16);
    --service-border:rgba(240,199,104,.31);
}

/* Neuer ausführlicher Ablauf */
.home64-process{
    padding-top:72px;
    padding-bottom:72px;
    background:
        radial-gradient(circle at 50% 0%,rgba(231,180,88,.055),transparent 36%),
        #090c0e;
}
.home64-process-head{
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(280px,.65fr);
    gap:40px;
    align-items:end;
    margin-bottom:28px;
}
.home64-process-head h2{
    margin:5px 0 0;
    max-width:780px;
    font-size:clamp(2rem,3.8vw,3.7rem);
    line-height:.98;
    letter-spacing:-.035em;
}
.home64-process-head>p{
    margin:0;
    color:#8f989a;
    font-size:.76rem;
    line-height:1.62;
}
.home64-process-grid{
    display:grid;
    grid-template-columns:repeat(5,minmax(0,1fr));
    gap:9px;
}
.home64-process-grid article{
    position:relative;
    min-height:300px;
    overflow:hidden;
    padding:20px;
    border:1px solid rgba(255,255,255,.075);
    border-radius:15px;
    background:
        linear-gradient(155deg,rgba(255,255,255,.026),rgba(255,255,255,.008)),
        #101315;
}
.home64-process-grid article::after{
    content:"";
    position:absolute;
    left:0;
    right:0;
    bottom:0;
    height:3px;
    background:linear-gradient(90deg,#dca84c,transparent);
}
.home64-process-number{
    position:absolute;
    top:15px;
    right:15px;
    color:#7f898c;
    font-size:.55rem;
    font-weight:950;
    letter-spacing:.08em;
}
.home64-process-icon{
    display:grid;
    place-items:center;
    width:42px;
    height:42px;
    margin-bottom:34px;
    border:1px solid rgba(226,174,78,.25);
    border-radius:11px;
    background:rgba(226,174,78,.06);
    color:#e3b762;
    font-size:1rem;
}
.home64-process-grid h3{
    margin:0 0 9px;
    color:#f3f5f3;
    font-size:.96rem;
}
.home64-process-grid p{
    margin:0;
    color:#90999b;
    font-size:.66rem;
    line-height:1.55;
}
.home64-process-grid small{
    position:absolute;
    left:20px;
    bottom:18px;
    color:#d5ad61;
    font-size:.52rem;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.05em;
}
.home64-process-bottom{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;
    margin-top:14px;
    padding:16px 18px;
    border:1px solid rgba(231,180,88,.11);
    border-radius:12px;
    background:rgba(231,180,88,.025);
}
.home64-process-bottom span,
.home64-process-bottom strong{
    display:block;
}
.home64-process-bottom span{
    color:#858f92;
    font-size:.5rem;
    font-weight:900;
    letter-spacing:.08em;
}
.home64-process-bottom strong{
    margin-top:2px;
    color:#eef1ef;
    font-size:.74rem;
}

@media(max-width:1100px){
    .home64-process-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
    .home64-process-grid article:last-child{
        grid-column:1/-1;
        min-height:220px;
    }
}
@media(max-width:760px){
    .home64-process{
        padding-top:58px;
        padding-bottom:58px;
    }
    .home64-process-head{
        grid-template-columns:1fr;
        gap:12px;
        align-items:start;
    }
    .home64-process-grid{
        grid-template-columns:1fr;
    }
    .home64-process-grid article,
    .home64-process-grid article:last-child{
        grid-column:auto;
        min-height:235px;
    }
    .home64-process-bottom{
        align-items:stretch;
        flex-direction:column;
    }
    .home64-process-bottom .button{
        width:100%;
    }
}


/* ============================================================
   V17.67 – Dienstleistungen komplett neu
   ============================================================ */
.services67-hero{position:relative;overflow:hidden;padding:58px 0 54px;border-bottom:1px solid rgba(255,255,255,.06);background:#090c0e}
.services67-hero-glow{position:absolute;border-radius:50%;filter:blur(38px);pointer-events:none}
.services67-hero-glow-a{width:420px;height:420px;right:-100px;top:-150px;background:rgba(90,226,230,.11)}
.services67-hero-glow-b{width:360px;height:360px;left:-120px;bottom:-180px;background:rgba(255,137,67,.09)}
.services67-hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,.9fr) minmax(420px,1.1fr);gap:44px;align-items:center}
.services67-hero-copy h1{margin:7px 0 18px;color:#f5f6f4;font-size:clamp(2.8rem,5vw,5.25rem);line-height:.94;letter-spacing:-.05em}
.services67-hero-copy h1 span{background:linear-gradient(90deg,#ff9c55,#f1c56f,#68e7e8,#ac8cff);-webkit-background-clip:text;background-clip:text;color:transparent}
.services67-hero-copy>p:not(.eyebrow){max-width:650px;margin:0;color:#9ba4a6;font-size:.94rem;line-height:1.68}
.services67-hero-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px}
.services67-hero-tags{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px}
.services67-hero-tags span{padding:6px 9px;border:1px solid rgba(255,255,255,.07);border-radius:999px;background:rgba(255,255,255,.018);color:#8e989a;font-size:.58rem;font-weight:800}
.services67-hero-visual{position:relative;overflow:hidden;min-height:430px;border:1px solid rgba(255,255,255,.085);border-radius:24px;background:#111;box-shadow:0 30px 70px rgba(0,0,0,.4)}
.services67-hero-visual::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,rgba(4,6,7,.65))}
.services67-hero-visual img{width:100%;height:100%;object-fit:cover}
.services67-hero-panel{position:absolute;z-index:2;left:18px;right:18px;bottom:18px;padding:13px 14px;border:1px solid rgba(255,255,255,.11);border-radius:11px;background:rgba(7,9,10,.76);backdrop-filter:blur(12px)}
.services67-hero-panel span,.services67-hero-panel strong{display:block}
.services67-hero-panel span{color:#6ee4e8;font-size:.52rem;font-weight:900;letter-spacing:.08em}
.services67-hero-panel strong{margin-top:3px;color:#fff;font-size:.82rem}

.services67-overview{padding-top:74px;padding-bottom:70px;background:radial-gradient(circle at 10% 10%,rgba(255,121,65,.045),transparent 22%),radial-gradient(circle at 85% 35%,rgba(95,224,229,.045),transparent 25%),#0b0e10}
.services67-heading{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.55fr);gap:36px;align-items:end;margin-bottom:26px}
.services67-heading h2{margin:5px 0 0;max-width:800px;font-size:clamp(2rem,3.5vw,3.5rem);line-height:.98;letter-spacing:-.035em}
.services67-heading>p{margin:0;color:#8c9698;font-size:.74rem;line-height:1.6}
.services67-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}
.services67-card{--accent:#f0b75c;--soft:rgba(240,183,92,.14);position:relative;isolation:isolate;min-height:285px;overflow:hidden;padding:18px;border:1px solid color-mix(in srgb,var(--accent) 34%,transparent);border-radius:17px;background:radial-gradient(circle at 100% 0%,color-mix(in srgb,var(--accent) 24%,transparent),transparent 42%),linear-gradient(145deg,var(--soft),rgba(255,255,255,.013) 46%),#101315;color:#f1f3f2;text-decoration:none;box-shadow:0 17px 38px rgba(0,0,0,.15);transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}
.services67-card::before{content:"";position:absolute;z-index:-1;top:-75px;right:-70px;width:200px;height:200px;border-radius:50%;background:var(--accent);opacity:.18;filter:blur(20px)}
.services67-card::after{content:"";position:absolute;z-index:-1;left:0;right:0;bottom:0;height:4px;background:linear-gradient(90deg,var(--accent),transparent 92%)}
.services67-card:hover{transform:translateY(-5px);border-color:color-mix(in srgb,var(--accent) 62%,transparent);box-shadow:0 25px 52px rgba(0,0,0,.23),0 0 36px color-mix(in srgb,var(--accent) 19%,transparent)}
.services67-card-no{position:absolute;top:15px;right:16px;color:color-mix(in srgb,var(--accent) 88%,white 12%);font-size:.54rem;font-weight:950;letter-spacing:.08em}
.services67-card-icon{display:grid;place-items:center;width:47px;height:47px;border:1px solid color-mix(in srgb,var(--accent) 48%,transparent);border-radius:12px;background:color-mix(in srgb,var(--accent) 14%,transparent);color:color-mix(in srgb,var(--accent) 86%,white 14%);font-size:1.08rem;box-shadow:0 0 22px color-mix(in srgb,var(--accent) 12%,transparent)}
.services67-card-copy{position:absolute;left:18px;right:18px;bottom:18px}
.services67-card-copy>span{color:color-mix(in srgb,var(--accent) 84%,white 16%);font-size:.52rem;font-weight:950;letter-spacing:.08em}
.services67-card-copy h3{margin:5px 0 7px;color:#f5f6f4;font-size:1.14rem}
.services67-card-copy p{min-height:42px;margin:0 0 15px;color:#929c9e;font-size:.67rem;line-height:1.5}
.services67-card-copy>div{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:11px;border-top:1px solid rgba(255,255,255,.055)}
.services67-card-copy strong{color:#e9eceb;font-size:.62rem}
.services67-card-copy em{color:color-mix(in srgb,var(--accent) 85%,white 15%);font-size:.58rem;font-style:normal;font-weight:900}
.services67-wedding{--accent:#ffd0b1;--soft:rgba(255,122,155,.16)}
.services67-birthday{--accent:#ff9448;--soft:rgba(161,66,109,.17)}
.services67-event{--accent:#4ff0ec;--soft:rgba(21,135,145,.18)}
.services67-corporate{--accent:#8fc9ff;--soft:rgba(38,73,135,.19)}
.services67-mega{--accent:#ff554f;--soft:rgba(161,31,35,.2)}
.services67-laser{--accent:#b77dff;--soft:rgba(82,42,164,.19)}
.services67-system{--accent:#ffad42;--soft:rgba(157,79,21,.19)}
.services67-advice{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:13px;padding:16px 18px;border:1px solid rgba(255,255,255,.07);border-radius:12px;background:rgba(255,255,255,.015)}
.services67-advice span,.services67-advice strong{display:block}
.services67-advice span{color:#7e898b;font-size:.51rem;font-weight:950;letter-spacing:.08em}
.services67-advice strong{margin-top:2px;color:#eef1ef;font-size:.78rem}

.services67-scope{padding-top:70px;padding-bottom:70px}
.services67-heading-scope{margin-bottom:24px}
.services67-scope-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.services67-scope-card{overflow:hidden;padding:21px;border:1px solid rgba(255,255,255,.075);border-radius:16px;background:#101315}
.services67-included{border-color:rgba(72,205,135,.18);background:radial-gradient(circle at top left,rgba(72,205,135,.07),transparent 38%),#101315}
.services67-extra{border-color:rgba(247,168,66,.18);background:radial-gradient(circle at top left,rgba(247,168,66,.065),transparent 38%),#101315}
.services67-scope-top{display:flex;align-items:center;gap:12px;margin-bottom:16px}
.services67-scope-top>span{display:grid;place-items:center;width:42px;height:42px;flex:0 0 auto;border-radius:11px;font-size:1rem;font-weight:950}
.services67-included .services67-scope-top>span{border:1px solid rgba(72,205,135,.25);background:rgba(72,205,135,.08);color:#72df9e}
.services67-extra .services67-scope-top>span{border:1px solid rgba(247,168,66,.25);background:rgba(247,168,66,.08);color:#f2b65e}
.services67-scope-top h3{margin:3px 0 0;font-size:1rem}
.services67-scope-card ul{display:grid;grid-template-columns:1fr 1fr;gap:7px 16px;margin:0;padding:0;list-style:none}
.services67-scope-card li{position:relative;padding-left:15px;color:#9aa3a5;font-size:.65rem;line-height:1.45}
.services67-scope-card li::before{content:"";position:absolute;left:0;top:.52em;width:6px;height:6px;border-radius:50%}
.services67-included li::before{background:#62d58f}
.services67-extra li::before{background:#e9a84b}
.services67-scope-note{display:flex;gap:10px;align-items:center;margin-top:11px;padding:11px 13px;border:1px solid rgba(255,255,255,.055);border-radius:10px;background:rgba(255,255,255,.012)}
.services67-scope-note>span{display:grid;place-items:center;width:23px;height:23px;border-radius:50%;border:1px solid rgba(255,255,255,.1);color:#d4aa5e;font-size:.62rem;font-weight:900}
.services67-scope-note p{margin:0;color:#808a8c;font-size:.61rem}

.services67-system{padding-top:68px;padding-bottom:68px}
.services67-system-card{display:grid;grid-template-columns:minmax(320px,.85fr) minmax(0,1.15fr);overflow:hidden;padding:0;border:1px solid rgba(255,174,66,.17);border-radius:20px;background:radial-gradient(circle at 100% 50%,rgba(255,174,66,.07),transparent 40%),#101315}
.services67-system-image{position:relative;min-height:400px;overflow:hidden}
.services67-system-image::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 50%,rgba(5,6,7,.64))}
.services67-system-image img{width:100%;height:100%;object-fit:cover}
.services67-system-image span{position:absolute;z-index:2;top:15px;left:15px;padding:6px 8px;border:1px solid rgba(255,174,66,.25);border-radius:7px;background:rgba(7,8,9,.72);color:#ffb758;font-size:.54rem;font-weight:950;letter-spacing:.08em}
.services67-system-copy{align-self:center;padding:42px}
.services67-system-copy h2{margin:5px 0 12px;font-size:clamp(2rem,3vw,3.1rem);line-height:1}
.services67-system-copy>p:not(.eyebrow){margin:0;max-width:620px;color:#929b9d;line-height:1.6}
.services67-system-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:20px 0}
.services67-system-facts>div{padding:10px;border:1px solid rgba(255,174,66,.12);border-radius:9px;background:rgba(255,174,66,.025)}
.services67-system-facts span,.services67-system-facts strong{display:block}
.services67-system-facts span{color:#7f898b;font-size:.53rem}
.services67-system-facts strong{margin-top:3px;color:#ffc069;font-size:.75rem}

.services67-final{padding-bottom:72px}
.services67-final-card{display:flex;align-items:center;justify-content:space-between;gap:28px;padding:28px 30px;border:1px solid rgba(101,224,227,.13);border-radius:17px;background:radial-gradient(circle at 85% 50%,rgba(100,224,228,.07),transparent 35%),#101315}
.services67-final-card h2{margin:4px 0 7px;font-size:clamp(1.7rem,2.8vw,2.8rem)}
.services67-final-card p:not(.eyebrow){margin:0;color:#8d9799}
.services67-final-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}

@media(max-width:1050px){
.services67-hero-grid{grid-template-columns:1fr}.services67-hero-visual{min-height:390px}.services67-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:800px){
.services67-heading{grid-template-columns:1fr;gap:10px;align-items:start}.services67-scope-grid{grid-template-columns:1fr}.services67-system-card{grid-template-columns:1fr}.services67-system-image{min-height:290px}.services67-system-copy{padding:28px}.services67-final-card{align-items:stretch;flex-direction:column}.services67-final-actions{justify-content:flex-start}
}
@media(max-width:620px){
.services67-hero{padding:38px 0 40px}.services67-hero-copy h1{font-size:clamp(2.6rem,13vw,4rem)}.services67-hero-actions{display:grid;grid-template-columns:1fr}.services67-hero-actions .button{width:100%}.services67-hero-visual{min-height:330px;border-radius:18px}.services67-overview{padding-top:56px;padding-bottom:56px}.services67-grid{grid-template-columns:1fr}.services67-card{min-height:260px}.services67-card-copy p{min-height:0}.services67-advice{align-items:stretch;flex-direction:column}.services67-advice .button{width:100%}.services67-scope-card ul{grid-template-columns:1fr}.services67-system-copy{padding:23px 18px}.services67-system-facts{grid-template-columns:1fr}.services67-final-card{padding:23px 18px}.services67-final-actions{display:grid;grid-template-columns:1fr}.services67-final-actions .button{width:100%}
}


/* ============================================================
   V17.68 – Dienstleistungen: 7 Leistungen als Kreis
   ============================================================ */

.services68-orbit-wrap{
    margin-top:10px;
}

.services68-orbit{
    position:relative;
    width:min(100%,1040px);
    height:960px;
    margin:0 auto;
}

.services68-center{
    position:absolute;
    left:50%;
    top:50%;
    transform:translate(-50%,-50%);
    width:290px;
    min-height:290px;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    text-align:center;
    padding:28px 24px;
    border:1px solid rgba(255,255,255,.08);
    border-radius:50%;
    background:
        radial-gradient(circle at 50% 40%,rgba(255,170,66,.08),transparent 45%),
        radial-gradient(circle at 50% 70%,rgba(95,224,229,.06),transparent 48%),
        rgba(16,19,21,.96);
    box-shadow:
        0 0 0 1px rgba(255,255,255,.02) inset,
        0 22px 50px rgba(0,0,0,.22);
}
.services68-center::before{
    content:"";
    position:absolute;
    inset:-85px;
    border-radius:50%;
    border:1px dashed rgba(255,255,255,.06);
    pointer-events:none;
}
.services68-center span{
    color:#f0b85c;
    font-size:.58rem;
    font-weight:950;
    letter-spacing:.08em;
}
.services68-center strong{
    margin-top:8px;
    color:#f5f6f4;
    font-size:1.45rem;
    line-height:1.1;
}
.services68-center p{
    margin:10px 0 0;
    color:#8e989b;
    font-size:.68rem;
    line-height:1.55;
    max-width:210px;
}

.services68-orbit .services67-card{
    position:absolute;
    width:255px;
    min-height:215px;
    padding:16px;
}
.services68-orbit .services67-card-icon{
    width:42px;
    height:42px;
    font-size:.98rem;
}
.services68-orbit .services67-card-copy{
    left:16px;
    right:16px;
    bottom:15px;
}
.services68-orbit .services67-card-copy h3{
    font-size:1rem;
}
.services68-orbit .services67-card-copy p{
    min-height:48px;
    font-size:.63rem;
}
.services68-orbit .services67-card-copy>div{
    gap:8px;
}
.services68-orbit .services67-card-copy strong,
.services68-orbit .services67-card-copy em{
    font-size:.55rem;
}
.services68-orbit .services67-card-no{
    top:12px;
    right:13px;
}

.services68-pos-1{left:50%; top:0; transform:translateX(-50%);}
.services68-pos-2{right:120px; top:85px;}
.services68-pos-3{right:0; top:350px;}
.services68-pos-4{right:140px; bottom:55px;}
.services68-pos-5{left:140px; bottom:55px;}
.services68-pos-6{left:0; top:350px;}
.services68-pos-7{left:120px; top:85px;}

@media(max-width:1200px){
    .services68-orbit{
        width:min(100%,980px);
        height:930px;
    }
    .services68-orbit .services67-card{
        width:235px;
    }
    .services68-pos-2{right:95px}
    .services68-pos-4{right:110px}
    .services68-pos-5{left:110px}
    .services68-pos-7{left:95px}
}

@media(max-width:1050px){
    .services68-orbit{
        width:100%;
        height:auto;
        display:grid;
        grid-template-columns:repeat(2,minmax(0,1fr));
        gap:12px;
    }
    .services68-center{
        position:relative;
        left:auto;
        top:auto;
        transform:none;
        width:100%;
        min-height:220px;
        border-radius:22px;
        grid-column:1/-1;
    }
    .services68-center::before{
        display:none;
    }
    .services68-orbit .services67-card{
        position:relative;
        left:auto;
        right:auto;
        top:auto;
        bottom:auto;
        transform:none;
        width:auto;
        min-height:260px;
    }
}

@media(max-width:620px){
    .services68-orbit{
        grid-template-columns:1fr;
    }
    .services68-center{
        min-height:200px;
        padding:22px 18px;
    }
}


/* ============================================================
   V17.69 – Kreis exakt ausgerichtet + Leistungsumfang größer
   ============================================================ */

/* 7 Leistungen: echter gleichmäßiger Kreis */
.services68-orbit{
    position:relative;
    width:min(100%,1080px);
    aspect-ratio:1/1;
    height:auto;
    margin:18px auto 8px;
}

.services68-center{
    width:315px;
    min-height:315px;
    padding:32px 28px;
    border-color:rgba(255,255,255,.095);
    box-shadow:
        0 0 0 1px rgba(255,255,255,.025) inset,
        0 24px 58px rgba(0,0,0,.26),
        0 0 48px rgba(231,180,88,.055);
}
.services68-center::before{
    inset:-92px;
    border-color:rgba(255,255,255,.075);
}
.services68-center span{
    font-size:.67rem;
}
.services68-center strong{
    margin-top:9px;
    font-size:1.66rem;
}
.services68-center p{
    max-width:238px;
    margin-top:11px;
    font-size:.77rem;
    line-height:1.58;
}

/* alle Karten identisch groß */
.services68-orbit .services67-card{
    position:absolute;
    width:280px;
    min-height:232px;
    padding:18px;
    transform:translate(-50%,-50%);
    transition:
        transform .22s ease,
        border-color .22s ease,
        box-shadow .22s ease,
        filter .22s ease;
}

/*
  7 Punkte auf einem Kreis, Radius = 36.111 %.
  Abstand zwischen jedem Punkt exakt 360 / 7 Grad.
*/
.services68-pos-1{left:50%;top:13.889%}
.services68-pos-2{left:78.233%;top:27.485%}
.services68-pos-3{left:85.206%;top:58.035%}
.services68-pos-4{left:65.668%;top:82.535%}
.services68-pos-5{left:34.332%;top:82.535%}
.services68-pos-6{left:14.794%;top:58.035%}
.services68-pos-7{left:21.767%;top:27.485%}

/* alle Karten reagieren gleich: nur heller/glow + leicht nach oben */
.services68-orbit .services67-card:hover{
    transform:translate(-50%,calc(-50% - 7px));
    border-color:color-mix(in srgb,var(--accent) 74%,transparent);
    filter:brightness(1.07);
    box-shadow:
        0 28px 58px rgba(0,0,0,.26),
        0 0 42px color-mix(in srgb,var(--accent) 24%,transparent),
        inset 0 1px 0 rgba(255,255,255,.045);
}

/* Karten-Inhalte größer und besser lesbar */
.services68-orbit .services67-card-icon{
    width:47px;
    height:47px;
    font-size:1.08rem;
}
.services68-orbit .services67-card-copy{
    left:18px;
    right:18px;
    bottom:17px;
}
.services68-orbit .services67-card-copy>span{
    font-size:.6rem;
}
.services68-orbit .services67-card-copy h3{
    margin-top:6px;
    font-size:1.13rem;
}
.services68-orbit .services67-card-copy p{
    min-height:50px;
    margin-top:7px;
    margin-bottom:13px;
    font-size:.71rem;
    line-height:1.48;
}
.services68-orbit .services67-card-copy strong{
    font-size:.63rem;
}
.services68-orbit .services67-card-copy em{
    font-size:.61rem;
}
.services68-orbit .services67-card-no{
    top:14px;
    right:15px;
    font-size:.59rem;
}

/* Leistungsumfang insgesamt größer und deutlicher */
.services67-scope{
    padding-top:82px;
    padding-bottom:82px;
}
.services67-heading-scope{
    margin-bottom:30px;
}
.services67-heading-scope h2{
    font-size:clamp(2.35rem,4vw,4rem);
}
.services67-heading-scope>p{
    max-width:460px;
    font-size:.86rem;
    line-height:1.65;
}

.services67-scope-grid{
    grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);
    gap:18px;
    align-items:stretch;
}

.services67-scope-card{
    min-height:455px;
    padding:30px 30px 28px;
    border-radius:20px;
}

/* INKLUSIVE: deutliches sattes Grün */
.services67-included{
    border:1px solid rgba(56,232,127,.40);
    background:
        radial-gradient(circle at 10% 5%,rgba(44,232,120,.18),transparent 34%),
        linear-gradient(145deg,rgba(29,139,75,.12),rgba(255,255,255,.012) 55%),
        #0e1411;
    box-shadow:
        0 20px 50px rgba(0,0,0,.18),
        0 0 38px rgba(44,232,120,.055);
}
.services67-included .services67-scope-top>span{
    width:54px;
    height:54px;
    border:1px solid rgba(63,247,139,.50);
    border-radius:14px;
    background:rgba(38,217,108,.14);
    color:#61f39e;
    font-size:1.42rem;
    box-shadow:0 0 24px rgba(57,234,127,.12);
}
.services67-included .eyebrow{
    color:#5fe39a;
}

/* NICHT ENTHALTEN: bewusst kräftiges Warnrot */
.services67-extra{
    border:1px solid rgba(255,47,55,.48);
    background:
        radial-gradient(circle at 10% 5%,rgba(255,34,45,.21),transparent 34%),
        linear-gradient(145deg,rgba(173,17,28,.15),rgba(255,255,255,.008) 55%),
        #150d0f;
    box-shadow:
        0 20px 50px rgba(0,0,0,.19),
        0 0 42px rgba(255,34,45,.07);
}
.services67-extra .services67-scope-top>span{
    width:54px;
    height:54px;
    border:1px solid rgba(255,59,66,.64);
    border-radius:14px;
    background:rgba(255,35,45,.16);
    color:#ff4b52;
    font-size:1.7rem;
    line-height:1;
    box-shadow:0 0 26px rgba(255,39,48,.17);
}
.services67-extra .eyebrow{
    color:#ff6268;
}

/* Überschriften / sichtbarer Text im Leistungsumfang größer */
.services67-scope-top{
    gap:16px;
    margin-bottom:23px;
}
.services67-scope-top .eyebrow{
    font-size:.62rem;
    letter-spacing:.075em;
}
.services67-scope-top h3{
    margin-top:5px;
    font-size:1.32rem;
}
.services67-scope-card ul{
    gap:11px 20px;
}
.services67-scope-card li{
    padding-left:19px;
    color:#b2b9ba;
    font-size:.79rem;
    line-height:1.55;
}
.services67-scope-card li::before{
    width:8px;
    height:8px;
    top:.51em;
}
.services67-included li::before{
    background:#4ee991;
    box-shadow:0 0 10px rgba(78,233,145,.25);
}
.services67-extra li::before{
    width:auto;
    height:auto;
    top:-.03em;
    content:"×";
    border-radius:0;
    background:none;
    color:#ff4b52;
    font-size:1rem;
    font-weight:950;
    line-height:1.4;
    box-shadow:none;
}

.services67-scope-note{
    margin-top:16px;
    padding:15px 17px;
    border-radius:12px;
}
.services67-scope-note>span{
    width:30px;
    height:30px;
    font-size:.72rem;
}
.services67-scope-note p{
    color:#9da6a8;
    font-size:.72rem;
    line-height:1.5;
}

/* Tablet: Karten wieder sauber als Grid – Hover bleibt gleichartig */
@media(max-width:1050px){
    .services68-orbit{
        width:100%;
        aspect-ratio:auto;
        display:grid;
        grid-template-columns:repeat(2,minmax(0,1fr));
        gap:14px;
        margin-top:18px;
    }
    .services68-center{
        position:relative;
        left:auto;
        top:auto;
        transform:none;
        width:100%;
        min-height:230px;
        border-radius:22px;
        grid-column:1/-1;
    }
    .services68-center::before{
        display:none;
    }
    .services68-orbit .services67-card{
        position:relative;
        left:auto;
        right:auto;
        top:auto;
        bottom:auto;
        transform:none;
        width:auto;
        min-height:275px;
    }
    .services68-orbit .services67-card:hover{
        transform:translateY(-7px);
    }

    .services67-scope-grid{
        grid-template-columns:1fr;
    }
    .services67-scope-card{
        min-height:0;
    }
}

@media(max-width:620px){
    .services68-orbit{
        grid-template-columns:1fr;
    }
    .services68-center{
        min-height:210px;
    }
    .services68-orbit .services67-card{
        min-height:255px;
    }

    .services67-scope{
        padding-top:62px;
        padding-bottom:62px;
    }
    .services67-scope-card{
        padding:23px 20px;
    }
    .services67-scope-card ul{
        grid-template-columns:1fr;
    }
    .services67-scope-card li{
        font-size:.78rem;
    }
}


/* ============================================================
   V17.70 – Dienstleistungen Feinschliff
   ============================================================ */

/* Den alten Noch-unsicher-Banner nicht mehr anzeigen */
.services67-advice{
    display:none!important;
}

/* 7 Leistungen: größer, gleichmäßiger, stärker */
.services68-orbit{
    width:min(100%,1140px);
    margin:22px auto 8px;
}

.services68-center{
    width:360px;
    min-height:360px;
    padding:36px 30px;
    gap:0;
}
.services68-center::before{
    inset:-104px;
}
.services68-center span{
    font-size:.7rem;
}
.services68-center strong{
    font-size:1.82rem;
}
.services68-center p{
    max-width:250px;
    font-size:.8rem;
    line-height:1.62;
}
.services68-center .button{
    margin-top:16px;
    min-width:210px;
}

/* Karten größer */
.services68-orbit .services67-card{
    width:300px;
    min-height:248px;
    padding:20px;
}

/* Exakter gleichmäßiger Kreis mit größerem Radius */
.services68-pos-1{left:50%;top:11.5%}
.services68-pos-2{left:80.491%;top:26.183%}
.services68-pos-3{left:88.022%;top:59.252%}
.services68-pos-4{left:66.913%;top:85.765%}
.services68-pos-5{left:33.087%;top:85.765%}
.services68-pos-6{left:11.978%;top:59.252%}
.services68-pos-7{left:19.509%;top:26.183%}

.services68-orbit .services67-card-icon{
    width:50px;
    height:50px;
    font-size:1.12rem;
}
.services68-orbit .services67-card-copy{
    left:20px;
    right:20px;
    bottom:18px;
}
.services68-orbit .services67-card-copy>span{
    font-size:.63rem;
}
.services68-orbit .services67-card-copy h3{
    font-size:1.2rem;
}
.services68-orbit .services67-card-copy p{
    min-height:55px;
    font-size:.75rem;
    line-height:1.52;
}
.services68-orbit .services67-card-copy strong{
    font-size:.66rem;
}
.services68-orbit .services67-card-copy em{
    font-size:.63rem;
}
.services68-orbit .services67-card-no{
    font-size:.61rem;
}

/* Leistungsumfang professioneller Kopf */
.services67-heading-scope h2{
    max-width:820px;
}

/* Systembereich schöner und professioneller */
.services67-system{
    padding-top:76px;
    padding-bottom:36px;
}
.services67-system-card{
    border:1px solid rgba(255,174,66,.22);
    border-radius:24px;
    box-shadow:
        0 26px 62px rgba(0,0,0,.22),
        0 0 42px rgba(255,174,66,.045);
}
.services67-system-image{
    min-height:430px;
}
.services67-system-image span{
    padding:7px 10px;
    border-radius:8px;
    font-size:.58rem;
}
.services67-system-copy{
    padding:46px;
}
.services67-system-copy h2{
    font-size:clamp(2.1rem,3vw,3.3rem);
}
.services67-system-copy>p:not(.eyebrow){
    font-size:.86rem;
}
.services67-system-facts{
    gap:10px;
}
.services67-system-facts>div{
    padding:13px 12px;
    border:1px solid rgba(255,174,66,.16);
    border-radius:11px;
    background:rgba(255,174,66,.04);
}
.services67-system-facts span{
    font-size:.58rem;
}
.services67-system-facts strong{
    font-size:.82rem;
}
.services67-system-copy .button{
    min-width:240px;
    color:#141414;
    font-weight:900;
}

/* Anfrage deutlicher vom Systembereich getrennt und auffälliger */
.services67-final{
    padding-top:6px;
    padding-bottom:80px;
}
.services67-final-card{
    border:1px solid rgba(101,224,227,.18);
    border-radius:22px;
    background:
        radial-gradient(circle at 85% 50%,rgba(100,224,228,.12),transparent 35%),
        linear-gradient(145deg,rgba(100,224,228,.055),rgba(255,255,255,.008) 55%),
        #101315;
    box-shadow:
        0 22px 55px rgba(0,0,0,.22),
        0 0 36px rgba(100,224,228,.05);
}
.services67-final-card h2{
    font-size:clamp(1.9rem,3vw,3rem);
}
.services67-final-card p:not(.eyebrow){
    max-width:700px;
    font-size:.82rem;
    line-height:1.6;
}
.services67-final-actions .button{
    min-width:220px;
    justify-content:center;
}
.services67-final-actions .button-primary{
    color:#141414;
    font-weight:900;
}
.services67-final-actions .button-secondary{
    color:#f4f6f4;
    background:rgba(255,255,255,.05);
    border-color:rgba(255,255,255,.11);
}
.services67-final-actions .button-secondary:hover{
    background:rgba(255,255,255,.09);
}

/* Tablet/mobile fallback */
@media(max-width:1050px){
    .services68-orbit{
        width:100%;
        aspect-ratio:auto;
        display:grid;
        grid-template-columns:repeat(2,minmax(0,1fr));
        gap:14px;
    }
    .services68-center{
        width:100%;
        min-height:250px;
    }
    .services68-center .button{
        min-width:0;
    }
    .services68-orbit .services67-card{
        width:auto;
        min-height:286px;
    }
}
@media(max-width:800px){
    .services67-system-image{
        min-height:310px;
    }
    .services67-system-copy{
        padding:30px 24px;
    }
}
@media(max-width:620px){
    .services68-orbit{
        grid-template-columns:1fr;
    }
    .services68-center{
        min-height:225px;
        padding:24px 20px;
    }
    .services68-center strong{
        font-size:1.55rem;
    }
    .services68-center p{
        font-size:.77rem;
    }
    .services68-orbit .services67-card{
        min-height:270px;
    }
    .services68-orbit .services67-card-copy p{
        min-height:0;
    }
    .services67-system-copy .button,
    .services67-final-actions .button{
        min-width:0;
        width:100%;
    }
}


/* ============================================================
   V17.71 – 7 Leistungen deutlich größer + Anfrage heller abgesetzt
   ============================================================ */

/* 7 Leistungsboxen mindestens ca. ein Drittel größer */
.services68-orbit{
    width:min(100%,1320px);
}

.services68-orbit .services67-card{
    width:400px;
    min-height:330px;
    padding:26px;
}

.services68-center{
    width:390px;
    min-height:390px;
    padding:40px 34px;
}

.services68-center strong{
    font-size:1.95rem;
}

.services68-center p{
    max-width:275px;
    font-size:.86rem;
}

.services68-center .button{
    min-width:225px;
}

/* Kreisradius vergrößert, Abstände bleiben gleichmäßig */
.services68-pos-1{left:50%;top:8.5%}
.services68-pos-2{left:82.447%;top:24.122%}
.services68-pos-3{left:90.462%;top:59.846%}
.services68-pos-4{left:68.012%;top:88.032%}
.services68-pos-5{left:31.988%;top:88.032%}
.services68-pos-6{left:9.538%;top:59.846%}
.services68-pos-7{left:17.553%;top:24.122%}

.services68-orbit .services67-card-icon{
    width:58px;
    height:58px;
    font-size:1.3rem;
}

.services68-orbit .services67-card-copy{
    left:26px;
    right:26px;
    bottom:24px;
}

.services68-orbit .services67-card-copy>span{
    font-size:.72rem;
}

.services68-orbit .services67-card-copy h3{
    font-size:1.45rem;
    margin-top:7px;
}

.services68-orbit .services67-card-copy p{
    min-height:72px;
    font-size:.88rem;
    line-height:1.55;
    margin-top:9px;
    margin-bottom:17px;
}

.services68-orbit .services67-card-copy strong{
    font-size:.78rem;
}

.services68-orbit .services67-card-copy em{
    font-size:.75rem;
}

.services68-orbit .services67-card-no{
    top:18px;
    right:20px;
    font-size:.7rem;
}

/* Anfragebereich bewusst heller/grauer als Systemfeuerwerk */
.services67-final{
    margin-top:18px;
    padding-top:0;
}

.services67-final-card{
    border:1px solid rgba(255,255,255,.11);
    background:
        radial-gradient(circle at 88% 45%,rgba(109,224,227,.08),transparent 34%),
        linear-gradient(145deg,#2a2f33 0%,#252a2e 48%,#202529 100%);
    box-shadow:
        0 22px 55px rgba(0,0,0,.18),
        inset 0 1px 0 rgba(255,255,255,.035);
}

.services67-final-card .eyebrow{
    color:#77e1e4;
}

.services67-final-card h2{
    color:#f5f6f4;
}

.services67-final-card p:not(.eyebrow){
    color:#c1c7c8;
}

/* klare Trennung zum schwarzen Systemfeuerwerk-Bereich */
.services67-system + .services67-final{
    border-top:1px solid rgba(255,255,255,.06);
}

@media(max-width:1200px){
    .services68-orbit{
        width:100%;
        aspect-ratio:auto;
        display:grid;
        grid-template-columns:repeat(2,minmax(0,1fr));
        gap:16px;
    }

    .services68-center{
        position:relative;
        left:auto;
        top:auto;
        transform:none;
        width:100%;
        min-height:270px;
        border-radius:24px;
        grid-column:1/-1;
    }

    .services68-center::before{
        display:none;
    }

    .services68-orbit .services67-card{
        position:relative;
        left:auto;
        right:auto;
        top:auto;
        bottom:auto;
        transform:none;
        width:auto;
        min-height:320px;
    }

    .services68-orbit .services67-card:hover{
        transform:translateY(-7px);
    }
}

@media(max-width:620px){
    .services68-orbit{
        grid-template-columns:1fr;
    }

    .services68-orbit .services67-card{
        min-height:300px;
    }

    .services68-orbit .services67-card-copy p{
        min-height:0;
    }

    .services68-center{
        min-height:235px;
    }
}


/* ============================================================
   V17.72 – Kreisabstände korrigiert + Anfragebereich neu
   ============================================================ */

/* Exakt gleichmäßige Winkelabstände: 360° / 7 */
.services68-orbit{
    width:min(100%,1500px);
    aspect-ratio:1/1;
    height:auto;
    margin:28px auto 10px;
    overflow:visible;
}

.services68-pos-1{left:50.000%;top:11.500%}
.services68-pos-2{left:80.101%;top:25.996%}
.services68-pos-3{left:87.535%;top:58.567%}
.services68-pos-4{left:66.705%;top:84.687%}
.services68-pos-5{left:33.295%;top:84.687%}
.services68-pos-6{left:12.465%;top:58.567%}
.services68-pos-7{left:19.899%;top:25.996%}

.services68-orbit .services67-card{
    width:400px;
    min-height:330px;
    transform:translate(-50%,-50%);
}

.services68-orbit .services67-card:hover{
    transform:translate(-50%,calc(-50% - 7px));
}

/* Anfrageabschnitt: alles unter der feinen Linie grau */
.services67-system + .services67-final{
    border-top:1px solid rgba(255,255,255,.11);
}

.services67-final{
    margin-top:0;
    padding-top:54px;
    padding-bottom:84px;
    background:
        linear-gradient(180deg,#24292d 0%,#202529 42%,#1d2226 100%);
}

.services72-final-card{
    position:relative;
    overflow:hidden;
    padding:34px;
    border:1px solid rgba(255,255,255,.10);
    border-radius:24px;
    background:
        radial-gradient(circle at 15% 0%,rgba(75,214,219,.09),transparent 34%),
        radial-gradient(circle at 92% 100%,rgba(239,175,73,.08),transparent 35%),
        linear-gradient(145deg,#15191c 0%,#111518 55%,#0d1113 100%);
    box-shadow:
        0 26px 60px rgba(0,0,0,.26),
        inset 0 1px 0 rgba(255,255,255,.035);
}

.services72-final-copy{
    max-width:820px;
    margin-bottom:24px;
}

.services72-final-copy .eyebrow{
    color:#75e2e5;
}

.services72-final-copy h2{
    margin:5px 0 10px;
    color:#f5f7f5;
    font-size:clamp(2rem,3.2vw,3.25rem);
    line-height:1;
}

.services72-final-copy>p:not(.eyebrow){
    margin:0;
    color:#aeb7b9;
    font-size:.84rem;
    line-height:1.62;
}

.services72-final-options{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:14px;
}

.services72-final-option{
    display:grid;
    align-content:start;
    gap:8px;
    min-height:220px;
    padding:22px;
    border-radius:16px;
    border:1px solid rgba(255,255,255,.08);
}

.services72-final-option .services72-option-kicker{
    font-size:.55rem;
    font-weight:950;
    letter-spacing:.08em;
}

.services72-final-option>strong{
    color:#f4f6f4;
    font-size:1rem;
}

.services72-final-option small{
    color:#939da0;
    font-size:.67rem;
    line-height:1.48;
}

.services72-final-option .button{
    width:100%;
    margin-top:8px;
    justify-content:center;
    font-weight:900;
}

/* Beratung = Cyan/Petrol */
.services72-option-advice{
    background:
        radial-gradient(circle at 15% 0%,rgba(68,220,226,.12),transparent 45%),
        rgba(255,255,255,.015);
    border-color:rgba(81,221,226,.18);
}
.services72-option-advice .services72-option-kicker{
    color:#69e1e4;
}
.services72-option-advice .button{
    color:#061416;
    border-color:#63e0e4;
    background:linear-gradient(180deg,#79edf0,#55d9dd);
    box-shadow:0 10px 24px rgba(81,218,222,.13);
}
.services72-option-advice .button:hover{
    filter:brightness(1.06);
}

/* Direkte Anfrage = Gold/Orange */
.services72-option-request{
    background:
        radial-gradient(circle at 15% 0%,rgba(244,176,73,.13),transparent 45%),
        rgba(255,255,255,.015);
    border-color:rgba(244,176,73,.19);
}
.services72-option-request .services72-option-kicker{
    color:#f1b55a;
}
.services72-option-request .button{
    color:#160f05;
    border-color:#eeb35a;
    background:linear-gradient(180deg,#f6c46f,#e9a94a);
    box-shadow:0 10px 24px rgba(232,167,71,.14);
}
.services72-option-request .button:hover{
    filter:brightness(1.06);
}

@media(max-width:1200px){
    .services68-orbit{
        width:100%;
        aspect-ratio:auto;
        display:grid;
        grid-template-columns:repeat(2,minmax(0,1fr));
        gap:16px;
        margin-top:24px;
    }
    .services68-center{
        position:relative;
        left:auto;
        top:auto;
        transform:none;
        width:100%;
        min-height:270px;
        border-radius:24px;
        grid-column:1/-1;
    }
    .services68-center::before{
        display:none;
    }
    .services68-orbit .services67-card{
        position:relative;
        left:auto;
        right:auto;
        top:auto;
        bottom:auto;
        transform:none;
        width:auto;
        min-height:320px;
    }
    .services68-orbit .services67-card:hover{
        transform:translateY(-7px);
    }
}

@media(max-width:760px){
    .services72-final-options{
        grid-template-columns:1fr;
    }
    .services72-final-card{
        padding:26px 22px;
    }
}

@media(max-width:620px){
    .services68-orbit{
        grid-template-columns:1fr;
    }
    .services68-orbit .services67-card{
        min-height:300px;
    }
    .services67-final{
        padding-top:38px;
        padding-bottom:62px;
    }
}


/* ============================================================
   V17.73 – echte Kartenrand-Abstände + CTA-Kicker prominenter
   ============================================================ */

/*
  Desktop:
  Die 7 Karten werden nicht nur mit gleichen Winkelabständen,
  sondern auf die rechteckige Kartenform abgestimmt positioniert.
  Dadurch liegen die sichtbaren Randabstände zwischen Nachbarkarten
  bei rund 73px und überlappen nicht mehr.
*/
@media(min-width:1500px){
    .services68-orbit{
        position:relative;
        left:50%;
        transform:translateX(-50%);
        width:1550px;
        max-width:none;
        aspect-ratio:1/1;
        height:auto;
        margin:30px 0 12px;
        overflow:visible;
    }

    .services68-orbit .services67-card{
        width:400px;
        min-height:330px;
        transform:translate(-50%,-50%);
    }

    .services68-orbit .services67-card:hover{
        transform:translate(-50%,calc(-50% - 7px));
    }

    /* Positionen nach tatsächlichem Kartenrand-Abstand optimiert */
    .services68-pos-1{
        left:50%;
        top:13.871%;
    }
    .services68-pos-2{
        left:80.540%;
        top:30.696%;
    }
    .services68-pos-3{
        left:85.499%;
        top:56.720%;
    }
    .services68-pos-4{
        left:65.270%;
        top:82.744%;
    }
    .services68-pos-5{
        left:34.730%;
        top:82.744%;
    }
    .services68-pos-6{
        left:14.501%;
        top:56.720%;
    }
    .services68-pos-7{
        left:19.460%;
        top:30.696%;
    }
}

/* unterhalb großer Desktopbreite lieber sauberes Grid statt Überlappung */
@media(max-width:1499px){
    .services68-orbit{
        width:100%;
        aspect-ratio:auto;
        height:auto;
        display:grid;
        grid-template-columns:repeat(2,minmax(0,1fr));
        gap:16px;
        margin:24px auto 10px;
        left:auto;
        transform:none;
    }

    .services68-center{
        position:relative;
        left:auto;
        top:auto;
        transform:none;
        width:100%;
        min-height:270px;
        border-radius:24px;
        grid-column:1/-1;
    }

    .services68-center::before{
        display:none;
    }

    .services68-orbit .services67-card{
        position:relative;
        left:auto;
        right:auto;
        top:auto;
        bottom:auto;
        transform:none;
        width:auto;
        min-height:320px;
    }

    .services68-orbit .services67-card:hover{
        transform:translateY(-7px);
    }
}

/* Noch Fragen? / Schon eine Idee? deutlich prominenter */
.services72-final-option{
    position:relative;
    padding-top:24px;
    text-align:center;
}

.services72-final-option .services72-option-kicker{
    display:block;
    width:100%;
    margin:0 auto 8px;
    text-align:center;
    font-size:1.18rem;
    line-height:1.1;
    font-weight:950;
    letter-spacing:.045em;
}

.services72-final-option>strong{
    display:block;
    text-align:center;
    font-size:.93rem;
    line-height:1.35;
}

.services72-final-option .button{
    margin-top:12px;
}

.services72-final-option small{
    display:block;
    max-width:420px;
    margin:2px auto 0;
    text-align:center;
}

.services72-option-advice .services72-option-kicker{
    color:#69e1e4;
    text-shadow:0 0 18px rgba(105,225,228,.18);
}

.services72-option-request .services72-option-kicker{
    color:#f1b55a;
    text-shadow:0 0 18px rgba(241,181,90,.18);
}

@media(max-width:620px){
    .services68-orbit{
        grid-template-columns:1fr;
    }

    .services72-final-option .services72-option-kicker{
        font-size:1.05rem;
    }
}


/* ============================================================
   V17.74 – Beratung CTA auffälliger
   ============================================================ */

.services68-center .button{
    min-width:245px;
    min-height:52px;
    padding:13px 22px;
    border:1px solid rgba(255,196,90,.55);
    background:
        linear-gradient(180deg,#ffd27c 0%,#f1b451 100%);
    color:#171006;
    font-size:.8rem;
    font-weight:950;
    letter-spacing:.01em;
    box-shadow:
        0 12px 28px rgba(235,171,75,.20),
        0 0 24px rgba(242,184,86,.12),
        inset 0 1px 0 rgba(255,255,255,.35);
}

.services68-center .button:hover{
    transform:translateY(-2px);
    filter:brightness(1.06);
    box-shadow:
        0 16px 34px rgba(235,171,75,.25),
        0 0 30px rgba(242,184,86,.17),
        inset 0 1px 0 rgba(255,255,255,.4);
}

@media(max-width:620px){
    .services68-center .button{
        min-width:0;
        width:100%;
    }
}


.consultation-response-note{
    margin:8px 0 14px;
    padding:10px 12px;
    border:1px solid rgba(231,180,88,.16);
    border-radius:9px;
    background:rgba(231,180,88,.045);
    color:#e9c77f;
    font-size:.72rem;
    font-weight:800;
    line-height:1.45;
}


/* ============================================================
   V17.75 – Beratungsbutton + Erfolgs-Popup
   ============================================================ */

/* Zentraler Beratungsbutton deutlich auffälliger */
.services68-center .button{
    position:relative;
    overflow:hidden;
    min-width:270px;
    min-height:58px;
    padding:15px 26px;
    border:1px solid rgba(161,231,255,.72);
    border-radius:13px;
    background:
        linear-gradient(105deg,#32d7e1 0%,#42bfe8 46%,#8d72ff 100%);
    color:#ffffff!important;
    font-size:.86rem;
    font-weight:950;
    letter-spacing:.018em;
    text-shadow:0 1px 2px rgba(0,0,0,.22);
    box-shadow:
        0 14px 34px rgba(48,201,225,.24),
        0 0 30px rgba(77,203,234,.22),
        0 0 42px rgba(141,114,255,.12),
        inset 0 1px 0 rgba(255,255,255,.30);
}

.services68-center .button::after{
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(115deg,transparent 20%,rgba(255,255,255,.24) 48%,transparent 74%);
    transform:translateX(-130%);
    transition:transform .45s ease;
    pointer-events:none;
}

.services68-center .button:hover{
    transform:translateY(-3px) scale(1.025);
    filter:brightness(1.08) saturate(1.08);
    border-color:rgba(215,247,255,.88);
    color:#fff!important;
    box-shadow:
        0 18px 42px rgba(48,201,225,.30),
        0 0 40px rgba(77,203,234,.27),
        0 0 52px rgba(141,114,255,.17),
        inset 0 1px 0 rgba(255,255,255,.36);
}

.services68-center .button:hover::after{
    transform:translateX(130%);
}

/* Erfolg nach Beratungsformular */
.consultation-success-open-body{
    overflow:hidden;
}

.consultation-success-modal{
    position:fixed;
    inset:0;
    z-index:10050;
    display:none;
    align-items:center;
    justify-content:center;
    padding:20px;
}

.consultation-success-modal.is-open{
    display:flex;
}

.consultation-success-backdrop{
    position:absolute;
    inset:0;
    background:rgba(3,5,7,.82);
    backdrop-filter:blur(7px);
}

.consultation-success-dialog{
    position:relative;
    z-index:1;
    width:min(100%,560px);
    padding:38px 34px 32px;
    border:1px solid rgba(83,224,229,.28);
    border-radius:22px;
    text-align:center;
    background:
        radial-gradient(circle at 50% 0%,rgba(62,220,228,.14),transparent 38%),
        radial-gradient(circle at 100% 100%,rgba(226,171,79,.08),transparent 36%),
        linear-gradient(145deg,#151a1d 0%,#101416 62%,#0c1012 100%);
    box-shadow:
        0 30px 80px rgba(0,0,0,.48),
        0 0 46px rgba(63,211,221,.08);
}

.consultation-success-close{
    position:absolute;
    top:13px;
    right:13px;
    width:36px;
    height:36px;
    border:1px solid rgba(255,255,255,.09);
    border-radius:50%;
    background:rgba(255,255,255,.035);
    color:#d9dede;
    font-size:1.15rem;
    cursor:pointer;
}

.consultation-success-icon{
    display:grid;
    place-items:center;
    width:68px;
    height:68px;
    margin:0 auto 17px;
    border:1px solid rgba(78,232,151,.45);
    border-radius:50%;
    background:rgba(65,220,137,.10);
    color:#65ef9f;
    font-size:1.65rem;
    font-weight:950;
    box-shadow:0 0 30px rgba(70,226,145,.13);
}

.consultation-success-dialog .eyebrow{
    color:#62dfe4;
}

.consultation-success-dialog h2{
    margin:7px 0 12px;
    color:#f5f7f5;
    font-size:clamp(1.75rem,4vw,2.5rem);
    line-height:1.05;
}

.consultation-success-dialog>p:not(.eyebrow){
    max-width:455px;
    margin:0 auto;
    color:#aeb7b9;
    font-size:.86rem;
    line-height:1.65;
}

.consultation-success-button{
    min-width:190px;
    margin-top:22px;
    border-color:#62dfe4!important;
    background:linear-gradient(180deg,#76e8ec,#54d5da)!important;
    color:#071416!important;
    font-weight:950!important;
}

@media(max-width:620px){
    .services68-center .button{
        min-width:0;
        width:100%;
        min-height:55px;
    }

    .consultation-success-dialog{
        padding:34px 20px 26px;
    }
}


/* ============================================================
   V17.76 – eigener Stil für Beratungsbutton in der Kreismitte
   ============================================================ */

.services68-center .services76-center-consultation{
    position:relative;
    overflow:hidden;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:285px!important;
    min-height:60px!important;
    margin-top:18px!important;
    padding:16px 28px!important;
    border:1px solid rgba(198,243,255,.86)!important;
    border-radius:14px!important;
    background:
        linear-gradient(110deg,#13d8e5 0%,#2fb6f0 44%,#806cff 100%)!important;
    color:#ffffff!important;
    font-size:.9rem!important;
    font-weight:950!important;
    letter-spacing:.02em!important;
    text-shadow:0 1px 3px rgba(0,0,0,.28)!important;
    box-shadow:
        0 16px 38px rgba(27,196,224,.30),
        0 0 34px rgba(47,182,240,.28),
        0 0 54px rgba(128,108,255,.17),
        inset 0 1px 0 rgba(255,255,255,.40)!important;
}

.services68-center .services76-center-consultation::before{
    content:"";
    position:absolute;
    inset:-2px;
    z-index:-1;
    border-radius:16px;
    background:linear-gradient(110deg,rgba(19,216,229,.55),rgba(47,182,240,.38),rgba(128,108,255,.52));
    filter:blur(15px);
    opacity:.6;
    pointer-events:none;
}

.services68-center .services76-center-consultation::after{
    content:"";
    position:absolute;
    inset:0;
    background:
        linear-gradient(115deg,transparent 22%,rgba(255,255,255,.30) 49%,transparent 76%);
    transform:translateX(-135%);
    transition:transform .45s ease;
    pointer-events:none;
}

.services68-center .services76-center-consultation:hover{
    transform:translateY(-3px) scale(1.035)!important;
    border-color:#e5fbff!important;
    background:
        linear-gradient(110deg,#24e6f2 0%,#3ec5f7 44%,#927cff 100%)!important;
    color:#ffffff!important;
    filter:none!important;
    box-shadow:
        0 20px 46px rgba(27,196,224,.36),
        0 0 42px rgba(47,182,240,.32),
        0 0 66px rgba(128,108,255,.22),
        inset 0 1px 0 rgba(255,255,255,.48)!important;
}

.services68-center .services76-center-consultation:hover::after{
    transform:translateX(135%);
}

@media(max-width:620px){
    .services68-center .services76-center-consultation{
        width:100%!important;
        min-width:0!important;
    }
}


/* ============================================================
   V17.77 – globale CTA-Farblogik für die komplette Website
   Gleiche Form, drei klar unterschiedliche Funktionen
   ============================================================ */

/* Gemeinsame Form für alle drei Haupt-CTAs */
:is(.cta-consultation,.cta-firework-request,.cta-shop){
    position:relative!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:8px!important;
    min-height:48px!important;
    padding:12px 20px!important;
    border-width:1px!important;
    border-style:solid!important;
    border-radius:12px!important;
    font-weight:950!important;
    letter-spacing:.012em!important;
    text-decoration:none!important;
    transition:
        transform .18s ease,
        filter .18s ease,
        box-shadow .18s ease,
        border-color .18s ease!important;
}

/* 1) KOSTENLOSE BERATUNG = Cyan / Blau / Violett + weiße Schrift */
.cta-consultation{
    border-color:rgba(188,244,255,.80)!important;
    background:
        linear-gradient(110deg,#10cedc 0%,#2aaee7 48%,#7965ed 100%)!important;
    color:#ffffff!important;
    text-shadow:0 1px 2px rgba(0,0,0,.28)!important;
    box-shadow:
        0 10px 26px rgba(36,185,214,.22),
        0 0 22px rgba(64,181,232,.16),
        inset 0 1px 0 rgba(255,255,255,.28)!important;
}
.cta-consultation::before{
    content:"?";
    display:grid;
    place-items:center;
    width:20px;
    height:20px;
    flex:0 0 20px;
    border:1px solid rgba(255,255,255,.42);
    border-radius:50%;
    color:#fff;
    font-size:.68rem;
    font-weight:950;
}
.cta-consultation:hover{
    transform:translateY(-2px)!important;
    filter:brightness(1.07) saturate(1.06)!important;
    border-color:#e5fbff!important;
    color:#fff!important;
    box-shadow:
        0 15px 34px rgba(36,185,214,.28),
        0 0 30px rgba(64,181,232,.22),
        inset 0 1px 0 rgba(255,255,255,.34)!important;
}

/* 2) FEUERWERK ANFRAGEN = Gold / Orange + dunkle Schrift */
.cta-firework-request{
    border-color:#ffd27c!important;
    background:
        linear-gradient(110deg,#ffd272 0%,#f2b447 52%,#e58a2f 100%)!important;
    color:#1a1005!important;
    text-shadow:none!important;
    box-shadow:
        0 10px 26px rgba(231,161,55,.24),
        0 0 22px rgba(242,180,71,.13),
        inset 0 1px 0 rgba(255,255,255,.34)!important;
}
.cta-firework-request::before{
    content:"✦";
    color:#6d3c05;
    font-size:.9rem;
    font-weight:950;
}
.cta-firework-request:hover{
    transform:translateY(-2px)!important;
    filter:brightness(1.06) saturate(1.04)!important;
    border-color:#ffe5a7!important;
    color:#120b03!important;
    box-shadow:
        0 15px 34px rgba(231,161,55,.30),
        0 0 30px rgba(242,180,71,.18),
        inset 0 1px 0 rgba(255,255,255,.42)!important;
}

/* 3) FEUERWERK KAUFEN / SHOP = kräftiges Grün / Türkis + sehr dunkle Schrift */
.cta-shop{
    border-color:#77efbd!important;
    background:
        linear-gradient(110deg,#59e6a5 0%,#31cf9c 48%,#18b8a0 100%)!important;
    color:#041713!important;
    text-shadow:none!important;
    box-shadow:
        0 10px 26px rgba(41,199,148,.23),
        0 0 22px rgba(50,213,167,.14),
        inset 0 1px 0 rgba(255,255,255,.32)!important;
}
.cta-shop::before{
    content:"▣";
    color:#0b5746;
    font-size:.86rem;
    font-weight:950;
}
.cta-shop:hover{
    transform:translateY(-2px)!important;
    filter:brightness(1.06) saturate(1.05)!important;
    border-color:#a6f7d7!important;
    color:#03110e!important;
    box-shadow:
        0 15px 34px rgba(41,199,148,.29),
        0 0 30px rgba(50,213,167,.19),
        inset 0 1px 0 rgba(255,255,255,.40)!important;
}

/* Auch bisherige Spezialklasse in der Kreismitte auf Beratung zwingen */
.services68-center .services76-center-consultation{
    border-color:rgba(188,244,255,.80)!important;
    background:
        linear-gradient(110deg,#10cedc 0%,#2aaee7 48%,#7965ed 100%)!important;
    color:#ffffff!important;
    text-shadow:0 1px 2px rgba(0,0,0,.28)!important;
}

/* Mobile: Form bleibt gleich, nur volle Breite wo sinnvoll */
@media(max-width:620px){
    :is(.cta-consultation,.cta-firework-request,.cta-shop){
        min-height:50px!important;
    }
}


/* ============================================================
   V17.78 – CTA-Klassifizierung repariert
   CTA-Farben nur noch auf echten .button-Elementen
   ============================================================ */


/* Startseiten-Systemfeuerwerk vollständig im ursprünglichen Kartenstil */
.home63-service-card.home63-service-system{
    color:inherit!important;
    background:inherit;
}

/* Leistungskarte Systemfeuerwerk vollständig im ursprünglichen Kartenstil */
.services67-card.services67-system{
    color:inherit!important;
}

/* Alte breite V17.77-CTA-Regeln neutralisieren auf Nicht-Buttons */
a.cta-consultation:not(.button),
button.cta-consultation:not(.button),
a.cta-firework-request:not(.button),
button.cta-firework-request:not(.button),
a.cta-shop:not(.button),
button.cta-shop:not(.button){
    all:revert;
}

/* Einheitliche Form nur für echte CTA-Buttons */
.button.cta-consultation,
.button.cta-firework-request,
.button.cta-shop{
    position:relative!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:8px!important;
    min-height:48px!important;
    padding:12px 20px!important;
    border-width:1px!important;
    border-style:solid!important;
    border-radius:12px!important;
    font-weight:950!important;
    letter-spacing:.012em!important;
    text-decoration:none!important;
}

/* Beratung global = Violett / Magenta, bewusst klar anders */
.button.cta-consultation{
    border-color:#e4b6ff!important;
    background:linear-gradient(110deg,#8b5cf6 0%,#b447ea 48%,#e147b8 100%)!important;
    color:#ffffff!important;
    text-shadow:0 1px 2px rgba(0,0,0,.26)!important;
    box-shadow:
        0 10px 26px rgba(151,75,226,.24),
        0 0 24px rgba(213,70,190,.17),
        inset 0 1px 0 rgba(255,255,255,.30)!important;
}
.button.cta-consultation:hover{
    transform:translateY(-2px)!important;
    filter:brightness(1.08) saturate(1.06)!important;
    border-color:#f4dcff!important;
    color:#fff!important;
}

/* Anfrage global = Gold / Orange */
.button.cta-firework-request{
    border-color:#ffd27c!important;
    background:linear-gradient(110deg,#ffd272 0%,#f2b447 52%,#e58a2f 100%)!important;
    color:#1a1005!important;
    text-shadow:none!important;
}

/* Shop global = Grün / Türkis */
.button.cta-shop{
    border-color:#77efbd!important;
    background:linear-gradient(110deg,#59e6a5 0%,#31cf9c 48%,#18b8a0 100%)!important;
    color:#041713!important;
    text-shadow:none!important;
}

/* Zentraler Beratungsbutton: extra stark sichtbar */
.services68-center .services78-center-consultation{
    min-width:292px!important;
    min-height:62px!important;
    margin-top:18px!important;
    padding:16px 30px!important;
    border:2px solid #f0d5ff!important;
    border-radius:14px!important;
    background:
        linear-gradient(110deg,#7c3aed 0%,#b52de2 48%,#ef3aa8 100%)!important;
    color:#ffffff!important;
    font-size:.92rem!important;
    font-weight:950!important;
    letter-spacing:.022em!important;
    text-shadow:0 1px 3px rgba(0,0,0,.30)!important;
    box-shadow:
        0 16px 38px rgba(139,62,221,.34),
        0 0 34px rgba(207,51,202,.28),
        0 0 58px rgba(239,58,168,.18),
        inset 0 1px 0 rgba(255,255,255,.38)!important;
}
.services68-center .services78-center-consultation::before{
    content:"?"!important;
    display:grid!important;
    place-items:center!important;
    width:23px!important;
    height:23px!important;
    flex:0 0 23px!important;
    border:1px solid rgba(255,255,255,.56)!important;
    border-radius:50%!important;
    color:#fff!important;
    background:rgba(255,255,255,.10)!important;
    font-size:.72rem!important;
    font-weight:950!important;
    position:static!important;
    filter:none!important;
    opacity:1!important;
}
.services68-center .services78-center-consultation:hover{
    transform:translateY(-3px) scale(1.035)!important;
    background:
        linear-gradient(110deg,#8b4bf3 0%,#c43aed 48%,#ff4bb5 100%)!important;
    border-color:#fff0ff!important;
    color:#fff!important;
    box-shadow:
        0 20px 46px rgba(139,62,221,.40),
        0 0 44px rgba(207,51,202,.34),
        0 0 72px rgba(239,58,168,.24),
        inset 0 1px 0 rgba(255,255,255,.44)!important;
}

@media(max-width:620px){
    .services68-center .services78-center-consultation{
        width:100%!important;
        min-width:0!important;
    }
}


/* ============================================================
   V17.79 – Startseiten-Leistungskarten wiederhergestellt
   ============================================================ */

/* Kartenlayout niemals durch CTA-Buttonregeln verändern */
.home63-service-card,
.services67-card{
    text-decoration:none;
}

/* Falls später versehentlich wieder eine CTA-Klasse auf einer Karte landet,
   wird nur die CTA-Farbwirkung neutralisiert – Größe/Abstände bleiben unberührt. */
.home63-service-card:is(.cta-consultation,.cta-firework-request,.cta-shop),
.services67-card:is(.cta-consultation,.cta-firework-request,.cta-shop){
    transform:none;
    filter:none;
}


/* ============================================================
   V17.80 – Systemfeuerwerk auf Startseite an Leistungen angepasst
   ============================================================ */

.home63-service-card.home63-service-system{
    --accent:#ffad42;
    --accent-rgb:255,173,66;
    border-color:rgba(255,173,66,.28)!important;
    background:
        radial-gradient(circle at 16% 10%,rgba(255,173,66,.16),transparent 34%),
        linear-gradient(145deg,rgba(255,173,66,.075),rgba(255,255,255,.012) 58%),
        #111416!important;
    box-shadow:
        0 20px 46px rgba(0,0,0,.18),
        0 0 30px rgba(255,173,66,.05)!important;
}

.home63-service-card.home63-service-system .home63-service-glow{
    background:
        radial-gradient(circle at 50% 50%,rgba(255,173,66,.28),transparent 66%)!important;
    opacity:.52!important;
}

.home63-service-card.home63-service-system .home63-service-icon{
    border-color:rgba(255,173,66,.30)!important;
    background:rgba(255,173,66,.10)!important;
    color:#ffad42!important;
    box-shadow:0 0 24px rgba(255,173,66,.08)!important;
}

.home63-service-card.home63-service-system .home63-service-kicker{
    color:#ffad42!important;
}

.home63-service-card.home63-service-system .home63-service-copy h3{
    color:#f7f4ef!important;
}

.home63-service-card.home63-service-system .home63-service-copy p{
    color:#a8afb0!important;
}

.home63-service-card.home63-service-system .home63-service-copy strong{
    color:#ffc36d!important;
}

.home63-service-card.home63-service-system:hover{
    border-color:rgba(255,173,66,.52)!important;
    box-shadow:
        0 26px 58px rgba(0,0,0,.24),
        0 0 42px rgba(255,173,66,.12)!important;
}


/* ============================================================
   V17.83 – Admin Kundenkontakt + E-Mail-Center
   ============================================================ */

.admin-customer-contact-cell{
    min-width:260px;
}
.admin-customer-contact-line{
    display:grid;
    grid-template-columns:56px minmax(0,1fr);
    gap:10px;
    align-items:center;
    padding:6px 0;
}
.admin-customer-contact-line + .admin-customer-contact-line{
    border-top:1px solid rgba(255,255,255,.06);
}
.admin-customer-contact-line>span{
    color:#7f8a8d;
    font-size:.54rem;
    font-weight:900;
    letter-spacing:.07em;
    text-transform:uppercase;
}
.admin-customer-contact-line a{
    min-width:0;
    color:#e8eeee;
    overflow-wrap:anywhere;
}
.admin-customer-contact-line em{
    color:#727b7d;
    font-style:normal;
}
.admin-heading-side-actions{
    display:flex;
    flex-direction:column;
    align-items:flex-end;
    gap:10px;
}

.email-center-page{
    --email-accent:#71dfe3;
}
.email-center-note{
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:9px 14px;
    margin-bottom:18px;
    padding:15px 17px;
    border:1px solid rgba(113,223,227,.16);
    border-radius:14px;
    background:rgba(113,223,227,.035);
}
.email-center-note strong{
    color:#71dfe3;
}
.email-center-note span{
    color:#edf3f2;
    font-weight:800;
}
.email-center-note small{
    flex-basis:100%;
    color:#879194;
}

.email-center-search{
    margin-bottom:18px;
}
.email-center-layout{
    display:grid;
    grid-template-columns:minmax(0,1.65fr) minmax(340px,.72fr);
    gap:18px;
    align-items:start;
}
.email-center-contacts,
.email-compose-card{
    min-width:0;
}
.email-center-card-head{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:18px;
    padding:20px 22px 10px;
}
.email-center-card-head h2{
    margin:3px 0 0;
}
.email-select-all,
.email-template-toggle{
    display:inline-flex;
    align-items:center;
    gap:8px;
    color:#cbd2d2;
    font-size:.72rem;
    font-weight:800;
}
.email-select-all input,
.email-template-toggle input,
.email-contact-table input[type="checkbox"]{
    width:18px;
    height:18px;
    accent-color:#71dfe3;
}
.email-contact-table{
    min-width:760px;
}
.email-contact-table td:first-child,
.email-contact-table th:first-child{
    width:42px;
    text-align:center;
}
.email-contact-table td a{
    overflow-wrap:anywhere;
}
.email-compose-card{
    position:sticky;
    top:110px;
}
.email-compose-card h2{
    margin:4px 0 18px;
}
.email-compose-card label,
.email-template-card label{
    display:grid;
    gap:7px;
    margin-bottom:13px;
    color:#b9c1c2;
    font-size:.68rem;
    font-weight:850;
}
.email-compose-card input,
.email-compose-card textarea,
.email-template-card input[type="text"],
.email-template-card textarea{
    width:100%;
}
.email-placeholder-help{
    display:flex;
    flex-wrap:wrap;
    gap:7px;
    margin:2px 0 15px;
    color:#889294;
    font-size:.66rem;
}
.email-placeholder-help strong{
    flex-basis:100%;
    color:#aeb7b9;
}
.email-placeholder-help code{
    padding:4px 7px;
    border:1px solid rgba(255,255,255,.08);
    border-radius:7px;
    background:rgba(255,255,255,.035);
    color:#dce6e5;
}
.email-compose-card .button{
    width:100%;
    margin-top:8px;
}
.email-send-selected{
    background:linear-gradient(135deg,#62e0e4,#39bfc7)!important;
    border-color:#7ee9ed!important;
    color:#061416!important;
}
.email-send-all{
    border-color:rgba(239,183,82,.40)!important;
    color:#f2c976!important;
}

.email-template-section,
.email-log-section{
    margin-top:20px;
}
.email-template-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:14px;
}
.email-template-card{
    padding:20px;
    border:1px solid rgba(255,255,255,.08);
    border-radius:16px;
    background:rgba(255,255,255,.018);
}
.email-template-top{
    display:flex;
    justify-content:space-between;
    gap:14px;
    align-items:flex-start;
    margin-bottom:16px;
}
.email-template-top span,
.email-template-top strong{
    display:block;
}
.email-template-top span{
    color:#eef3f2;
    font-size:.93rem;
    font-weight:900;
}
.email-template-top strong{
    margin-top:4px;
    color:#7f898b;
    font-size:.62rem;
    letter-spacing:.06em;
    text-transform:uppercase;
}
.email-template-actions{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
}
.email-status-gesendet{
    border-color:rgba(67,220,145,.28);
    color:#6be7a4;
    background:rgba(67,220,145,.08);
}
.email-status-fehlgeschlagen{
    border-color:rgba(232,91,85,.32);
    color:#ff8e89;
    background:rgba(232,91,85,.09);
}

@media(max-width:1100px){
    .email-center-layout{
        grid-template-columns:1fr;
    }
    .email-compose-card{
        position:static;
    }
}
@media(max-width:800px){
    .email-template-grid{
        grid-template-columns:1fr;
    }
    .admin-heading-side-actions{
        align-items:stretch;
        width:100%;
    }
}


/* ============================================================
   V17.84 – E-Mail-Center einfacher und klarer bedienbar
   ============================================================ */

.email-center-manual-form{
    display:grid;
    gap:20px;
}
.email-center-selection-card,
.email-compose-panel{
    min-width:0;
}
.email-center-selection-head,
.email-compose-heading{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:22px;
    margin-bottom:18px;
}
.email-center-selection-head h2,
.email-compose-heading h2{
    margin:4px 0 8px;
}
.email-center-selection-head>div:first-child>p:last-child,
.email-compose-heading>div:first-child>p:last-child{
    max-width:760px;
    margin:0;
    color:#8d9799;
    line-height:1.55;
}
.email-selection-summary{
    display:grid;
    min-width:150px;
    padding:14px 16px;
    border:1px solid rgba(113,223,227,.18);
    border-radius:14px;
    text-align:center;
    background:
        radial-gradient(circle at 50% 0%,rgba(113,223,227,.10),transparent 70%),
        rgba(255,255,255,.018);
}
.email-selection-summary>span{
    color:#8e999b;
    font-size:.57rem;
    font-weight:900;
    letter-spacing:.08em;
    text-transform:uppercase;
}
.email-selection-summary>strong{
    margin:2px 0;
    color:#71dfe3;
    font-size:2rem;
    line-height:1;
}
.email-selection-summary>small{
    color:#727d80;
    font-size:.62rem;
}
.email-selection-toolbar{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:14px;
    margin-bottom:12px;
    padding:11px 13px;
    border:1px solid rgba(255,255,255,.065);
    border-radius:12px;
    background:rgba(255,255,255,.015);
}
.email-select-all{
    padding:4px 2px;
}
.email-select-all span{
    color:#dbe3e2;
    font-size:.74rem;
}
.email-contact-table{
    min-width:820px;
}
.email-contact-table tbody tr{
    transition:background .16s ease,box-shadow .16s ease;
}
.email-contact-table tbody tr.is-selected{
    background:rgba(113,223,227,.055);
    box-shadow:inset 3px 0 0 #71dfe3;
}
.email-contact-table tbody tr:hover{
    background:rgba(255,255,255,.025);
}
.email-contact-table tbody tr.is-selected:hover{
    background:rgba(113,223,227,.075);
}
.email-contact-check{
    width:74px;
    text-align:center;
}
.email-contact-checkbox{
    display:inline-grid;
    place-items:center;
    width:30px;
    height:30px;
    border:1px solid rgba(255,255,255,.11);
    border-radius:9px;
    background:rgba(255,255,255,.025);
    cursor:pointer;
}
.email-contact-checkbox input{
    position:absolute;
    opacity:0;
    pointer-events:none;
}
.email-contact-checkbox span{
    display:grid;
    place-items:center;
    width:18px;
    height:18px;
    border:1px solid rgba(255,255,255,.24);
    border-radius:5px;
    background:#0d1113;
}
.email-contact-checkbox input:checked + span{
    border-color:#71dfe3;
    background:linear-gradient(145deg,#71dfe3,#48bec5);
    box-shadow:0 0 16px rgba(113,223,227,.18);
}
.email-contact-checkbox input:checked + span::after{
    content:"✓";
    color:#061416;
    font-size:.72rem;
    font-weight:950;
}

.email-compose-panel{
    padding:26px;
    border-color:rgba(113,223,227,.12);
    background:
        radial-gradient(circle at 100% 0%,rgba(113,223,227,.055),transparent 34%),
        rgba(255,255,255,.015);
}
.email-compose-recipient-badge{
    display:flex;
    align-items:center;
    gap:10px;
    padding:10px 13px;
    border:1px solid rgba(113,223,227,.17);
    border-radius:12px;
    background:rgba(113,223,227,.035);
}
.email-compose-recipient-badge strong{
    color:#71dfe3;
    font-size:1.4rem;
}
.email-compose-recipient-badge span{
    max-width:90px;
    color:#96a0a2;
    font-size:.6rem;
    line-height:1.25;
    font-weight:850;
    text-transform:uppercase;
    letter-spacing:.05em;
}
.email-compose-grid{
    display:grid;
    grid-template-columns:minmax(0,1.65fr) minmax(260px,.55fr);
    gap:18px;
}
.email-compose-main label{
    display:grid;
    gap:7px;
    margin-bottom:14px;
    color:#bcc5c5;
    font-size:.69rem;
    font-weight:850;
}
.email-compose-main input,
.email-compose-main textarea{
    width:100%;
}
.email-compose-help{
    padding:18px;
    border:1px solid rgba(255,255,255,.07);
    border-radius:14px;
    background:rgba(255,255,255,.018);
}
.email-compose-help h3{
    margin:4px 0 7px;
}
.email-compose-help>p:not(.eyebrow){
    margin:0 0 14px;
    color:#889294;
    font-size:.71rem;
    line-height:1.5;
}
.email-placeholder-help-vertical{
    display:grid;
    grid-template-columns:auto 1fr;
    align-items:center;
    gap:8px 10px;
    margin:0;
}
.email-placeholder-help-vertical code{
    justify-self:start;
}
.email-placeholder-help-vertical span{
    color:#7e898b;
    font-size:.65rem;
}
.email-send-warning{
    display:grid;
    gap:3px;
    margin-top:18px;
    padding:12px;
    border:1px solid rgba(239,183,82,.15);
    border-radius:11px;
    background:rgba(239,183,82,.035);
}
.email-send-warning strong{
    color:#e8bd70;
    font-size:.68rem;
}
.email-send-warning span{
    color:#8f9697;
    font-size:.64rem;
}
.email-compose-footer{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:18px;
    margin-top:18px;
    padding-top:18px;
    border-top:1px solid rgba(255,255,255,.07);
}
.email-compose-footer-info{
    display:grid;
    gap:3px;
}
.email-compose-footer-info span{
    color:#7f898b;
    font-size:.6rem;
    font-weight:850;
    letter-spacing:.06em;
    text-transform:uppercase;
}
.email-compose-footer-info strong{
    color:#e9eeee;
    font-size:.84rem;
}
.email-compose-footer-info b{
    color:#71dfe3;
}
.email-compose-actions{
    display:flex;
    flex-wrap:wrap;
    justify-content:flex-end;
    gap:9px;
}
.email-compose-actions .button{
    min-height:47px;
}
.email-send-selected{
    min-width:300px;
}
.email-send-selected:disabled{
    opacity:.45;
    cursor:not-allowed;
    filter:grayscale(.35);
    transform:none!important;
    box-shadow:none!important;
}

@media(max-width:1000px){
    .email-compose-grid{
        grid-template-columns:1fr;
    }
}
@media(max-width:760px){
    .email-center-selection-head,
    .email-compose-heading,
    .email-compose-footer{
        flex-direction:column;
        align-items:stretch;
    }
    .email-selection-summary{
        min-width:0;
        width:100%;
    }
    .email-selection-toolbar{
        align-items:stretch;
        flex-direction:column;
    }
    .email-compose-recipient-badge{
        justify-content:center;
    }
    .email-compose-actions{
        justify-content:stretch;
        width:100%;
    }
    .email-compose-actions .button,
    .email-send-selected{
        width:100%;
        min-width:0;
    }
}


/* ============================================================
   V17.85 – Automatische E-Mails: Auslöser + Direktversand
   ============================================================ */

.email-template-trigger-box{
    margin:0 0 15px;
    padding:14px;
    border:1px solid rgba(113,223,227,.10);
    border-radius:13px;
    background:rgba(113,223,227,.022);
}
.email-template-trigger-head{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:12px;
    margin-bottom:11px;
}
.email-template-trigger-head strong,
.email-template-trigger-head span{
    display:block;
}
.email-template-trigger-head strong{
    color:#edf3f2;
    font-size:.73rem;
}
.email-template-trigger-head span{
    margin-top:2px;
    color:#7f898b;
    font-size:.61rem;
}
.email-template-trigger-head small{
    flex:0 0 auto;
    padding:4px 7px;
    border:1px solid rgba(113,223,227,.14);
    border-radius:999px;
    color:#71dfe3;
    background:rgba(113,223,227,.035);
    font-size:.56rem;
    font-weight:900;
}
.email-template-trigger-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:7px;
}
.email-trigger-option{
    display:flex!important;
    align-items:center;
    gap:8px!important;
    margin:0!important;
    padding:9px 10px;
    border:1px solid rgba(255,255,255,.065);
    border-radius:10px;
    background:rgba(255,255,255,.016);
    cursor:pointer;
}
.email-trigger-option:hover{
    border-color:rgba(113,223,227,.18);
    background:rgba(113,223,227,.025);
}
.email-trigger-option input{
    width:17px!important;
    height:17px!important;
    margin:0;
    accent-color:#71dfe3;
}
.email-trigger-option span{
    color:#bcc5c5;
    font-size:.64rem;
    font-weight:800;
    line-height:1.25;
}
.email-template-send-selected{
    border-color:rgba(113,223,227,.30)!important;
    color:#87e8eb!important;
}
.email-template-send-selected:not(:disabled):hover{
    border-color:#71dfe3!important;
    background:rgba(113,223,227,.08)!important;
    color:#c5f6f7!important;
}
.email-template-send-selected:disabled{
    opacity:.40;
    cursor:not-allowed;
    filter:grayscale(.45);
}
.email-template-send-selected span{
    font-size:.68rem;
}

@media(max-width:700px){
    .email-template-trigger-grid{
        grid-template-columns:1fr;
    }
}


/* ============================================================
   V17.86 – PRG, Vorlagenverwaltung und Business-Absender
   ============================================================ */

.email-template-manager{
    margin-bottom:18px;
    border-color:rgba(239,183,82,.12);
    background:
        radial-gradient(circle at 100% 0%,rgba(239,183,82,.045),transparent 34%),
        rgba(255,255,255,.014);
}
.email-template-manager-head{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:20px;
    margin-bottom:16px;
}
.email-template-manager-head h2{
    margin:4px 0 7px;
}
.email-template-manager-head p:last-child{
    max-width:820px;
    margin:0;
    color:#899396;
    font-size:.72rem;
    line-height:1.5;
}
.email-template-manager-head>span{
    flex:0 0 auto;
    padding:7px 10px;
    border:1px solid rgba(239,183,82,.16);
    border-radius:999px;
    color:#e9bd6c;
    background:rgba(239,183,82,.035);
    font-size:.61rem;
    font-weight:900;
}
.email-template-manager-list{
    display:grid;
    gap:8px;
}
.email-template-manager-row{
    display:grid;
    grid-template-columns:minmax(220px,1fr) minmax(230px,1.15fr) auto auto;
    gap:14px;
    align-items:center;
    padding:13px 14px;
    border:1px solid rgba(255,255,255,.065);
    border-radius:12px;
    background:rgba(255,255,255,.016);
}
.email-template-manager-main{
    min-width:0;
}
.email-template-manager-main strong,
.email-template-manager-main span{
    display:block;
}
.email-template-manager-main strong{
    color:#edf2f1;
    font-size:.78rem;
}
.email-template-manager-main span{
    margin-top:3px;
    color:#808b8d;
    font-size:.62rem;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
}
.email-template-manager-triggers{
    display:flex;
    flex-wrap:wrap;
    gap:5px;
}
.email-template-manager-triggers small{
    padding:4px 6px;
    border:1px solid rgba(113,223,227,.10);
    border-radius:999px;
    color:#94cfd1;
    background:rgba(113,223,227,.025);
    font-size:.53rem;
    font-weight:800;
}
.email-template-manager-active{
    color:#73e6aa!important;
    border-color:rgba(67,220,145,.22)!important;
    background:rgba(67,220,145,.06)!important;
}
.email-template-manager-off{
    color:#969fa1!important;
    border-color:rgba(255,255,255,.08)!important;
    background:rgba(255,255,255,.025)!important;
}
.email-template-delete-form{
    margin:0;
}
.email-template-delete-form .button{
    white-space:nowrap;
}

@media(max-width:1000px){
    .email-template-manager-row{
        grid-template-columns:1fr auto;
    }
    .email-template-manager-triggers{
        grid-column:1/-1;
        order:3;
    }
}
@media(max-width:700px){
    .email-template-manager-head{
        flex-direction:column;
        align-items:stretch;
    }
    .email-template-manager-row{
        grid-template-columns:1fr;
        align-items:stretch;
    }
    .email-template-manager-triggers{
        grid-column:auto;
        order:initial;
    }
    .email-template-delete-form .button{
        width:100%;
    }
}

/* ================================================================
   V17.87 – Authentifizierter STRATO-SMTP-Versand
   (Darstellung bleibt bewusst unverändert; Status steht in bestehender Infobox.)
   ================================================================ */

/* V17.89 – IONOS-SMTP-Einrichtung im E-Mail-Center */
.email-smtp-setup{margin-bottom:18px}
.email-smtp-head{display:flex;align-items:flex-start;justify-content:space-between;gap:22px;margin-bottom:18px}
.email-smtp-head h2{margin:.15rem 0 .45rem}
.email-smtp-head p:last-child{margin:0;color:var(--muted);max-width:780px}
.email-smtp-fixed{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:16px 0}
.email-smtp-fixed>div{padding:14px 16px;border:1px solid var(--border);border-radius:14px;background:#0f1217}
.email-smtp-fixed small,.email-smtp-fixed strong{display:block}
.email-smtp-fixed small{color:var(--muted);margin-bottom:5px}
.email-smtp-password-form{margin-top:14px}
.email-smtp-password-form input{max-width:620px}
.email-smtp-actions,.email-smtp-tools{display:flex;align-items:center;flex-wrap:wrap;gap:10px}
.email-smtp-tools{margin-top:16px;padding-top:16px;border-top:1px solid var(--border)}
.email-smtp-testmail{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.email-smtp-testmail input{min-width:min(320px,70vw);min-height:40px;padding:8px 12px;border-radius:10px;border:1px solid rgba(255,255,255,.12);background:#0f1217;color:var(--text);font:inherit}
.email-smtp-security{display:block;margin-top:14px;color:var(--muted)}
.email-smtp-security code{color:var(--text)}
@media(max-width:760px){.email-smtp-head{flex-direction:column}.email-smtp-fixed{grid-template-columns:1fr}.email-smtp-testmail{width:100%}.email-smtp-testmail input{width:100%;min-width:0}}

/* =========================================================
   V17.92 – Hochzeitsfeuerwerk: neue Seitenstruktur / UX
   ========================================================= */
:root{
    --w1792-rose:#d99aa2;
    --w1792-champagne:#efd2a2;
    --w1792-cream:#f3ece4;
    --w1792-ink:#171316;
}
.wedding1792-hero{position:relative;overflow:hidden;padding:82px 0 76px;background:radial-gradient(circle at 17% 16%,rgba(217,154,162,.13),transparent 34%),radial-gradient(circle at 85% 74%,rgba(239,210,162,.09),transparent 31%),linear-gradient(180deg,#0b0c0f,#111014)}
.wedding1792-glow{position:absolute;border-radius:50%;filter:blur(80px);pointer-events:none;opacity:.34}.wedding1792-glow-a{width:420px;height:420px;left:-180px;top:10%;background:#b86d78}.wedding1792-glow-b{width:360px;height:360px;right:-150px;bottom:-100px;background:#b68d56}
.wedding1792-hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(390px,.95fr);gap:58px;align-items:center}
.wedding1792-hero-copy h1{margin:.25rem 0 1.2rem;font-size:clamp(3.55rem,6.75vw,7.35rem);line-height:.88;letter-spacing:-.06em}.wedding1792-hero-copy h1 span{color:var(--w1792-champagne)}
.wedding1792-hero-copy>p:not(.eyebrow){max-width:760px;margin:0;color:#d0c8c8;font-size:1.12rem;line-height:1.72}
.wedding1792-hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}.wedding1792-hero-actions .button-primary{background:linear-gradient(135deg,#efc68d,#d88f98);border-color:transparent;color:#171113}.wedding1792-hero-actions .button-secondary{border-color:rgba(239,210,162,.3)}
.wedding1792-hero-tags{display:flex;flex-wrap:wrap;gap:9px;margin-top:27px}.wedding1792-hero-tags span{display:inline-flex;gap:6px;align-items:center;min-height:38px;padding:8px 12px;border:1px solid rgba(239,210,162,.16);border-radius:999px;background:rgba(255,255,255,.025);color:#aaa3a5;font-size:.74rem}.wedding1792-hero-tags strong{color:#eee3d6;font-size:.76rem}
.wedding1792-hero-visual{position:relative;overflow:hidden;aspect-ratio:4/5;border:1px solid rgba(239,210,162,.22);border-radius:30px;background:#111;box-shadow:0 35px 90px rgba(0,0,0,.45)}.wedding1792-hero-visual img{width:100%;height:100%;object-fit:cover;display:block}.wedding1792-hero-visual:after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(10,8,10,.88),transparent 52%);pointer-events:none}.wedding1792-hero-panel{position:absolute;z-index:2;left:20px;right:20px;bottom:20px;padding:18px 20px;border:1px solid rgba(255,255,255,.15);border-radius:17px;background:rgba(13,10,12,.72);backdrop-filter:blur(12px)}.wedding1792-hero-panel span{display:block;color:var(--w1792-champagne);font-size:.67rem;font-weight:900;letter-spacing:.14em}.wedding1792-hero-panel strong{display:block;margin-top:7px;color:#fff;font-size:1.05rem}
.wedding1792-intro{background:linear-gradient(180deg,#111014,#0b0c0e)}.wedding1792-intro-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:70px;align-items:start}.wedding1792-intro h2{margin:.2rem 0 0;font-size:clamp(2.55rem,5vw,5.1rem);line-height:.96;letter-spacing:-.052em;color:#f2e9de}.wedding1792-intro-copy{display:grid;gap:15px}.wedding1792-intro-copy p{margin:0;color:#c8c0c1;line-height:1.82;font-size:1.03rem}
.wedding1792-moments{background:var(--w1792-cream);color:var(--w1792-ink)}.wedding1792-moments .eyebrow,.wedding1792-budget .eyebrow{color:#9e626b}.wedding1792-section-heading{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(260px,.75fr);gap:45px;align-items:end;margin-bottom:34px}.wedding1792-section-heading h2{margin:.2rem 0 0;font-size:clamp(2.45rem,4.8vw,4.85rem);line-height:.96;letter-spacing:-.05em}.wedding1792-section-heading>p{margin:0;color:#6e6265;line-height:1.72}.wedding1792-section-heading-light>p{color:#aaa3a5}
.wedding1792-moment-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.wedding1792-moment-grid article{position:relative;overflow:hidden;min-height:310px;padding:30px;border:1px solid rgba(72,50,54,.1);border-radius:23px;background:rgba(255,255,255,.5);box-shadow:0 18px 48px rgba(51,37,40,.07)}.wedding1792-moment-grid article:after{content:"";position:absolute;width:150px;height:150px;border-radius:50%;right:-55px;top:-55px;background:radial-gradient(circle,rgba(217,154,162,.14),transparent 70%)}.wedding1792-no{color:#a7656f;font-size:.72rem;font-weight:950;letter-spacing:.14em}.wedding1792-icon{width:46px;height:46px;display:grid;place-items:center;margin-top:27px;border:1px solid rgba(157,98,107,.24);border-radius:50%;color:#a7656f;font-size:1.2rem}.wedding1792-moment-grid h3{margin:25px 0 11px;color:#211a1c;font-size:1.55rem}.wedding1792-moment-grid p{margin:0;color:#665b5e;line-height:1.68}
.wedding1792-scope{background:radial-gradient(circle at 20% 0,rgba(217,154,162,.075),transparent 34%),#090a0c}.wedding1792-scope .wedding1792-section-heading h2{color:#f3e9df}.wedding1792-scope-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.wedding1792-scope-card{padding:32px;border:1px solid rgba(239,210,162,.14);border-radius:24px;background:rgba(255,255,255,.025)}.wedding1792-scope-included{background:linear-gradient(145deg,rgba(217,154,162,.08),rgba(255,255,255,.015)),#101114}.wedding1792-scope-extra{background:linear-gradient(145deg,rgba(239,210,162,.055),rgba(255,255,255,.015)),#101114}.wedding1792-scope-title{display:flex;gap:15px;align-items:flex-start}.wedding1792-scope-title>span{flex:0 0 46px;width:46px;height:46px;display:grid;place-items:center;border:1px solid rgba(239,210,162,.27);border-radius:50%;background:rgba(239,210,162,.065);color:var(--w1792-champagne);font-weight:950}.wedding1792-scope-title h3{margin:.1rem 0 0;font-size:1.6rem}.wedding1792-scope-card ul{display:grid;gap:12px;margin:26px 0 0;padding:0;list-style:none}.wedding1792-scope-card li{position:relative;padding-left:26px;color:#c8c2c3;line-height:1.58}.wedding1792-scope-card li:before{content:"✓";position:absolute;left:0;top:0;color:#d8aa84;font-weight:950}.wedding1792-scope-extra li:before{content:"•"}.wedding1792-scope-note{display:flex;gap:12px;align-items:flex-start;margin-top:18px;padding:16px 18px;border:1px solid rgba(239,210,162,.18);border-radius:15px;background:rgba(239,210,162,.045);color:#bdb6b7;line-height:1.58}.wedding1792-scope-note>span{flex:0 0 24px;width:24px;height:24px;display:grid;place-items:center;border:1px solid rgba(239,210,162,.25);border-radius:50%;color:var(--w1792-champagne);font-size:.75rem;font-weight:900}.wedding1792-scope-note p{margin:0}.wedding1792-scope-note strong{color:#eee1d3}
.wedding1792-budget{background:var(--w1792-cream);color:var(--w1792-ink)}.wedding1792-budget-card{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(330px,.92fr);gap:22px;padding:0}.wedding1792-budget-copy,.wedding1792-budget-facts{padding:42px;border:1px solid rgba(74,51,55,.11);border-radius:25px;background:rgba(255,255,255,.48)}.wedding1792-budget-copy h2{margin:.2rem 0 1rem;color:#211a1c;font-size:clamp(2.4rem,4.6vw,4.55rem);line-height:.96;letter-spacing:-.05em}.wedding1792-budget-copy>p{color:#655a5d;line-height:1.72}.wedding1792-budget-copy .button-secondary{margin-top:8px;border-color:rgba(112,73,79,.22);color:#211a1c}.wedding1792-budget-facts{display:grid;align-content:center;gap:11px;background:linear-gradient(145deg,rgba(217,154,162,.12),rgba(239,210,162,.12)),rgba(255,255,255,.55)}.wedding1792-budget-facts div{padding:18px 20px;border:1px solid rgba(95,66,70,.1);border-radius:16px;background:rgba(255,255,255,.55)}.wedding1792-budget-facts span{display:block;color:#796b6e;font-size:.76rem;font-weight:800}.wedding1792-budget-facts strong{display:block;margin-top:5px;color:#251d1f;font-size:1.4rem}.wedding1792-budget-facts small{margin:7px 4px 0;color:#766a6c;line-height:1.55}
.wedding1792-process{background:#0c0d10}.wedding1792-process .wedding1792-section-heading h2{color:#f3e9df}.wedding1792-process .wedding1792-section-heading>p{color:#aaa3a5}.wedding1792-process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.wedding1792-process-grid article{min-height:225px;padding:27px;border:1px solid rgba(239,210,162,.13);border-radius:19px;background:rgba(255,255,255,.021)}.wedding1792-process-grid strong{color:#d9b78f;font-size:.73rem;letter-spacing:.14em}.wedding1792-process-grid h3{margin:43px 0 10px;font-size:1.32rem}.wedding1792-process-grid p{margin:0;color:#aaa4a6;line-height:1.65}
.wedding1792-region{background:linear-gradient(180deg,#101014,#0a0b0d)}.wedding1792-region-card{display:flex;justify-content:space-between;align-items:center;gap:32px;padding:38px 42px;border:1px solid rgba(239,210,162,.14);border-radius:24px;background:linear-gradient(135deg,rgba(217,154,162,.06),rgba(239,210,162,.035))}.wedding1792-region-card h2{margin:.15rem 0 .7rem;font-size:clamp(2.1rem,4vw,3.8rem);line-height:1}.wedding1792-region-card p:not(.eyebrow){max-width:760px;margin:0;color:#b9b2b4;line-height:1.65}
.wedding1792-faq{background:var(--w1792-cream);color:var(--w1792-ink)}.wedding1792-faq-grid{display:grid;grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr);gap:52px;align-items:start}.wedding1792-faq-intro .eyebrow{color:#9e626b}.wedding1792-faq-intro h2{margin:.2rem 0 .8rem;color:#211a1c;font-size:clamp(2.35rem,4.4vw,4.45rem);line-height:.98;letter-spacing:-.05em}.wedding1792-faq-intro>p:not(.eyebrow){color:#655b5d;line-height:1.7}.wedding1792-faq-intro .button-secondary{margin-top:10px;border-color:rgba(110,73,79,.22);color:#211a1c}.wedding1792-faq-list{display:grid;gap:10px}.wedding1792-faq-list details{border:1px solid rgba(89,62,66,.12);border-radius:16px;background:rgba(255,255,255,.52);padding:0 20px}.wedding1792-faq-list summary{cursor:pointer;padding:19px 0;color:#2a2123;font-weight:850}.wedding1792-faq-list p{padding:0 0 19px;margin:0;color:#695e61;line-height:1.7}
.wedding1792-final{background:#0a0b0d}.wedding1792-final-card{display:grid;grid-template-columns:minmax(0,.9fr) minmax(420px,1.1fr);gap:28px;align-items:stretch;padding:36px;border:1px solid rgba(239,210,162,.15);border-radius:26px;background:radial-gradient(circle at 0 0,rgba(217,154,162,.09),transparent 38%),#101114}.wedding1792-final-copy{align-self:center;padding:8px}.wedding1792-final-copy h2{margin:.2rem 0 .7rem;font-size:clamp(2.4rem,4.7vw,4.6rem);line-height:.95}.wedding1792-final-copy>p:not(.eyebrow){margin:0;color:#b9b2b4;line-height:1.68}.wedding1792-final-options{display:grid;grid-template-columns:1fr 1fr;gap:12px}.wedding1792-final-option{display:flex;flex-direction:column;justify-content:flex-end;min-height:220px;padding:24px;border:1px solid rgba(239,210,162,.13);border-radius:19px;background:rgba(255,255,255,.022)}.wedding1792-final-option>span{color:#9f999b;font-size:.69rem;font-weight:900;letter-spacing:.13em}.wedding1792-final-option>strong{display:block;margin:9px 0 22px;color:#eee5dc;font-size:1.15rem}.wedding1792-final-option .button{width:100%;justify-content:center}.wedding1792-final-option-primary{background:linear-gradient(145deg,rgba(217,154,162,.11),rgba(239,210,162,.055))}.wedding1792-final-option-primary .button-primary{background:linear-gradient(135deg,#efc68d,#d88f98);border-color:transparent;color:#171113}
@media(max-width:980px){.wedding1792-hero-grid,.wedding1792-intro-grid,.wedding1792-budget-card,.wedding1792-faq-grid,.wedding1792-final-card{grid-template-columns:1fr}.wedding1792-hero-visual{max-width:760px;aspect-ratio:16/10}.wedding1792-section-heading{grid-template-columns:1fr;gap:15px}.wedding1792-scope-grid{grid-template-columns:1fr}.wedding1792-process-grid{grid-template-columns:repeat(2,1fr)}.wedding1792-final-options{grid-template-columns:1fr 1fr}.wedding1792-region-card{align-items:flex-start;flex-direction:column}}
@media(max-width:680px){.wedding1792-hero{padding:48px 0 54px}.wedding1792-hero-grid{gap:28px}.wedding1792-hero-copy h1{font-size:clamp(2.65rem,12.5vw,4.3rem)}.wedding1792-hero-actions{display:grid}.wedding1792-hero-actions .button{width:100%;justify-content:center}.wedding1792-hero-tags{display:grid;grid-template-columns:1fr}.wedding1792-hero-tags span{justify-content:space-between;border-radius:13px}.wedding1792-hero-visual{aspect-ratio:4/3;border-radius:21px}.wedding1792-hero-panel{left:12px;right:12px;bottom:12px;padding:14px}.wedding1792-intro-grid{gap:24px}.wedding1792-moment-grid,.wedding1792-process-grid,.wedding1792-final-options{grid-template-columns:1fr}.wedding1792-moment-grid article{min-height:0}.wedding1792-scope-card,.wedding1792-budget-copy,.wedding1792-budget-facts{padding:24px}.wedding1792-scope-title{align-items:center}.wedding1792-scope-note{flex-direction:column}.wedding1792-region-card,.wedding1792-final-card{padding:25px}.wedding1792-region-card .button{width:100%;justify-content:center}.wedding1792-final-option{min-height:0}.wedding1792-faq-grid{gap:28px}}

/* =========================================================
   V17.93 – Hochzeitsfeuerwerk an Startseiten-Raster angepasst
   Größen, Abstände und Formate folgen der Startseite; nur
   Farbwelt und dekorative Formen bleiben hochzeitsspezifisch.
   ========================================================= */
:root{
    --w1793-blush:#e8a7b2;
    --w1793-blush-soft:rgba(232,167,178,.12);
    --w1793-champagne:#f1c98f;
    --w1793-champagne-soft:rgba(241,201,143,.10);
    --w1793-ivory:#f5efea;
    --w1793-muted:#999395;
    --w1793-panel:#101315;
}

/* Hero: exakt dieselben Proportionen wie die Startseite */
.wedding1792-hero{
    position:relative;
    overflow:hidden;
    padding:54px 0 50px;
    border-bottom:1px solid rgba(255,255,255,.055);
    background:
        radial-gradient(circle at 77% 22%,rgba(232,167,178,.105),transparent 29%),
        radial-gradient(circle at 7% 65%,rgba(241,201,143,.075),transparent 28%),
        linear-gradient(180deg,#0b0d0f 0%,#080a0b 100%);
}
.wedding1792-glow{
    width:330px;
    height:330px;
    border:1px solid rgba(241,201,143,.08);
    border-radius:50%;
    background:transparent;
    filter:none;
    opacity:1;
    box-shadow:0 0 60px rgba(232,167,178,.025),inset 0 0 60px rgba(241,201,143,.018);
}
.wedding1792-glow::after{
    content:"";
    position:absolute;
    inset:34px;
    border:1px solid rgba(232,167,178,.055);
    border-radius:50%;
}
.wedding1792-glow-a{left:-205px;top:-75px}
.wedding1792-glow-b{right:-205px;bottom:-115px}
.wedding1792-hero-grid{
    position:relative;
    z-index:1;
    display:grid;
    grid-template-columns:minmax(0,.82fr) minmax(420px,1.18fr);
    gap:46px;
    align-items:center;
}
.wedding1792-hero-copy{max-width:650px}
.wedding1792-hero-copy h1{
    margin:8px 0 18px;
    max-width:720px;
    color:#f5f6f4;
    font-size:clamp(3rem,5.4vw,5.9rem);
    line-height:.93;
    letter-spacing:-.052em;
}
.wedding1792-hero-copy h1 span{color:var(--w1793-champagne)}
.wedding1792-hero-copy>p:not(.eyebrow){
    max-width:610px;
    margin:0;
    color:#a9b0b1;
    font-size:1rem;
    line-height:1.68;
}
.wedding1792-hero-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:25px}
.wedding1792-hero-actions .button-primary,
.wedding1792-final-option-primary .button-primary{
    border-color:transparent;
    background:linear-gradient(135deg,var(--w1793-champagne),var(--w1793-blush));
    color:#171113;
    box-shadow:0 0 22px rgba(232,167,178,.10);
}
.wedding1792-hero-actions .button-secondary{border-color:rgba(241,201,143,.22)}
.wedding1792-hero-tags{display:flex;flex-wrap:wrap;gap:8px 16px;margin-top:21px}
.wedding1792-hero-tags span{
    position:relative;
    display:inline;
    min-height:0;
    padding:0 0 0 15px;
    border:0;
    border-radius:0;
    background:none;
    color:#929b9d;
    font-size:.67rem;
    font-weight:750;
}
.wedding1792-hero-tags span::before{
    content:"";
    position:absolute;
    left:0;
    top:.34em;
    width:7px;
    height:7px;
    border:1px solid var(--w1793-blush);
    border-radius:50%;
    box-shadow:3px 0 0 -1px rgba(241,201,143,.9),0 0 12px rgba(232,167,178,.22);
}
.wedding1792-hero-tags strong{color:#dfc8bb;font-size:.67rem}
.wedding1792-hero-visual{
    position:relative;
    overflow:visible;
    aspect-ratio:auto;
    border:0;
    border-radius:0;
    background:none;
    box-shadow:none;
}
.wedding1792-hero-visual img{
    display:block;
    width:100%;
    aspect-ratio:1.22/1;
    height:auto;
    object-fit:cover;
    border:1px solid rgba(241,201,143,.13);
    border-radius:26px;
    background:#111;
    box-shadow:0 35px 80px rgba(0,0,0,.45);
}
.wedding1792-hero-visual::after{
    content:"";
    position:absolute;
    z-index:1;
    inset:0;
    border-radius:26px;
    background:linear-gradient(180deg,transparent 50%,rgba(6,5,6,.58) 100%),linear-gradient(90deg,rgba(28,14,18,.10),transparent 35%);
    pointer-events:none;
}
.wedding1792-hero-panel{
    position:absolute;
    left:-22px;
    right:auto;
    bottom:28px;
    z-index:2;
    display:grid;
    gap:3px;
    min-width:250px;
    padding:14px 16px;
    border:1px solid rgba(241,201,143,.22);
    border-radius:13px;
    background:rgba(15,12,14,.90);
    box-shadow:0 16px 34px rgba(0,0,0,.38);
    backdrop-filter:blur(11px);
}
.wedding1792-hero-panel span{color:var(--w1793-champagne);font-size:.54rem;font-weight:900;letter-spacing:.08em}
.wedding1792-hero-panel strong{margin-top:0;color:#f4f5f3;font-size:.83rem}

/* gemeinsame Abschnittsmaße wie auf der Startseite */
.wedding1792-intro,
.wedding1792-moments,
.wedding1792-scope,
.wedding1792-budget,
.wedding1792-process,
.wedding1792-faq{padding-top:72px;padding-bottom:72px}
.wedding1792-intro,
.wedding1792-moments,
.wedding1792-budget,
.wedding1792-faq{background:#0b0e10;color:#eef1ef}
.wedding1792-scope,
.wedding1792-process{background:radial-gradient(circle at 50% 0%,rgba(232,167,178,.045),transparent 36%),#090c0e}

/* Intro: gleiche Typo- und Spaltenlogik wie Prozess-Head der Startseite */
.wedding1792-intro-grid{
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(280px,.65fr);
    gap:40px;
    align-items:end;
}
.wedding1792-intro h2{
    margin:5px 0 0;
    max-width:780px;
    color:#f3f5f3;
    font-size:clamp(2rem,3.8vw,3.7rem);
    line-height:.98;
    letter-spacing:-.035em;
}
.wedding1792-intro-copy{display:grid;gap:10px}
.wedding1792-intro-copy p{margin:0;color:#8f989a;font-size:.76rem;line-height:1.62}

/* einheitliche Abschnittsüberschriften */
.wedding1792-section-heading{
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(280px,.65fr);
    gap:40px;
    align-items:end;
    margin-bottom:28px;
}
.wedding1792-section-heading h2,
.wedding1792-scope .wedding1792-section-heading h2,
.wedding1792-process .wedding1792-section-heading h2{
    margin:5px 0 0;
    max-width:780px;
    color:#f3f5f3;
    font-size:clamp(2rem,3.8vw,3.7rem);
    line-height:.98;
    letter-spacing:-.035em;
}
.wedding1792-section-heading>p,
.wedding1792-section-heading-light>p,
.wedding1792-process .wedding1792-section-heading>p{
    margin:0;
    color:#8f989a;
    font-size:.76rem;
    line-height:1.62;
}
.wedding1792-moments .eyebrow,
.wedding1792-budget .eyebrow,
.wedding1792-faq-intro .eyebrow{color:var(--w1793-blush)}

/* Drei Momente: Kartenformat wie Startseiten-Leistungs-/Prozesskarten */
.wedding1792-moment-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
.wedding1792-moment-grid article{
    position:relative;
    isolation:isolate;
    overflow:hidden;
    min-height:300px;
    padding:20px;
    border:1px solid rgba(232,167,178,.16);
    border-radius:15px;
    background:linear-gradient(155deg,rgba(232,167,178,.045),rgba(255,255,255,.008)),var(--w1793-panel);
    box-shadow:0 18px 42px rgba(0,0,0,.14);
}
.wedding1792-moment-grid article::before{
    content:"";
    position:absolute;
    z-index:-1;
    top:-72px;
    right:-64px;
    width:180px;
    height:180px;
    border:1px solid rgba(241,201,143,.13);
    border-radius:50%;
    box-shadow:-28px 17px 0 -27px rgba(232,167,178,.7);
}
.wedding1792-moment-grid article::after{
    content:"";
    position:absolute;
    z-index:-1;
    left:0;
    right:0;
    top:auto;
    bottom:0;
    width:auto;
    height:3px;
    border-radius:0;
    background:linear-gradient(90deg,var(--w1793-blush),var(--w1793-champagne),transparent 92%);
}
.wedding1792-no{position:absolute;top:15px;right:15px;color:#caa2a9;font-size:.55rem;font-weight:950;letter-spacing:.08em}
.wedding1792-icon{
    display:grid;
    place-items:center;
    width:42px;
    height:42px;
    margin:0 0 34px;
    border:1px solid rgba(241,201,143,.25);
    border-radius:50%;
    background:rgba(232,167,178,.065);
    color:var(--w1793-champagne);
    font-size:1rem;
}
.wedding1792-moment-grid h3{margin:0 0 9px;color:#f3f5f3;font-size:.96rem}
.wedding1792-moment-grid p{margin:0;color:#90999b;font-size:.66rem;line-height:1.55}

/* Leistungsumfang: gleiche kompakte Doppelkarten wie das Startseiten-System */
.wedding1792-scope-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.wedding1792-scope-card{
    overflow:hidden;
    padding:21px;
    border:1px solid rgba(255,255,255,.075);
    border-radius:16px;
    background:#101315;
}
.wedding1792-scope-included{border-color:rgba(232,167,178,.18);background:radial-gradient(circle at top left,rgba(232,167,178,.07),transparent 38%),#101315}
.wedding1792-scope-extra{border-color:rgba(241,201,143,.18);background:radial-gradient(circle at top left,rgba(241,201,143,.065),transparent 38%),#101315}
.wedding1792-scope-title{display:flex;align-items:center;gap:12px;margin-bottom:16px}
.wedding1792-scope-title>span{
    flex:0 0 42px;
    width:42px;
    height:42px;
    border-radius:50%;
    border:1px solid rgba(241,201,143,.25);
    background:rgba(232,167,178,.07);
    color:var(--w1793-champagne);
    font-size:1rem;
}
.wedding1792-scope-title h3{margin:3px 0 0;font-size:1rem}
.wedding1792-scope-card ul{display:grid;grid-template-columns:1fr 1fr;gap:7px 16px;margin:0;padding:0;list-style:none}
.wedding1792-scope-card li{position:relative;padding-left:15px;color:#9aa3a5;font-size:.65rem;line-height:1.45}
.wedding1792-scope-card li::before{content:"";position:absolute;left:0;top:.52em;width:6px;height:6px;border-radius:50%;background:var(--w1793-blush)}
.wedding1792-scope-extra li::before{content:"";background:var(--w1793-champagne)}
.wedding1792-scope-note{
    display:flex;
    gap:10px;
    align-items:center;
    margin-top:11px;
    padding:11px 13px;
    border:1px solid rgba(255,255,255,.055);
    border-radius:10px;
    background:rgba(255,255,255,.012);
    color:#808a8c;
    font-size:.61rem;
    line-height:1.5;
}
.wedding1792-scope-note>span{flex:0 0 23px;width:23px;height:23px;border-color:rgba(241,201,143,.18);color:var(--w1793-champagne)}
.wedding1792-scope-note strong{color:#d9c8bc}

/* Budget: Format der großen Startseiten-Shopkarte */
.wedding1792-budget-card{
    display:grid;
    grid-template-columns:minmax(0,1.1fr) minmax(330px,.9fr);
    gap:0;
    overflow:hidden;
    padding:0;
    border:1px solid rgba(232,167,178,.12);
    border-radius:20px;
    background:#101315;
}
.wedding1792-budget-copy{
    align-self:center;
    max-width:700px;
    padding:45px;
    border:0;
    border-radius:0;
    background:transparent;
}
.wedding1792-budget-copy h2{
    margin:5px 0 12px;
    color:#f3f5f3;
    font-size:clamp(1.8rem,3vw,3rem);
    line-height:1.03;
    letter-spacing:-.035em;
}
.wedding1792-budget-copy>p{margin:0 0 9px;color:#959ea0;font-size:.74rem;line-height:1.6}
.wedding1792-budget-copy .button-secondary{margin-top:11px;border-color:rgba(241,201,143,.20);color:#eef1ef}
.wedding1792-budget-facts{
    position:relative;
    display:grid;
    align-content:center;
    gap:8px;
    min-height:390px;
    padding:34px;
    border:0;
    border-left:1px solid rgba(255,255,255,.055);
    border-radius:0;
    background:radial-gradient(circle at 70% 20%,rgba(232,167,178,.11),transparent 34%),radial-gradient(circle at 35% 76%,rgba(241,201,143,.075),transparent 35%),#0d1012;
}
.wedding1792-budget-facts::before,
.wedding1792-budget-facts::after{
    content:"";
    position:absolute;
    border:1px solid rgba(241,201,143,.09);
    border-radius:50%;
    pointer-events:none;
}
.wedding1792-budget-facts::before{width:210px;height:210px;right:-95px;top:-80px}
.wedding1792-budget-facts::after{width:150px;height:150px;right:-45px;top:-16px;border-color:rgba(232,167,178,.075)}
.wedding1792-budget-facts div{position:relative;z-index:1;padding:10px 12px;border:1px solid rgba(241,201,143,.12);border-radius:9px;background:rgba(241,201,143,.025)}
.wedding1792-budget-facts span{display:block;color:#858f92;font-size:.53rem;font-weight:700}
.wedding1792-budget-facts strong{display:block;margin-top:3px;color:#e8c69b;font-size:.75rem}
.wedding1792-budget-facts small{position:relative;z-index:1;margin:4px 2px 0;color:#788285;font-size:.56rem;line-height:1.5}

/* Prozess: gleiche Kartengröße und Typografie wie auf der Startseite */
.wedding1792-process-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
.wedding1792-process-grid article{
    position:relative;
    min-height:300px;
    overflow:hidden;
    padding:20px;
    border:1px solid rgba(255,255,255,.075);
    border-radius:15px;
    background:linear-gradient(155deg,rgba(255,255,255,.026),rgba(255,255,255,.008)),#101315;
}
.wedding1792-process-grid article::after{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;background:linear-gradient(90deg,var(--w1793-blush),var(--w1793-champagne),transparent)}
.wedding1792-process-grid strong{position:absolute;top:15px;right:15px;color:#a29194;font-size:.55rem;font-weight:950;letter-spacing:.08em}
.wedding1792-process-grid h3{margin:76px 0 9px;color:#f3f5f3;font-size:.96rem}
.wedding1792-process-grid p{margin:0;color:#90999b;font-size:.66rem;line-height:1.55}
.wedding1792-process-grid article::before{
    content:"♡";
    position:absolute;
    top:20px;
    left:20px;
    display:grid;
    place-items:center;
    width:42px;
    height:42px;
    border:1px solid rgba(241,201,143,.22);
    border-radius:50%;
    background:rgba(232,167,178,.055);
    color:var(--w1793-champagne);
    font-size:.9rem;
}

/* Einsatzgebiet: Startseiten-Proportionen */
.wedding1792-region{padding-top:62px;padding-bottom:62px;background:#0a0c0e}
.wedding1792-region-card{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    gap:42px;
    align-items:center;
    padding:0;
    border:0;
    border-radius:0;
    background:transparent;
}
.wedding1792-region-card h2{margin:5px 0 10px;max-width:760px;color:#f3f5f3;font-size:clamp(2rem,3.6vw,3.8rem);line-height:.98}
.wedding1792-region-card p:not(.eyebrow){max-width:620px;margin:0;color:#929b9e;font-size:.74rem;line-height:1.6}
.wedding1792-region-card .button{border-color:rgba(241,201,143,.20)}

/* FAQ: kompakt wie die übrigen Startseiten-Sektionen */
.wedding1792-faq-grid{display:grid;grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr);gap:42px;align-items:start}
.wedding1792-faq-intro h2{margin:5px 0 10px;color:#f3f5f3;font-size:clamp(1.8rem,3vw,3rem);line-height:1.02;letter-spacing:-.035em}
.wedding1792-faq-intro>p:not(.eyebrow){margin:0;color:#929b9e;font-size:.72rem;line-height:1.6}
.wedding1792-faq-intro .button-secondary{margin-top:18px;border-color:rgba(241,201,143,.20);color:#eef1ef}
.wedding1792-faq-list{display:grid;gap:8px}
.wedding1792-faq-list details{padding:0 16px;border:1px solid rgba(232,167,178,.105);border-radius:12px;background:#101315}
.wedding1792-faq-list summary{padding:15px 0;color:#eef1ef;font-size:.72rem;font-weight:850}
.wedding1792-faq-list p{padding:0 0 15px;margin:0;color:#8f989a;font-size:.65rem;line-height:1.58}

/* Abschluss-CTA: gleiche kompakte Logik wie die CTA-Leisten der Startseite */
.wedding1792-final{padding-top:0;padding-bottom:72px;background:#0a0b0d}
.wedding1792-final-card{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:28px;
    padding:28px 30px;
    border:1px solid rgba(232,167,178,.13);
    border-radius:17px;
    background:radial-gradient(circle at 85% 50%,rgba(232,167,178,.065),transparent 35%),#101315;
}
.wedding1792-final-copy{align-self:auto;padding:0}
.wedding1792-final-copy h2{margin:4px 0 7px;color:#f3f5f3;font-size:clamp(1.7rem,2.8vw,2.8rem);line-height:1.02}
.wedding1792-final-copy>p:not(.eyebrow){max-width:690px;margin:0;color:#8d9799;font-size:.72rem;line-height:1.55}
.wedding1792-final-options{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.wedding1792-final-option{
    display:flex;
    flex-direction:column;
    justify-content:space-between;
    min-width:205px;
    min-height:0;
    padding:13px;
    border:1px solid rgba(241,201,143,.10);
    border-radius:12px;
    background:rgba(255,255,255,.012);
}
.wedding1792-final-option>span{color:#858f92;font-size:.5rem;font-weight:900;letter-spacing:.08em}
.wedding1792-final-option>strong{margin:4px 0 12px;color:#eef1ef;font-size:.72rem}
.wedding1792-final-option-primary{background:linear-gradient(145deg,rgba(232,167,178,.07),rgba(241,201,143,.03))}
.wedding1792-final-option .button{width:100%;justify-content:center}

@media(max-width:1100px){
    .wedding1792-moment-grid,.wedding1792-process-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
    .wedding1792-moment-grid article:last-child{grid-column:1/-1;min-height:220px}
}
@media(max-width:980px){
    .wedding1792-hero-grid,
    .wedding1792-intro-grid,
    .wedding1792-budget-card,
    .wedding1792-faq-grid{grid-template-columns:1fr}
    .wedding1792-hero-visual{max-width:760px}
    .wedding1792-budget-facts{min-height:0;border-left:0;border-top:1px solid rgba(255,255,255,.055)}
    .wedding1792-section-heading{grid-template-columns:1fr;gap:12px;align-items:start}
    .wedding1792-scope-grid{grid-template-columns:1fr}
    .wedding1792-final-card{align-items:stretch;flex-direction:column}
    .wedding1792-final-options{justify-content:flex-start}
}
@media(max-width:760px){
    .wedding1792-intro,
    .wedding1792-moments,
    .wedding1792-scope,
    .wedding1792-budget,
    .wedding1792-process,
    .wedding1792-faq{padding-top:58px;padding-bottom:58px}
    .wedding1792-intro-grid{gap:12px;align-items:start}
    .wedding1792-process-grid{grid-template-columns:1fr}
    .wedding1792-process-grid article{min-height:235px}
    .wedding1792-region-card{grid-template-columns:1fr;gap:20px;align-items:start}
    .wedding1792-region-card .button{width:100%;justify-content:center}
}
@media(max-width:680px){
    .wedding1792-hero{padding:38px 0 40px}
    .wedding1792-hero-grid{gap:28px}
    .wedding1792-hero-copy h1{font-size:clamp(2.6rem,13vw,4rem)}
    .wedding1792-hero-actions{display:grid;grid-template-columns:1fr}
    .wedding1792-hero-actions .button{width:100%;justify-content:center}
    .wedding1792-hero-tags{display:grid;grid-template-columns:1fr;gap:8px}
    .wedding1792-hero-tags span{display:block}
    .wedding1792-hero-visual img{aspect-ratio:4/3;border-radius:18px}
    .wedding1792-hero-visual::after{border-radius:18px}
    .wedding1792-hero-panel{left:12px;right:12px;bottom:12px;min-width:0;padding:13px 14px}
    .wedding1792-moment-grid{grid-template-columns:1fr}
    .wedding1792-moment-grid article,.wedding1792-moment-grid article:last-child{grid-column:auto;min-height:235px}
    .wedding1792-scope-card ul{grid-template-columns:1fr}
    .wedding1792-scope-card,.wedding1792-budget-copy,.wedding1792-budget-facts{padding:23px 18px}
    .wedding1792-scope-note{align-items:flex-start}
    .wedding1792-final-card{padding:23px 18px}
    .wedding1792-final-options{display:grid;grid-template-columns:1fr;width:100%}
    .wedding1792-final-option{min-width:0}
}


/* ============================================================
   V17.94 – Hochzeitsfeuerwerk: CTA wie Startseite + FAQ Feinschliff
   ============================================================ */

/* FAQ: größer, klarer und mit ruhiger Hochzeitsoptik */
.wedding1792-faq-grid{
    grid-template-columns:minmax(0,.70fr) minmax(0,1.30fr);
    gap:56px;
}
.wedding1792-faq-intro h2{
    max-width:540px;
    font-size:clamp(2rem,3.25vw,3.35rem);
    line-height:1;
}
.wedding1792-faq-intro>p:not(.eyebrow){
    max-width:520px;
    font-size:.84rem;
    line-height:1.72;
}
.wedding1792-faq-list{gap:10px}
.wedding1792-faq-list details{
    overflow:hidden;
    padding:0 20px;
    border:1px solid rgba(232,167,178,.15);
    border-radius:14px;
    background:
        linear-gradient(145deg,rgba(232,167,178,.035),rgba(241,201,143,.012)),
        #101315;
    transition:border-color .2s ease,background .2s ease;
}
.wedding1792-faq-list details[open]{
    border-color:rgba(241,201,143,.27);
    background:
        radial-gradient(circle at 100% 0,rgba(232,167,178,.065),transparent 32%),
        #111416;
}
.wedding1792-faq-list summary{
    display:grid;
    grid-template-columns:36px minmax(0,1fr) 28px;
    gap:12px;
    align-items:center;
    min-height:66px;
    padding:0;
    color:#f1f2f0;
    font-size:.92rem;
    font-weight:850;
    line-height:1.3;
    cursor:pointer;
    list-style:none;
}
.wedding1792-faq-list summary::-webkit-details-marker{display:none}
.wedding1792-faq-list summary::after{
    content:"+";
    display:grid;
    place-items:center;
    width:28px;
    height:28px;
    border:1px solid rgba(241,201,143,.20);
    border-radius:50%;
    color:var(--w1793-champagne);
    font-size:1rem;
    font-weight:500;
    transition:background .2s ease;
}
.wedding1792-faq-list details[open] summary::after{
    content:"−";
    background:rgba(232,167,178,.08);
}
.wedding1794-faq-number{
    color:var(--w1793-blush);
    font-size:.58rem;
    font-weight:950;
    letter-spacing:.08em;
}
.wedding1792-faq-list p{
    max-width:760px;
    padding:0 40px 20px 48px;
    margin:0;
    color:#a2aaac;
    font-size:.80rem;
    line-height:1.72;
}

/* "Eure Hochzeit": gleiche kompakte Formate/Logik wie der CTA auf der Startseite */
.wedding1792-final{
    padding-top:0;
    padding-bottom:72px;
    background:#0a0b0d;
}
.wedding1794-final-cta{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;
    padding:15px 17px;
    border:1px solid rgba(232,167,178,.16);
    border-radius:12px;
    background:
        radial-gradient(circle at 85% 50%,rgba(232,167,178,.075),transparent 36%),
        rgba(255,255,255,.015);
}
.wedding1794-final-copy span,
.wedding1794-final-copy strong{display:block}
.wedding1794-final-copy span{
    color:var(--w1793-blush);
    font-size:.52rem;
    font-weight:900;
    letter-spacing:.08em;
}
.wedding1794-final-copy strong{
    margin-top:2px;
    color:#f1efed;
    font-size:.82rem;
}
.wedding1794-final-copy p{
    margin:3px 0 0;
    color:#8f989a;
    font-size:.64rem;
    line-height:1.45;
}
.wedding1794-final-actions{
    display:flex;
    gap:8px;
    flex-wrap:wrap;
    justify-content:flex-end;
}
.wedding1794-final-actions .button-primary{
    border-color:transparent;
    background:linear-gradient(135deg,var(--w1793-champagne),var(--w1793-blush));
    color:#171113;
    box-shadow:0 0 20px rgba(232,167,178,.09);
}
.wedding1794-final-actions .button-secondary{
    border-color:rgba(241,201,143,.20);
}

@media(max-width:980px){
    .wedding1792-faq-grid{gap:32px}
}
@media(max-width:700px){
    .wedding1792-faq-list details{padding:0 15px}
    .wedding1792-faq-list summary{
        grid-template-columns:30px minmax(0,1fr) 28px;
        gap:9px;
        min-height:62px;
        font-size:.84rem;
    }
    .wedding1792-faq-list p{
        padding:0 36px 18px 39px;
        font-size:.76rem;
    }
    .wedding1794-final-cta{
        align-items:stretch;
        flex-direction:column;
        padding:17px;
    }
    .wedding1794-final-actions{
        display:grid;
        grid-template-columns:1fr;
        width:100%;
    }
    .wedding1794-final-actions .button{width:100%;justify-content:center}
}

/* ============================================================
   V17.95 – Hochzeitsfeuerwerk: Abschluss wie Dienstleistungen
   + Einsatzgebiet Hochzeit-Feinschliff
   ============================================================ */

/* Einsatzgebiet: elegante Hochzeit-Karte statt einfacher Zeile */
.wedding1792-region{
    padding-top:66px;
    padding-bottom:66px;
    background:#0a0c0e;
}
.wedding1795-region-card{
    position:relative;
    overflow:hidden;
    display:grid;
    grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);
    gap:18px;
    padding:28px;
    border:1px solid rgba(232,167,178,.14);
    border-radius:22px;
    background:
        radial-gradient(circle at 10% 0%,rgba(232,167,178,.075),transparent 34%),
        radial-gradient(circle at 100% 100%,rgba(241,201,143,.055),transparent 34%),
        linear-gradient(145deg,#111517 0%,#0e1214 58%,#0b0f11 100%);
    box-shadow:0 22px 52px rgba(0,0,0,.22),inset 0 1px 0 rgba(255,255,255,.025);
}
.wedding1795-region-card::after{
    content:"";
    position:absolute;
    right:-105px;
    top:-105px;
    width:260px;
    height:260px;
    border:1px solid rgba(241,201,143,.08);
    border-radius:50%;
    box-shadow:0 0 0 34px rgba(232,167,178,.025),0 0 0 70px rgba(241,201,143,.018);
    pointer-events:none;
}
.wedding1795-region-copy{
    position:relative;
    z-index:1;
    padding:7px 4px 5px;
}
.wedding1795-region-copy .eyebrow{color:var(--w1793-blush)}
.wedding1795-region-copy h2{
    max-width:780px;
    margin:6px 0 12px;
    color:#f4f3f1;
    font-size:clamp(2rem,3.45vw,3.55rem);
    line-height:.99;
    letter-spacing:-.04em;
}
.wedding1795-region-copy>p:not(.eyebrow){
    max-width:700px;
    margin:0;
    color:#9ca5a7;
    font-size:.80rem;
    line-height:1.7;
}
.wedding1795-region-tags{
    display:flex;
    flex-wrap:wrap;
    gap:7px;
    margin-top:18px;
}
.wedding1795-region-tags span{
    padding:7px 10px;
    border:1px solid rgba(241,201,143,.13);
    border-radius:999px;
    background:rgba(255,255,255,.018);
    color:#d7ccca;
    font-size:.58rem;
    font-weight:850;
    letter-spacing:.025em;
}
.wedding1795-region-side{
    position:relative;
    z-index:1;
    display:grid;
    align-content:start;
    gap:14px;
    padding:20px;
    border:1px solid rgba(241,201,143,.11);
    border-radius:16px;
    background:linear-gradient(145deg,rgba(232,167,178,.055),rgba(241,201,143,.018));
}
.wedding1795-region-mark{
    display:grid;
    place-items:center;
    width:44px;
    height:44px;
    border:1px solid rgba(241,201,143,.24);
    border-radius:50%;
    color:var(--w1793-champagne);
    background:rgba(232,167,178,.045);
    font-size:1.15rem;
}
.wedding1795-region-kicker{
    display:block;
    color:var(--w1793-blush);
    font-size:.53rem;
    font-weight:950;
    letter-spacing:.09em;
}
.wedding1795-region-side strong{
    display:block;
    margin:4px 0 6px;
    color:#f2efed;
    font-size:1rem;
}
.wedding1795-region-side p{
    margin:0;
    color:#959ea0;
    font-size:.70rem;
    line-height:1.6;
}
.wedding1795-region-side .button{
    width:100%;
    justify-content:center;
    border-color:rgba(241,201,143,.22);
}

/* Abschluss: Aufbau wie Dienstleistungen, Farben Hochzeit */
.wedding1792-final{
    padding-top:54px;
    padding-bottom:84px;
    border-top:1px solid rgba(232,167,178,.10);
    background:linear-gradient(180deg,#1c1a1c 0%,#171719 46%,#121416 100%);
}
.wedding1795-final-card{
    position:relative;
    overflow:hidden;
    padding:34px;
    border:1px solid rgba(232,167,178,.14);
    border-radius:24px;
    background:
        radial-gradient(circle at 14% 0%,rgba(232,167,178,.105),transparent 35%),
        radial-gradient(circle at 94% 100%,rgba(241,201,143,.075),transparent 36%),
        linear-gradient(145deg,#171416 0%,#121315 55%,#0e1113 100%);
    box-shadow:0 26px 60px rgba(0,0,0,.27),inset 0 1px 0 rgba(255,255,255,.03);
}
.wedding1795-final-card::after{
    content:"";
    position:absolute;
    right:-74px;
    top:-74px;
    width:190px;
    height:190px;
    border:1px solid rgba(241,201,143,.07);
    border-radius:50%;
    box-shadow:0 0 0 28px rgba(232,167,178,.022);
    pointer-events:none;
}
.wedding1795-final-copy{
    position:relative;
    z-index:1;
    max-width:820px;
    margin-bottom:24px;
}
.wedding1795-final-copy .eyebrow{color:var(--w1793-blush)}
.wedding1795-final-copy h2{
    margin:5px 0 10px;
    color:#f5f3f1;
    font-size:clamp(2rem,3.2vw,3.25rem);
    line-height:1;
}
.wedding1795-final-copy>p:not(.eyebrow){
    margin:0;
    color:#aaa2a4;
    font-size:.84rem;
    line-height:1.62;
}
.wedding1795-final-options{
    position:relative;
    z-index:1;
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:14px;
}
.wedding1795-final-option{
    display:grid;
    align-content:start;
    gap:8px;
    min-height:220px;
    padding:22px;
    border:1px solid rgba(255,255,255,.08);
    border-radius:16px;
}
.wedding1795-final-option .wedding1795-option-kicker{
    font-size:.55rem;
    font-weight:950;
    letter-spacing:.08em;
}
.wedding1795-final-option>strong{
    color:#f4f1ef;
    font-size:1rem;
}
.wedding1795-final-option small{
    color:#999194;
    font-size:.67rem;
    line-height:1.48;
}
.wedding1795-final-option .button{
    width:100%;
    margin-top:8px;
    justify-content:center;
    font-weight:900;
}
.wedding1795-option-advice{
    background:radial-gradient(circle at 15% 0%,rgba(232,167,178,.14),transparent 45%),rgba(255,255,255,.014);
    border-color:rgba(232,167,178,.20);
}
.wedding1795-option-advice .wedding1795-option-kicker{color:#edaebb}
.wedding1795-option-advice .button{
    color:#1a0e12;
    border-color:#e9a9b4;
    background:linear-gradient(180deg,#f0bcc5,#df9eaa);
    box-shadow:0 10px 24px rgba(232,167,178,.13);
}
.wedding1795-option-request{
    background:radial-gradient(circle at 15% 0%,rgba(241,201,143,.14),transparent 45%),rgba(255,255,255,.014);
    border-color:rgba(241,201,143,.20);
}
.wedding1795-option-request .wedding1795-option-kicker{color:var(--w1793-champagne)}
.wedding1795-option-request .button{
    color:#181108;
    border-color:#efc887;
    background:linear-gradient(180deg,#f4d49f,#e9be7c);
    box-shadow:0 10px 24px rgba(241,201,143,.13);
}
.wedding1795-final-option .button:hover{filter:brightness(1.045)}

@media(max-width:900px){
    .wedding1795-region-card{grid-template-columns:1fr}
    .wedding1795-region-side{grid-template-columns:auto minmax(0,1fr);align-items:start}
    .wedding1795-region-side .button{grid-column:1/-1}
}
@media(max-width:760px){
    .wedding1795-final-options{grid-template-columns:1fr}
    .wedding1795-final-card{padding:25px 20px}
    .wedding1795-region-card{padding:20px}
    .wedding1795-region-side{grid-template-columns:1fr}
    .wedding1795-region-side .button{grid-column:auto}
}

/* V17.96 – Entfernungsrechner */
.home62-region-actions,.wedding1795-region-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:22px}.travel-area-section{background:linear-gradient(180deg,#f7f8f7,#eef4f1)}.travel-calculator{border:1px solid rgba(100,198,154,.24);border-radius:28px;background:linear-gradient(145deg,#fff,rgba(100,198,154,.07));box-shadow:0 18px 60px rgba(0,0,0,.08);padding:clamp(24px,4vw,48px)}.travel-calculator-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:30px;align-items:start;margin-bottom:28px}.travel-calculator-head h2{margin:.2em 0 .35em}.travel-free-badge{min-width:170px;padding:18px 20px;border-radius:20px;background:#0e1714;color:#fff;text-align:center}.travel-free-badge span,.travel-free-badge small{display:block;font-size:.75rem;letter-spacing:.08em;opacity:.72}.travel-free-badge strong{display:block;font-size:1.65rem;color:#dfbd72;margin:4px 0}.travel-calculator-form{display:grid;grid-template-columns:180px minmax(220px,1fr) auto;gap:14px;align-items:end}.travel-calculator-form label{display:grid;gap:7px;font-weight:700}.travel-calculator-form input{width:100%;min-height:52px;border:1px solid rgba(0,0,0,.16);border-radius:14px;padding:0 15px;background:#fff;font:inherit}.travel-calculator-result{margin-top:22px;padding:22px;border-radius:20px;background:#0e1714;color:#fff}.travel-result-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.travel-result-grid>div{padding:16px;border-radius:15px;background:rgba(255,255,255,.07)}.travel-result-grid span,.travel-result-grid small{display:block;opacity:.72}.travel-result-grid strong{display:block;font-size:1.5rem;margin:3px 0}.travel-result-price strong{color:#dfbd72}.travel-result-price.is-free strong{color:#7ee2b5}.travel-calculator-result p{margin:16px 0 0}.travel-calculator-note{margin-top:18px;padding:17px 19px;border-left:4px solid #dfbd72;background:rgba(223,189,114,.1);border-radius:0 14px 14px 0;line-height:1.55}.travel-map-credit{display:block;margin-top:12px;opacity:.65}.travel-calculator-error{margin-top:18px}.travel-calculator-compact{padding:22px}.travel-calculator-compact .travel-calculator-head{grid-template-columns:1fr}.travel-calculator-compact .travel-free-badge{justify-self:start}.travel-calculator-compact .travel-calculator-form{grid-template-columns:1fr}.travel-calculator-compact .travel-result-grid{grid-template-columns:1fr}.travel-admin-grid{align-items:start}.travel-admin-origin{padding:16px 18px;background:rgba(100,198,154,.08);border:1px solid rgba(100,198,154,.22);border-radius:16px;margin-bottom:18px}.travel-admin-origin span,.travel-admin-origin small{display:block}.travel-admin-origin strong{display:block;font-size:1.25rem;margin:3px 0}.travel-rate-table input{min-width:110px;width:100%}.travel-rate-table td:last-child input{min-width:180px}@media(max-width:800px){.travel-calculator-head,.travel-calculator-form,.travel-result-grid{grid-template-columns:1fr}.travel-free-badge{justify-self:start}.home62-region-actions,.wedding1795-region-actions{flex-direction:column;align-items:stretch}.home62-region-actions .button,.wedding1795-region-actions .button{width:100%}}

/* V17.97 – Entfernungsrechner Farbanpassung */
.travel-area-section{
  background:
    radial-gradient(circle at top left, rgba(232,124,155,.14), transparent 34%),
    radial-gradient(circle at top right, rgba(97,191,181,.18), transparent 32%),
    linear-gradient(180deg,#f8f5f6 0%,#eef4f2 46%,#f8f3ed 100%);
}
.travel-calculator{
  position:relative;
  overflow:hidden;
  border:1px solid rgba(131,98,150,.14);
  border-radius:30px;
  background:
    linear-gradient(135deg, rgba(255,255,255,.96) 0%, rgba(249,240,243,.95) 34%, rgba(238,246,243,.96) 70%, rgba(255,248,239,.95) 100%);
  box-shadow:0 24px 70px rgba(36,31,49,.10), inset 0 1px 0 rgba(255,255,255,.65);
}
.travel-calculator::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 0% 0%, rgba(200,110,150,.16), transparent 28%),
    radial-gradient(circle at 100% 0%, rgba(81,177,166,.17), transparent 26%),
    radial-gradient(circle at 100% 100%, rgba(230,182,106,.16), transparent 24%);
  pointer-events:none;
}
.travel-calculator>*{position:relative;z-index:1}
.travel-calculator-head h2{color:#221d2d}
.travel-calculator-head p{color:#534a63;max-width:760px}
.travel-free-badge{
  min-width:185px;
  padding:19px 22px;
  border:1px solid rgba(255,255,255,.18);
  border-radius:22px;
  background:linear-gradient(135deg,#2f2540 0%,#5c3758 48%,#87706b 100%);
  box-shadow:0 16px 38px rgba(59,34,54,.26);
  color:#fff;
}
.travel-free-badge span,.travel-free-badge small{opacity:.82}
.travel-free-badge strong{color:#ffe4aa;text-shadow:0 2px 10px rgba(0,0,0,.18)}
.travel-calculator-form{
  gap:16px;
  padding:20px;
  border:1px solid rgba(131,98,150,.12);
  border-radius:22px;
  background:rgba(255,255,255,.68);
  backdrop-filter:blur(6px);
}
.travel-calculator-form label{color:#2c2536}
.travel-calculator-form input{
  min-height:56px;
  border:1px solid rgba(109,98,132,.18);
  border-radius:16px;
  padding:0 16px;
  background:linear-gradient(180deg,#fff,#fff8fb);
  color:#201928;
  box-shadow:inset 0 1px 2px rgba(0,0,0,.03);
}
.travel-calculator-form input:focus{
  outline:none;
  border-color:rgba(188,118,146,.55);
  box-shadow:0 0 0 4px rgba(188,118,146,.12);
  background:#fff;
}
.travel-calculator-form .button{
  min-height:56px;
  border-radius:16px;
  box-shadow:0 12px 30px rgba(34,29,45,.12);
}
.travel-calculator-result{
  margin-top:24px;
  padding:24px;
  border:1px solid rgba(61,47,77,.14);
  border-radius:24px;
  background:linear-gradient(135deg,#251f32 0%,#312744 38%,#1f3a3b 100%);
  box-shadow:0 22px 48px rgba(26,23,35,.20);
  color:#f7f6fb;
}
.travel-calculator-result h3,.travel-calculator-result h4{color:#fff}
.travel-result-grid{gap:14px}
.travel-result-grid>div{
  padding:18px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:18px;
  background:linear-gradient(180deg, rgba(255,255,255,.11), rgba(255,255,255,.05));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05);
}
.travel-result-grid span,.travel-result-grid small{opacity:.82;letter-spacing:.01em}
.travel-result-grid strong{font-size:1.6rem}
.travel-result-price{
  background:linear-gradient(180deg, rgba(255,230,176,.18), rgba(255,194,110,.12));
}
.travel-result-price strong{color:#ffd88a}
.travel-result-price.is-free{
  background:linear-gradient(180deg, rgba(141,233,198,.20), rgba(113,219,177,.10));
}
.travel-result-price.is-free strong{color:#8ce6c1}
.travel-calculator-note{
  margin-top:20px;
  padding:18px 20px;
  border:1px solid rgba(209,164,89,.26);
  border-left:5px solid #dba85f;
  border-radius:18px;
  background:linear-gradient(135deg,rgba(255,246,230,.96),rgba(255,238,212,.88));
  color:#4b3b28;
  line-height:1.6;
}
.travel-map-credit{margin-top:14px;color:#675d72;opacity:1}
.travel-map-credit a{color:#6f466c}
.travel-calculator-error{
  margin-top:18px;
  border:1px solid rgba(190,69,82,.18);
  background:linear-gradient(135deg,rgba(255,245,246,.97),rgba(255,233,236,.93));
  color:#6c2430;
}
.travel-admin-origin{
  background:linear-gradient(135deg, rgba(255,247,250,.98), rgba(240,248,244,.95));
  border:1px solid rgba(131,98,150,.14);
  box-shadow:0 10px 26px rgba(35,31,48,.05);
}
.travel-admin-origin span{color:#8a5878;font-weight:700;letter-spacing:.06em}
.travel-admin-origin strong{color:#251f32}
.travel-admin-origin small{color:#5f556d}
@media (max-width:800px){
  .travel-calculator{border-radius:24px}
  .travel-calculator-form,
  .travel-calculator-result,
  .travel-calculator-note{border-radius:18px}
}

/* ============================================================
   V17.98 – Anfahrtsrechner passend zur Einsatzgebiet-Seite
   ============================================================ */
body.page-einsatzgebiet .travel-area-section{
  background:
    radial-gradient(circle at 10% 0%,rgba(100,198,154,.10),transparent 30%),
    radial-gradient(circle at 92% 92%,rgba(223,189,114,.07),transparent 28%),
    linear-gradient(180deg,#0a0b0d,#090a0c);
  border-top:1px solid rgba(100,198,154,.08);
  border-bottom:1px solid rgba(100,198,154,.08);
}
body.page-einsatzgebiet .travel-calculator{
  border:1px solid rgba(100,198,154,.18);
  background:
    radial-gradient(circle at 92% 5%,rgba(100,198,154,.10),transparent 30%),
    radial-gradient(circle at 3% 100%,rgba(223,189,114,.065),transparent 28%),
    linear-gradient(145deg,#101416 0%,#0d1112 52%,#111511 100%);
  box-shadow:0 24px 70px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.025);
  color:#eef3f0;
}
body.page-einsatzgebiet .travel-calculator::before{display:none}
body.page-einsatzgebiet .travel-calculator-head h2{color:#f3f5f4}
body.page-einsatzgebiet .travel-calculator-head p{color:#a9b3af}
body.page-einsatzgebiet .travel-calculator-head p strong{color:#dfe8e4}
body.page-einsatzgebiet .travel-calculator .eyebrow{color:#64c69a}
body.page-einsatzgebiet .travel-free-badge{
  border:1px solid rgba(223,189,114,.24);
  background:linear-gradient(145deg,rgba(223,189,114,.13),rgba(100,198,154,.075));
  box-shadow:none;
  color:#f4f5f3;
}
body.page-einsatzgebiet .travel-free-badge span{color:#dfbd72;font-weight:900}
body.page-einsatzgebiet .travel-free-badge strong{color:#fff;font-size:1.72rem;text-shadow:none}
body.page-einsatzgebiet .travel-free-badge small{color:#9eaaa5;opacity:1}
.travel-how-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:0 0 22px}
.travel-how-grid>div{display:grid;grid-template-columns:auto 1fr;column-gap:12px;row-gap:3px;align-items:start;padding:17px 18px;border:1px solid rgba(100,198,154,.12);border-radius:16px;background:rgba(255,255,255,.025)}
.travel-how-grid>div>span{grid-row:1/3;display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:rgba(100,198,154,.10);color:#79d5ad;font-size:.72rem;font-weight:950}
.travel-how-grid strong{color:#edf3f0;font-size:.95rem}
.travel-how-grid small{color:#8e9995;line-height:1.45}
body.page-einsatzgebiet .travel-calculator-form{
  border:1px solid rgba(100,198,154,.14);
  background:rgba(5,8,9,.42);
  backdrop-filter:none;
}
body.page-einsatzgebiet .travel-calculator-form label{color:#d9e1de}
body.page-einsatzgebiet .travel-calculator-form input{
  border:1px solid rgba(255,255,255,.10);
  background:#15191b;
  color:#f4f6f5;
  box-shadow:none;
}
body.page-einsatzgebiet .travel-calculator-form input::placeholder{color:#68716e}
body.page-einsatzgebiet .travel-calculator-form input:focus{
  border-color:rgba(100,198,154,.58);
  box-shadow:0 0 0 4px rgba(100,198,154,.09);
  background:#171c1d;
}
body.page-einsatzgebiet .travel-calculator-form .button{
  border-color:rgba(100,198,154,.55);
  background:linear-gradient(135deg,#64c69a,#8ad7b4);
  color:#07100c;
  box-shadow:0 10px 28px rgba(100,198,154,.13);
}
body.page-einsatzgebiet .travel-calculator-result{
  border:1px solid rgba(100,198,154,.16);
  background:linear-gradient(145deg,#111718,#0d1213);
  box-shadow:0 18px 45px rgba(0,0,0,.22);
}
.travel-result-title{display:flex;justify-content:space-between;gap:18px;align-items:flex-end;padding-bottom:16px;margin-bottom:16px;border-bottom:1px solid rgba(255,255,255,.07)}
.travel-result-title span{color:#71cfa6;font-size:.68rem;font-weight:900;letter-spacing:.12em}
.travel-result-title strong{max-width:72%;color:#f3f5f4;text-align:right;font-size:.88rem;line-height:1.4}
body.page-einsatzgebiet .travel-result-grid>div{
  border:1px solid rgba(255,255,255,.065);
  background:rgba(255,255,255,.035);
}
body.page-einsatzgebiet .travel-result-grid span{color:#9eaaa5}
body.page-einsatzgebiet .travel-result-grid strong{color:#f4f6f5}
body.page-einsatzgebiet .travel-result-grid small{color:#7d8985}
body.page-einsatzgebiet .travel-result-price{background:linear-gradient(145deg,rgba(223,189,114,.10),rgba(223,189,114,.035))}
body.page-einsatzgebiet .travel-result-price strong{color:#dfbd72}
body.page-einsatzgebiet .travel-result-price.is-free{background:linear-gradient(145deg,rgba(100,198,154,.12),rgba(100,198,154,.035))}
body.page-einsatzgebiet .travel-result-price.is-free strong{color:#77d7aa}
.travel-math-card{margin-top:16px;padding:19px 20px;border:1px solid rgba(223,189,114,.14);border-radius:17px;background:rgba(223,189,114,.045)}
.travel-math-card.is-free{border-color:rgba(100,198,154,.15);background:rgba(100,198,154,.045)}
.travel-math-label{display:block;margin-bottom:7px;color:#dfbd72;font-size:.68rem;font-weight:950;letter-spacing:.10em;text-transform:uppercase}
.travel-math-card.is-free .travel-math-label{color:#72d0a6}
.travel-math-card>strong{display:block;color:#edf2ef;font-size:1rem;line-height:1.45}
.travel-math-card>small{display:block;margin-top:9px;color:#899591;line-height:1.5}
.travel-math-formula{margin-top:12px;padding:12px 14px;border-radius:12px;background:rgba(0,0,0,.20);color:#b8c2be}
.travel-math-formula b{color:#79d5ad}
.travel-breakdown{display:grid;gap:8px;margin-top:14px}
.travel-breakdown-row{display:grid;grid-template-columns:1fr 1.4fr auto;gap:12px;align-items:center;padding:10px 12px;border-radius:11px;background:rgba(0,0,0,.18);color:#9ba6a2;font-size:.84rem}
.travel-breakdown-row strong{color:#e6cc93}
.travel-math-total{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:10px;padding-top:13px;border-top:1px solid rgba(255,255,255,.07);color:#c7d0cc}
.travel-math-total strong{color:#dfbd72;font-size:1.28rem}
body.page-einsatzgebiet .travel-calculator-note{
  display:flex;gap:14px;align-items:flex-start;
  border:1px solid rgba(100,198,154,.14);
  border-left:1px solid rgba(100,198,154,.14);
  background:rgba(100,198,154,.045);
  color:#a7b2ae;
}
.travel-note-icon{display:grid;place-items:center;flex:0 0 38px;width:38px;height:38px;border-radius:11px;background:rgba(100,198,154,.10);color:#75d2a8;font-size:1.15rem;font-weight:900}
.travel-calculator-note>div>strong{display:block;margin:1px 0 5px;color:#e7eeeb}
.travel-calculator-note p{margin:0!important;color:inherit!important;line-height:1.58}
body.page-einsatzgebiet .travel-map-credit{color:#727e79}
body.page-einsatzgebiet .travel-map-credit a{color:#9bcdb5}
body.page-einsatzgebiet .travel-calculator-error{border-color:rgba(211,98,107,.20);background:rgba(132,34,44,.13);color:#f0afb5}

/* Admin: gleiche Logik, aber helle Verwaltungsansicht lesbar halten */
.admin-section .travel-calculator{background:linear-gradient(145deg,#f8faf9,#eef5f1);border-color:rgba(74,148,113,.18);color:#202a25}
.admin-section .travel-calculator::before{display:none}
.admin-section .travel-calculator-head h2,.admin-section .travel-calculator-head p{color:#27332d}
.admin-section .travel-free-badge{background:linear-gradient(135deg,#1f4032,#335947);box-shadow:none}
.admin-section .travel-calculator-form{background:#fff;border-color:rgba(74,148,113,.14)}
.admin-section .travel-calculator-result{background:linear-gradient(145deg,#163126,#1c3a2e)}
.admin-section .travel-math-card{background:rgba(255,255,255,.065)}
.admin-section .travel-calculator-note{color:#4d5e55}
.admin-section .travel-calculator-note p{margin:0!important;color:inherit!important}

@media(max-width:800px){
  .travel-how-grid{grid-template-columns:1fr}
  .travel-result-title{align-items:flex-start;flex-direction:column}
  .travel-result-title strong{max-width:100%;text-align:left}
  .travel-breakdown-row{grid-template-columns:1fr auto}
  .travel-breakdown-row span:nth-child(2){grid-column:1/2}
  .travel-breakdown-row strong{grid-column:2;grid-row:1/3}
}

/* V17.99 – Rechnungen & Zahlungsbelege */
.invoice-stat-grid{margin-bottom:22px}.invoice-admin-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;margin:18px 0}.admin-filter-search{display:flex;gap:10px;align-items:center;flex:1;min-width:280px}.admin-filter-search input{min-height:44px;flex:1;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.06);color:#fff;border-radius:12px;padding:0 14px}.invoice-status-filter{margin:0}.invoice-table td small{display:block;margin-top:4px;opacity:.66}.invoice-doc-actions{display:flex;gap:7px;flex-wrap:wrap}.invoice-status{display:inline-flex;align-items:center;justify-content:center;min-height:28px;padding:5px 10px;border-radius:999px;font-size:.78rem;font-weight:800;letter-spacing:.02em;border:1px solid transparent}.invoice-status-entwurf{background:rgba(148,163,184,.15);border-color:rgba(148,163,184,.24);color:#d5dde8}.invoice-status-offen{background:rgba(217,166,70,.13);border-color:rgba(217,166,70,.28);color:#f1cc7f}.invoice-status-bezahlt{background:rgba(70,190,129,.13);border-color:rgba(70,190,129,.26);color:#8fe0b6}.invoice-status-storniert{background:rgba(218,88,88,.13);border-color:rgba(218,88,88,.26);color:#f0a1a1}.invoice-settings-card{margin-top:28px}.invoice-settings-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:22px;margin-bottom:20px}.invoice-settings-heading h2{margin:.15em 0}.invoice-ready-badge{display:inline-flex;padding:8px 11px;border-radius:999px;font-weight:800;font-size:.78rem;white-space:nowrap}.invoice-ready-badge.is-ready{background:rgba(70,190,129,.13);color:#8fe0b6;border:1px solid rgba(70,190,129,.24)}.invoice-ready-badge.is-missing{background:rgba(217,166,70,.13);color:#efc979;border:1px solid rgba(217,166,70,.24)}.invoice-form-grid{display:grid;gap:14px}.invoice-form-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.invoice-form-grid.three{grid-template-columns:2fr .7fr 1.4fr}.invoice-settings-form{display:grid;gap:15px}.invoice-legal-note{margin-top:18px;padding:15px 17px;border:1px solid rgba(215,170,82,.2);background:rgba(215,170,82,.08);border-radius:14px;line-height:1.55}.invoice-workflow{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:0 0 24px}.invoice-workflow>div{display:grid;grid-template-columns:38px 1fr;grid-template-rows:auto auto;column-gap:11px;align-items:center;padding:14px 16px;border:1px solid rgba(255,255,255,.09);border-radius:16px;background:rgba(255,255,255,.035)}.invoice-workflow span{grid-row:1/3;width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.08);font-weight:900}.invoice-workflow strong{font-size:.94rem}.invoice-workflow small{opacity:.62}.invoice-workflow .is-active{border-color:rgba(212,169,83,.28);background:linear-gradient(135deg,rgba(212,169,83,.12),rgba(83,164,121,.08))}.invoice-workflow .is-active span{background:#d3a64f;color:#17140e}.invoice-editor-grid{grid-template-columns:minmax(0,1.55fr) minmax(300px,.65fr);align-items:start}.invoice-editor-main{display:grid;gap:13px}.invoice-editor-main h2,.invoice-editor-side h2{margin:.1em 0 .35em}.invoice-source-note{padding:13px 15px;border-radius:12px;background:rgba(75,161,117,.09);border:1px solid rgba(75,161,117,.18);line-height:1.5}.invoice-travel-box{display:grid;gap:15px;margin:9px 0;padding:19px;border-radius:18px;background:linear-gradient(135deg,rgba(54,115,88,.14),rgba(205,157,71,.08));border:1px solid rgba(95,164,130,.2)}.invoice-travel-box h3{margin:.15em 0 .35em}.invoice-travel-box p{margin:0;line-height:1.55}.invoice-extra-rows{display:grid;gap:10px}.invoice-extra-row{display:grid;grid-template-columns:minmax(0,1fr) 180px;gap:12px}.invoice-editor-side{position:sticky;top:112px;display:grid;gap:14px}.invoice-editor-help{padding:14px 16px;border-radius:14px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.08)}.invoice-editor-help ol{margin:8px 0 0;padding-left:20px;line-height:1.6}.invoice-draft-summary{margin-top:24px}.invoice-summary-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.invoice-summary-heading h2{margin:.1em 0}.invoice-summary-heading>strong{font-size:clamp(1.6rem,3vw,2.35rem);color:#dfbd72;white-space:nowrap}.invoice-mini-lines{display:grid;gap:0;margin:14px 0}.invoice-mini-lines>div{display:flex;justify-content:space-between;gap:20px;padding:11px 0;border-bottom:1px solid rgba(255,255,255,.075)}.invoice-mini-lines span{line-height:1.45}.invoice-mini-lines strong{white-space:nowrap}.invoice-total-row{display:flex;justify-content:space-between;gap:20px;padding:15px 0;font-size:1.12rem}.invoice-total-row strong{font-size:1.35rem;color:#dfbd72}.invoice-finalize-form{margin-top:18px}.invoice-final-grid{grid-template-columns:minmax(0,1.45fr) minmax(300px,.7fr);align-items:start}.invoice-document-buttons{display:flex;gap:10px;flex-wrap:wrap;margin-top:19px}.invoice-paid-box{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:15px 17px;margin-bottom:14px;border-radius:14px;background:rgba(70,190,129,.12);border:1px solid rgba(70,190,129,.22);color:#9be7bf}.invoice-paid-box strong{font-size:1.05rem}.invoice-paid-box span{font-size:.86rem}.invoice-editor-form input,.invoice-editor-form select,.invoice-editor-form textarea,.invoice-settings-form input,.invoice-settings-form select{width:100%}.invoice-editor-form label,.invoice-settings-form label{display:grid;gap:7px}.invoice-editor-form label small{font-weight:500;opacity:.65}
@media(max-width:1000px){.invoice-editor-grid,.invoice-final-grid{grid-template-columns:1fr}.invoice-editor-side{position:static}.invoice-form-grid.three{grid-template-columns:1fr 1fr 1fr}}
@media(max-width:700px){.invoice-admin-toolbar,.invoice-settings-heading,.invoice-summary-heading{align-items:stretch;flex-direction:column}.invoice-form-grid.two,.invoice-form-grid.three,.invoice-extra-row,.invoice-workflow{grid-template-columns:1fr}.invoice-workflow>div{grid-template-columns:36px 1fr}.admin-filter-search{min-width:0;width:100%}.invoice-summary-heading>strong{align-self:flex-start}.invoice-doc-actions,.invoice-document-buttons{flex-direction:column}.invoice-doc-actions .button,.invoice-document-buttons .button{width:100%}}

/* ============================================================
   V18.01 – Hochzeitsseite: Hochzeitsfarbwelt, Lesbarkeit & Local SEO
   ============================================================ */
:root{
    --w1801-ivory:#fff8f3;
    --w1801-cream:#f7eee9;
    --w1801-rose:#e8b0bd;
    --w1801-rose-deep:#b86f82;
    --w1801-champagne:#f2d3a0;
    --w1801-plum:#39242f;
    --w1801-plum-2:#261820;
    --w1801-wine:#4a2937;
    --w1801-ink:#33262d;
    --w1801-muted:#76656d;
    --w1801-light-text:#f8efec;
    --w1801-light-muted:#d8c8cc;
}

/* Hero – warmes Pflaume/Rosé statt neutralem Schwarz */
.wedding1792-hero{
    background:
        radial-gradient(circle at 78% 20%,rgba(232,176,189,.20),transparent 31%),
        radial-gradient(circle at 8% 72%,rgba(242,211,160,.13),transparent 30%),
        linear-gradient(145deg,#23161d 0%,#35202b 48%,#171116 100%);
    border-bottom-color:rgba(242,211,160,.11);
}
.wedding1792-hero-copy h1{color:var(--w1801-ivory)}
.wedding1792-hero-copy h1 span{color:var(--w1801-champagne)}
.wedding1792-hero-copy>p:not(.eyebrow){color:#e2d4d7;font-size:1.06rem;line-height:1.72}
.wedding1792-hero-tags span{color:#d8c7ca;font-size:.79rem;line-height:1.35}
.wedding1792-hero-tags strong{color:#ffe4bf;font-size:.80rem}
.wedding1792-hero-panel{
    border-color:rgba(242,211,160,.28);
    background:rgba(47,27,37,.91);
}
.wedding1792-hero-panel span{color:var(--w1801-champagne);font-size:.64rem}
.wedding1792-hero-panel strong{font-size:.96rem;color:#fff8f4}

/* Helle Hochzeit-Abschnitte – maximaler Kontrast in Karten */
.wedding1792-moments,
.wedding1792-budget,
.wedding1792-faq,
.wedding1801-local{
    background:
        radial-gradient(circle at 7% 0%,rgba(232,176,189,.13),transparent 28%),
        radial-gradient(circle at 95% 100%,rgba(242,211,160,.12),transparent 30%),
        linear-gradient(180deg,#fbf5f1 0%,#f5ebe7 100%);
    color:var(--w1801-ink);
}
.wedding1792-moments .wedding1792-section-heading h2,
.wedding1792-budget h2,
.wedding1792-faq-intro h2,
.wedding1801-local h2{color:#35252d}
.wedding1792-moments .wedding1792-section-heading>p,
.wedding1792-faq-intro>p:not(.eyebrow),
.wedding1801-local-head>p{color:#725f68;font-size:1rem;line-height:1.72}
.wedding1792-moments .eyebrow,
.wedding1792-budget .eyebrow,
.wedding1792-faq-intro .eyebrow,
.wedding1801-local .eyebrow{color:#a55f72}

/* Drei Momente */
.wedding1792-moment-grid{gap:14px}
.wedding1792-moment-grid article{
    min-height:310px;
    padding:26px;
    border-color:rgba(125,77,92,.15);
    background:
        radial-gradient(circle at 100% 0%,rgba(232,176,189,.16),transparent 40%),
        linear-gradient(145deg,#fffaf7,#f9efec);
    box-shadow:0 18px 44px rgba(83,50,62,.09);
}
.wedding1792-moment-grid article::before{border-color:rgba(184,111,130,.18)}
.wedding1792-no{color:#9b5a6c;font-size:.68rem}
.wedding1792-icon{
    width:48px;height:48px;
    border-color:rgba(184,111,130,.25);
    background:rgba(232,176,189,.16);
    color:#9d596c;
    font-size:1.15rem;
}
.wedding1792-moment-grid h3{color:#35252d;font-size:1.28rem;line-height:1.25}
.wedding1792-moment-grid p{color:#6d5b63;font-size:.96rem;line-height:1.68}

/* Leistungsumfang – Bordeaux/Pflaume mit heller Schrift */
.wedding1792-scope{
    background:
        radial-gradient(circle at 12% 0%,rgba(232,176,189,.15),transparent 31%),
        radial-gradient(circle at 88% 100%,rgba(242,211,160,.08),transparent 30%),
        linear-gradient(145deg,#291a22,#1c1419 72%);
}
.wedding1792-scope .wedding1792-section-heading h2{color:#fff6f1}
.wedding1792-scope .wedding1792-section-heading>p{color:#d9c9cd;font-size:1rem;line-height:1.72}
.wedding1792-scope-card{
    padding:27px;
    border-radius:19px;
    border-color:rgba(242,211,160,.17);
    background:linear-gradient(155deg,rgba(255,255,255,.055),rgba(255,255,255,.018)),#39242f;
    box-shadow:0 18px 45px rgba(0,0,0,.18);
}
.wedding1792-scope-included{background:radial-gradient(circle at 0 0,rgba(232,176,189,.16),transparent 39%),#39242f}
.wedding1792-scope-extra{background:radial-gradient(circle at 0 0,rgba(242,211,160,.12),transparent 39%),#34232b}
.wedding1792-scope-title h3{color:#fff7f2;font-size:1.24rem}
.wedding1792-scope-title .eyebrow{color:#f0b8c4}
.wedding1792-scope-card li{color:#eadde0;font-size:.92rem;line-height:1.58;padding-left:18px}
.wedding1792-scope-card li::before{width:7px;height:7px;top:.56em}
.wedding1792-scope-note{
    margin-top:15px;
    padding:15px 17px;
    border-color:rgba(242,211,160,.18);
    background:rgba(242,211,160,.07);
    color:#dacbcf;
    font-size:.88rem;
    line-height:1.62;
}
.wedding1792-scope-note strong{color:#ffe7c4}

/* Budget – heller, freundlicher, Text deutlich größer */
.wedding1792-budget-card{
    border-color:rgba(125,77,92,.14);
    background:#fffaf7;
    box-shadow:0 22px 55px rgba(83,50,62,.09);
}
.wedding1792-budget-copy{background:linear-gradient(145deg,#fffaf7,#fcf2ef)}
.wedding1792-budget-copy h2{color:#392830}
.wedding1792-budget-copy>p{color:#705e66;font-size:1rem;line-height:1.72}
.wedding1792-budget-copy .button-secondary{color:#392830;border-color:rgba(126,77,92,.25)}
.wedding1792-budget-facts{
    background:
        radial-gradient(circle at 82% 12%,rgba(232,176,189,.22),transparent 34%),
        radial-gradient(circle at 20% 90%,rgba(242,211,160,.20),transparent 36%),
        linear-gradient(145deg,#f7e8e7,#f8eee2);
    border-left-color:rgba(125,77,92,.10);
}
.wedding1792-budget-facts div{
    padding:15px 17px;
    border-color:rgba(126,77,92,.14);
    background:rgba(255,250,247,.70);
}
.wedding1792-budget-facts span{color:#765d68;font-size:.82rem;font-weight:800}
.wedding1792-budget-facts strong{color:#6f3d50;font-size:1.22rem}
.wedding1792-budget-facts small{color:#725f68;font-size:.82rem;line-height:1.6}

/* Einsatzgebiet Hochzeit */
.wedding1792-region{
    background:
        radial-gradient(circle at 12% 0%,rgba(232,176,189,.11),transparent 30%),
        linear-gradient(150deg,#24171e,#191216 78%);
}
.wedding1795-region-card{
    border-color:rgba(232,176,189,.20);
    background:
        radial-gradient(circle at 10% 0%,rgba(232,176,189,.13),transparent 35%),
        radial-gradient(circle at 100% 100%,rgba(242,211,160,.09),transparent 35%),
        linear-gradient(145deg,#3a2530 0%,#2c1e26 56%,#21171c 100%);
}
.wedding1795-region-copy h2{color:#fff7f2}
.wedding1795-region-copy>p:not(.eyebrow){color:#ddcfd2;font-size:1rem;line-height:1.72}
.wedding1795-region-tags span{
    padding:8px 12px;
    border-color:rgba(242,211,160,.22);
    background:rgba(255,255,255,.05);
    color:#f2e4e0;
    font-size:.76rem;
}
.wedding1795-region-side{
    border-color:rgba(242,211,160,.18);
    background:linear-gradient(145deg,rgba(232,176,189,.13),rgba(242,211,160,.05));
}
.wedding1795-region-kicker{color:#f0b8c4;font-size:.66rem}
.wedding1795-region-side strong{color:#fff7f2;font-size:1.18rem}
.wedding1795-region-side p{color:#ddcfd2;font-size:.92rem;line-height:1.68}

/* FAQ – helle Karten, große Schrift, starke Trennung */
.wedding1792-faq-list{gap:12px}
.wedding1792-faq-list details{
    padding:0 22px;
    border-color:rgba(125,77,92,.15);
    background:linear-gradient(145deg,#fffaf7,#f9eeeb);
    box-shadow:0 8px 24px rgba(83,50,62,.05);
}
.wedding1792-faq-list details[open]{
    border-color:rgba(184,111,130,.34);
    background:linear-gradient(145deg,#fff8f5,#f7e8e8);
}
.wedding1792-faq-list summary{color:#3b2931;font-size:1.03rem;min-height:72px}
.wedding1794-faq-number{color:#a85f73;font-size:.68rem}
.wedding1792-faq-list summary::after{color:#975668;border-color:rgba(151,86,104,.28);background:rgba(232,176,189,.10)}
.wedding1792-faq-list p{color:#6d5963;font-size:.94rem;line-height:1.72;padding-bottom:22px}
.wedding1792-faq-list p a{color:#8f4e63;font-weight:800;text-decoration:underline;text-underline-offset:3px}
.wedding1792-faq-intro .button-secondary{color:#3b2931;border-color:rgba(126,77,92,.25)}

/* Abschluss – Hochzeit statt neutralem Schwarz */
.wedding1792-final{
    background:linear-gradient(180deg,#24171e 0%,#171116 100%);
    border-top-color:rgba(232,176,189,.14);
}
.wedding1795-final-card{
    border-color:rgba(232,176,189,.21);
    background:
        radial-gradient(circle at 14% 0%,rgba(232,176,189,.17),transparent 36%),
        radial-gradient(circle at 94% 100%,rgba(242,211,160,.11),transparent 38%),
        linear-gradient(145deg,#3b2631 0%,#2a1c24 58%,#21171c 100%);
}
.wedding1795-final-copy h2{color:#fff7f2}
.wedding1795-final-copy>p:not(.eyebrow){color:#dacbce;font-size:.98rem;line-height:1.68}
.wedding1795-final-option{border-color:rgba(255,255,255,.10);background:rgba(255,255,255,.045)}
.wedding1795-final-option>strong{color:#fff7f2;font-size:1.16rem;line-height:1.35}
.wedding1795-final-option small{color:#d4c3c7;font-size:.86rem;line-height:1.58}
.wedding1795-final-option .wedding1795-option-kicker{font-size:.67rem}

/* Neuer Local-SEO-/Regionalblock */
.wedding1801-local{padding-top:72px;padding-bottom:72px}
.wedding1801-local-head{
    display:grid;
    grid-template-columns:minmax(0,1.1fr) minmax(300px,.9fr);
    gap:42px;
    align-items:end;
    margin-bottom:28px;
}
.wedding1801-local-head h2{
    max-width:850px;
    margin:5px 0 0;
    font-size:clamp(2rem,3.7vw,3.65rem);
    line-height:.99;
    letter-spacing:-.038em;
}
.wedding1801-local-head>p{margin:0}
.wedding1801-local-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.wedding1801-local-grid article{
    min-height:250px;
    padding:25px;
    border:1px solid rgba(125,77,92,.14);
    border-radius:18px;
    background:
        radial-gradient(circle at 100% 0%,rgba(232,176,189,.16),transparent 38%),
        linear-gradient(145deg,#fffaf7,#f8ece9);
    box-shadow:0 16px 38px rgba(83,50,62,.07);
}
.wedding1801-local-grid article>span{color:#a15b6f;font-size:.70rem;font-weight:950;letter-spacing:.09em}
.wedding1801-local-grid h3{margin:28px 0 10px;color:#392830;font-size:1.24rem;line-height:1.3}
.wedding1801-local-grid p{margin:0;color:#6e5c64;font-size:.94rem;line-height:1.7}
.wedding1801-local-links{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:9px;
    margin-top:14px;
}
.wedding1801-local-links a{
    display:flex;
    justify-content:space-between;
    gap:12px;
    padding:13px 14px;
    border:1px solid rgba(125,77,92,.15);
    border-radius:12px;
    background:rgba(255,250,247,.72);
    color:#6d3f50;
    font-size:.82rem;
    font-weight:850;
    text-decoration:none;
}
.wedding1801-local-links a:hover{border-color:rgba(184,111,130,.42);background:#fffaf7}
.wedding1801-local-links a span{color:#b86f82}

/* Abschnittstexte generell etwas größer und besser lesbar */
.wedding1792-section-heading>p,
.wedding1792-section-heading-light>p{font-size:.96rem;line-height:1.7}

@media(max-width:980px){
    .wedding1801-local-head{grid-template-columns:1fr;gap:14px;align-items:start}
    .wedding1801-local-grid{grid-template-columns:1fr 1fr}
    .wedding1801-local-grid article:last-child{grid-column:1/-1;min-height:0}
    .wedding1801-local-links{grid-template-columns:1fr 1fr}
}
@media(max-width:680px){
    .wedding1792-moment-grid article,.wedding1792-scope-card,.wedding1801-local-grid article{padding:21px}
    .wedding1792-moment-grid p,.wedding1792-scope-card li,.wedding1792-budget-copy>p,.wedding1792-faq-list p,.wedding1801-local-grid p{font-size:.93rem}
    .wedding1792-faq-list summary{font-size:.96rem;min-height:68px}
    .wedding1792-faq-list p{padding-left:39px;padding-right:6px}
    .wedding1801-local{padding-top:58px;padding-bottom:58px}
    .wedding1801-local-grid,.wedding1801-local-links{grid-template-columns:1fr}
    .wedding1801-local-grid article:last-child{grid-column:auto}
}

/* ============================================================
   V18.02 – Hochzeit: klarere Farben, Leistungsumfang & Regional
   ============================================================ */
:root{
    --w1802-green:#52b788;
    --w1802-green-soft:#17382c;
    --w1802-green-line:rgba(104,211,159,.38);
    --w1802-orange:#f1a24a;
    --w1802-orange-soft:#432c1d;
    --w1802-orange-line:rgba(241,162,74,.42);
    --w1802-card-text:#4c3741;
    --w1802-card-muted:#5c4650;
}

/* Leistungsumfang: klare Farblogik wie auf Dienstleistungen */
.wedding1792-scope-included{
    border-color:var(--w1802-green-line);
    background:
        radial-gradient(circle at 0 0,rgba(82,183,136,.22),transparent 42%),
        linear-gradient(150deg,#1e3c31 0%,#20352f 48%,#2b242b 100%);
}
.wedding1792-scope-extra{
    border-color:var(--w1802-orange-line);
    background:
        radial-gradient(circle at 0 0,rgba(241,162,74,.22),transparent 42%),
        linear-gradient(150deg,#472f20 0%,#3b2b25 48%,#30232a 100%);
}
.wedding1792-scope-included .wedding1792-scope-title>span{
    color:#dcffec;
    border-color:rgba(104,211,159,.44);
    background:rgba(82,183,136,.18);
    box-shadow:0 0 0 5px rgba(82,183,136,.06);
}
.wedding1792-scope-extra .wedding1792-scope-title>span{
    color:#fff1d7;
    border-color:rgba(241,162,74,.48);
    background:rgba(241,162,74,.18);
    box-shadow:0 0 0 5px rgba(241,162,74,.06);
}
.wedding1792-scope-included .wedding1792-scope-title .eyebrow{color:#8be0b5}
.wedding1792-scope-extra .wedding1792-scope-title .eyebrow{color:#ffc275}
.wedding1792-scope-included .wedding1792-scope-card li::before,
.wedding1792-scope-included li::before{background:var(--w1802-green)}
.wedding1792-scope-extra .wedding1792-scope-card li::before,
.wedding1792-scope-extra li::before{background:var(--w1802-orange)}
.wedding1792-scope-card li{color:#f4e9eb;font-size:.98rem;line-height:1.64}
.wedding1792-scope-title h3{font-size:1.3rem}

/* Regional: gleicher Abschnittshintergrund wie Leistungsumfang */
.wedding1801-local{
    background:
        radial-gradient(circle at 12% 0%,rgba(232,176,189,.15),transparent 31%),
        radial-gradient(circle at 88% 100%,rgba(242,211,160,.08),transparent 30%),
        linear-gradient(145deg,#291a22,#1c1419 72%);
    color:#fff6f1;
}
.wedding1801-local .eyebrow{color:#f0b8c4}
.wedding1801-local-head h2{
    color:#fff8f4;
    background:linear-gradient(100deg,#fff8f4 8%,#f2d3a0 52%,#e8b0bd 94%);
    -webkit-background-clip:text;
    background-clip:text;
    -webkit-text-fill-color:transparent;
}
.wedding1801-local-head>p{color:#e6d8dc;font-size:1.03rem;line-height:1.75}
.wedding1801-local-grid article{
    border-color:rgba(242,211,160,.18);
    background:
        radial-gradient(circle at 100% 0%,rgba(232,176,189,.14),transparent 38%),
        linear-gradient(145deg,#fffaf7,#f8ece9);
    box-shadow:0 18px 42px rgba(0,0,0,.16);
}
.wedding1801-local-grid article>span{color:#8f465d}
.wedding1801-local-grid h3{color:#392830}
.wedding1801-local-grid p{color:#513b45;font-size:.98rem;line-height:1.72}
.wedding1801-local-links a{
    border-color:rgba(242,211,160,.22);
    background:rgba(255,250,247,.95);
    color:#5a3444;
    box-shadow:0 8px 20px rgba(0,0,0,.08);
}
.wedding1801-local-links a:hover{background:#fff;border-color:rgba(232,176,189,.5)}

/* Helle Karten: weniger blasses Grau, mehr Kontrast */
.wedding1792-moment-grid p,
.wedding1792-budget-copy>p,
.wedding1792-budget-facts small,
.wedding1792-faq-list p{
    color:var(--w1802-card-text);
}
.wedding1792-moments .wedding1792-section-heading>p,
.wedding1792-faq-intro>p:not(.eyebrow){
    color:#5a434e;
}
.wedding1792-budget-facts span{color:#674a57}
.wedding1792-budget-facts strong{color:#703d52}
.wedding1792-faq-list summary{color:#35242d}
.wedding1792-moment-grid h3{color:#34232c}

/* Ausgewählte Überschriften mit subtiler Hochzeits-Farbigkeit */
.wedding1792-moments .wedding1792-section-heading h2,
.wedding1792-budget-copy h2,
.wedding1792-faq-intro h2{
    background:linear-gradient(105deg,#3a2731 4%,#8e5268 58%,#b77a62 100%);
    -webkit-background-clip:text;
    background-clip:text;
    -webkit-text-fill-color:transparent;
}

/* Mobile: Kontrast und Lesbarkeit beibehalten */
@media(max-width:680px){
    .wedding1792-scope-card li,
    .wedding1801-local-grid p,
    .wedding1792-moment-grid p,
    .wedding1792-budget-copy>p,
    .wedding1792-faq-list p{font-size:.96rem}
}

/* ============================================================
   V18.03 – Hochzeit: FAQ-Button sichtbar + lebendigere Farbwelt
   ============================================================ */

/* FAQ CTA: klarer Kontrast statt Ton-in-Ton */
.wedding1792-faq-intro .button-secondary{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:50px;
    padding:0 20px;
    border:1px solid rgba(255,255,255,.24);
    border-radius:14px;
    background:linear-gradient(115deg,#8f5067 0%,#c27a8d 48%,#d8a45f 100%);
    color:#fffaf7 !important;
    -webkit-text-fill-color:#fffaf7;
    font-weight:900;
    box-shadow:0 12px 28px rgba(120,65,88,.22),0 0 0 4px rgba(232,176,189,.07);
    text-shadow:0 1px 2px rgba(45,24,34,.22);
    transition:transform .2s ease,box-shadow .2s ease,filter .2s ease;
}
.wedding1792-faq-intro .button-secondary:hover,
.wedding1792-faq-intro .button-secondary:focus-visible{
    background:linear-gradient(115deg,#a35b75 0%,#d18498 48%,#e0ad69 100%);
    color:#fff !important;
    -webkit-text-fill-color:#fff;
    border-color:rgba(255,255,255,.42);
    box-shadow:0 16px 36px rgba(120,65,88,.30),0 0 0 5px rgba(232,176,189,.10);
    transform:translateY(-2px);
    filter:saturate(1.08);
}

/* Hero etwas strahlender, ohne Layoutänderung */
.wedding1792-hero{
    background:
        radial-gradient(circle at 15% 18%,rgba(232,176,189,.20),transparent 30%),
        radial-gradient(circle at 84% 22%,rgba(242,211,160,.13),transparent 27%),
        linear-gradient(145deg,#26171f 0%,#1b1318 55%,#120e11 100%);
}
.wedding1792-hero-visual{
    box-shadow:0 28px 70px rgba(33,18,27,.35),0 0 0 1px rgba(242,211,160,.14);
}

/* Helle Abschnitte: wärmer und sichtbarer statt grau/weiß */
.wedding1792-moments,
.wedding1792-budget,
.wedding1792-faq{
    background:
        radial-gradient(circle at 8% 4%,rgba(238,170,190,.20),transparent 28%),
        radial-gradient(circle at 92% 96%,rgba(245,201,126,.16),transparent 30%),
        linear-gradient(180deg,#fff9f5 0%,#f8ece9 54%,#f7e7e3 100%);
}

/* Karten deutlicher vom Hintergrund abheben */
.wedding1792-moment-grid article,
.wedding1792-budget-card,
.wedding1792-faq-list details{
    border-color:rgba(168,92,115,.20);
    box-shadow:0 16px 38px rgba(92,48,67,.09),inset 0 1px 0 rgba(255,255,255,.70);
}
.wedding1792-moment-grid article{
    background:
        radial-gradient(circle at 100% 0%,rgba(232,176,189,.24),transparent 42%),
        radial-gradient(circle at 0 100%,rgba(242,211,160,.12),transparent 38%),
        linear-gradient(145deg,#fffdfa,#f9eeec);
}
.wedding1792-faq-list details{
    background:
        linear-gradient(135deg,rgba(255,255,255,.94),rgba(250,236,235,.96));
}
.wedding1792-faq-list details[open]{
    border-color:rgba(192,105,132,.42);
    background:
        radial-gradient(circle at 100% 0%,rgba(232,176,189,.18),transparent 34%),
        linear-gradient(135deg,#fffaf7,#f6e4e6);
    box-shadow:0 18px 40px rgba(92,48,67,.12),0 0 0 3px rgba(232,176,189,.06);
}

/* Textkontrast in hellen Boxen weiter erhöhen */
.wedding1792-moment-grid p,
.wedding1792-budget-copy>p,
.wedding1792-budget-facts small,
.wedding1792-faq-list p,
.wedding1792-faq-intro>p:not(.eyebrow){
    color:#49353f;
}
.wedding1792-faq-list summary{color:#2e1d26}
.wedding1792-faq-list p a{color:#85425a}

/* Leistungsumfang: Farben stärker sichtbar */
.wedding1792-scope{
    background:
        radial-gradient(circle at 9% 0%,rgba(232,176,189,.22),transparent 31%),
        radial-gradient(circle at 92% 100%,rgba(242,211,160,.14),transparent 31%),
        linear-gradient(145deg,#321d28 0%,#23171e 62%,#181116 100%);
}
.wedding1792-scope-included{
    border-color:rgba(95,214,156,.46);
    box-shadow:0 18px 46px rgba(0,0,0,.20),0 0 34px rgba(82,183,136,.08);
}
.wedding1792-scope-extra{
    border-color:rgba(241,162,74,.48);
    box-shadow:0 18px 46px rgba(0,0,0,.20),0 0 34px rgba(241,162,74,.07);
}

/* Budget-Fakten mit etwas mehr Farbtiefe */
.wedding1792-budget-facts{
    background:
        radial-gradient(circle at 84% 10%,rgba(232,176,189,.30),transparent 35%),
        radial-gradient(circle at 18% 92%,rgba(242,211,160,.28),transparent 38%),
        linear-gradient(145deg,#f7e5e7,#f7eadb);
}
.wedding1792-budget-facts div{
    border-color:rgba(143,80,103,.18);
    background:linear-gradient(135deg,rgba(255,251,248,.86),rgba(255,244,242,.76));
}

/* Regional: gleiche dunkle Familie, etwas leuchtender */
.wedding1801-local{
    background:
        radial-gradient(circle at 10% 0%,rgba(232,176,189,.21),transparent 31%),
        radial-gradient(circle at 90% 100%,rgba(242,211,160,.13),transparent 30%),
        linear-gradient(145deg,#321d28 0%,#24171f 62%,#181116 100%);
}
.wedding1801-local-grid article{
    border-color:rgba(232,176,189,.24);
    box-shadow:0 18px 46px rgba(0,0,0,.18),inset 0 1px 0 rgba(255,255,255,.60);
}
.wedding1801-local-links a{
    border-color:rgba(184,111,130,.24);
    background:linear-gradient(135deg,#fffaf7,#f8ebe9);
}

/* Abschluss etwas festlicher */
.wedding1792-final{
    background:
        radial-gradient(circle at 15% 0%,rgba(232,176,189,.15),transparent 30%),
        linear-gradient(180deg,#2b1923 0%,#171116 100%);
}
.wedding1795-final-card{
    border-color:rgba(242,211,160,.24);
    box-shadow:0 22px 60px rgba(0,0,0,.24),0 0 38px rgba(232,176,189,.06);
}

/* ausgewählte Headings: Verlauf etwas kräftiger und klarer */
.wedding1792-moments .wedding1792-section-heading h2,
.wedding1792-budget-copy h2,
.wedding1792-faq-intro h2{
    background:linear-gradient(105deg,#35222d 0%,#9f5570 54%,#c78a59 100%);
    -webkit-background-clip:text;
    background-clip:text;
    -webkit-text-fill-color:transparent;
}

@media(max-width:680px){
    .wedding1792-faq-intro .button-secondary{width:100%;min-height:52px}
}

/* ============================================================
   V18.04 – Hochzeitsseite: FAQ-CTA finaler Kontrast-Fix
   Die globale .button-secondary-Regel nutzt !important.
   Deshalb erhält nur der FAQ-Button auf der Hochzeitsseite
   eine eigene, höher priorisierte Gestaltung.
   ============================================================ */
.wedding1792-faq-intro .wedding-faq-cta,
.wedding1792-faq-intro a.wedding-faq-cta{
    border:1px solid #f4d19a !important;
    background:linear-gradient(118deg,#7c3558 0%,#b9577b 42%,#e19a68 72%,#f2c979 100%) !important;
    color:#ffffff !important;
    -webkit-text-fill-color:#ffffff !important;
    text-shadow:0 1px 2px rgba(47,17,32,.35) !important;
    box-shadow:0 14px 34px rgba(126,53,87,.30),0 0 0 4px rgba(241,190,145,.10) !important;
    opacity:1 !important;
}
.wedding1792-faq-intro .wedding-faq-cta:hover,
.wedding1792-faq-intro .wedding-faq-cta:focus-visible{
    border-color:#ffe4b4 !important;
    background:linear-gradient(118deg,#913d66 0%,#cd6488 42%,#eda777 72%,#ffd58c 100%) !important;
    color:#ffffff !important;
    -webkit-text-fill-color:#ffffff !important;
    box-shadow:0 18px 42px rgba(126,53,87,.38),0 0 0 5px rgba(241,190,145,.14) !important;
}

/* ============================================================
   V18.05 – Geburtstagsfeuerwerk
   Gleicher Aufbau wie Hochzeitsseite, eigene festliche Farbwelt
   ============================================================ */
body.page-geburtstagsfeuerwerk{
    --birthday-night:#111326;
    --birthday-indigo:#24214a;
    --birthday-violet:#7456e8;
    --birthday-magenta:#d75b9c;
    --birthday-coral:#f07a75;
    --birthday-cyan:#53d3cf;
    --birthday-gold:#f3c565;
    --birthday-ink:#28233b;
    --birthday-text:#514b65;
    --birthday-soft:#f7f3ff;
}

/* Hero */
body.page-geburtstagsfeuerwerk .wedding1792-hero{
    background:
        radial-gradient(circle at 12% 16%,rgba(116,86,232,.30),transparent 31%),
        radial-gradient(circle at 88% 18%,rgba(215,91,156,.23),transparent 29%),
        radial-gradient(circle at 72% 88%,rgba(83,211,207,.11),transparent 28%),
        linear-gradient(145deg,#17162f 0%,#111326 56%,#0b0d19 100%);
}
body.page-geburtstagsfeuerwerk .wedding1792-glow-a{background:rgba(116,86,232,.20)}
body.page-geburtstagsfeuerwerk .wedding1792-glow-b{background:rgba(215,91,156,.16)}
body.page-geburtstagsfeuerwerk .wedding1792-hero-copy .eyebrow{color:#9d8cff}
body.page-geburtstagsfeuerwerk .wedding1792-hero-copy h1 span{
    background:linear-gradient(100deg,#9f8cff 0%,#ec70ad 48%,#f3c565 100%);
    -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;
}
body.page-geburtstagsfeuerwerk .wedding1792-hero-copy>p{color:#d9d6e9}
body.page-geburtstagsfeuerwerk .wedding1792-hero-tags span{
    border-color:rgba(143,119,246,.20);
    background:rgba(116,86,232,.08);
    color:#dcd8ec;
}
body.page-geburtstagsfeuerwerk .wedding1792-hero-tags strong{color:#f3c565}
body.page-geburtstagsfeuerwerk .wedding1792-hero-visual{
    box-shadow:0 28px 74px rgba(6,7,20,.46),0 0 0 1px rgba(141,113,255,.20);
}
body.page-geburtstagsfeuerwerk .wedding1792-hero-panel{
    background:linear-gradient(135deg,rgba(27,25,61,.96),rgba(93,45,102,.94));
    border-color:rgba(243,197,101,.22);
}
body.page-geburtstagsfeuerwerk .wedding1792-hero-panel span{color:#73e0dc}

/* Primäre Buttons im Geburtstagsbereich */
body.page-geburtstagsfeuerwerk .wedding1792-hero .button-primary,
body.page-geburtstagsfeuerwerk .birthday1805-region .button-primary,
body.page-geburtstagsfeuerwerk .birthday1805-option-request .button{
    background:linear-gradient(120deg,#7456e8 0%,#b85ed0 48%,#e66f96 100%) !important;
    border-color:rgba(255,255,255,.20) !important;
    color:#fff !important;
    box-shadow:0 13px 34px rgba(102,75,216,.30) !important;
}
body.page-geburtstagsfeuerwerk .wedding1792-hero .button-primary:hover,
body.page-geburtstagsfeuerwerk .birthday1805-region .button-primary:hover,
body.page-geburtstagsfeuerwerk .birthday1805-option-request .button:hover{
    background:linear-gradient(120deg,#8467ef 0%,#c96cda 48%,#f17da2 100%) !important;
}
body.page-geburtstagsfeuerwerk .wedding1792-hero .button-secondary,
body.page-geburtstagsfeuerwerk .birthday1805-budget-cta{
    border-color:rgba(83,211,207,.48) !important;
    background:rgba(83,211,207,.10) !important;
    color:#a9f2ef !important;
}

/* Helle Abschnitte */
body.page-geburtstagsfeuerwerk .wedding1792-moments,
body.page-geburtstagsfeuerwerk .wedding1792-budget,
body.page-geburtstagsfeuerwerk .wedding1792-faq{
    background:
        radial-gradient(circle at 7% 4%,rgba(116,86,232,.14),transparent 28%),
        radial-gradient(circle at 94% 92%,rgba(215,91,156,.13),transparent 30%),
        linear-gradient(180deg,#fbf9ff 0%,#f4f0fb 55%,#f8f4f8 100%);
}
body.page-geburtstagsfeuerwerk .wedding1792-moments .eyebrow,
body.page-geburtstagsfeuerwerk .wedding1792-budget .eyebrow,
body.page-geburtstagsfeuerwerk .wedding1792-faq .eyebrow{color:#7353c7}
body.page-geburtstagsfeuerwerk .wedding1792-moments .wedding1792-section-heading h2,
body.page-geburtstagsfeuerwerk .wedding1792-budget-copy h2,
body.page-geburtstagsfeuerwerk .wedding1792-faq-intro h2{
    background:linear-gradient(105deg,#27233e 0%,#684fc6 45%,#cc568f 78%,#bd7b32 100%);
    -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;
}
body.page-geburtstagsfeuerwerk .wedding1792-moments .wedding1792-section-heading>p,
body.page-geburtstagsfeuerwerk .wedding1792-faq-intro>p:not(.eyebrow),
body.page-geburtstagsfeuerwerk .wedding1792-moment-grid p,
body.page-geburtstagsfeuerwerk .wedding1792-budget-copy>p,
body.page-geburtstagsfeuerwerk .wedding1792-budget-facts small,
body.page-geburtstagsfeuerwerk .wedding1792-faq-list p{color:#514b65}
body.page-geburtstagsfeuerwerk .wedding1792-moment-grid h3,
body.page-geburtstagsfeuerwerk .wedding1792-faq-list summary{color:#28233b}
body.page-geburtstagsfeuerwerk .wedding1792-moment-grid article{
    border-color:rgba(116,86,232,.18);
    background:
        radial-gradient(circle at 100% 0%,rgba(215,91,156,.16),transparent 40%),
        radial-gradient(circle at 0 100%,rgba(83,211,207,.10),transparent 39%),
        linear-gradient(145deg,#fff,#f6f1ff);
    box-shadow:0 17px 40px rgba(74,56,135,.09),inset 0 1px 0 rgba(255,255,255,.85);
}
body.page-geburtstagsfeuerwerk .wedding1792-no{color:#7255d4}
body.page-geburtstagsfeuerwerk .wedding1792-icon{
    background:linear-gradient(135deg,rgba(116,86,232,.14),rgba(215,91,156,.13));
    color:#c05392;
}

/* Leistungsumfang */
body.page-geburtstagsfeuerwerk .wedding1792-scope{
    background:
        radial-gradient(circle at 8% 0%,rgba(116,86,232,.26),transparent 31%),
        radial-gradient(circle at 93% 100%,rgba(215,91,156,.16),transparent 31%),
        linear-gradient(145deg,#1d1a3c 0%,#14152d 62%,#0e1020 100%);
}
body.page-geburtstagsfeuerwerk .wedding1792-section-heading-light .eyebrow{color:#9b8bff}
body.page-geburtstagsfeuerwerk .wedding1792-section-heading-light h2{color:#fff}
body.page-geburtstagsfeuerwerk .wedding1792-section-heading-light>p{color:#d7d3e8}
body.page-geburtstagsfeuerwerk .wedding1792-scope-card{
    background:linear-gradient(145deg,rgba(255,255,255,.075),rgba(255,255,255,.035));
}
body.page-geburtstagsfeuerwerk .wedding1792-scope-included{border-color:rgba(83,211,153,.48)}
body.page-geburtstagsfeuerwerk .wedding1792-scope-extra{border-color:rgba(242,166,77,.52)}
body.page-geburtstagsfeuerwerk .wedding1792-scope-note{
    border-color:rgba(83,211,207,.18);
    background:rgba(83,211,207,.065);
}
body.page-geburtstagsfeuerwerk .wedding1792-scope-note>span{color:#6ee3df}

/* Budget */
body.page-geburtstagsfeuerwerk .wedding1792-budget-card{
    border-color:rgba(116,86,232,.18);
    background:linear-gradient(145deg,#fff,#f7f2ff);
    box-shadow:0 18px 44px rgba(71,51,129,.09);
}
body.page-geburtstagsfeuerwerk .wedding1792-budget-facts{
    background:
        radial-gradient(circle at 84% 10%,rgba(215,91,156,.22),transparent 35%),
        radial-gradient(circle at 16% 92%,rgba(83,211,207,.18),transparent 38%),
        linear-gradient(145deg,#eee9ff,#f9eaf3);
}
body.page-geburtstagsfeuerwerk .wedding1792-budget-facts div{
    border-color:rgba(116,86,232,.16);
    background:rgba(255,255,255,.72);
}
body.page-geburtstagsfeuerwerk .wedding1792-budget-facts span{color:#5a5073}
body.page-geburtstagsfeuerwerk .wedding1792-budget-facts strong{color:#694ec3}

/* Regionaler SEO-Block */
body.page-geburtstagsfeuerwerk .wedding1801-local{
    background:
        radial-gradient(circle at 10% 0%,rgba(116,86,232,.27),transparent 31%),
        radial-gradient(circle at 90% 100%,rgba(83,211,207,.11),transparent 30%),
        linear-gradient(145deg,#1d1a3c 0%,#14152d 62%,#0e1020 100%);
}
body.page-geburtstagsfeuerwerk .wedding1801-local .eyebrow{color:#9d8cff}
body.page-geburtstagsfeuerwerk .wedding1801-local-head h2{
    background:linear-gradient(100deg,#fff 8%,#9f8cff 50%,#f078aa 78%,#f3c565 100%);
    -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;
}
body.page-geburtstagsfeuerwerk .wedding1801-local-head>p{color:#d6d3e5}
body.page-geburtstagsfeuerwerk .wedding1801-local-grid article{
    border-color:rgba(116,86,232,.22);
    background:
        radial-gradient(circle at 100% 0%,rgba(215,91,156,.14),transparent 38%),
        linear-gradient(145deg,#fcfbff,#f2edff);
    box-shadow:0 18px 44px rgba(0,0,0,.18);
}
body.page-geburtstagsfeuerwerk .wedding1801-local-grid article>span{color:#7659d0}
body.page-geburtstagsfeuerwerk .wedding1801-local-grid h3{color:#302945}
body.page-geburtstagsfeuerwerk .wedding1801-local-grid p{color:#554e6a}
body.page-geburtstagsfeuerwerk .wedding1801-local-links a{
    border-color:rgba(116,86,232,.22);
    background:linear-gradient(135deg,#fff,#f2edff);
    color:#503a9c;
}
body.page-geburtstagsfeuerwerk .wedding1801-local-links a:hover{border-color:rgba(215,91,156,.42);background:#fff}

/* Einsatzgebiet */
body.page-geburtstagsfeuerwerk .wedding1792-region{
    background:
        radial-gradient(circle at 10% 0%,rgba(116,86,232,.17),transparent 30%),
        linear-gradient(180deg,#12142a,#0c0e1c);
}
body.page-geburtstagsfeuerwerk .wedding1795-region-card{
    border-color:rgba(116,86,232,.23);
    background:linear-gradient(145deg,rgba(42,39,82,.95),rgba(20,22,47,.96));
}
body.page-geburtstagsfeuerwerk .wedding1795-region-copy .eyebrow,
body.page-geburtstagsfeuerwerk .wedding1795-region-kicker{color:#9e8dff}
body.page-geburtstagsfeuerwerk .wedding1795-region-tags span{
    border-color:rgba(83,211,207,.20);
    background:rgba(83,211,207,.08);
    color:#b7eeeb;
}
body.page-geburtstagsfeuerwerk .wedding1795-region-mark{
    background:linear-gradient(135deg,rgba(116,86,232,.18),rgba(215,91,156,.18));
    color:#f3c565;
}
body.page-geburtstagsfeuerwerk .birthday1805-region-secondary{
    border-color:rgba(83,211,207,.45) !important;
    background:rgba(83,211,207,.08) !important;
    color:#b6f1ed !important;
}

/* FAQ */
body.page-geburtstagsfeuerwerk .wedding1792-faq-list details{
    border-color:rgba(116,86,232,.17);
    background:linear-gradient(135deg,rgba(255,255,255,.96),rgba(245,240,255,.97));
}
body.page-geburtstagsfeuerwerk .wedding1792-faq-list details[open]{
    border-color:rgba(215,91,156,.35);
    background:
        radial-gradient(circle at 100% 0%,rgba(215,91,156,.13),transparent 34%),
        linear-gradient(135deg,#fff,#f3edff);
}
body.page-geburtstagsfeuerwerk .wedding1794-faq-number{color:#7558d0}
body.page-geburtstagsfeuerwerk .wedding1792-faq-list p a{color:#7255c8}
body.page-geburtstagsfeuerwerk .wedding1792-faq-intro .birthday-faq-cta{
    border:1px solid #9c8af5 !important;
    background:linear-gradient(118deg,#563fc0 0%,#805ce2 38%,#c75fa8 70%,#ef9a74 100%) !important;
    color:#fff !important;
    -webkit-text-fill-color:#fff !important;
    box-shadow:0 14px 34px rgba(92,67,194,.28),0 0 0 4px rgba(116,86,232,.08) !important;
}
body.page-geburtstagsfeuerwerk .wedding1792-faq-intro .birthday-faq-cta:hover,
body.page-geburtstagsfeuerwerk .wedding1792-faq-intro .birthday-faq-cta:focus-visible{
    border-color:#c4b8ff !important;
    background:linear-gradient(118deg,#664ee0 0%,#9470ef 38%,#da6ab7 70%,#f4aa82 100%) !important;
}

/* Abschluss */
body.page-geburtstagsfeuerwerk .wedding1792-final{
    background:
        radial-gradient(circle at 15% 0%,rgba(116,86,232,.19),transparent 30%),
        radial-gradient(circle at 88% 100%,rgba(215,91,156,.10),transparent 28%),
        linear-gradient(180deg,#17162f 0%,#0d0f1f 100%);
}
body.page-geburtstagsfeuerwerk .wedding1795-final-card{
    border-color:rgba(116,86,232,.25);
    background:linear-gradient(145deg,rgba(38,35,77,.95),rgba(18,20,42,.97));
    box-shadow:0 22px 60px rgba(0,0,0,.28),0 0 42px rgba(116,86,232,.08);
}
body.page-geburtstagsfeuerwerk .wedding1795-final-copy .eyebrow{color:#a090ff}
body.page-geburtstagsfeuerwerk .birthday1805-option-advice{
    border-color:rgba(83,211,207,.22);
    background:linear-gradient(145deg,rgba(83,211,207,.08),rgba(83,211,207,.025));
}
body.page-geburtstagsfeuerwerk .birthday1805-option-advice .button{
    border-color:rgba(83,211,207,.48) !important;
    background:linear-gradient(120deg,#2e9d9b,#54d0ca) !important;
    color:#071c1b !important;
}
body.page-geburtstagsfeuerwerk .birthday1805-option-request{
    border-color:rgba(215,91,156,.25);
    background:linear-gradient(145deg,rgba(116,86,232,.11),rgba(215,91,156,.06));
}
body.page-geburtstagsfeuerwerk .wedding1795-option-kicker{color:#f3c565}

@media(max-width:680px){
    body.page-geburtstagsfeuerwerk .wedding1792-faq-intro .birthday-faq-cta{width:100%;min-height:52px}
}

/* ============================================================
   V18.06 – Einheitliche Unterseiten: Event, Firma, Großfeuerwerk, Laser
   Gleicher Aufbau wie Hochzeit/Geburtstag, eigene Farbidentitäten.
   ============================================================ */
body.page-events{
    --occasion-accent:#4fd8d1;--occasion-accent2:#72e9bc;--occasion-accent3:#e9c565;
    --occasion-deep:#0b2529;--occasion-deep2:#0d1820;--occasion-light:#f0fbf8;--occasion-light2:#e6f5f3;
    --occasion-ink:#17383b;--occasion-muted:#4b696c;
}
body.page-firmenfeuerwerk{
    --occasion-accent:#69adff;--occasion-accent2:#78d4f2;--occasion-accent3:#e7bb68;
    --occasion-deep:#101d38;--occasion-deep2:#0b1527;--occasion-light:#f2f7fd;--occasion-light2:#e7f0fa;
    --occasion-ink:#1c2d4b;--occasion-muted:#51647f;
}
body.page-mega-events{
    --occasion-accent:#ff6b50;--occasion-accent2:#ffad4a;--occasion-accent3:#f2d16c;
    --occasion-deep:#331716;--occasion-deep2:#1d1112;--occasion-light:#fff5ee;--occasion-light2:#fbe8df;
    --occasion-ink:#402721;--occasion-muted:#72534b;
}
body.page-lasershow{
    --occasion-accent:#a47cff;--occasion-accent2:#45d6e8;--occasion-accent3:#ef64d7;
    --occasion-deep:#17132f;--occasion-deep2:#0c1728;--occasion-light:#f5f2ff;--occasion-light2:#eaf8fb;
    --occasion-ink:#2f2852;--occasion-muted:#5d567b;
}

:is(body.page-events,body.page-firmenfeuerwerk,body.page-mega-events,body.page-lasershow) .wedding1792-hero{
    background:
        radial-gradient(circle at 14% 18%,color-mix(in srgb,var(--occasion-accent) 24%,transparent),transparent 31%),
        radial-gradient(circle at 86% 22%,color-mix(in srgb,var(--occasion-accent2) 18%,transparent),transparent 28%),
        linear-gradient(145deg,var(--occasion-deep) 0%,var(--occasion-deep2) 64%,#090b10 100%);
}
:is(body.page-events,body.page-firmenfeuerwerk,body.page-mega-events,body.page-lasershow) .wedding1792-glow-a{background:color-mix(in srgb,var(--occasion-accent) 24%,transparent)}
:is(body.page-events,body.page-firmenfeuerwerk,body.page-mega-events,body.page-lasershow) .wedding1792-glow-b{background:color-mix(in srgb,var(--occasion-accent2) 18%,transparent)}
:is(body.page-events,body.page-firmenfeuerwerk,body.page-mega-events,body.page-lasershow) .wedding1792-hero-copy .eyebrow{color:color-mix(in srgb,var(--occasion-accent) 82%,white 18%)}
:is(body.page-events,body.page-firmenfeuerwerk,body.page-mega-events,body.page-lasershow) .wedding1792-hero-copy h1 span{
    background:linear-gradient(100deg,var(--occasion-accent),var(--occasion-accent2) 54%,var(--occasion-accent3));
    -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;
}
:is(body.page-events,body.page-firmenfeuerwerk,body.page-mega-events,body.page-lasershow) .wedding1792-hero-copy>p{color:#dbe3e4}
:is(body.page-events,body.page-firmenfeuerwerk,body.page-mega-events,body.page-lasershow) .wedding1792-hero-tags span{
    border-color:color-mix(in srgb,var(--occasion-accent) 24%,transparent);
    background:color-mix(in srgb,var(--occasion-accent) 8%,transparent);color:#dfe8e9;
}
:is(body.page-events,body.page-firmenfeuerwerk,body.page-mega-events,body.page-lasershow) .wedding1792-hero-tags strong{color:var(--occasion-accent3)}
:is(body.page-events,body.page-firmenfeuerwerk,body.page-mega-events,body.page-lasershow) .wedding1792-hero-visual{
    border-color:color-mix(in srgb,var(--occasion-accent) 28%,transparent);
    box-shadow:0 28px 70px rgba(0,0,0,.34),0 0 0 1px color-mix(in srgb,var(--occasion-accent2) 10%,transparent);
}
:is(body.page-events,body.page-firmenfeuerwerk,body.page-mega-events,body.page-lasershow) .wedding1792-hero-panel{
    border-color:color-mix(in srgb,var(--occasion-accent) 25%,transparent);
    background:color-mix(in srgb,var(--occasion-deep2) 88%,transparent);
}
:is(body.page-events,body.page-firmenfeuerwerk,body.page-mega-events,body.page-lasershow) .wedding1792-hero-panel span{color:var(--occasion-accent2)}

:is(body.page-events,body.page-firmenfeuerwerk,body.page-mega-events,body.page-lasershow) .wedding1792-hero .button-primary,
:is(body.page-events,body.page-firmenfeuerwerk,body.page-mega-events,body.page-lasershow) .occasion1806-region .button-primary,
:is(body.page-events,body.page-firmenfeuerwerk,body.page-mega-events,body.page-lasershow) .occasion1806-option-request .button{
    border-color:color-mix(in srgb,var(--occasion-accent) 72%,white 10%) !important;
    background:linear-gradient(120deg,var(--occasion-accent),var(--occasion-accent2)) !important;
    color:#091215 !important;-webkit-text-fill-color:#091215 !important;
    box-shadow:0 12px 30px color-mix(in srgb,var(--occasion-accent) 24%,transparent) !important;
}
body.page-mega-events .wedding1792-hero .button-primary,
body.page-mega-events .occasion1806-region .button-primary,
body.page-mega-events .occasion1806-option-request .button{color:#25100b !important;-webkit-text-fill-color:#25100b !important}
body.page-lasershow .wedding1792-hero .button-primary,
body.page-lasershow .occasion1806-region .button-primary,
body.page-lasershow .occasion1806-option-request .button{color:#160f29 !important;-webkit-text-fill-color:#160f29 !important}

:is(body.page-events,body.page-firmenfeuerwerk,body.page-mega-events,body.page-lasershow) .wedding1792-hero .button-secondary,
:is(body.page-events,body.page-firmenfeuerwerk,body.page-mega-events,body.page-lasershow) .occasion1806-budget-cta{
    border-color:color-mix(in srgb,var(--occasion-accent3) 48%,transparent) !important;
    background:linear-gradient(125deg,color-mix(in srgb,var(--occasion-accent3) 16%,#fff),color-mix(in srgb,var(--occasion-accent) 10%,#fff)) !important;
    color:var(--occasion-ink) !important;-webkit-text-fill-color:var(--occasion-ink) !important;
}

:is(body.page-events,body.page-firmenfeuerwerk,body.page-mega-events,body.page-lasershow) .wedding1792-moments,
:is(body.page-events,body.page-firmenfeuerwerk,body.page-mega-events,body.page-lasershow) .wedding1792-budget,
:is(body.page-events,body.page-firmenfeuerwerk,body.page-mega-events,body.page-lasershow) .wedding1792-faq{
    background:
        radial-gradient(circle at 8% 5%,color-mix(in srgb,var(--occasion-accent) 14%,transparent),transparent 28%),
        radial-gradient(circle at 92% 95%,color-mix(in srgb,var(--occasion-accent3) 12%,transparent),transparent 30%),
        linear-gradient(180deg,var(--occasion-light),var(--occasion-light2));
}
:is(body.page-events,body.page-firmenfeuerwerk,body.page-mega-events,body.page-lasershow) .wedding1792-moments .eyebrow,
:is(body.page-events,body.page-firmenfeuerwerk,body.page-mega-events,body.page-lasershow) .wedding1792-budget .eyebrow,
:is(body.page-events,body.page-firmenfeuerwerk,body.page-mega-events,body.page-lasershow) .wedding1792-faq .eyebrow{color:color-mix(in srgb,var(--occasion-accent) 68%,#282236 32%)}
:is(body.page-events,body.page-firmenfeuerwerk,body.page-mega-events,body.page-lasershow) .wedding1792-moments .wedding1792-section-heading h2,
:is(body.page-events,body.page-firmenfeuerwerk,body.page-mega-events,body.page-lasershow) .wedding1792-budget-copy h2,
:is(body.page-events,body.page-firmenfeuerwerk,body.page-mega-events,body.page-lasershow) .wedding1792-faq-intro h2{
    background:linear-gradient(105deg,var(--occasion-ink) 0%,color-mix(in srgb,var(--occasion-accent) 74%,var(--occasion-ink)) 57%,color-mix(in srgb,var(--occasion-accent3) 72%,var(--occasion-ink)) 100%);
    -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;
}
:is(body.page-events,body.page-firmenfeuerwerk,body.page-mega-events,body.page-lasershow) .wedding1792-moments .wedding1792-section-heading>p,
:is(body.page-events,body.page-firmenfeuerwerk,body.page-mega-events,body.page-lasershow) .wedding1792-faq-intro>p:not(.eyebrow),
:is(body.page-events,body.page-firmenfeuerwerk,body.page-mega-events,body.page-lasershow) .wedding1792-moment-grid p,
:is(body.page-events,body.page-firmenfeuerwerk,body.page-mega-events,body.page-lasershow) .wedding1792-budget-copy>p,
:is(body.page-events,body.page-firmenfeuerwerk,body.page-mega-events,body.page-lasershow) .wedding1792-budget-facts small,
:is(body.page-events,body.page-firmenfeuerwerk,body.page-mega-events,body.page-lasershow) .wedding1792-faq-list p{color:var(--occasion-muted);font-size:.98rem;line-height:1.68}
:is(body.page-events,body.page-firmenfeuerwerk,body.page-mega-events,body.page-lasershow) .wedding1792-moment-grid h3,
:is(body.page-events,body.page-firmenfeuerwerk,body.page-mega-events,body.page-lasershow) .wedding1792-faq-list summary{color:var(--occasion-ink)}
:is(body.page-events,body.page-firmenfeuerwerk,body.page-mega-events,body.page-lasershow) .wedding1792-moment-grid article{
    border-color:color-mix(in srgb,var(--occasion-accent) 24%,transparent);
    background:radial-gradient(circle at 100% 0%,color-mix(in srgb,var(--occasion-accent) 18%,transparent),transparent 42%),linear-gradient(145deg,#fff,color-mix(in srgb,var(--occasion-light) 86%,#fff));
    box-shadow:0 16px 38px color-mix(in srgb,var(--occasion-ink) 10%,transparent),inset 0 1px 0 rgba(255,255,255,.8);
}
:is(body.page-events,body.page-firmenfeuerwerk,body.page-mega-events,body.page-lasershow) .wedding1792-no{color:color-mix(in srgb,var(--occasion-accent) 82%,var(--occasion-ink))}
:is(body.page-events,body.page-firmenfeuerwerk,body.page-mega-events,body.page-lasershow) .wedding1792-icon{
    border-color:color-mix(in srgb,var(--occasion-accent) 35%,transparent);background:color-mix(in srgb,var(--occasion-accent) 12%,#fff);color:color-mix(in srgb,var(--occasion-accent) 82%,var(--occasion-ink));
}

:is(body.page-events,body.page-firmenfeuerwerk,body.page-mega-events,body.page-lasershow) .wedding1792-scope,
:is(body.page-events,body.page-firmenfeuerwerk,body.page-mega-events,body.page-lasershow) .wedding1801-local{
    background:
        radial-gradient(circle at 10% 0%,color-mix(in srgb,var(--occasion-accent) 22%,transparent),transparent 31%),
        radial-gradient(circle at 91% 100%,color-mix(in srgb,var(--occasion-accent3) 11%,transparent),transparent 30%),
        linear-gradient(145deg,var(--occasion-deep) 0%,var(--occasion-deep2) 72%);
    color:#f5f8f8;
}
:is(body.page-events,body.page-firmenfeuerwerk,body.page-mega-events,body.page-lasershow) .wedding1792-section-heading-light .eyebrow,
:is(body.page-events,body.page-firmenfeuerwerk,body.page-mega-events,body.page-lasershow) .wedding1801-local .eyebrow{color:color-mix(in srgb,var(--occasion-accent) 80%,white 20%)}
:is(body.page-events,body.page-firmenfeuerwerk,body.page-mega-events,body.page-lasershow) .wedding1792-section-heading-light h2{color:#fff}
:is(body.page-events,body.page-firmenfeuerwerk,body.page-mega-events,body.page-lasershow) .wedding1792-section-heading-light>p{color:#d3dfe0;font-size:1rem;line-height:1.7}
:is(body.page-events,body.page-firmenfeuerwerk,body.page-mega-events,body.page-lasershow) .wedding1792-scope-card{background:linear-gradient(145deg,rgba(255,255,255,.065),rgba(255,255,255,.025));color:#f5f7f7}
:is(body.page-events,body.page-firmenfeuerwerk,body.page-mega-events,body.page-lasershow) .wedding1792-scope-card li{color:#d7e0e0;font-size:.96rem;line-height:1.6}
:is(body.page-events,body.page-firmenfeuerwerk,body.page-mega-events,body.page-lasershow) .wedding1792-scope-included{border-color:rgba(83,211,153,.48)}
:is(body.page-events,body.page-firmenfeuerwerk,body.page-mega-events,body.page-lasershow) .wedding1792-scope-extra{border-color:rgba(242,166,77,.52)}
:is(body.page-events,body.page-firmenfeuerwerk,body.page-mega-events,body.page-lasershow) .wedding1792-scope-note{border-color:color-mix(in srgb,var(--occasion-accent) 20%,transparent);background:color-mix(in srgb,var(--occasion-accent) 7%,transparent);color:#dce4e4}
:is(body.page-events,body.page-firmenfeuerwerk,body.page-mega-events,body.page-lasershow) .wedding1792-scope-note>span{color:var(--occasion-accent2)}

:is(body.page-events,body.page-firmenfeuerwerk,body.page-mega-events,body.page-lasershow) .wedding1792-budget-card{
    border-color:color-mix(in srgb,var(--occasion-accent) 22%,transparent);background:linear-gradient(145deg,#fff,color-mix(in srgb,var(--occasion-light) 80%,#fff));box-shadow:0 18px 45px color-mix(in srgb,var(--occasion-ink) 10%,transparent)
}
:is(body.page-events,body.page-firmenfeuerwerk,body.page-mega-events,body.page-lasershow) .wedding1792-budget-facts{
    background:radial-gradient(circle at 85% 8%,color-mix(in srgb,var(--occasion-accent) 22%,transparent),transparent 36%),linear-gradient(145deg,color-mix(in srgb,var(--occasion-light2) 82%,#fff),color-mix(in srgb,var(--occasion-accent3) 10%,#fff));
}
:is(body.page-events,body.page-firmenfeuerwerk,body.page-mega-events,body.page-lasershow) .wedding1792-budget-facts div{border-color:color-mix(in srgb,var(--occasion-accent) 18%,transparent);background:rgba(255,255,255,.65)}
:is(body.page-events,body.page-firmenfeuerwerk,body.page-mega-events,body.page-lasershow) .wedding1792-budget-facts span{color:var(--occasion-muted)}
:is(body.page-events,body.page-firmenfeuerwerk,body.page-mega-events,body.page-lasershow) .wedding1792-budget-facts strong{color:color-mix(in srgb,var(--occasion-accent) 75%,var(--occasion-ink))}

:is(body.page-events,body.page-firmenfeuerwerk,body.page-mega-events,body.page-lasershow) .wedding1801-local-head h2{
    color:#fff;background:linear-gradient(100deg,#fff 6%,color-mix(in srgb,var(--occasion-accent2) 78%,white) 52%,color-mix(in srgb,var(--occasion-accent3) 78%,white));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;
}
:is(body.page-events,body.page-firmenfeuerwerk,body.page-mega-events,body.page-lasershow) .wedding1801-local-head>p{color:#d5dfdf;font-size:1.03rem;line-height:1.75}
:is(body.page-events,body.page-firmenfeuerwerk,body.page-mega-events,body.page-lasershow) .wedding1801-local-grid article{
    border-color:color-mix(in srgb,var(--occasion-accent) 24%,transparent);background:radial-gradient(circle at 100% 0%,color-mix(in srgb,var(--occasion-accent) 16%,transparent),transparent 38%),linear-gradient(145deg,#fff,color-mix(in srgb,var(--occasion-light) 88%,#fff));box-shadow:0 18px 42px rgba(0,0,0,.16)
}
:is(body.page-events,body.page-firmenfeuerwerk,body.page-mega-events,body.page-lasershow) .wedding1801-local-grid article>span{color:color-mix(in srgb,var(--occasion-accent) 72%,var(--occasion-ink))}
:is(body.page-events,body.page-firmenfeuerwerk,body.page-mega-events,body.page-lasershow) .wedding1801-local-grid h3{color:var(--occasion-ink)}
:is(body.page-events,body.page-firmenfeuerwerk,body.page-mega-events,body.page-lasershow) .wedding1801-local-grid p{color:var(--occasion-muted);font-size:.98rem;line-height:1.72}
:is(body.page-events,body.page-firmenfeuerwerk,body.page-mega-events,body.page-lasershow) .wedding1801-local-links a{
    border-color:color-mix(in srgb,var(--occasion-accent) 24%,transparent);background:linear-gradient(135deg,#fff,color-mix(in srgb,var(--occasion-light) 84%,#fff));color:var(--occasion-ink)
}

:is(body.page-events,body.page-firmenfeuerwerk,body.page-mega-events,body.page-lasershow) .wedding1792-region{
    background:linear-gradient(180deg,var(--occasion-deep2),#090b0e);
}
:is(body.page-events,body.page-firmenfeuerwerk,body.page-mega-events,body.page-lasershow) .wedding1795-region-card{
    border-color:color-mix(in srgb,var(--occasion-accent) 23%,transparent);background:radial-gradient(circle at 92% 0%,color-mix(in srgb,var(--occasion-accent) 12%,transparent),transparent 34%),rgba(255,255,255,.025)
}
:is(body.page-events,body.page-firmenfeuerwerk,body.page-mega-events,body.page-lasershow) .wedding1795-region-copy .eyebrow,
:is(body.page-events,body.page-firmenfeuerwerk,body.page-mega-events,body.page-lasershow) .wedding1795-region-kicker{color:var(--occasion-accent)}
:is(body.page-events,body.page-firmenfeuerwerk,body.page-mega-events,body.page-lasershow) .wedding1795-region-tags span{border-color:color-mix(in srgb,var(--occasion-accent) 24%,transparent);background:color-mix(in srgb,var(--occasion-accent) 8%,transparent)}
:is(body.page-events,body.page-firmenfeuerwerk,body.page-mega-events,body.page-lasershow) .wedding1795-region-mark{border-color:color-mix(in srgb,var(--occasion-accent) 28%,transparent);background:color-mix(in srgb,var(--occasion-accent) 10%,transparent);color:var(--occasion-accent2)}
:is(body.page-events,body.page-firmenfeuerwerk,body.page-mega-events,body.page-lasershow) .occasion1806-region-secondary{
    border-color:color-mix(in srgb,var(--occasion-accent3) 45%,transparent) !important;background:color-mix(in srgb,var(--occasion-accent3) 10%,transparent) !important;color:#fff !important;-webkit-text-fill-color:#fff !important;
}

:is(body.page-events,body.page-firmenfeuerwerk,body.page-mega-events,body.page-lasershow) .wedding1792-faq-list details{
    border-color:color-mix(in srgb,var(--occasion-accent) 22%,transparent);background:linear-gradient(135deg,#fff,color-mix(in srgb,var(--occasion-light) 88%,#fff));box-shadow:0 14px 34px color-mix(in srgb,var(--occasion-ink) 8%,transparent)
}
:is(body.page-events,body.page-firmenfeuerwerk,body.page-mega-events,body.page-lasershow) .wedding1792-faq-list details[open]{border-color:color-mix(in srgb,var(--occasion-accent) 48%,transparent);background:radial-gradient(circle at 100% 0%,color-mix(in srgb,var(--occasion-accent) 15%,transparent),transparent 34%),linear-gradient(135deg,#fff,color-mix(in srgb,var(--occasion-light2) 88%,#fff))}
:is(body.page-events,body.page-firmenfeuerwerk,body.page-mega-events,body.page-lasershow) .wedding1794-faq-number{color:color-mix(in srgb,var(--occasion-accent) 82%,var(--occasion-ink))}
:is(body.page-events,body.page-firmenfeuerwerk,body.page-mega-events,body.page-lasershow) .wedding1792-faq-list p a{color:color-mix(in srgb,var(--occasion-accent) 70%,var(--occasion-ink))}
:is(body.page-events,body.page-firmenfeuerwerk,body.page-mega-events,body.page-lasershow) .wedding1792-faq-intro .occasion1806-faq-cta{
    border:1px solid color-mix(in srgb,var(--occasion-accent3) 68%,white 12%) !important;
    background:linear-gradient(118deg,color-mix(in srgb,var(--occasion-deep) 74%,var(--occasion-accent)),var(--occasion-accent) 48%,var(--occasion-accent2) 100%) !important;
    color:#fff !important;-webkit-text-fill-color:#fff !important;box-shadow:0 14px 34px color-mix(in srgb,var(--occasion-accent) 26%,transparent) !important;opacity:1 !important;
}

:is(body.page-events,body.page-firmenfeuerwerk,body.page-mega-events,body.page-lasershow) .wedding1792-final{
    background:radial-gradient(circle at 14% 0%,color-mix(in srgb,var(--occasion-accent) 15%,transparent),transparent 30%),linear-gradient(180deg,var(--occasion-deep),var(--occasion-deep2));
}
:is(body.page-events,body.page-firmenfeuerwerk,body.page-mega-events,body.page-lasershow) .wedding1795-final-card{border-color:color-mix(in srgb,var(--occasion-accent3) 25%,transparent);box-shadow:0 22px 60px rgba(0,0,0,.24),0 0 38px color-mix(in srgb,var(--occasion-accent) 7%,transparent)}
:is(body.page-events,body.page-firmenfeuerwerk,body.page-mega-events,body.page-lasershow) .occasion1806-option-advice{border-color:color-mix(in srgb,var(--occasion-accent) 22%,transparent);background:radial-gradient(circle at 15% 0%,color-mix(in srgb,var(--occasion-accent) 15%,transparent),transparent 45%),rgba(255,255,255,.014)}
:is(body.page-events,body.page-firmenfeuerwerk,body.page-mega-events,body.page-lasershow) .occasion1806-option-advice .wedding1795-option-kicker{color:var(--occasion-accent)}
:is(body.page-events,body.page-firmenfeuerwerk,body.page-mega-events,body.page-lasershow) .occasion1806-option-advice .button{border-color:color-mix(in srgb,var(--occasion-accent) 45%,transparent) !important;background:color-mix(in srgb,var(--occasion-accent) 12%,transparent) !important;color:#fff !important;-webkit-text-fill-color:#fff !important}
:is(body.page-events,body.page-firmenfeuerwerk,body.page-mega-events,body.page-lasershow) .occasion1806-option-request{border-color:color-mix(in srgb,var(--occasion-accent3) 24%,transparent);background:radial-gradient(circle at 15% 0%,color-mix(in srgb,var(--occasion-accent3) 15%,transparent),transparent 45%),rgba(255,255,255,.014)}
:is(body.page-events,body.page-firmenfeuerwerk,body.page-mega-events,body.page-lasershow) .occasion1806-option-request .wedding1795-option-kicker{color:var(--occasion-accent3)}

/* Startseite + Dienstleistungen: dieselben Farbcodes wie auf den Unterseiten */
.home63-service-wedding{--service-accent:#e3a8ba;--service-soft:rgba(139,72,98,.18);--service-border:rgba(227,168,186,.34)}
.home63-service-birthday{--service-accent:#846cff;--service-soft:rgba(137,72,172,.18);--service-border:rgba(132,108,255,.34)}
.home63-service-event{--service-accent:#4fd8d1;--service-soft:rgba(31,139,146,.18);--service-border:rgba(79,216,209,.34)}
.home63-service-corporate{--service-accent:#69adff;--service-soft:rgba(45,87,158,.20);--service-border:rgba(105,173,255,.34)}
.home63-service-mega{--service-accent:#ff6b50;--service-soft:rgba(166,54,41,.20);--service-border:rgba(255,107,80,.34)}
.home63-service-laser{--service-accent:#a47cff;--service-soft:rgba(90,54,174,.20);--service-border:rgba(164,124,255,.34)}
.services67-wedding{--accent:#e3a8ba;--soft:rgba(139,72,98,.18)}
.services67-birthday{--accent:#846cff;--soft:rgba(137,72,172,.18)}
.services67-event{--accent:#4fd8d1;--soft:rgba(31,139,146,.20)}
.services67-corporate{--accent:#69adff;--soft:rgba(45,87,158,.21)}
.services67-mega{--accent:#ff6b50;--soft:rgba(166,54,41,.22)}
.services67-laser{--accent:#a47cff;--soft:rgba(90,54,174,.21)}

@media(max-width:680px){
    :is(body.page-events,body.page-firmenfeuerwerk,body.page-mega-events,body.page-lasershow) .wedding1792-faq-intro .occasion1806-faq-cta{width:100%;min-height:52px}
    :is(body.page-events,body.page-firmenfeuerwerk,body.page-mega-events,body.page-lasershow) .wedding1792-scope-card li,
    :is(body.page-events,body.page-firmenfeuerwerk,body.page-mega-events,body.page-lasershow) .wedding1801-local-grid p,
    :is(body.page-events,body.page-firmenfeuerwerk,body.page-mega-events,body.page-lasershow) .wedding1792-moment-grid p,
    :is(body.page-events,body.page-firmenfeuerwerk,body.page-mega-events,body.page-lasershow) .wedding1792-budget-copy>p,
    :is(body.page-events,body.page-firmenfeuerwerk,body.page-mega-events,body.page-lasershow) .wedding1792-faq-list p{font-size:.96rem}
}

/* ============================================================
   V18.07 – Lasershow eigenständiger Look mit Laserstrahlen
   ============================================================ */
body.page-lasershow{
    --occasion-accent:#3ff4e4;
    --occasion-accent2:#ff58d6;
    --occasion-accent3:#8dff63;
    --occasion-ink:#101726;
    --occasion-muted:#415066;
    --occasion-light:#dffcff;
    --occasion-light2:#eefcff;
}
body.page-lasershow .wedding1792-hero{
    position:relative;
    overflow:hidden;
    background:
        radial-gradient(circle at 14% 10%,rgba(63,244,228,.14),transparent 24%),
        radial-gradient(circle at 88% 18%,rgba(255,88,214,.16),transparent 22%),
        radial-gradient(circle at 74% 86%,rgba(141,255,99,.12),transparent 18%),
        linear-gradient(135deg,#071019 0%,#0b1020 44%,#120a1d 100%);
}
body.page-lasershow .wedding1792-hero::before,
body.page-lasershow .wedding1792-hero::after{
    content:"";
    position:absolute;
    inset:-12% -10%;
    pointer-events:none;
    opacity:.9;
}
body.page-lasershow .wedding1792-hero::before{
    background:
        linear-gradient(118deg,transparent 16%,rgba(63,244,228,.08) 17%,rgba(63,244,228,.38) 18%,rgba(63,244,228,.08) 19%,transparent 20%),
        linear-gradient(127deg,transparent 36%,rgba(255,88,214,.08) 37%,rgba(255,88,214,.38) 38%,rgba(255,88,214,.08) 39%,transparent 40%),
        linear-gradient(137deg,transparent 58%,rgba(141,255,99,.08) 59%,rgba(141,255,99,.36) 60%,rgba(141,255,99,.08) 61%,transparent 62%),
        linear-gradient(149deg,transparent 73%,rgba(96,147,255,.08) 74%,rgba(96,147,255,.34) 75%,rgba(96,147,255,.08) 76%,transparent 77%);
    filter:blur(.2px);
}
body.page-lasershow .wedding1792-hero::after{
    background:
        linear-gradient(108deg,transparent 20%,rgba(255,255,255,.18) 20.35%,transparent 20.7%),
        linear-gradient(139deg,transparent 48%,rgba(255,255,255,.11) 48.25%,transparent 48.55%),
        linear-gradient(154deg,transparent 66%,rgba(255,255,255,.10) 66.25%,transparent 66.55%);
    mix-blend-mode:screen;
}
body.page-lasershow .wedding1792-glow-a{background:rgba(63,244,228,.22);filter:blur(80px)}
body.page-lasershow .wedding1792-glow-b{background:rgba(255,88,214,.20);filter:blur(84px)}
body.page-lasershow .wedding1792-hero-copy .eyebrow{color:#8cfbf1}
body.page-lasershow .wedding1792-hero-copy h1 span{
    background:linear-gradient(90deg,#ffffff 0%,#8cfbf1 28%,#ff92e6 68%,#d9ffd0 100%);
    -webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;
}
body.page-lasershow .wedding1792-hero-copy>p{color:#d6e0ed}
body.page-lasershow .wedding1792-hero-tags span{
    background:rgba(255,255,255,.06);
    border-color:rgba(63,244,228,.28);
    color:#effbff;
}
body.page-lasershow .wedding1792-hero-tags strong{color:#96fff5}
body.page-lasershow .wedding1792-hero-visual{
    border-color:rgba(63,244,228,.22);
    box-shadow:0 24px 70px rgba(0,0,0,.30),0 0 0 1px rgba(255,88,214,.10),0 0 42px rgba(63,244,228,.12);
}
body.page-lasershow .wedding1792-hero-visual::before{
    content:"";
    position:absolute;
    inset:0;
    background:
        linear-gradient(120deg,transparent 20%,rgba(63,244,228,.12) 21%,transparent 22%),
        linear-gradient(137deg,transparent 38%,rgba(255,88,214,.14) 39%,transparent 40%),
        linear-gradient(150deg,transparent 62%,rgba(141,255,99,.12) 63%,transparent 64%);
    pointer-events:none;
}
body.page-lasershow .wedding1792-hero-panel{
    background:linear-gradient(135deg,rgba(9,14,26,.90),rgba(17,13,32,.90));
    border-color:rgba(255,255,255,.10);
}
body.page-lasershow .wedding1792-hero-panel span{color:#86fff2}
body.page-lasershow .wedding1792-hero .button-primary,
body.page-lasershow .occasion1806-region .button-primary,
body.page-lasershow .occasion1806-option-request .button{
    background:linear-gradient(135deg,#2fe9dc 0%,#6ab8ff 46%,#b65cff 100%) !important;
    color:#08111a !important;
    border:0 !important;
    box-shadow:0 18px 36px rgba(63,244,228,.18),0 8px 24px rgba(75,105,255,.12) !important;
}
body.page-lasershow .wedding1792-hero .button-primary:hover,
body.page-lasershow .occasion1806-region .button-primary:hover,
body.page-lasershow .occasion1806-option-request .button:hover{
    filter:brightness(1.06);
    transform:translateY(-1px);
}
body.page-lasershow .wedding1792-hero .button-secondary,
body.page-lasershow .occasion1806-faq-cta,
body.page-lasershow .occasion1806-option-advice .button,
body.page-lasershow .occasion1806-region-secondary{
    background:linear-gradient(135deg,rgba(255,88,214,.22),rgba(73,232,255,.18)) !important;
    border:1px solid rgba(255,255,255,.18) !important;
    color:#f8fbff !important;
    -webkit-text-fill-color:#f8fbff !important;
    box-shadow:0 14px 28px rgba(8,14,26,.16), inset 0 1px 0 rgba(255,255,255,.10);
}
body.page-lasershow .wedding1792-moments,
body.page-lasershow .wedding1792-budget,
body.page-lasershow .wedding1792-faq{
    background:
      radial-gradient(circle at 10% 0%,rgba(63,244,228,.08),transparent 22%),
      radial-gradient(circle at 90% 10%,rgba(255,88,214,.08),transparent 20%),
      linear-gradient(180deg,#f6fbff 0%,#eef9ff 100%);
}
body.page-lasershow .wedding1792-moments .eyebrow,
body.page-lasershow .wedding1792-budget .eyebrow,
body.page-lasershow .wedding1792-faq .eyebrow{color:#2ab9c5}
body.page-lasershow .wedding1792-moments .wedding1792-section-heading h2,
body.page-lasershow .wedding1792-budget-copy h2,
body.page-lasershow .wedding1792-faq-intro h2,
body.page-lasershow .wedding1801-local-head h2{
    background:linear-gradient(90deg,#121829 0%,#176e82 28%,#6b2fd1 66%,#d544bc 100%);
    -webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;
}
body.page-lasershow .wedding1792-moment-grid article{
    background:
      linear-gradient(180deg,rgba(255,255,255,.96),rgba(240,250,255,.94));
    border-color:rgba(74,227,230,.18);
    box-shadow:0 18px 42px rgba(10,22,38,.08),0 0 0 1px rgba(255,88,214,.04);
}
body.page-lasershow .wedding1792-no{color:#4fcfe6}
body.page-lasershow .wedding1792-icon{
    background:linear-gradient(135deg,rgba(63,244,228,.18),rgba(255,88,214,.16));
    border-color:rgba(63,244,228,.26);
    color:#6529c2;
}
body.page-lasershow .wedding1792-scope{
    background:
      radial-gradient(circle at 18% 12%,rgba(63,244,228,.11),transparent 26%),
      radial-gradient(circle at 85% 20%,rgba(255,88,214,.12),transparent 22%),
      linear-gradient(145deg,#09101c 0%,#0b1322 50%,#150c24 100%);
}
body.page-lasershow .wedding1792-section-heading-light .eyebrow{color:#87f9ed}
body.page-lasershow .wedding1792-section-heading-light>p{color:#d6e1ef}
body.page-lasershow .wedding1792-scope-card{
    backdrop-filter:blur(4px);
    box-shadow:0 18px 38px rgba(0,0,0,.18);
}
body.page-lasershow .wedding1801-local{
    background:
      radial-gradient(circle at 12% 18%,rgba(63,244,228,.08),transparent 20%),
      linear-gradient(180deg,#f7fbff 0%,#eef8ff 100%);
}
body.page-lasershow .wedding1792-region,
body.page-lasershow .wedding1792-final{
    position:relative;
    overflow:hidden;
    background:linear-gradient(145deg,#0a0f1b 0%,#0e1024 44%,#150b21 100%);
}
body.page-lasershow .wedding1792-region::before,
body.page-lasershow .wedding1792-final::before{
    content:"";
    position:absolute; inset:-10% -8%; pointer-events:none;
    background:
      linear-gradient(124deg,transparent 18%,rgba(63,244,228,.09) 19%,rgba(63,244,228,.30) 19.6%,rgba(63,244,228,.08) 20.2%,transparent 21%),
      linear-gradient(139deg,transparent 46%,rgba(255,88,214,.08) 47%,rgba(255,88,214,.28) 47.6%,rgba(255,88,214,.08) 48.2%,transparent 49%),
      linear-gradient(155deg,transparent 64%,rgba(141,255,99,.06) 65%,rgba(141,255,99,.24) 65.6%,rgba(141,255,99,.06) 66.2%,transparent 67%);
}
body.page-lasershow .wedding1795-region-card,
body.page-lasershow .wedding1795-final-card{
    background:linear-gradient(145deg,rgba(255,255,255,.045),rgba(255,255,255,.018));
    border-color:rgba(255,255,255,.08);
}
body.page-lasershow .wedding1795-region-copy h2,
body.page-lasershow .wedding1795-final-copy h2,
body.page-lasershow .wedding1792-section-heading-light h2{color:#fff !important;-webkit-text-fill-color:#fff !important;background:none}
body.page-lasershow .wedding1795-region-copy>p,
body.page-lasershow .wedding1795-final-copy>p,
body.page-lasershow .wedding1795-final-option small{color:#d8e0ea}
body.page-lasershow .wedding1795-region-tags span{
    background:rgba(255,255,255,.04);
    color:#eafaff;
}
body.page-lasershow .wedding1792-faq-list details{
    box-shadow:0 14px 30px rgba(8,22,38,.06);
}
body.page-lasershow .wedding1792-faq-list details[open]{box-shadow:0 18px 34px rgba(8,22,38,.08),0 0 0 1px rgba(63,244,228,.06)}

/* Startseite: Lasershow klar vom Geburtstagsfeuerwerk trennen */
.home63-service-laser,
.home62-service-laser,
.services67-laser{
    --service-accent:#3ff4e4;
    --service-soft:rgba(42,233,222,.12);
    --service-border:rgba(63,244,228,.34);
}
.home63-service-laser,
.home62-service-laser{
    background:
      radial-gradient(circle at 86% 8%,rgba(255,88,214,.18),transparent 26%),
      radial-gradient(circle at 10% 14%,rgba(63,244,228,.14),transparent 24%),
      linear-gradient(145deg,#09111d 0%,#0b1223 52%,#180e27 100%);
}
.home63-service-laser::before,
.home62-service-laser::before,
.services67-laser::before{
    content:"";
    position:absolute;
    inset:0;
    pointer-events:none;
    background:
      linear-gradient(122deg,transparent 18%,rgba(63,244,228,.10) 19%,rgba(63,244,228,.42) 19.8%,rgba(63,244,228,.08) 20.6%,transparent 21.4%),
      linear-gradient(136deg,transparent 45%,rgba(255,88,214,.10) 46%,rgba(255,88,214,.38) 46.8%,rgba(255,88,214,.08) 47.6%,transparent 48.4%),
      linear-gradient(151deg,transparent 66%,rgba(141,255,99,.08) 67%,rgba(141,255,99,.30) 67.8%,rgba(141,255,99,.06) 68.6%,transparent 69.4%);
    z-index:-1;
}
.home63-service-laser .home63-service-copy p,
.home62-service-laser p{color:#ced8e6}
.home63-service-laser .home63-service-copy strong,
.home63-service-laser .home63-service-top span,
.home62-service-laser strong,
.services67-laser .services67-card-copy span{color:#96fff5}
.services67-laser{
    --accent:#3ff4e4;
    --soft:rgba(42,233,222,.14);
    background:
      radial-gradient(circle at 88% 10%,rgba(255,88,214,.16),transparent 24%),
      radial-gradient(circle at 10% 10%,rgba(63,244,228,.13),transparent 22%),
      linear-gradient(145deg,rgba(42,233,222,.12),rgba(21,12,38,.28) 48%),#0a111d;
}
.services67-laser::after{background:linear-gradient(90deg,#3ff4e4,#ff58d6 58%,#8dff63 100%)}
.services67-laser h3,
.services67-laser strong,
.services67-laser em{color:#f5fbff}
.services67-laser p{color:#cfdae9}

/* ============================================================
   V18.08 – Unterseiten-CTA wie Dienstleistungen + Lasershow-Regionalblock
   ============================================================ */
/* Untere Abschlusskarten auf allen Dienstleistungs-Unterseiten deutlicher wie bei Dienstleistungen */
.wedding1795-final-options{
    align-items:stretch;
}
.wedding1795-final-option{
    position:relative;
    padding-top:24px;
    text-align:center;
    justify-items:center;
}
.wedding1795-final-option .wedding1795-option-kicker{
    display:block;
    width:100%;
    margin:0 auto 8px;
    text-align:center;
    font-size:1.16rem !important;
    line-height:1.08;
    font-weight:950;
    letter-spacing:.045em;
}
.wedding1795-final-option>strong{
    display:block;
    width:100%;
    text-align:center;
    font-size:1.02rem;
    line-height:1.35;
}
.wedding1795-final-option small{
    display:block;
    max-width:420px;
    margin:2px auto 0;
    text-align:center;
}
.wedding1795-final-option .button{
    max-width:420px;
    margin:12px auto 0;
}
@media(max-width:620px){
    .wedding1795-final-option .wedding1795-option-kicker{font-size:1.02rem !important}
}

/* Lasershow: Regionalblock mit Laserhintergrund statt weiß */
body.page-lasershow .wedding1801-local{
    position:relative;
    overflow:hidden;
    background:
      linear-gradient(145deg,#09101c 0%,#0c1323 48%,#150b21 100%);
}
body.page-lasershow .wedding1801-local::before,
body.page-lasershow .wedding1801-local::after{
    content:"";
    position:absolute;
    inset:-10% -8%;
    pointer-events:none;
}
body.page-lasershow .wedding1801-local::before{
    background:
      radial-gradient(circle at 12% 18%,rgba(63,244,228,.12),transparent 22%),
      radial-gradient(circle at 90% 16%,rgba(255,88,214,.13),transparent 20%),
      radial-gradient(circle at 68% 78%,rgba(141,255,99,.09),transparent 18%);
}
body.page-lasershow .wedding1801-local::after{
    background:
      linear-gradient(123deg,transparent 16%,rgba(63,244,228,.08) 17%,rgba(63,244,228,.30) 17.8%,rgba(63,244,228,.08) 18.6%,transparent 19.4%),
      linear-gradient(137deg,transparent 42%,rgba(255,88,214,.08) 43%,rgba(255,88,214,.28) 43.8%,rgba(255,88,214,.08) 44.6%,transparent 45.4%),
      linear-gradient(152deg,transparent 64%,rgba(141,255,99,.06) 65%,rgba(141,255,99,.22) 65.8%,rgba(141,255,99,.06) 66.6%,transparent 67.4%),
      linear-gradient(110deg,transparent 28%,rgba(255,255,255,.13) 28.25%,transparent 28.55%);
    mix-blend-mode:screen;
}
body.page-lasershow .wedding1801-local .container{position:relative;z-index:1}
body.page-lasershow .wedding1801-local-head>p{color:#d7e1ee}
body.page-lasershow .wedding1801-local-grid article{
    border-color:rgba(255,255,255,.08);
    background:linear-gradient(145deg,rgba(255,255,255,.95),rgba(235,247,255,.96));
    box-shadow:0 18px 46px rgba(0,0,0,.22),0 0 0 1px rgba(63,244,228,.05);
}
body.page-lasershow .wedding1801-local-grid article>span{color:#33d9cf}
body.page-lasershow .wedding1801-local-grid h3{color:#132031}
body.page-lasershow .wedding1801-local-grid p{color:#46556a}
body.page-lasershow .wedding1801-local-links a{
    border-color:rgba(255,255,255,.10);
    background:linear-gradient(135deg,rgba(255,255,255,.08),rgba(255,255,255,.04));
    color:#eefcff;
    box-shadow:0 14px 30px rgba(0,0,0,.16);
}
body.page-lasershow .wedding1801-local-links a:hover{
    border-color:rgba(63,244,228,.24);
    background:linear-gradient(135deg,rgba(63,244,228,.12),rgba(255,88,214,.10));
}

/* ============================================================
   V18.09 – QA-Durchgang Startseite + Leistungen + Heros
   ============================================================ */
/* Startseite: Servicekarten lesbarer und stabiler */
.home63-service-card{
    min-height:300px;
}
.home63-service-copy{
    left:12px;
    right:12px;
    bottom:12px;
    padding:14px 14px 12px;
    border-radius:16px;
    background:linear-gradient(180deg,rgba(8,10,12,0) 0%,rgba(8,10,12,.76) 18%,rgba(8,10,12,.93) 100%);
    backdrop-filter:blur(2px);
}
.home63-service-copy h3{line-height:1.15;max-width:95%}
.home63-service-copy p{min-height:48px;color:#c3ccce;font-size:.71rem;line-height:1.52}
.home63-service-copy strong{font-size:.64rem}
.home63-service-cta{margin-top:10px}

/* Dienstleistungen: Kartenlesbarkeit und sichere Inhalte */
.services67-card{
    min-height:300px;
}
.services67-card-copy{
    left:12px;
    right:12px;
    bottom:12px;
    padding:14px 14px 12px;
    border-radius:16px;
    background:linear-gradient(180deg,rgba(8,10,12,0) 0%,rgba(8,10,12,.76) 18%,rgba(8,10,12,.93) 100%);
    backdrop-filter:blur(2px);
}
.services67-card-copy h3{line-height:1.15;max-width:95%}
.services67-card-copy p{min-height:48px;color:#c7d0d2;font-size:.71rem;line-height:1.54}
.services67-card-copy>div{padding-top:10px}
.services67-card-copy strong{font-size:.64rem}
.services67-card-copy em{font-size:.61rem}

/* Kreis-/Orbit-Leistungen: auf mittleren Breiten nicht überlappen lassen */
@media(max-width:1280px){
    .services68-orbit{
        display:grid !important;
        grid-template-columns:repeat(2,minmax(0,1fr));
        gap:14px;
        height:auto;
        width:100%;
    }
    .services68-center{
        position:relative;
        left:auto;
        top:auto;
        transform:none;
        width:100%;
        min-height:0;
        border-radius:26px;
        grid-column:1 / -1;
    }
    .services68-center::before{display:none}
    .services68-orbit .services67-card{
        position:relative !important;
        left:auto !important;
        right:auto !important;
        top:auto !important;
        bottom:auto !important;
        transform:none !important;
        width:auto;
        min-height:270px;
    }
    .services68-orbit .services67-card:hover{transform:translateY(-4px) !important}
}
@media(max-width:700px){
    .home63-service-card,
    .services67-card,
    .services68-orbit .services67-card{min-height:260px}
    .home63-service-copy,
    .services67-card-copy{left:10px;right:10px;bottom:10px;padding:12px 12px 11px}
    .home63-service-copy p,
    .services67-card-copy p{min-height:0}
}

/* Hero-Visuals: saubere Ränder und keine Text-/Bildkollision */
.wedding1792-hero-visual,
.services67-hero-visual,
.home62-hero-media{
    overflow:hidden;
}
.wedding1792-hero-panel,
.services67-hero-panel{
    max-width:min(92%,360px);
}
.wedding1792-hero-panel strong,
.services67-hero-panel strong{line-height:1.28}

/* ============================================================
   V18.10 – Vollständiger Responsive-/Clipping-QA-Fix
   ============================================================ */
/* Generell: Grid-/Flex-Kinder dürfen auf schmalen Viewports wirklich schrumpfen */
.home62-hero-grid > *,
.services67-hero-grid > *,
.wedding1792-hero-grid > *,
.wedding1792-section-heading > *,
.wedding1801-local-head > *,
.wedding1795-region-card > *,
.wedding1795-final-card > *,
.wedding1795-final-options > *,
.services67-grid > *,
.home63-service-grid > *{
    min-width:0;
}

/* Startseite Hero: das alte 420px-Minimum war auf Handy zu breit */
@media(max-width:1050px){
    .home62-hero-grid{
        grid-template-columns:1fr !important;
        gap:30px;
    }
    .home62-hero-copy{
        width:100%;
        max-width:760px;
        min-width:0;
    }
    .home62-hero-visual{
        width:100%;
        max-width:860px;
        min-width:0;
        justify-self:start;
    }
    .home62-hero-visual figure{
        width:100%;
        max-width:100%;
    }
}
@media(max-width:700px){
    .home62-hero{padding:40px 0 42px}
    .home62-hero-grid{gap:24px}
    .home62-hero-copy h1{
        font-size:clamp(2.55rem,12.5vw,4rem);
        line-height:.94;
        overflow-wrap:anywhere;
    }
    .home62-hero-copy>p:not(.eyebrow){font-size:.96rem}
    .home62-hero-actions{display:grid;grid-template-columns:1fr}
    .home62-hero-actions .button{width:100%;justify-content:center;min-width:0}
    .home62-hero-visual figure{aspect-ratio:4/3;border-radius:20px}
    .home62-hero-badge{
        left:12px;
        right:12px;
        bottom:12px;
        width:auto;
        min-width:0;
        max-width:calc(100% - 24px);
    }
}

/* Einheitliche Dienstleistungs-Heros: keine 760px-Bildbox über dem Tablet-Viewport */
.wedding1792-hero-copy,
.wedding1792-hero-visual,
.services67-hero-copy,
.services67-hero-visual{
    min-width:0;
}
@media(max-width:1050px){
    .wedding1792-hero-visual,
    .services67-hero-visual{
        width:100%;
        max-width:100% !important;
        justify-self:stretch;
    }
}
@media(max-width:680px){
    .wedding1792-hero-copy .eyebrow,
    .services67-hero-copy .eyebrow{
        max-width:100%;
        letter-spacing:.13em;
        overflow-wrap:anywhere;
        word-break:normal;
    }
    .wedding1792-hero-copy h1,
    .services67-hero-copy h1{
        max-width:100%;
        overflow-wrap:anywhere;
        word-break:normal;
    }
    .wedding1792-hero-copy,
    .services67-hero-copy{width:100%}
    .wedding1792-hero-panel,
    .services67-hero-panel{
        left:12px;
        right:12px;
        max-width:none;
        width:auto;
    }
}

/* Dienstleistungen-Orbit: 2 Spalten auf Tablet, garantiert 1 Spalte auf Handy */
@media(max-width:700px){
    .services68-orbit{
        grid-template-columns:1fr !important;
        gap:12px;
    }
    .services68-center{grid-column:auto}
    .services68-orbit .services67-card{
        width:100% !important;
        min-height:255px;
    }
}

/* Galerie: auf Handy keine halb sichtbaren Filter-Pills mehr */
@media(max-width:680px){
    .gallery-filter{
        display:flex;
        flex-wrap:wrap !important;
        overflow:visible !important;
        gap:7px;
        width:100%;
        padding-bottom:0;
    }
    .gallery-filter button{
        flex:0 1 auto;
        min-width:0;
        max-width:100%;
    }
}

/* Desktop-Header: bei 1360–1500px alle Buttons sicher innerhalb des Viewports */
@media(min-width:981px) and (max-width:1500px){
    .site-header .header-inner,
    .site-header .header-topline-inner{
        width:min(calc(100% - 20px),1480px);
    }
    .header-inner{gap:10px}
    .main-nav{gap:5px;font-size:.75rem;min-width:0}
    .main-nav > a:not(.nav-cta),
    .nav-dropdown-trigger{padding:8px 8px !important}
    .nav-consultation{padding-inline:9px !important}
    .nav-cta{padding-inline:11px !important}
    .brand-text small{display:none}
    .brand-text strong{font-size:.79rem}
}

/* Lange Texte/URLs in öffentlichen Karten und Formularen nie aus dem Container drücken */
.wedding1792-moment-grid article,
.wedding1792-scope-card,
.wedding1792-budget-card,
.wedding1792-faq-list details,
.wedding1801-local-grid article,
.wedding1795-region-card,
.wedding1795-final-option,
.public-cta,
.contact-card,
.faq-item,
.travel-calculator{
    min-width:0;
}
.wedding1792-moment-grid p,
.wedding1792-scope-card li,
.wedding1792-faq-list p,
.wedding1801-local-grid p,
.wedding1795-region-side p,
.wedding1795-final-option small,
.public-cta p{
    overflow-wrap:anywhere;
}

/* V18.10 QA Nachschärfung – Startseite & Hero-Panels */
@media(max-width:1050px){
    .home62-hero-badge{
        left:12px;
        right:auto;
        max-width:calc(100% - 24px);
    }
    .wedding1792-hero-panel{
        left:12px !important;
        right:12px !important;
        width:auto !important;
        max-width:none !important;
        min-width:0 !important;
    }
}
@media(max-width:900px){
    .home62-section-head,
    .home62-review-head{
        align-items:flex-start;
        flex-direction:column;
        gap:14px;
    }
    .home62-review-actions{
        width:100%;
        display:flex;
        flex-wrap:wrap;
        gap:9px;
        align-items:center;
    }
    .home62-review-actions>a{
        max-width:100%;
        white-space:normal !important;
    }
    .home62-shop-card{
        grid-template-columns:1fr;
    }
    .home62-shop-image{
        min-height:280px;
    }
    .home62-shop-copy{
        width:100%;
        max-width:none;
        padding:28px;
    }
    .home62-region-grid{
        grid-template-columns:1fr;
        gap:24px;
    }
    .home62-contact-card{
        width:100%;
        max-width:100%;
    }
}
@media(max-width:620px){
    .home62-review-actions{
        align-items:stretch;
        flex-direction:column;
    }
    .home62-review-actions>a,
    .home62-review-actions .review-write-button{
        width:100%;
        justify-content:center;
        text-align:center;
    }
    .home62-shop-image{min-height:230px}
    .home62-shop-copy{padding:22px 18px}
    .home62-shop-actions{
        display:grid;
        grid-template-columns:1fr;
    }
    .home62-shop-actions .button{width:100%;justify-content:center;min-width:0}
    .home62-contact-card{padding:19px}
}

/* ============================================================
   V18.11 – gezielter Hero-/Laser-Regional-Fix
   ============================================================ */
/* Alle Leistungs-Unterseiten: Hero-Bildbox wirklich 16:9, Beschreibung vollständig im Bild */
body.page-hochzeiten .wedding1792-hero-visual,
body.page-geburtstagsfeuerwerk .wedding1792-hero-visual,
body.page-events .wedding1792-hero-visual,
body.page-firmenfeuerwerk .wedding1792-hero-visual,
body.page-mega-events .wedding1792-hero-visual,
body.page-lasershow .wedding1792-hero-visual{
    position:relative !important;
    width:100% !important;
    max-width:100% !important;
    aspect-ratio:16 / 9 !important;
    overflow:hidden !important;
    border-radius:26px !important;
    background:#0b0d11 !important;
    box-shadow:0 28px 68px rgba(0,0,0,.32) !important;
}
body.page-hochzeiten .wedding1792-hero-visual>img,
body.page-geburtstagsfeuerwerk .wedding1792-hero-visual>img,
body.page-events .wedding1792-hero-visual>img,
body.page-firmenfeuerwerk .wedding1792-hero-visual>img,
body.page-mega-events .wedding1792-hero-visual>img,
body.page-lasershow .wedding1792-hero-visual>img{
    position:absolute !important;
    inset:0 !important;
    display:block !important;
    width:100% !important;
    height:100% !important;
    aspect-ratio:auto !important;
    object-fit:cover !important;
    border:0 !important;
    border-radius:inherit !important;
    box-shadow:none !important;
}
body.page-hochzeiten .wedding1792-hero-visual::after,
body.page-geburtstagsfeuerwerk .wedding1792-hero-visual::after,
body.page-events .wedding1792-hero-visual::after,
body.page-firmenfeuerwerk .wedding1792-hero-visual::after,
body.page-mega-events .wedding1792-hero-visual::after,
body.page-lasershow .wedding1792-hero-visual::after{
    inset:0 !important;
    border-radius:inherit !important;
    background:linear-gradient(180deg,rgba(5,7,10,.02) 34%,rgba(5,7,10,.20) 62%,rgba(5,7,10,.82) 100%) !important;
}
body.page-hochzeiten .wedding1792-hero-panel,
body.page-geburtstagsfeuerwerk .wedding1792-hero-panel,
body.page-events .wedding1792-hero-panel,
body.page-firmenfeuerwerk .wedding1792-hero-panel,
body.page-mega-events .wedding1792-hero-panel,
body.page-lasershow .wedding1792-hero-panel{
    position:absolute !important;
    z-index:4 !important;
    left:16px !important;
    right:16px !important;
    bottom:16px !important;
    top:auto !important;
    width:auto !important;
    min-width:0 !important;
    max-width:none !important;
    padding:13px 16px !important;
    overflow:visible !important;
    border-radius:14px !important;
    background:rgba(10,12,17,.82) !important;
    border:1px solid rgba(255,255,255,.18) !important;
    box-shadow:0 12px 30px rgba(0,0,0,.26) !important;
    backdrop-filter:blur(10px) !important;
}
body.page-hochzeiten .wedding1792-hero-panel span,
body.page-geburtstagsfeuerwerk .wedding1792-hero-panel span,
body.page-events .wedding1792-hero-panel span,
body.page-firmenfeuerwerk .wedding1792-hero-panel span,
body.page-mega-events .wedding1792-hero-panel span,
body.page-lasershow .wedding1792-hero-panel span{
    display:block !important;
    font-size:.60rem !important;
    line-height:1.25 !important;
    letter-spacing:.075em !important;
    white-space:normal !important;
}
body.page-hochzeiten .wedding1792-hero-panel strong,
body.page-geburtstagsfeuerwerk .wedding1792-hero-panel strong,
body.page-events .wedding1792-hero-panel strong,
body.page-firmenfeuerwerk .wedding1792-hero-panel strong,
body.page-mega-events .wedding1792-hero-panel strong,
body.page-lasershow .wedding1792-hero-panel strong{
    display:block !important;
    margin-top:4px !important;
    font-size:.94rem !important;
    line-height:1.28 !important;
    white-space:normal !important;
    overflow:visible !important;
}

/* Laser: Regional-Überschrift solid, hell und mit ausreichend Abstand zu den Karten */
body.page-lasershow .wedding1801-local-head{
    align-items:start !important;
    margin-bottom:48px !important;
    gap:44px !important;
}
body.page-lasershow .wedding1801-local-head h2#lasershow-local-title{
    display:block !important;
    margin:8px 0 0 !important;
    padding:0 0 .12em !important;
    max-width:900px !important;
    color:#f3fbff !important;
    -webkit-text-fill-color:#f3fbff !important;
    background:none !important;
    background-image:none !important;
    line-height:1.08 !important;
    letter-spacing:-.035em !important;
    text-shadow:0 0 24px rgba(63,244,228,.10) !important;
    overflow:visible !important;
}
body.page-lasershow .wedding1801-local-head .eyebrow{
    color:#79fff1 !important;
    -webkit-text-fill-color:#79fff1 !important;
}
body.page-lasershow .wedding1801-local-grid{
    position:relative !important;
    z-index:2 !important;
    margin-top:0 !important;
}

@media(max-width:760px){
    body.page-hochzeiten .wedding1792-hero-visual,
    body.page-geburtstagsfeuerwerk .wedding1792-hero-visual,
    body.page-events .wedding1792-hero-visual,
    body.page-firmenfeuerwerk .wedding1792-hero-visual,
    body.page-mega-events .wedding1792-hero-visual,
    body.page-lasershow .wedding1792-hero-visual{
        border-radius:20px !important;
    }
    body.page-hochzeiten .wedding1792-hero-panel,
    body.page-geburtstagsfeuerwerk .wedding1792-hero-panel,
    body.page-events .wedding1792-hero-panel,
    body.page-firmenfeuerwerk .wedding1792-hero-panel,
    body.page-mega-events .wedding1792-hero-panel,
    body.page-lasershow .wedding1792-hero-panel{
        left:10px !important;
        right:10px !important;
        bottom:10px !important;
        padding:10px 12px !important;
        border-radius:12px !important;
    }
    body.page-hochzeiten .wedding1792-hero-panel span,
    body.page-geburtstagsfeuerwerk .wedding1792-hero-panel span,
    body.page-events .wedding1792-hero-panel span,
    body.page-firmenfeuerwerk .wedding1792-hero-panel span,
    body.page-mega-events .wedding1792-hero-panel span,
    body.page-lasershow .wedding1792-hero-panel span{
        font-size:.50rem !important;
        letter-spacing:.055em !important;
    }
    body.page-hochzeiten .wedding1792-hero-panel strong,
    body.page-geburtstagsfeuerwerk .wedding1792-hero-panel strong,
    body.page-events .wedding1792-hero-panel strong,
    body.page-firmenfeuerwerk .wedding1792-hero-panel strong,
    body.page-mega-events .wedding1792-hero-panel strong,
    body.page-lasershow .wedding1792-hero-panel strong{
        font-size:.78rem !important;
        line-height:1.22 !important;
    }
    body.page-lasershow .wedding1801-local-head{
        margin-bottom:34px !important;
        gap:18px !important;
    }
    body.page-lasershow .wedding1801-local-head h2#lasershow-local-title{
        font-size:clamp(2rem,10vw,3rem) !important;
        line-height:1.08 !important;
        letter-spacing:-.025em !important;
    }
}

/* ============================================================
   V18.12 – Leistungs-Heros 1:1 nach Startseiten-Bildaufbau
   ============================================================ */
/* Individuelle Akzentfarben nur für Rahmen/Badge */
body.page-hochzeiten{--service-hero-accent:#f0b9c4;--service-hero-accent2:#f2d3a0}
body.page-geburtstagsfeuerwerk{--service-hero-accent:#7fe7e0;--service-hero-accent2:#f0bd61}
body.page-events{--service-hero-accent:#59eee8;--service-hero-accent2:#9ff7df}
body.page-firmenfeuerwerk{--service-hero-accent:#8fc9ff;--service-hero-accent2:#f0c76c}
body.page-mega-events{--service-hero-accent:#ff765d;--service-hero-accent2:#ffba58}
body.page-lasershow{--service-hero-accent:#59f6e8;--service-hero-accent2:#ff6cdb}

/* Gleiche Bildspalten-Proportion wie Startseite */
body.page-hochzeiten .wedding1792-hero-grid,
body.page-geburtstagsfeuerwerk .wedding1792-hero-grid,
body.page-events .wedding1792-hero-grid,
body.page-firmenfeuerwerk .wedding1792-hero-grid,
body.page-mega-events .wedding1792-hero-grid,
body.page-lasershow .wedding1792-hero-grid{
    grid-template-columns:minmax(0,.82fr) minmax(420px,1.18fr) !important;
    gap:46px !important;
    align-items:center !important;
}

/* Außencontainer entspricht Startseiten-Visual: kein eigener Crop/kein versteckter Overflow */
body.page-hochzeiten .wedding1792-hero-visual,
body.page-geburtstagsfeuerwerk .wedding1792-hero-visual,
body.page-events .wedding1792-hero-visual,
body.page-firmenfeuerwerk .wedding1792-hero-visual,
body.page-mega-events .wedding1792-hero-visual,
body.page-lasershow .wedding1792-hero-visual{
    position:relative !important;
    width:100% !important;
    max-width:none !important;
    aspect-ratio:auto !important;
    overflow:visible !important;
    border:0 !important;
    border-radius:0 !important;
    background:none !important;
    box-shadow:none !important;
}

/* Das eigentliche Bild: sauberer 16:9-Rahmen wie Startseite */
body.page-hochzeiten .wedding1812-hero-frame,
body.page-geburtstagsfeuerwerk .wedding1812-hero-frame,
body.page-events .wedding1812-hero-frame,
body.page-firmenfeuerwerk .wedding1812-hero-frame,
body.page-mega-events .wedding1812-hero-frame,
body.page-lasershow .wedding1812-hero-frame{
    position:relative;
    overflow:hidden;
    width:100%;
    margin:0;
    aspect-ratio:16 / 9;
    border:1px solid color-mix(in srgb,var(--service-hero-accent) 30%,rgba(255,255,255,.08));
    border-radius:26px;
    background:#111;
    box-shadow:0 35px 80px rgba(0,0,0,.45);
}
body.page-hochzeiten .wedding1812-hero-frame::after,
body.page-geburtstagsfeuerwerk .wedding1812-hero-frame::after,
body.page-events .wedding1812-hero-frame::after,
body.page-firmenfeuerwerk .wedding1812-hero-frame::after,
body.page-mega-events .wedding1812-hero-frame::after,
body.page-lasershow .wedding1812-hero-frame::after{
    content:"";
    position:absolute;
    inset:0;
    pointer-events:none;
    background:linear-gradient(180deg,transparent 50%,rgba(4,5,6,.58) 100%),linear-gradient(90deg,rgba(5,6,7,.12),transparent 35%);
}
body.page-hochzeiten .wedding1812-hero-frame>img,
body.page-geburtstagsfeuerwerk .wedding1812-hero-frame>img,
body.page-events .wedding1812-hero-frame>img,
body.page-firmenfeuerwerk .wedding1812-hero-frame>img,
body.page-mega-events .wedding1812-hero-frame>img,
body.page-lasershow .wedding1812-hero-frame>img{
    position:static !important;
    display:block !important;
    width:100% !important;
    height:100% !important;
    aspect-ratio:auto !important;
    object-fit:cover !important;
    border:0 !important;
    border-radius:0 !important;
    box-shadow:none !important;
}

/* Alte Overlay-Ebene des Außencontainers deaktivieren; liegt jetzt nur im figure */
body.page-hochzeiten .wedding1792-hero-visual::after,
body.page-geburtstagsfeuerwerk .wedding1792-hero-visual::after,
body.page-events .wedding1792-hero-visual::after,
body.page-firmenfeuerwerk .wedding1792-hero-visual::after,
body.page-mega-events .wedding1792-hero-visual::after,
body.page-lasershow .wedding1792-hero-visual::after{
    display:none !important;
}

/* Infobox exakt nach Startseiten-Prinzip: frei am unteren Bildrand, nicht abgeschnitten */
body.page-hochzeiten .wedding1792-hero-panel,
body.page-geburtstagsfeuerwerk .wedding1792-hero-panel,
body.page-events .wedding1792-hero-panel,
body.page-firmenfeuerwerk .wedding1792-hero-panel,
body.page-mega-events .wedding1792-hero-panel,
body.page-lasershow .wedding1792-hero-panel{
    position:absolute !important;
    left:-22px !important;
    right:auto !important;
    bottom:28px !important;
    top:auto !important;
    z-index:5 !important;
    display:grid !important;
    gap:3px !important;
    width:auto !important;
    min-width:235px !important;
    max-width:min(360px,78%) !important;
    padding:14px 16px !important;
    overflow:visible !important;
    border:1px solid color-mix(in srgb,var(--service-hero-accent) 38%,transparent) !important;
    border-radius:13px !important;
    background:rgba(12,14,16,.90) !important;
    box-shadow:0 16px 34px rgba(0,0,0,.38) !important;
    backdrop-filter:blur(11px) !important;
}
body.page-hochzeiten .wedding1792-hero-panel span,
body.page-geburtstagsfeuerwerk .wedding1792-hero-panel span,
body.page-events .wedding1792-hero-panel span,
body.page-firmenfeuerwerk .wedding1792-hero-panel span,
body.page-mega-events .wedding1792-hero-panel span,
body.page-lasershow .wedding1792-hero-panel span{
    display:block !important;
    color:var(--service-hero-accent2) !important;
    -webkit-text-fill-color:var(--service-hero-accent2) !important;
    font-size:.54rem !important;
    line-height:1.25 !important;
    font-weight:900 !important;
    letter-spacing:.08em !important;
}
body.page-hochzeiten .wedding1792-hero-panel strong,
body.page-geburtstagsfeuerwerk .wedding1792-hero-panel strong,
body.page-events .wedding1792-hero-panel strong,
body.page-firmenfeuerwerk .wedding1792-hero-panel strong,
body.page-mega-events .wedding1792-hero-panel strong,
body.page-lasershow .wedding1792-hero-panel strong{
    display:block !important;
    margin:0 !important;
    color:#f4f5f3 !important;
    -webkit-text-fill-color:#f4f5f3 !important;
    font-size:.83rem !important;
    line-height:1.3 !important;
}

/* Längere H1 auf schmalerer Textspalte stabil halten */
body.page-firmenfeuerwerk .wedding1792-hero-copy h1,
body.page-mega-events .wedding1792-hero-copy h1,
body.page-lasershow .wedding1792-hero-copy h1{
    overflow-wrap:normal;
    word-break:normal;
    hyphens:auto;
}

@media(max-width:1050px){
    body.page-hochzeiten .wedding1792-hero-grid,
    body.page-geburtstagsfeuerwerk .wedding1792-hero-grid,
    body.page-events .wedding1792-hero-grid,
    body.page-firmenfeuerwerk .wedding1792-hero-grid,
    body.page-mega-events .wedding1792-hero-grid,
    body.page-lasershow .wedding1792-hero-grid{
        grid-template-columns:1fr !important;
        gap:30px !important;
    }
    body.page-hochzeiten .wedding1792-hero-visual,
    body.page-geburtstagsfeuerwerk .wedding1792-hero-visual,
    body.page-events .wedding1792-hero-visual,
    body.page-firmenfeuerwerk .wedding1792-hero-visual,
    body.page-mega-events .wedding1792-hero-visual,
    body.page-lasershow .wedding1792-hero-visual{
        width:100% !important;
        max-width:860px !important;
        justify-self:start !important;
    }
}
@media(max-width:700px){
    body.page-hochzeiten .wedding1812-hero-frame,
    body.page-geburtstagsfeuerwerk .wedding1812-hero-frame,
    body.page-events .wedding1812-hero-frame,
    body.page-firmenfeuerwerk .wedding1812-hero-frame,
    body.page-mega-events .wedding1812-hero-frame,
    body.page-lasershow .wedding1812-hero-frame{
        border-radius:20px;
    }
    body.page-hochzeiten .wedding1792-hero-panel,
    body.page-geburtstagsfeuerwerk .wedding1792-hero-panel,
    body.page-events .wedding1792-hero-panel,
    body.page-firmenfeuerwerk .wedding1792-hero-panel,
    body.page-mega-events .wedding1792-hero-panel,
    body.page-lasershow .wedding1792-hero-panel{
        left:12px !important;
        right:12px !important;
        bottom:12px !important;
        width:auto !important;
        min-width:0 !important;
        max-width:none !important;
        padding:12px 14px !important;
    }
}

/* ============================================================
   V18.13 – Startseite + Leistungs-Heros exakt angleichen
   Größerer Bildrahmen, etwas kompaktere H1, überall gleiche Proportionen
   ============================================================ */

/* Einheitliche Hero-Proportion: Bild bekommt bewusst mehr Raum */
.home62-hero-grid,
body.page-hochzeiten .wedding1792-hero-grid,
body.page-geburtstagsfeuerwerk .wedding1792-hero-grid,
body.page-events .wedding1792-hero-grid,
body.page-firmenfeuerwerk .wedding1792-hero-grid,
body.page-mega-events .wedding1792-hero-grid,
body.page-lasershow .wedding1792-hero-grid{
    grid-template-columns:minmax(0,.72fr) minmax(480px,1.28fr) !important;
    gap:42px !important;
    align-items:center !important;
}

/* Startseite: Bildrahmen jetzt wie auf allen Leistungsseiten echtes 16:9 */
.home62-hero-visual{
    width:100%;
    min-width:0;
}
.home62-hero-visual figure{
    width:100%;
    aspect-ratio:16 / 9 !important;
    border-radius:26px !important;
}
.home62-hero-visual img{
    display:block;
    width:100%;
    height:100%;
    object-fit:cover;
}

/* Hero-Bildrahmen der Leistungsseiten minimal größer/präsenter */
body.page-hochzeiten .wedding1812-hero-frame,
body.page-geburtstagsfeuerwerk .wedding1812-hero-frame,
body.page-events .wedding1812-hero-frame,
body.page-firmenfeuerwerk .wedding1812-hero-frame,
body.page-mega-events .wedding1812-hero-frame,
body.page-lasershow .wedding1812-hero-frame{
    width:100%;
    aspect-ratio:16 / 9 !important;
    border-radius:26px;
}

/* Große Überschrift etwas kompakter – Startseite und Leistungen dieselbe Größenlogik */
.home62-hero-copy h1,
body.page-hochzeiten .wedding1792-hero-copy h1,
body.page-geburtstagsfeuerwerk .wedding1792-hero-copy h1,
body.page-events .wedding1792-hero-copy h1,
body.page-firmenfeuerwerk .wedding1792-hero-copy h1,
body.page-mega-events .wedding1792-hero-copy h1,
body.page-lasershow .wedding1792-hero-copy h1{
    font-size:clamp(2.9rem,4.7vw,5.25rem) !important;
    line-height:.94 !important;
    letter-spacing:-.048em !important;
    max-width:100% !important;
    overflow-wrap:normal !important;
    word-break:normal !important;
}

/* Beschreibung im Rahmen auf allen Seiten optisch gleich groß */
.home62-hero-badge,
body.page-hochzeiten .wedding1792-hero-panel,
body.page-geburtstagsfeuerwerk .wedding1792-hero-panel,
body.page-events .wedding1792-hero-panel,
body.page-firmenfeuerwerk .wedding1792-hero-panel,
body.page-mega-events .wedding1792-hero-panel,
body.page-lasershow .wedding1792-hero-panel{
    min-width:245px !important;
    max-width:min(380px,80%) !important;
    padding:14px 16px !important;
    border-radius:13px !important;
}
.home62-hero-badge span,
body.page-hochzeiten .wedding1792-hero-panel span,
body.page-geburtstagsfeuerwerk .wedding1792-hero-panel span,
body.page-events .wedding1792-hero-panel span,
body.page-firmenfeuerwerk .wedding1792-hero-panel span,
body.page-mega-events .wedding1792-hero-panel span,
body.page-lasershow .wedding1792-hero-panel span{
    font-size:.55rem !important;
    line-height:1.25 !important;
}
.home62-hero-badge strong,
body.page-hochzeiten .wedding1792-hero-panel strong,
body.page-geburtstagsfeuerwerk .wedding1792-hero-panel strong,
body.page-events .wedding1792-hero-panel strong,
body.page-firmenfeuerwerk .wedding1792-hero-panel strong,
body.page-mega-events .wedding1792-hero-panel strong,
body.page-lasershow .wedding1792-hero-panel strong{
    font-size:.84rem !important;
    line-height:1.3 !important;
}

/* Tablet: Bild nutzt die volle verfügbare Breite */
@media(max-width:1100px){
    .home62-hero-grid,
    body.page-hochzeiten .wedding1792-hero-grid,
    body.page-geburtstagsfeuerwerk .wedding1792-hero-grid,
    body.page-events .wedding1792-hero-grid,
    body.page-firmenfeuerwerk .wedding1792-hero-grid,
    body.page-mega-events .wedding1792-hero-grid,
    body.page-lasershow .wedding1792-hero-grid{
        grid-template-columns:1fr !important;
        gap:30px !important;
    }
    .home62-hero-visual,
    body.page-hochzeiten .wedding1792-hero-visual,
    body.page-geburtstagsfeuerwerk .wedding1792-hero-visual,
    body.page-events .wedding1792-hero-visual,
    body.page-firmenfeuerwerk .wedding1792-hero-visual,
    body.page-mega-events .wedding1792-hero-visual,
    body.page-lasershow .wedding1792-hero-visual{
        width:100% !important;
        max-width:900px !important;
    }
}

/* Handy: weiterhin 16:9, Überschriften kompakter und Badge sicher im Rahmen */
@media(max-width:700px){
    .home62-hero-copy h1,
    body.page-hochzeiten .wedding1792-hero-copy h1,
    body.page-geburtstagsfeuerwerk .wedding1792-hero-copy h1,
    body.page-events .wedding1792-hero-copy h1,
    body.page-firmenfeuerwerk .wedding1792-hero-copy h1,
    body.page-mega-events .wedding1792-hero-copy h1,
    body.page-lasershow .wedding1792-hero-copy h1{
        font-size:clamp(2.35rem,10.8vw,3.65rem) !important;
        line-height:.96 !important;
        letter-spacing:-.04em !important;
    }
    .home62-hero-visual figure,
    body.page-hochzeiten .wedding1812-hero-frame,
    body.page-geburtstagsfeuerwerk .wedding1812-hero-frame,
    body.page-events .wedding1812-hero-frame,
    body.page-firmenfeuerwerk .wedding1812-hero-frame,
    body.page-mega-events .wedding1812-hero-frame,
    body.page-lasershow .wedding1812-hero-frame{
        aspect-ratio:16 / 9 !important;
        border-radius:20px !important;
    }
    .home62-hero-badge,
    body.page-hochzeiten .wedding1792-hero-panel,
    body.page-geburtstagsfeuerwerk .wedding1792-hero-panel,
    body.page-events .wedding1792-hero-panel,
    body.page-firmenfeuerwerk .wedding1792-hero-panel,
    body.page-mega-events .wedding1792-hero-panel,
    body.page-lasershow .wedding1792-hero-panel{
        left:10px !important;
        right:10px !important;
        bottom:10px !important;
        width:auto !important;
        min-width:0 !important;
        max-width:none !important;
        padding:10px 12px !important;
    }
    .home62-hero-badge span,
    body.page-hochzeiten .wedding1792-hero-panel span,
    body.page-geburtstagsfeuerwerk .wedding1792-hero-panel span,
    body.page-events .wedding1792-hero-panel span,
    body.page-firmenfeuerwerk .wedding1792-hero-panel span,
    body.page-mega-events .wedding1792-hero-panel span,
    body.page-lasershow .wedding1792-hero-panel span{
        font-size:.48rem !important;
    }
    .home62-hero-badge strong,
    body.page-hochzeiten .wedding1792-hero-panel strong,
    body.page-geburtstagsfeuerwerk .wedding1792-hero-panel strong,
    body.page-events .wedding1792-hero-panel strong,
    body.page-firmenfeuerwerk .wedding1792-hero-panel strong,
    body.page-mega-events .wedding1792-hero-panel strong,
    body.page-lasershow .wedding1792-hero-panel strong{
        font-size:.72rem !important;
        line-height:1.24 !important;
    }
}

/* ============================================================
   V18.14 – Einheitliches Hero-System: exakt 50/50
   Startseite, Dienstleistungen und alle Leistungs-Unterseiten
   ============================================================ */

/* Desktop: immer exakt 50 % Text / 50 % Bild */
.home62-hero-grid,
.services67-hero-grid,
body.page-hochzeiten .wedding1792-hero-grid,
body.page-geburtstagsfeuerwerk .wedding1792-hero-grid,
body.page-events .wedding1792-hero-grid,
body.page-firmenfeuerwerk .wedding1792-hero-grid,
body.page-mega-events .wedding1792-hero-grid,
body.page-lasershow .wedding1792-hero-grid{
    display:grid !important;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr) !important;
    gap:46px !important;
    align-items:center !important;
}

/* Gleiche Hero-Innenabstände */
.home62-hero,
.services67-hero,
body.page-hochzeiten .wedding1792-hero,
body.page-geburtstagsfeuerwerk .wedding1792-hero,
body.page-events .wedding1792-hero,
body.page-firmenfeuerwerk .wedding1792-hero,
body.page-mega-events .wedding1792-hero,
body.page-lasershow .wedding1792-hero{
    padding-top:58px !important;
    padding-bottom:56px !important;
}

/* Beide Spalten dürfen exakt gleich schrumpfen */
.home62-hero-copy,
.home62-hero-visual,
.services67-hero-copy,
.services67-hero-visual,
body.page-hochzeiten .wedding1792-hero-copy,
body.page-hochzeiten .wedding1792-hero-visual,
body.page-geburtstagsfeuerwerk .wedding1792-hero-copy,
body.page-geburtstagsfeuerwerk .wedding1792-hero-visual,
body.page-events .wedding1792-hero-copy,
body.page-events .wedding1792-hero-visual,
body.page-firmenfeuerwerk .wedding1792-hero-copy,
body.page-firmenfeuerwerk .wedding1792-hero-visual,
body.page-mega-events .wedding1792-hero-copy,
body.page-mega-events .wedding1792-hero-visual,
body.page-lasershow .wedding1792-hero-copy,
body.page-lasershow .wedding1792-hero-visual{
    width:100% !important;
    max-width:none !important;
    min-width:0 !important;
}

/* Einheitliche Bildrahmen: 16:9, gleiche Größe und Radius */
.home62-hero-visual .home1814-hero-frame,
.services67-hero-visual .services1814-hero-frame,
body.page-hochzeiten .wedding1812-hero-frame,
body.page-geburtstagsfeuerwerk .wedding1812-hero-frame,
body.page-events .wedding1812-hero-frame,
body.page-firmenfeuerwerk .wedding1812-hero-frame,
body.page-mega-events .wedding1812-hero-frame,
body.page-lasershow .wedding1812-hero-frame{
    position:relative !important;
    display:block !important;
    width:100% !important;
    margin:0 !important;
    aspect-ratio:16 / 9 !important;
    overflow:hidden !important;
    border-radius:26px !important;
    background:#101214 !important;
    box-shadow:0 30px 70px rgba(0,0,0,.38) !important;
}

.home62-hero-visual .home1814-hero-frame img,
.services67-hero-visual .services1814-hero-frame img,
body.page-hochzeiten .wedding1812-hero-frame img,
body.page-geburtstagsfeuerwerk .wedding1812-hero-frame img,
body.page-events .wedding1812-hero-frame img,
body.page-firmenfeuerwerk .wedding1812-hero-frame img,
body.page-mega-events .wedding1812-hero-frame img,
body.page-lasershow .wedding1812-hero-frame img{
    display:block !important;
    width:100% !important;
    height:100% !important;
    object-fit:cover !important;
}

/* Dienstleistungen: altes min-height/overflow des Bildcontainers neutralisieren */
.services67-hero-visual{
    position:relative !important;
    min-height:0 !important;
    overflow:visible !important;
    border:0 !important;
    border-radius:0 !important;
    background:transparent !important;
    box-shadow:none !important;
}
.services67-hero-visual::after{display:none !important}

/* Unterseiten: Container genauso wie Startseite/Dienstleistungen */
body.page-hochzeiten .wedding1792-hero-visual,
body.page-geburtstagsfeuerwerk .wedding1792-hero-visual,
body.page-events .wedding1792-hero-visual,
body.page-firmenfeuerwerk .wedding1792-hero-visual,
body.page-mega-events .wedding1792-hero-visual,
body.page-lasershow .wedding1792-hero-visual{
    position:relative !important;
    overflow:visible !important;
    aspect-ratio:auto !important;
    border:0 !important;
    border-radius:0 !important;
    background:transparent !important;
    box-shadow:none !important;
}

/* Einheitliche H1-Geometrie – Inhalt/Farbe darf je Seite abweichen */
.home62-hero-copy h1,
.services67-hero-copy h1,
body.page-hochzeiten .wedding1792-hero-copy h1,
body.page-geburtstagsfeuerwerk .wedding1792-hero-copy h1,
body.page-events .wedding1792-hero-copy h1,
body.page-firmenfeuerwerk .wedding1792-hero-copy h1,
body.page-mega-events .wedding1792-hero-copy h1,
body.page-lasershow .wedding1792-hero-copy h1{
    margin-top:8px !important;
    margin-bottom:18px !important;
    max-width:100% !important;
    font-size:clamp(2.8rem,4.35vw,5.05rem) !important;
    line-height:.94 !important;
    letter-spacing:-.047em !important;
}

/* Gleiche Infobox-Geometrie über dem unteren Bildrand */
.home62-hero-badge,
.services67-hero-panel,
body.page-hochzeiten .wedding1792-hero-panel,
body.page-geburtstagsfeuerwerk .wedding1792-hero-panel,
body.page-events .wedding1792-hero-panel,
body.page-firmenfeuerwerk .wedding1792-hero-panel,
body.page-mega-events .wedding1792-hero-panel,
body.page-lasershow .wedding1792-hero-panel{
    position:absolute !important;
    left:18px !important;
    right:auto !important;
    bottom:18px !important;
    width:auto !important;
    min-width:245px !important;
    max-width:min(380px,calc(100% - 36px)) !important;
    padding:14px 16px !important;
    border-radius:13px !important;
    z-index:4 !important;
}

.home62-hero-badge span,
.services67-hero-panel span,
body.page-hochzeiten .wedding1792-hero-panel span,
body.page-geburtstagsfeuerwerk .wedding1792-hero-panel span,
body.page-events .wedding1792-hero-panel span,
body.page-firmenfeuerwerk .wedding1792-hero-panel span,
body.page-mega-events .wedding1792-hero-panel span,
body.page-lasershow .wedding1792-hero-panel span{
    font-size:.55rem !important;
    line-height:1.25 !important;
}
.home62-hero-badge strong,
.services67-hero-panel strong,
body.page-hochzeiten .wedding1792-hero-panel strong,
body.page-geburtstagsfeuerwerk .wedding1792-hero-panel strong,
body.page-events .wedding1792-hero-panel strong,
body.page-firmenfeuerwerk .wedding1792-hero-panel strong,
body.page-mega-events .wedding1792-hero-panel strong,
body.page-lasershow .wedding1792-hero-panel strong{
    font-size:.84rem !important;
    line-height:1.3 !important;
}

/* Tablet/Handy: alle exakt am selben Breakpoint untereinander */
@media(max-width:1050px){
    .home62-hero-grid,
    .services67-hero-grid,
    body.page-hochzeiten .wedding1792-hero-grid,
    body.page-geburtstagsfeuerwerk .wedding1792-hero-grid,
    body.page-events .wedding1792-hero-grid,
    body.page-firmenfeuerwerk .wedding1792-hero-grid,
    body.page-mega-events .wedding1792-hero-grid,
    body.page-lasershow .wedding1792-hero-grid{
        grid-template-columns:1fr !important;
        gap:30px !important;
    }
}

@media(max-width:700px){
    .home62-hero,
    .services67-hero,
    body.page-hochzeiten .wedding1792-hero,
    body.page-geburtstagsfeuerwerk .wedding1792-hero,
    body.page-events .wedding1792-hero,
    body.page-firmenfeuerwerk .wedding1792-hero,
    body.page-mega-events .wedding1792-hero,
    body.page-lasershow .wedding1792-hero{
        padding-top:40px !important;
        padding-bottom:44px !important;
    }
    .home62-hero-copy h1,
    .services67-hero-copy h1,
    body.page-hochzeiten .wedding1792-hero-copy h1,
    body.page-geburtstagsfeuerwerk .wedding1792-hero-copy h1,
    body.page-events .wedding1792-hero-copy h1,
    body.page-firmenfeuerwerk .wedding1792-hero-copy h1,
    body.page-mega-events .wedding1792-hero-copy h1,
    body.page-lasershow .wedding1792-hero-copy h1{
        font-size:clamp(2.35rem,10.6vw,3.65rem) !important;
        line-height:.96 !important;
        letter-spacing:-.04em !important;
    }
    .home62-hero-visual .home1814-hero-frame,
    .services67-hero-visual .services1814-hero-frame,
    body.page-hochzeiten .wedding1812-hero-frame,
    body.page-geburtstagsfeuerwerk .wedding1812-hero-frame,
    body.page-events .wedding1812-hero-frame,
    body.page-firmenfeuerwerk .wedding1812-hero-frame,
    body.page-mega-events .wedding1812-hero-frame,
    body.page-lasershow .wedding1812-hero-frame{
        border-radius:20px !important;
    }
    .home62-hero-badge,
    .services67-hero-panel,
    body.page-hochzeiten .wedding1792-hero-panel,
    body.page-geburtstagsfeuerwerk .wedding1792-hero-panel,
    body.page-events .wedding1792-hero-panel,
    body.page-firmenfeuerwerk .wedding1792-hero-panel,
    body.page-mega-events .wedding1792-hero-panel,
    body.page-lasershow .wedding1792-hero-panel{
        left:10px !important;
        right:10px !important;
        bottom:10px !important;
        min-width:0 !important;
        max-width:none !important;
        width:auto !important;
        padding:10px 12px !important;
    }
}

/* ============================================================
   V18.16 – Galerie großflächig überarbeitet
   ============================================================ */
body.page-galerie{
  --gallery-bg:#081117;
  --gallery-bg2:#0e1d25;
  --gallery-accent:#57d8c7;
  --gallery-accent2:#ffbf6b;
  --gallery-accent3:#7fb6ff;
  --gallery-ink:#eaf4f6;
  --gallery-copy:#bfd0d6;
}
.body-lock{overflow:hidden}
.gallery1900-hero{
  position:relative;
  overflow:hidden;
  padding:88px 0 72px;
  background:
    radial-gradient(circle at 12% 14%, rgba(87,216,199,.16), transparent 22%),
    radial-gradient(circle at 86% 10%, rgba(255,191,107,.14), transparent 24%),
    radial-gradient(circle at 74% 82%, rgba(127,182,255,.12), transparent 18%),
    linear-gradient(135deg,#081117 0%,#0b161d 42%,#10212b 100%);
}
.gallery1900-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.02fr);gap:34px;align-items:center}
.gallery1900-hero-copy h1{margin:8px 0 16px;color:#fff;font-size:clamp(2.55rem,5vw,4.5rem);line-height:.95}
.gallery1900-hero-copy p:not(.eyebrow){max-width:690px;color:var(--gallery-copy);font-size:1.05rem;line-height:1.72}
.gallery1900-hero-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:22px 0 0}
.gallery1900-hero-stats>div{padding:16px 18px;border:1px solid rgba(255,255,255,.08);border-radius:18px;background:linear-gradient(145deg,rgba(255,255,255,.06),rgba(255,255,255,.03));box-shadow:0 18px 32px rgba(0,0,0,.18)}
.gallery1900-hero-stats strong{display:block;color:#fff;font-size:1.45rem}
.gallery1900-hero-stats span{display:block;margin-top:3px;color:#c8d6db;font-size:.82rem}
.gallery1900-hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}
.gallery1900-hero-actions .button-secondary{background:linear-gradient(135deg,rgba(255,255,255,.08),rgba(255,255,255,.04))!important;border-color:rgba(255,255,255,.12)!important;color:#fff!important;-webkit-text-fill-color:#fff!important}
.gallery1900-hero-visual{position:relative}
.gallery1900-hero-collage{display:grid;grid-template-columns:1.08fr .92fr;gap:14px}
.gallery1900-hero-collage figure{position:relative;overflow:hidden;min-height:220px;margin:0;border:1px solid rgba(255,255,255,.10);border-radius:24px;box-shadow:0 20px 48px rgba(0,0,0,.25)}
.gallery1900-hero-collage figure:nth-child(1){grid-row:span 2;min-height:456px}
.gallery1900-hero-collage img{width:100%;height:100%;object-fit:cover;display:block}
.gallery1900-hero-collage figcaption{position:absolute;left:14px;right:14px;bottom:14px;padding:11px 13px;border:1px solid rgba(255,255,255,.12);border-radius:14px;background:linear-gradient(180deg,rgba(7,10,13,.15),rgba(7,10,13,.74));color:#fff;font-weight:800;letter-spacing:.04em}
.gallery1900-categories-section,.gallery1900-masonry-section{background:linear-gradient(180deg,#f7fafb 0%,#edf4f6 100%)}
.gallery1900-categories-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px;margin-top:24px}
.gallery1900-category-card{display:grid;align-content:start;gap:8px;padding:22px 18px;border:1px solid rgba(11,27,34,.08);border-radius:22px;background:linear-gradient(145deg,#ffffff,#f5fbfd);box-shadow:0 16px 36px rgba(11,27,34,.06);text-align:left;cursor:pointer;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease,background .18s ease}
.gallery1900-category-card:hover{transform:translateY(-3px);border-color:rgba(87,216,199,.45);box-shadow:0 18px 40px rgba(11,27,34,.10)}
.gallery1900-category-icon{display:grid;place-items:center;width:44px;height:44px;border-radius:14px;background:linear-gradient(135deg,rgba(87,216,199,.18),rgba(127,182,255,.16));color:#0d6971;font-size:1.2rem;font-weight:900}
.gallery1900-category-card strong{color:#11212b;font-size:1rem}
.gallery1900-category-card small{color:#3f6d76;font-size:.8rem;font-weight:800}
.gallery1900-category-card em{color:#5d7076;font-size:.88rem;font-style:normal;line-height:1.52}
.gallery1900-videos-section{background:linear-gradient(135deg,#091318 0%,#102029 100%)}
.gallery1900-videos-section .section-heading h2,.gallery1900-videos-section .section-heading p:not(.eyebrow){color:#fff}
.gallery1900-videos-section .section-heading p:not(.eyebrow){color:#c4d3d7}
.gallery1900-videos-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:24px}
.gallery1900-video-card{overflow:hidden;border:1px solid rgba(255,255,255,.08);border-radius:24px;background:linear-gradient(145deg,rgba(255,255,255,.06),rgba(255,255,255,.03));box-shadow:0 18px 36px rgba(0,0,0,.18)}
.gallery1900-video-thumb{position:relative;aspect-ratio:16/10;overflow:hidden}
.gallery1900-video-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.gallery1900-video-thumb::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 46%,rgba(0,0,0,.36) 100%)}
.gallery1900-video-play{position:absolute;left:18px;top:18px;display:grid;place-items:center;width:52px;height:52px;border:1px solid rgba(255,255,255,.18);border-radius:50%;background:rgba(7,14,18,.58);color:#fff;font-size:1.1rem;z-index:1}
.gallery1900-video-duration{position:absolute;right:16px;bottom:16px;padding:8px 10px;border-radius:999px;background:rgba(7,14,18,.62);color:#fff;font-size:.78rem;font-weight:800;z-index:1}
.gallery1900-video-copy{padding:20px}
.gallery1900-video-copy small{display:block;color:#73ebdd;font-size:.75rem;font-weight:900;letter-spacing:.08em}
.gallery1900-video-copy h3{margin:8px 0 9px;color:#fff;font-size:1.25rem}
.gallery1900-video-copy p{margin:0;color:#c4d3d7;line-height:1.66}
.gallery1900-filter-head h2{margin:8px 0 12px;font-size:clamp(2rem,3vw,3rem)}
.gallery1900-filter{margin:18px 0 18px}
.gallery1900-filter button{background:#fff;border:1px solid rgba(11,27,34,.12);color:#1a2b34;font-weight:800}
.gallery1900-filter button.active,.gallery1900-filter button:hover{background:linear-gradient(135deg,rgba(87,216,199,.18),rgba(255,191,107,.18));border-color:rgba(87,216,199,.45);color:#0f3f48}
.gallery1900-masonry-grid{columns:4 250px;column-gap:18px}
.gallery1900-masonry-item{position:relative;display:inline-block;width:100%;margin:0 0 18px;overflow:hidden;border:1px solid rgba(11,27,34,.10);border-radius:24px;background:#fff;box-shadow:0 18px 40px rgba(11,27,34,.08)}
.gallery1900-masonry-item img{display:block;width:100%;height:auto;min-height:240px;object-fit:cover;transition:transform .28s ease}
.gallery1900-masonry-item>span{display:grid;gap:6px;padding:16px 16px 18px;background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(249,252,252,.96))}
.gallery1900-masonry-item small{color:#3a8d81;font-size:.73rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.gallery1900-masonry-item strong{color:#12232d;font-size:1.08rem}
.gallery1900-masonry-item em{color:#5f7078;font-style:normal;line-height:1.56}
.gallery1900-masonry-item:hover img{transform:scale(1.04)}
.gallery1900-structure-section{background:linear-gradient(180deg,#0b1419 0%,#10212a 100%)}
.gallery1900-structure-card{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:24px;padding:34px;border:1px solid rgba(255,255,255,.08);border-radius:30px;background:linear-gradient(145deg,rgba(255,255,255,.06),rgba(255,255,255,.03));box-shadow:0 20px 42px rgba(0,0,0,.18)}
.gallery1900-structure-copy h2,.gallery1900-structure-copy p:not(.eyebrow){color:#fff}
.gallery1900-structure-copy p:not(.eyebrow){color:#c7d5d9}
.gallery1900-structure-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.gallery1900-structure-list>div{padding:18px;border:1px solid rgba(255,255,255,.08);border-radius:18px;background:linear-gradient(145deg,rgba(255,255,255,.07),rgba(255,255,255,.03))}
.gallery1900-structure-list strong{display:block;color:#fff;font-size:1rem}
.gallery1900-structure-list span{display:block;margin-top:6px;color:#c7d5d9;line-height:1.58}
.gallery1900-public-cta{border-radius:28px;background:radial-gradient(circle at 82% 26%,rgba(87,216,199,.14),transparent 28%),linear-gradient(145deg,#0b1419 0%,#102029 100%);border:1px solid rgba(255,255,255,.08)}
.gallery1900-public-cta h2,.gallery1900-public-cta p:not(.eyebrow){color:#fff}
.gallery1900-public-cta p:not(.eyebrow){color:#c7d5d9}
.gallery1900-public-cta-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.gallery1900-public-cta-actions .button-secondary{background:linear-gradient(135deg,rgba(255,255,255,.08),rgba(255,255,255,.04))!important;border-color:rgba(255,255,255,.12)!important;color:#fff!important;-webkit-text-fill-color:#fff!important}

@media(max-width:1200px){
  .gallery1900-categories-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .gallery1900-videos-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .gallery1900-structure-card{grid-template-columns:1fr}
}
@media(max-width:980px){
  .gallery1900-hero-grid{grid-template-columns:1fr}
  .gallery1900-hero-collage figure:nth-child(1){min-height:340px}
  .gallery1900-masonry-grid{columns:3 220px}
}
@media(max-width:760px){
  .gallery1900-hero{padding:72px 0 56px}
  .gallery1900-hero-stats{grid-template-columns:1fr}
  .gallery1900-categories-grid,.gallery1900-videos-grid,.gallery1900-structure-list{grid-template-columns:1fr}
  .gallery1900-masonry-grid{columns:2 180px}
  .gallery1900-public-cta-actions{justify-content:flex-start}
}
@media(max-width:560px){
  .gallery1900-hero-collage{grid-template-columns:1fr}
  .gallery1900-hero-collage figure:nth-child(1){grid-row:auto;min-height:260px}
  .gallery1900-masonry-grid{columns:1}
  .gallery1900-structure-card{padding:24px}
  .gallery1900-category-card,.gallery1900-video-copy{padding:18px}
}

/* ============================================================
   V18.17 – Galerie: Blau/Grau, einheitliche Formate, Großansicht
   ============================================================ */
body.page-galerie{
    background:#0b141b;
    color:#b9c8cf;
    --gallery-panel:#13232d;
    --gallery-panel-2:#182b36;
    --gallery-border:rgba(150,181,196,.16);
    --gallery-text:#d5e1e6;
    --gallery-muted:#91a5af;
    --gallery-cyan:#67c9d3;
    --gallery-blue:#769ec8;
}
body.page-galerie .gallery1900-hero,
body.page-galerie .gallery1900-categories-section,
body.page-galerie .gallery1900-videos-section,
body.page-galerie .gallery1900-masonry-section,
body.page-galerie .gallery1900-structure-section,
body.page-galerie .section-tight{
    background:
      radial-gradient(circle at 12% 10%,rgba(103,201,211,.08),transparent 24%),
      radial-gradient(circle at 88% 28%,rgba(118,158,200,.08),transparent 26%),
      linear-gradient(180deg,#0b151c 0%,#0e1b24 100%);
}
body.page-galerie .gallery1900-categories-section,
body.page-galerie .gallery1900-masonry-section{
    border-top:1px solid rgba(150,181,196,.08);
    border-bottom:1px solid rgba(150,181,196,.08);
}
body.page-galerie :is(.gallery1900-hero-copy h1,.section-heading h2,.gallery1900-filter-head h2,.gallery1900-structure-copy h2,.gallery1900-public-cta h2){
    color:var(--gallery-text);
    -webkit-text-fill-color:var(--gallery-text);
}
body.page-galerie :is(.gallery1900-hero-copy p:not(.eyebrow),.section-heading p:not(.eyebrow),.gallery1900-filter-head p,.gallery1900-structure-copy p:not(.eyebrow),.gallery1900-public-cta p:not(.eyebrow)){
    color:#a9bbc3;
}
body.page-galerie .gallery1900-hero-stats>div,
body.page-galerie .gallery1900-category-card,
body.page-galerie .gallery1900-video-card,
body.page-galerie .gallery1900-structure-card,
body.page-galerie .gallery1900-structure-list>div,
body.page-galerie .gallery1900-public-cta{
    border-color:var(--gallery-border);
    background:linear-gradient(145deg,#152630,#101d25);
    box-shadow:0 18px 38px rgba(0,0,0,.20);
}
body.page-galerie .gallery1900-hero-stats strong,
body.page-galerie .gallery1900-category-card strong,
body.page-galerie .gallery1900-video-copy h3,
body.page-galerie .gallery1900-structure-list strong{
    color:var(--gallery-text);
}
body.page-galerie .gallery1900-hero-stats span,
body.page-galerie .gallery1900-category-card em,
body.page-galerie .gallery1900-video-copy p,
body.page-galerie .gallery1900-structure-list span{
    color:var(--gallery-muted);
}
body.page-galerie .gallery1900-category-card{
    color:inherit;
}
body.page-galerie .gallery1900-category-card:hover{
    border-color:rgba(103,201,211,.42);
    background:linear-gradient(145deg,#19303b,#132630);
}
body.page-galerie .gallery1900-category-icon{
    background:linear-gradient(135deg,rgba(103,201,211,.16),rgba(118,158,200,.18));
    color:#91d5dc;
}
body.page-galerie .gallery1900-category-card small,
body.page-galerie .gallery1900-video-copy small{
    color:#7fc5cf;
}
body.page-galerie .gallery1900-filter button{
    background:#142630;
    border-color:rgba(150,181,196,.16);
    color:#b7c7ce;
}
body.page-galerie .gallery1900-filter button.active,
body.page-galerie .gallery1900-filter button:hover{
    background:linear-gradient(135deg,#1a3943,#1c3040);
    border-color:rgba(103,201,211,.42);
    color:#d2e4e8;
}

/* Hero-Collage: vier einheitliche 16:9 Bilder */
body.page-galerie .gallery1900-hero-collage{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:14px;
}
body.page-galerie .gallery1900-hero-collage figure,
body.page-galerie .gallery1900-hero-collage figure:nth-child(1){
    grid-row:auto;
    min-height:0;
    aspect-ratio:16/9;
    border-color:rgba(150,181,196,.18);
    border-radius:20px;
    background:#102029;
}
body.page-galerie .gallery1900-hero-collage figcaption{
    border-color:rgba(150,181,196,.18);
    background:linear-gradient(180deg,rgba(12,25,33,.18),rgba(12,25,33,.86));
    color:#d5e1e6;
}

/* Videos: einheitlich 16:9 und klickbar für Großansicht */
body.page-galerie .gallery1900-videos-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
body.page-galerie .gallery1900-video-card{
    display:block;
    width:100%;
    padding:0;
    color:inherit;
    text-align:left;
    cursor:pointer;
    font:inherit;
}
body.page-galerie .gallery1900-video-thumb{aspect-ratio:16/9}
body.page-galerie .gallery1900-video-thumb img{width:100%;height:100%;object-fit:cover}
body.page-galerie .gallery1900-video-play{
    border-color:rgba(150,181,196,.24);
    background:rgba(15,31,40,.78);
    color:#c9dce1;
}
body.page-galerie .gallery1900-video-duration{
    background:rgba(15,31,40,.82);
    color:#c9dce1;
}

/* Bilder: gleichmäßiges Raster, standardmäßig 16:9 */
body.page-galerie .gallery1900-masonry-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:18px;
    columns:auto;
}
body.page-galerie .gallery1900-masonry-item{
    display:flex;
    flex-direction:column;
    width:auto;
    height:100%;
    margin:0;
    overflow:hidden;
    border-color:var(--gallery-border);
    border-radius:20px;
    background:linear-gradient(145deg,#152630,#101d25);
    box-shadow:0 16px 34px rgba(0,0,0,.18);
}
body.page-galerie .gallery1900-masonry-item img,
body.page-galerie .gallery1900-masonry-item:nth-child(5n+1) img{
    width:100%;
    height:auto;
    min-height:0;
    aspect-ratio:16/9;
    object-fit:cover;
}
body.page-galerie .gallery1900-masonry-item.is-portrait{
    grid-row:span 2;
}
body.page-galerie .gallery1900-masonry-item.is-portrait img{
    aspect-ratio:9/16;
    flex:1 1 auto;
}
body.page-galerie .gallery1900-masonry-item>span{
    flex:0 0 auto;
    min-height:126px;
    background:linear-gradient(180deg,#172a35,#12222b);
}
body.page-galerie .gallery1900-masonry-item small{color:#75bdc7}
body.page-galerie .gallery1900-masonry-item strong{color:#d5e1e6}
body.page-galerie .gallery1900-masonry-item em{color:#92a7b0}

/* Großansicht passend zur Galerie, ohne weiße Flächen */
body.page-galerie .gallery-lightbox-backdrop{background:rgba(5,12,17,.95)}
body.page-galerie .gallery-lightbox-dialog figure{
    border-color:rgba(150,181,196,.22);
    background:#0e1b23;
}
body.page-galerie .gallery-lightbox-dialog figure img{background:#09141b}
body.page-galerie .gallery-lightbox-dialog figcaption{background:#101f28}
body.page-galerie .gallery-lightbox-dialog figcaption strong{color:#d7e3e8}
body.page-galerie .gallery-lightbox-dialog figcaption span{color:#94a8b1}
body.page-galerie .gallery-lightbox-close,
body.page-galerie .gallery-lightbox-nav{
    border-color:rgba(150,181,196,.22);
    background:rgba(18,38,48,.90);
    color:#c8d9df;
}
body.page-galerie .gallery-lightbox-count{
    display:block;
    margin-top:5px;
    color:#6f8995;
    font-size:.76rem;
    font-weight:800;
}

@media(max-width:1080px){
    body.page-galerie .gallery1900-masonry-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
    body.page-galerie .gallery1900-videos-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:700px){
    body.page-galerie .gallery1900-hero-collage{grid-template-columns:1fr}
    body.page-galerie .gallery1900-videos-grid,
    body.page-galerie .gallery1900-masonry-grid{grid-template-columns:1fr}
    body.page-galerie .gallery1900-masonry-item.is-portrait{grid-row:auto}
    body.page-galerie .gallery1900-masonry-item.is-portrait img{max-height:72vh;object-fit:cover}
}

/* ============================================================
   V18.18 – Shop / Feuerwerk kaufen: kompletter Overhaul
   ============================================================ */
body:is(.page-silvester,.page-produkt,.page-warenkorb,.page-checkout,.page-bestellstatus,.page-produkt-antrag){
    --shop18-bg:#071015;
    --shop18-bg-soft:#0b171e;
    --shop18-panel:#101d24;
    --shop18-panel2:#13242c;
    --shop18-border:rgba(179,211,220,.13);
    --shop18-text:#eef6f7;
    --shop18-muted:#a9bdc3;
    --shop18-accent:#f1b75e;
    --shop18-accent2:#62d9d4;
    --shop18-blue:#86bfff;
    background:var(--shop18-bg);
}
body:is(.page-silvester,.page-produkt,.page-warenkorb,.page-checkout,.page-bestellstatus,.page-produkt-antrag) main{
    background:var(--shop18-bg);
}
body:is(.page-silvester,.page-produkt,.page-warenkorb,.page-checkout,.page-bestellstatus,.page-produkt-antrag) .eyebrow{
    color:var(--shop18-accent);
}
body:is(.page-silvester,.page-produkt,.page-warenkorb,.page-checkout,.page-bestellstatus,.page-produkt-antrag) .button-primary{
    color:#172027!important;
    background:linear-gradient(135deg,#f4c36f,#e9a946)!important;
    border-color:rgba(255,211,132,.6)!important;
    box-shadow:0 12px 30px rgba(234,170,72,.18)!important;
}
body:is(.page-silvester,.page-produkt,.page-warenkorb,.page-checkout,.page-bestellstatus,.page-produkt-antrag) .button-secondary{
    color:#eef6f7!important;
    -webkit-text-fill-color:#eef6f7!important;
    border-color:rgba(179,211,220,.18)!important;
    background:linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.025))!important;
}

/* Shop landing */
.shop1818-hero{
    position:relative;
    overflow:hidden;
    padding:72px 0 66px;
    background:
        radial-gradient(circle at 9% 5%,rgba(98,217,212,.13),transparent 25%),
        radial-gradient(circle at 88% 10%,rgba(241,183,94,.14),transparent 25%),
        linear-gradient(135deg,#071015 0%,#0a161c 48%,#0e2028 100%);
}
.shop1818-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:38px;align-items:center}
.shop1818-hero-copy h1{margin:7px 0 17px;color:#f8fbfb;font-size:clamp(2.8rem,5.2vw,5rem);line-height:.92;letter-spacing:-.055em}
.shop1818-hero-lead{max-width:690px;margin:0;color:#bfd0d5;font-size:1.05rem;line-height:1.7}
.shop1818-hero-lead strong{color:#f0f7f8}
.shop1818-hero-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}
.shop1818-button-count{display:inline-grid;place-items:center;min-width:25px;height:25px;margin-left:7px;padding:0 6px;border-radius:999px;background:rgba(255,255,255,.10);font-size:.75rem}
.shop1818-trust-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:25px}
.shop1818-trust-row>span{padding:12px 13px;border:1px solid var(--shop18-border);border-radius:14px;background:rgba(255,255,255,.025)}
.shop1818-trust-row strong,.shop1818-trust-row small{display:block}
.shop1818-trust-row strong{color:#eef6f7;font-size:.83rem}
.shop1818-trust-row small{margin-top:3px;color:#8199a0;font-size:.68rem;line-height:1.4}
.shop1818-hero-frame{overflow:hidden;margin:0;border:1px solid rgba(179,211,220,.16);border-radius:27px;background:linear-gradient(145deg,#101d24,#0a151b);box-shadow:0 28px 70px rgba(0,0,0,.28),0 0 45px rgba(98,217,212,.05)}
.shop1818-hero-image{aspect-ratio:16/9;overflow:hidden}
.shop1818-hero-image img{display:block;width:100%;height:100%;object-fit:cover}
.shop1818-hero-frame figcaption{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 18px;border-top:1px solid var(--shop18-border);background:linear-gradient(135deg,#13232b,#0e1b21)}
.shop1818-hero-frame figcaption span>*{display:block}
.shop1818-hero-frame figcaption small{color:#e6ae58;font-size:.67rem;font-weight:950;letter-spacing:.09em}
.shop1818-hero-frame figcaption strong{margin-top:3px;color:#eff7f8;font-size:.92rem}
.shop1818-hero-frame figcaption em{color:#7f9ba3;font-size:.73rem;font-style:normal;white-space:nowrap}

.shop1818-category-section{padding:68px 0;background:linear-gradient(180deg,#0a151b,#0b181f)}
.shop1818-section-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.65fr);gap:34px;align-items:end;margin-bottom:26px}
.shop1818-section-head h2{margin:5px 0 0;color:#f1f7f8;font-size:clamp(2rem,3.5vw,3.45rem);line-height:1}
.shop1818-section-head>p{margin:0;color:#9eb3b9;line-height:1.65}
.shop1818-category-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}
.shop1818-category-card{display:flex;flex-direction:column;min-height:230px;padding:20px;border:1px solid var(--shop18-border);border-radius:20px;background:linear-gradient(145deg,#102028,#0c181f);box-shadow:0 15px 35px rgba(0,0,0,.13);transition:.2s ease}
.shop1818-category-card:hover,.shop1818-category-card.is-active{transform:translateY(-3px);border-color:rgba(98,217,212,.38);box-shadow:0 19px 42px rgba(0,0,0,.2),0 0 28px rgba(98,217,212,.05)}
.shop1818-category-icon{display:grid;place-items:center;width:42px;height:42px;border:1px solid rgba(98,217,212,.22);border-radius:12px;background:rgba(98,217,212,.07);color:#82e6e2;font-size:1.05rem;font-weight:900}
.shop1818-category-card strong{margin-top:17px;color:#f1f8f8;font-size:1.02rem}
.shop1818-category-card p{margin:8px 0 13px;color:#90a6ad;font-size:.83rem;line-height:1.56}
.shop1818-category-card em{margin-top:auto;color:#edbd70;font-size:.76rem;font-style:normal;font-weight:900}

.shop1818-products-section{padding:72px 0 82px;background:linear-gradient(180deg,#071015,#09151b)}
.shop1818-products-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:25px;align-items:end;margin-bottom:22px}
.shop1818-products-head h2{margin:5px 0 9px;color:#f6f9fa;font-size:clamp(2.1rem,3.6vw,3.6rem);line-height:.98}
.shop1818-products-head p:not(.eyebrow){max-width:720px;margin:0;color:#9eb3b9;line-height:1.65}
.shop1818-cart-card{display:grid;min-width:175px;padding:14px 16px;border:1px solid rgba(241,183,94,.18);border-radius:15px;background:rgba(241,183,94,.05)}
.shop1818-cart-card span{color:#9eb3b9;font-size:.7rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase}
.shop1818-cart-card strong{margin-top:2px;color:#f4c26f}
.shop1818-cart-card em{margin-top:5px;color:#eef6f7;font-size:.72rem;font-style:normal}
.shop1818-search-panel{padding:17px!important;border-color:var(--shop18-border)!important;background:linear-gradient(145deg,#101e25,#0c181e)!important;box-shadow:0 15px 35px rgba(0,0,0,.15)}
.shop1818-search-panel .shop-search-main label>span{color:#9bb0b6}
.shop1818-search-panel input,.shop1818-search-panel select{border-color:rgba(179,211,220,.14)!important;background:#081218!important;color:#eef6f7!important}
.shop1818-toolbar{margin:16px 0!important}
.shop1818-toolbar .shop-categories{gap:7px}
.shop1818-toolbar .shop-categories a{border-color:rgba(179,211,220,.14);background:rgba(255,255,255,.02);color:#9eb3b9}
.shop1818-toolbar .shop-categories a.active,.shop1818-toolbar .shop-categories a:hover{border-color:rgba(98,217,212,.30);background:rgba(98,217,212,.07);color:#8ee8e5}
.shop1818-result-row{color:#9eb3b9}.shop1818-result-row strong{color:#eaf3f5}.shop1818-result-row a{color:#f0ba68}
.shop1818-product-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.shop1818-product-card{border-color:var(--shop18-border)!important;border-radius:20px!important;background:linear-gradient(145deg,#101d24,#0b171d)!important;box-shadow:0 18px 40px rgba(0,0,0,.18)!important;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}
.shop1818-product-card:hover{transform:translateY(-4px);border-color:rgba(241,183,94,.27)!important;box-shadow:0 24px 50px rgba(0,0,0,.25),0 0 28px rgba(241,183,94,.04)!important}
.shop1818-product-image{aspect-ratio:4/3!important;background:#081116!important}
.shop1818-product-image::after{content:"";position:absolute;inset:0;box-shadow:inset 0 -60px 70px rgba(4,9,12,.20);pointer-events:none}
.shop1818-product-image img{object-fit:contain!important;padding:12px;background:radial-gradient(circle at 50% 42%,#172831 0%,#0a151b 74%)}
.shop1818-product-card .product-category{z-index:1;border-color:rgba(255,255,255,.10);background:rgba(4,10,13,.78);color:#f2c577}
.shop1818-product-body{padding:18px!important}
.shop1818-product-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:22px}
.shop1818-product-meta .product-manufacturer{color:#829aa1}
.shop1818-product-meta .product-stock{margin:0;text-align:right}
.shop1818-product-card h2{margin:7px 0 9px!important;font-size:1.22rem!important}.shop1818-product-card h2 a{color:#eef6f7}.shop1818-product-card h2 a:hover{color:#f0be70}
.shop1818-product-card .product-description{display:-webkit-box;overflow:hidden;min-height:67px;margin-bottom:13px;color:#93a7ad;-webkit-line-clamp:3;-webkit-box-orient:vertical;font-size:.85rem;line-height:1.58}
.shop1818-product-card .product-facts{margin-bottom:16px}.shop1818-product-card .product-facts span{border-color:rgba(179,211,220,.10);background:rgba(255,255,255,.025);color:#bdcdd1}
.shop1818-product-bottom{padding-top:14px;border-top:1px solid rgba(179,211,220,.09)}
.shop1818-product-bottom .product-price{color:#f2c16f}.shop1818-product-bottom small{display:block;margin-top:2px;color:#779097;font-size:.67rem}
.shop1818-product-card .add-cart-form input{border-color:rgba(179,211,220,.14);background:#081218;color:#eef6f7}
.shop1818-empty{border-color:rgba(179,211,220,.16)!important;background:linear-gradient(145deg,#101e25,#0c181e)!important}.shop1818-empty h2{color:#eef6f7}.shop1818-empty p{color:#9eb3b9}

.shop1818-how-section{padding:72px 0;background:linear-gradient(180deg,#0d1b22,#0a151b)}
.shop1818-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}
.shop1818-steps article{padding:21px;border:1px solid var(--shop18-border);border-radius:20px;background:linear-gradient(145deg,#11222a,#0d1a21)}
.shop1818-steps article>span{display:grid;place-items:center;width:39px;height:39px;border-radius:11px;background:rgba(241,183,94,.08);border:1px solid rgba(241,183,94,.18);color:#f1bd6b;font-size:.73rem;font-weight:950}
.shop1818-steps strong{display:block;margin-top:15px;color:#edf5f6}.shop1818-steps p{margin:7px 0 0;color:#94a9af;font-size:.86rem;line-height:1.6}
.shop1818-local-section{padding:74px 0;background:linear-gradient(135deg,#071116,#0b1a21)}
.shop1818-local-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(330px,.85fr);gap:25px;align-items:start}
.shop1818-local-copy h2{margin:5px 0 14px;color:#eef6f7;font-size:clamp(2.1rem,3.7vw,3.7rem);line-height:.98}.shop1818-local-copy>p:not(.eyebrow){max-width:760px;color:#a3b6bc;line-height:1.75}
.shop1818-local-links{display:flex;flex-wrap:wrap;gap:8px;margin-top:19px}.shop1818-local-links a{padding:9px 12px;border:1px solid rgba(98,217,212,.16);border-radius:999px;background:rgba(98,217,212,.04);color:#87dfdc;font-size:.78rem;font-weight:800}
.shop1818-law-card{padding:25px;border:1px solid rgba(241,183,94,.16);border-radius:23px;background:radial-gradient(circle at 100% 0%,rgba(241,183,94,.08),transparent 33%),linear-gradient(145deg,#122028,#0c171d)}
.shop1818-law-card>span{color:#f0bd6c;font-size:.7rem;font-weight:950;letter-spacing:.08em}.shop1818-law-card h3{margin:7px 0 16px;color:#eef6f7;font-size:1.45rem}.shop1818-law-card>div{display:grid;grid-template-columns:44px 1fr;gap:12px;padding:13px 0;border-top:1px solid rgba(179,211,220,.09)}.shop1818-law-card>div strong{color:#78dfdb;font-size:1.05rem}.shop1818-law-card p{margin:0;color:#9fb2b8;font-size:.83rem;line-height:1.58}.shop1818-law-card small{display:block;margin-top:12px;color:#728990;line-height:1.55}
.shop1818-faq-section,.shop1818-product-faq-section{padding:72px 0;background:#0a161c}
.shop1818-faq-grid{display:grid;grid-template-columns:minmax(280px,.75fr) minmax(0,1.25fr);gap:34px;align-items:start}.shop1818-faq-intro h2{margin:5px 0 12px;color:#edf5f6;font-size:clamp(2rem,3.4vw,3.25rem);line-height:1}.shop1818-faq-intro>p:not(.eyebrow){color:#9eb3b9;line-height:1.65}.shop1818-faq-intro .button{margin-top:12px}.shop1818-faq-list{border-top:1px solid var(--shop18-border)}.shop1818-faq-list details{border-bottom:1px solid var(--shop18-border)}.shop1818-faq-list summary{position:relative;padding:19px 42px 19px 0;color:#edf5f6;font-weight:850;cursor:pointer;list-style:none}.shop1818-faq-list summary::after{content:"+";position:absolute;right:4px;top:16px;color:#f1bd6a;font-size:1.35rem}.shop1818-faq-list details[open] summary::after{content:"−"}.shop1818-faq-list p{margin:0;padding:0 38px 19px 0;color:#98adb3;line-height:1.7}
.shop1818-final-section{background:linear-gradient(180deg,#081218,#071015)}.shop1818-final-card{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:30px;border:1px solid var(--shop18-border);border-radius:24px;background:radial-gradient(circle at 86% 30%,rgba(241,183,94,.08),transparent 30%),linear-gradient(145deg,#112028,#0c181e)}.shop1818-final-card h2{margin:5px 0 8px;color:#eef6f7;font-size:clamp(1.8rem,3vw,3rem)}.shop1818-final-card p:not(.eyebrow){margin:0;color:#9eb3b9}.shop1818-final-actions{display:flex;gap:9px;flex-wrap:wrap;justify-content:flex-end}

/* Product detail */
.shop1818-detail-hero{padding:46px 0 66px;background:radial-gradient(circle at 86% 0%,rgba(241,183,94,.10),transparent 25%),linear-gradient(135deg,#071015,#0c1b22)}
.shop1818-back-link{color:#e9b661!important}.shop1818-detail-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:42px;align-items:start}
.shop1818-detail-media{overflow:hidden;border:1px solid var(--shop18-border);border-radius:26px;background:#0d1a20;box-shadow:0 24px 60px rgba(0,0,0,.24)}
.shop1818-detail-image{border:0!important;border-radius:0!important;box-shadow:none!important}.shop1818-detail-image img{aspect-ratio:1/1!important;object-fit:contain!important;padding:24px;background:radial-gradient(circle at 50% 44%,#172a33,#081218 76%)}
.shop1818-detail-media-note{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:15px 18px;border-top:1px solid var(--shop18-border);background:linear-gradient(135deg,#13252d,#0c191f)}.shop1818-detail-media-note span>*{display:block}.shop1818-detail-media-note small{color:#f0b963;font-size:.68rem;font-weight:900;letter-spacing:.08em}.shop1818-detail-media-note strong{margin-top:3px;color:#eef6f7}.shop1818-detail-media-note em{color:#7c959c;font-size:.74rem;font-style:normal}
.shop1818-detail-content{padding:7px 0!important}.shop1818-detail-topline{display:flex;align-items:center;justify-content:space-between;gap:16px}.shop1818-detail-topline .product-stock-large{margin:0}.shop1818-detail-content h1{margin:8px 0 6px!important;color:#f4f8f9;font-size:clamp(2.65rem,5vw,5rem)!important;line-height:.94!important}.shop1818-detail-kicker{margin:0 0 19px;color:#87a0a7;font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em}
.shop1818-detail-buyline{display:flex;align-items:end;justify-content:space-between;gap:20px;padding:17px 0 19px;border-top:1px solid var(--shop18-border);border-bottom:1px solid var(--shop18-border)}.shop1818-detail-buyline span,.shop1818-detail-buyline strong{display:block}.shop1818-detail-buyline span{color:#7f969d;font-size:.7rem;font-weight:800;text-transform:uppercase}.shop1818-detail-buyline strong{margin-top:2px;color:#f2c06e;font-size:2.2rem}.shop1818-detail-buyline a{color:#7ddfdb;font-size:.78rem;font-weight:800}
.shop1818-detail-description{margin:19px 0 0!important;color:#aec0c5!important;line-height:1.75}.shop1818-detail-facts{gap:9px!important;margin:20px 0!important}.shop1818-detail-facts>div{border-color:var(--shop18-border)!important;background:linear-gradient(145deg,#102027,#0c181e)!important}.shop1818-detail-facts span{color:#8199a0!important}.shop1818-detail-facts strong{color:#edf5f6}
.shop1818-detail-cart{padding-top:18px;border-top:1px solid var(--shop18-border)}.shop1818-detail-cart input{border-color:var(--shop18-border)!important;background:#081218!important;color:#eef6f7!important}.shop1818-video-button{padding:11px 14px;border:1px solid rgba(98,217,212,.16);border-radius:12px;background:rgba(98,217,212,.04);color:#83e2df!important}
.shop1818-detail-info-section{padding:42px 0;background:#0b171d}.shop1818-detail-info-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.shop1818-detail-info-grid article{display:grid;grid-template-columns:45px 1fr;gap:13px;padding:18px;border:1px solid var(--shop18-border);border-radius:18px;background:linear-gradient(145deg,#112129,#0d1a20)}.shop1818-detail-info-grid article>span{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:rgba(241,183,94,.07);border:1px solid rgba(241,183,94,.16);color:#f0ba66;font-size:.72rem;font-weight:900}.shop1818-detail-info-grid strong{color:#edf5f6}.shop1818-detail-info-grid p{margin:5px 0 0;color:#8fa5ab;font-size:.81rem;line-height:1.55}
.shop1818-related-section{padding:70px 0;background:#071015}

/* Cart / checkout flow */
.shop1818-flow-hero,.shop1818-checkout-hero,.shop1818-status-hero{padding:55px 0!important;background:radial-gradient(circle at 86% 15%,rgba(241,183,94,.09),transparent 25%),linear-gradient(135deg,#071015,#0d1c23)!important}
.shop1818-flow-hero-inner{display:flex;align-items:end;justify-content:space-between;gap:32px}.shop1818-flow-hero h1,.shop1818-checkout-hero h1,.shop1818-status-hero h1{color:#f4f8f9!important}.shop1818-flow-hero p:not(.eyebrow),.shop1818-checkout-hero p:not(.eyebrow),.shop1818-status-hero p:not(.eyebrow){max-width:720px;color:#a8bbc0!important}
.shop1818-flow-steps{display:flex;gap:7px;flex-wrap:wrap}.shop1818-flow-steps span{padding:10px 12px;border:1px solid var(--shop18-border);border-radius:12px;background:rgba(255,255,255,.025);color:#7f969d;font-size:.75rem;font-weight:800}.shop1818-flow-steps span strong{color:#a9bdc2}.shop1818-flow-steps span.is-active{border-color:rgba(241,183,94,.24);background:rgba(241,183,94,.06);color:#f0c47c}.shop1818-flow-steps span.is-active strong{color:#f0b85e}
.shop1818-cart-section,.shop1818-checkout-section,.shop1818-status-section{padding:64px 0!important;background:linear-gradient(180deg,#081218,#071015)!important}
.shop1818-cart-layout{grid-template-columns:minmax(0,1fr) 355px!important}.shop1818-cart-card,.shop1818-cart-summary{border-color:var(--shop18-border)!important;background:linear-gradient(145deg,#101e25,#0c181e)!important;box-shadow:0 18px 42px rgba(0,0,0,.18)!important}.shop1818-cart-card-head{display:flex;align-items:end;justify-content:space-between;gap:20px;padding:20px;border-bottom:1px solid var(--shop18-border)}.shop1818-cart-card-head h2{margin:4px 0 0;color:#edf5f6}.shop1818-cart-card-head a{color:#f0bb68;font-size:.78rem;font-weight:850}.shop1818-cart-item{grid-template-columns:120px minmax(0,1fr) auto!important;border-bottom-color:var(--shop18-border)!important}.shop1818-cart-image img{width:120px!important;height:96px!important;object-fit:contain!important;padding:7px;background:#081218;border:1px solid var(--shop18-border)}.shop1818-cart-copy>span{color:#77d8d4;font-size:.69rem;font-weight:850;text-transform:uppercase;letter-spacing:.05em}.shop1818-cart-copy h3{margin:4px 0}.shop1818-cart-copy h3 a{color:#edf5f6}.shop1818-cart-copy p{color:#829aa1!important}.shop1818-cart-actions strong{color:#f1be6c;font-size:1.05rem}.shop1818-cart-actions label{display:flex;align-items:center;gap:7px;color:#81989f;font-size:.7rem}.shop1818-cart-actions input{border-color:var(--shop18-border)!important;background:#081218!important;color:#eef6f7!important}.shop1818-cart-summary{padding:24px!important}.shop1818-cart-summary h2{color:#edf5f6}.shop1818-summary-line{display:flex;justify-content:space-between;gap:16px;padding:9px 0;color:#8fa5ab;border-bottom:1px solid rgba(179,211,220,.07)}.shop1818-summary-line strong{color:#d9e5e7}.shop1818-cart-summary .cart-total-row{border-top-color:rgba(241,183,94,.16);color:#bdcdd1}.shop1818-cart-summary .cart-total-row strong{color:#f2c16f}.shop1818-cart-summary small{color:#7f969d!important}

/* Existing checkout functionality, new visual layer */
.page-checkout .checkout-progress-card,.page-checkout .checkout-card,.page-checkout .checkout-summary,.page-checkout .checkout-success,.page-checkout .payment-instruction-card,.page-checkout .checkout-discount-card{border-color:var(--shop18-border)!important;background:linear-gradient(145deg,#101e25,#0c181e)!important;box-shadow:0 18px 42px rgba(0,0,0,.16)!important}
.page-checkout .checkout-progress-card span{color:#a8bbc0}.page-checkout .checkout-progress-card strong{color:#f0ba66}
.page-checkout .checkout-form-intro h2,.page-checkout .checkout-section-title h2,.page-checkout .checkout-summary h2,.page-checkout .checkout-success h2,.page-checkout .payment-instruction-card h3{color:#eef6f7}
.page-checkout .checkout-form-intro p,.page-checkout .checkout-section-title p,.page-checkout .checkout-summary small,.page-checkout .checkout-legal-note{color:#8fa5ab!important}
.page-checkout .checkout-modern-section{border-color:rgba(179,211,220,.10)!important;background:rgba(255,255,255,.018)!important}
.page-checkout .checkout-section-title>span{border-color:rgba(241,183,94,.18)!important;background:rgba(241,183,94,.07)!important;color:#f0ba66!important}
.page-checkout :is(input,select,textarea):not([type="checkbox"]):not([type="radio"]){border-color:rgba(179,211,220,.15)!important;background:#081218!important;color:#eef6f7!important}
.page-checkout label,.page-checkout .form-group label{color:#a7b9be!important}
.page-checkout .pickup-slot,.page-checkout .payment-method,.page-checkout .systemfirework-option{border-color:rgba(179,211,220,.12)!important;background:linear-gradient(145deg,#102027,#0c181e)!important;color:#dce8ea!important}
.page-checkout .pickup-slot:has(input:checked),.page-checkout .payment-method:has(input:checked),.page-checkout .systemfirework-option:has(input:checked){border-color:rgba(98,217,212,.35)!important;background:linear-gradient(145deg,rgba(98,217,212,.09),rgba(98,217,212,.025))!important}
.page-checkout .checkout-summary-item{border-color:rgba(179,211,220,.08)!important;color:#a8bbc0}.page-checkout .checkout-summary-item strong{color:#eef6f7}.page-checkout .cart-total-row{border-color:rgba(241,183,94,.15)!important;color:#bdcdd1}.page-checkout .cart-total-row strong{color:#f2c16f}
.page-checkout .checkout-quick-discount-card{border-color:rgba(179,211,220,.12)!important;background:#0a161c!important;color:#eef6f7!important}.page-checkout .checkout-discount-applied{border-color:rgba(98,217,212,.22)!important;background:rgba(98,217,212,.06)!important}
.page-checkout #signature-canvas{background:#e8eff1}

/* Status page */
.page-bestellstatus .order-lookup-card,.page-bestellstatus .order-customer-status{border-color:var(--shop18-border)!important;background:linear-gradient(145deg,#101e25,#0c181e)!important;box-shadow:0 18px 42px rgba(0,0,0,.16)!important}.page-bestellstatus .order-lookup-card h2,.page-bestellstatus .order-customer-status h2{color:#eef6f7}.page-bestellstatus .order-lookup-form label{color:#9eb3b9}.page-bestellstatus .order-lookup-form input{border-color:rgba(179,211,220,.15)!important;background:#081218!important;color:#eef6f7!important}.page-bestellstatus .order-lookup-help{color:#81989f!important}.page-bestellstatus .customer-order-info-grid>div,.page-bestellstatus .customer-progress-step{border-color:rgba(179,211,220,.10)!important;background:rgba(255,255,255,.02)!important}.page-bestellstatus .customer-order-info-grid span,.page-bestellstatus .customer-progress-step small{color:#879ea4!important}.page-bestellstatus .customer-order-info-grid strong,.page-bestellstatus .customer-progress-step strong{color:#eaf3f5!important}

/* Restricted product application follows the shop visual */
.page-produkt-antrag .restricted-application-hero,.page-produkt-antrag .restricted-application-section{background:linear-gradient(135deg,#071015,#0b181f)!important}.page-produkt-antrag .restricted-application-info,.page-produkt-antrag .restricted-application-form-card,.page-produkt-antrag .restricted-application-product{border-color:var(--shop18-border)!important;background:linear-gradient(145deg,#101e25,#0c181e)!important}.page-produkt-antrag .restricted-application-heading h1,.page-produkt-antrag .restricted-application-info h2,.page-produkt-antrag .restricted-application-form-card h2{color:#eef6f7}.page-produkt-antrag :is(input,select,textarea){border-color:rgba(179,211,220,.15)!important;background:#081218!important;color:#eef6f7!important}

@media(max-width:1100px){
    .shop1818-category-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
    .shop1818-steps{grid-template-columns:repeat(2,minmax(0,1fr))}
    .shop1818-product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:900px){
    .shop1818-hero-grid,.shop1818-detail-grid,.shop1818-local-grid,.shop1818-faq-grid{grid-template-columns:1fr}
    .shop1818-section-head{grid-template-columns:1fr;gap:10px;align-items:start}
    .shop1818-products-head{grid-template-columns:1fr}.shop1818-cart-card{width:max-content;min-width:170px}
    .shop1818-detail-info-grid{grid-template-columns:1fr}
    .shop1818-flow-hero-inner{align-items:start;flex-direction:column}
    .shop1818-cart-layout{grid-template-columns:1fr!important}
}
@media(max-width:680px){
    .shop1818-hero{padding:48px 0 52px}.shop1818-hero-copy h1{font-size:clamp(2.55rem,12vw,4rem)}
    .shop1818-trust-row,.shop1818-category-grid,.shop1818-steps,.shop1818-product-grid{grid-template-columns:1fr}
    .shop1818-category-card{min-height:0}
    .shop1818-hero-frame figcaption{align-items:flex-start;flex-direction:column}.shop1818-hero-frame figcaption em{white-space:normal}
    .shop1818-products-section,.shop1818-category-section,.shop1818-how-section,.shop1818-local-section,.shop1818-faq-section,.shop1818-product-faq-section{padding:54px 0}
    .shop1818-products-head h2,.shop1818-section-head h2,.shop1818-local-copy h2{font-size:clamp(2rem,10vw,3rem)}
    .shop1818-product-card .product-description{min-height:0}
    .shop1818-product-bottom{align-items:stretch!important;flex-direction:column}.shop1818-product-card .product-card-actions{width:100%}.shop1818-product-card .add-cart-form{width:100%}.shop1818-product-card .add-cart-form .button{flex:1}
    .shop1818-final-card{align-items:stretch;flex-direction:column}.shop1818-final-actions{display:grid;grid-template-columns:1fr;justify-content:stretch}.shop1818-final-actions .button{width:100%;justify-content:center}
    .shop1818-detail-content h1{font-size:clamp(2.5rem,12vw,4rem)!important}.shop1818-detail-topline{align-items:flex-start;flex-direction:column}.shop1818-detail-buyline{align-items:flex-start;flex-direction:column}.shop1818-detail-facts{grid-template-columns:1fr!important}.shop1818-detail-media-note{align-items:flex-start;flex-direction:column}
    .shop1818-cart-card-head{align-items:flex-start;flex-direction:column}.shop1818-cart-item{grid-template-columns:80px minmax(0,1fr)!important;align-items:start!important}.shop1818-cart-image img{width:80px!important;height:72px!important}.shop1818-cart-actions{grid-column:1/-1!important;align-items:center!important;flex-direction:row!important;justify-content:space-between!important;flex-wrap:wrap}.shop1818-cart-actions label{flex-direction:row}
    .page-checkout .checkout-progress-card{display:grid!important;grid-template-columns:1fr 1fr!important}
}

/* ============================================================
   V18.19 – Shop Feinschliff: Rhythmus, Kategorie-Leiste, Abschluss
   ============================================================ */
/* Sichtbar wechselnde Abschnittshintergründe */
body.page-silvester .shop1818-hero{
    background:
      radial-gradient(circle at 12% 10%,rgba(98,217,212,.10),transparent 26%),
      radial-gradient(circle at 88% 18%,rgba(241,183,94,.08),transparent 25%),
      linear-gradient(135deg,#071015 0%,#0b1920 52%,#0d2028 100%) !important;
}
body.page-silvester .shop1818-category-section{
    background:linear-gradient(180deg,#10232c 0%,#0d1d25 100%) !important;
    border-top:1px solid rgba(255,255,255,.035);
    border-bottom:1px solid rgba(255,255,255,.035);
}
body.page-silvester .shop1818-products-section{
    background:
      radial-gradient(circle at 88% 4%,rgba(134,191,255,.055),transparent 23%),
      linear-gradient(180deg,#071015 0%,#09161c 100%) !important;
}
body.page-silvester .shop1818-how-section{
    background:linear-gradient(180deg,#132730 0%,#102129 100%) !important;
}
body.page-silvester .shop1818-local-section{
    background:
      radial-gradient(circle at 10% 82%,rgba(98,217,212,.07),transparent 24%),
      linear-gradient(135deg,#08151b 0%,#0b1b22 100%) !important;
}
body.page-silvester .shop1818-faq-section{
    background:linear-gradient(180deg,#152a33 0%,#102129 100%) !important;
}
body.page-silvester .shop1818-final-section{
    background:
      radial-gradient(circle at 14% 0%,rgba(241,183,94,.08),transparent 24%),
      linear-gradient(180deg,#071116 0%,#061015 100%) !important;
}

/* Sortiment oben: kompakte, einzeilige Navigation statt großer Karten */
body.page-silvester .shop1819-category-head{margin-bottom:20px}
body.page-silvester .shop1819-category-strip{
    display:flex;
    align-items:center;
    gap:9px;
    width:100%;
    padding:10px;
    overflow-x:auto;
    overscroll-behavior-inline:contain;
    scrollbar-width:thin;
    border:1px solid rgba(179,211,220,.12);
    border-radius:18px;
    background:rgba(5,14,18,.30);
    box-shadow:inset 0 1px 0 rgba(255,255,255,.025);
}
body.page-silvester .shop1819-category-pill{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:7px;
    flex:0 0 auto;
    min-height:42px;
    padding:9px 13px;
    border:1px solid rgba(179,211,220,.12);
    border-radius:12px;
    background:linear-gradient(145deg,#102028,#0c181f);
    color:#d9e7e9;
    white-space:nowrap;
    transition:transform .16s ease,border-color .16s ease,background .16s ease,box-shadow .16s ease;
}
body.page-silvester .shop1819-category-pill span{
    color:#67d6d2;
    font-size:.78rem;
    font-weight:950;
}
body.page-silvester .shop1819-category-pill strong{
    color:inherit;
    font-size:.78rem;
    line-height:1;
}
body.page-silvester .shop1819-category-pill:hover,
body.page-silvester .shop1819-category-pill.is-active{
    transform:translateY(-1px);
    border-color:rgba(98,217,212,.42);
    background:linear-gradient(145deg,rgba(98,217,212,.11),rgba(134,191,255,.055));
    color:#f0f8f8;
    box-shadow:0 9px 20px rgba(0,0,0,.14);
}

/* Unterer CTA: gleicher Aufbau wie die Leistungs-Unterseiten, Shop-Farbwelt */
body.page-silvester .shop1819-final-card{
    border-color:rgba(241,183,94,.20);
    background:
      radial-gradient(circle at 12% 0%,rgba(98,217,212,.10),transparent 36%),
      radial-gradient(circle at 92% 100%,rgba(241,183,94,.10),transparent 38%),
      linear-gradient(145deg,#10212a 0%,#0b181f 58%,#081319 100%);
    box-shadow:0 22px 58px rgba(0,0,0,.24),0 0 38px rgba(98,217,212,.04);
}
body.page-silvester .shop1819-final-copy .eyebrow{color:#72ddd8}
body.page-silvester .shop1819-final-copy h2{color:#f4f8f9}
body.page-silvester .shop1819-final-copy>p:not(.eyebrow){color:#adbec3}
body.page-silvester .shop1819-final-options{align-items:stretch}
body.page-silvester .shop1819-final-options .wedding1795-final-option{
    min-height:235px;
    border-color:rgba(255,255,255,.08);
    background:rgba(255,255,255,.025);
}
body.page-silvester .shop1819-option-advice{
    border-color:rgba(98,217,212,.20) !important;
    background:linear-gradient(145deg,rgba(98,217,212,.075),rgba(98,217,212,.018)) !important;
}
body.page-silvester .shop1819-option-advice .wedding1795-option-kicker{color:#72ddd8}
body.page-silvester .shop1819-option-advice .button{
    color:#06191a !important;
    border-color:#58c9c5 !important;
    background:linear-gradient(180deg,#79dfdb,#55c5c1) !important;
}
body.page-silvester .shop1819-option-order{
    border-color:rgba(241,183,94,.22) !important;
    background:linear-gradient(145deg,rgba(241,183,94,.08),rgba(241,183,94,.018)) !important;
}
body.page-silvester .shop1819-option-order .wedding1795-option-kicker{color:#f1bd6a}
body.page-silvester .shop1819-option-order .button{
    color:#211507 !important;
    border-color:#e4aa4f !important;
    background:linear-gradient(180deg,#f3c77e,#e7ad54) !important;
}

@media(max-width:680px){
    body.page-silvester .shop1819-category-head{margin-bottom:14px}
    body.page-silvester .shop1819-category-strip{
        margin-inline:-2px;
        padding:8px;
        border-radius:15px;
    }
    body.page-silvester .shop1819-category-pill{min-height:40px;padding:8px 11px}
    body.page-silvester .shop1819-category-pill strong{font-size:.74rem}
}

/* ============================================================
   V18.20 – Shop: mehr Farbe + aufklappbare Sortiment-Navigation
   ============================================================ */
body.page-silvester{
    --shop20-gold:#f3bd62;
    --shop20-coral:#ff806f;
    --shop20-violet:#ad8cff;
    --shop20-teal:#59d9c9;
    --shop20-red:#ef6672;
    --shop20-lime:#b3d968;
    --shop20-blue:#78b9ff;
}

/* Mehr Farbrhythmus: jede Sektion bekommt eine klar eigene Stimmung */
body.page-silvester .shop1818-hero{
    background:
      radial-gradient(circle at 10% 8%,rgba(89,217,201,.14),transparent 25%),
      radial-gradient(circle at 90% 10%,rgba(243,189,98,.16),transparent 25%),
      linear-gradient(135deg,#071015 0%,#122126 52%,#172129 100%) !important;
}
body.page-silvester .shop1820-category-section{
    background:
      radial-gradient(circle at 18% 20%,rgba(173,140,255,.10),transparent 25%),
      radial-gradient(circle at 82% 72%,rgba(255,128,111,.09),transparent 25%),
      linear-gradient(180deg,#1b1b27 0%,#171b24 100%) !important;
}
body.page-silvester .shop1818-products-section{
    background:
      radial-gradient(circle at 88% 5%,rgba(243,189,98,.08),transparent 25%),
      radial-gradient(circle at 8% 90%,rgba(89,217,201,.055),transparent 20%),
      linear-gradient(180deg,#101316 0%,#151719 100%) !important;
}
body.page-silvester .shop1818-how-section{
    background:
      radial-gradient(circle at 12% 18%,rgba(173,140,255,.10),transparent 24%),
      linear-gradient(135deg,#211827 0%,#241b2c 55%,#17202a 100%) !important;
}
body.page-silvester .shop1818-local-section{
    background:
      radial-gradient(circle at 85% 20%,rgba(179,217,104,.08),transparent 24%),
      linear-gradient(135deg,#13211d 0%,#172721 50%,#142027 100%) !important;
}
body.page-silvester .shop1818-faq-section{
    background:
      radial-gradient(circle at 15% 14%,rgba(120,185,255,.09),transparent 22%),
      linear-gradient(180deg,#18202a 0%,#191a24 100%) !important;
}

/* Sortiment: alle Kategorien in einer Linie, Pfeil öffnet gemeinsame Detailfläche */
body.page-silvester .shop1820-category-head{margin-bottom:19px}
body.page-silvester .shop1820-category-nav{
    display:grid;
    grid-template-columns:repeat(7,minmax(0,1fr));
    gap:8px;
    padding:9px;
    border:1px solid rgba(255,255,255,.08);
    border-radius:18px;
    background:rgba(4,8,11,.28);
    box-shadow:inset 0 1px 0 rgba(255,255,255,.03),0 14px 34px rgba(0,0,0,.14);
}
body.page-silvester .shop1820-category-toggle{
    --cat:#78b9ff;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:8px;
    min-width:0;
    min-height:48px;
    padding:10px 12px;
    border:1px solid color-mix(in srgb,var(--cat) 28%,transparent);
    border-radius:12px;
    background:linear-gradient(145deg,color-mix(in srgb,var(--cat) 9%,#171a20),#11151a);
    color:#eaf2f4;
    cursor:pointer;
    transition:transform .18s ease,border-color .18s ease,background .18s ease,box-shadow .18s ease;
}
body.page-silvester .shop1820-category-toggle span{overflow:hidden;text-overflow:ellipsis;font-size:.73rem;font-weight:900;white-space:nowrap}
body.page-silvester .shop1820-category-toggle i{flex:0 0 auto;color:var(--cat);font-size:1rem;font-style:normal;font-weight:950;transition:transform .18s ease}
body.page-silvester .shop1820-category-toggle:hover,
body.page-silvester .shop1820-category-toggle.is-open,
body.page-silvester .shop1820-category-toggle.is-selected{
    transform:translateY(-1px);
    border-color:color-mix(in srgb,var(--cat) 62%,transparent);
    background:linear-gradient(145deg,color-mix(in srgb,var(--cat) 16%,#1a1c22),#12161b);
    box-shadow:0 9px 22px color-mix(in srgb,var(--cat) 9%,transparent);
}
body.page-silvester .shop1820-category-toggle.is-open i{transform:rotate(180deg)}
body.page-silvester .tone-gold{--cat:var(--shop20-gold)}
body.page-silvester .tone-coral{--cat:var(--shop20-coral)}
body.page-silvester .tone-violet{--cat:var(--shop20-violet)}
body.page-silvester .tone-teal{--cat:var(--shop20-teal)}
body.page-silvester .tone-red{--cat:var(--shop20-red)}
body.page-silvester .tone-lime{--cat:var(--shop20-lime)}
body.page-silvester .tone-blue{--cat:var(--shop20-blue)}
body.page-silvester .shop1820-category-panels{margin-top:10px}
body.page-silvester .shop1820-category-panel{
    --cat:#78b9ff;
    display:grid;
    grid-template-columns:minmax(0,1.05fr) minmax(0,1.45fr) auto;
    gap:22px;
    align-items:center;
    padding:21px 22px;
    border:1px solid color-mix(in srgb,var(--cat) 30%,transparent);
    border-radius:18px;
    background:
      radial-gradient(circle at 0% 0%,color-mix(in srgb,var(--cat) 11%,transparent),transparent 32%),
      linear-gradient(145deg,#171b21,#11151a);
    box-shadow:0 18px 38px rgba(0,0,0,.18),inset 0 1px 0 rgba(255,255,255,.025);
}
body.page-silvester .shop1820-category-panel[hidden]{display:none!important}
body.page-silvester .shop1820-category-label{display:block;color:var(--cat);font-size:.67rem;font-weight:950;letter-spacing:.09em}
body.page-silvester .shop1820-category-panel h3{margin:4px 0 7px;color:#f4f7f8;font-size:1.35rem}
body.page-silvester .shop1820-category-panel-copy p{margin:0;color:#aebdc1;font-size:.86rem;line-height:1.56}
body.page-silvester .shop1820-category-facts{display:grid;grid-template-columns:1.4fr .8fr .8fr;gap:8px}
body.page-silvester .shop1820-category-facts>div{min-width:0;padding:11px 12px;border:1px solid rgba(255,255,255,.07);border-radius:12px;background:rgba(255,255,255,.025)}
body.page-silvester .shop1820-category-facts small,body.page-silvester .shop1820-category-facts strong{display:block}
body.page-silvester .shop1820-category-facts small{color:#758990;font-size:.62rem;font-weight:850;text-transform:uppercase;letter-spacing:.06em}
body.page-silvester .shop1820-category-facts strong{margin-top:4px;color:#e6eef0;font-size:.75rem;line-height:1.38}
body.page-silvester .shop1820-category-link{white-space:nowrap}

/* Produktkarten: Kategorie direkt an der Farbe erkennbar */
body.page-silvester .shop1818-product-card{position:relative;overflow:hidden}
body.page-silvester .shop1818-product-card::before{content:"";position:absolute;z-index:4;left:0;right:0;top:0;height:4px;background:var(--product-accent,#78b9ff);box-shadow:0 0 20px color-mix(in srgb,var(--product-accent,#78b9ff) 24%,transparent)}
body.page-silvester .shop1818-product-card[data-shop-category="Batterien"]{--product-accent:var(--shop20-gold)}
body.page-silvester .shop1818-product-card[data-shop-category="Verbundfeuerwerk"]{--product-accent:var(--shop20-coral)}
body.page-silvester .shop1818-product-card[data-shop-category="Raketen"]{--product-accent:var(--shop20-violet)}
body.page-silvester .shop1818-product-card[data-shop-category="Sortimente"]{--product-accent:var(--shop20-teal)}
body.page-silvester .shop1818-product-card[data-shop-category="Knallartikel"]{--product-accent:var(--shop20-red)}
body.page-silvester .shop1818-product-card[data-shop-category="Jugendfeuerwerk"]{--product-accent:var(--shop20-lime)}
body.page-silvester .shop1818-product-card[data-shop-category="Sonstiges"]{--product-accent:var(--shop20-blue)}
body.page-silvester .shop1818-product-card:hover{border-color:color-mix(in srgb,var(--product-accent,#78b9ff) 35%,transparent)!important;box-shadow:0 24px 50px rgba(0,0,0,.25),0 0 30px color-mix(in srgb,var(--product-accent,#78b9ff) 8%,transparent)!important}
body.page-silvester .shop1818-product-card .product-category{color:var(--product-accent,#f2c577)!important;border-color:color-mix(in srgb,var(--product-accent,#78b9ff) 28%,transparent)!important}
body.page-silvester .shop1818-product-card h2 a:hover{color:var(--product-accent,#f0be70)!important}
body.page-silvester .shop1818-product-bottom .product-price{color:var(--product-accent,#f2c16f)!important}

/* Ablaufkarten ebenfalls abwechslungsreicher */
body.page-silvester .shop1818-steps article:nth-child(1){border-color:rgba(243,189,98,.20);background:linear-gradient(145deg,rgba(243,189,98,.08),rgba(255,255,255,.025))}
body.page-silvester .shop1818-steps article:nth-child(2){border-color:rgba(89,217,201,.18);background:linear-gradient(145deg,rgba(89,217,201,.07),rgba(255,255,255,.025))}
body.page-silvester .shop1818-steps article:nth-child(3){border-color:rgba(173,140,255,.18);background:linear-gradient(145deg,rgba(173,140,255,.07),rgba(255,255,255,.025))}
body.page-silvester .shop1818-steps article:nth-child(4){border-color:rgba(255,128,111,.18);background:linear-gradient(145deg,rgba(255,128,111,.07),rgba(255,255,255,.025))}
body.page-silvester .shop1818-steps article:nth-child(1)>span{color:var(--shop20-gold)}
body.page-silvester .shop1818-steps article:nth-child(2)>span{color:var(--shop20-teal)}
body.page-silvester .shop1818-steps article:nth-child(3)>span{color:var(--shop20-violet)}
body.page-silvester .shop1818-steps article:nth-child(4)>span{color:var(--shop20-coral)}

@media(max-width:1180px){
    body.page-silvester .shop1820-category-nav{grid-template-columns:repeat(4,minmax(0,1fr))}
    body.page-silvester .shop1820-category-panel{grid-template-columns:1fr}
    body.page-silvester .shop1820-category-link{justify-self:start}
}
@media(max-width:760px){
    body.page-silvester .shop1820-category-nav{display:flex;overflow-x:auto;scrollbar-width:thin;overscroll-behavior-inline:contain}
    body.page-silvester .shop1820-category-toggle{flex:0 0 auto;min-width:145px}
    body.page-silvester .shop1820-category-facts{grid-template-columns:1fr}
    body.page-silvester .shop1820-category-panel{padding:18px}
}

/* ============================================================
   V18.22 – MOBILE READY PASS
   Ausschließlich Mobile/Tablet. Desktop >1120px bleibt unverändert.
   ============================================================ */

/* Tablet-/Mobile-Navigation: immer vollständig im Viewport, intern scrollbar. */
@media (max-width:1120px){
    html.mobile-nav-open,
    body.mobile-nav-open{
        height:100%;
        overflow:hidden !important;
        overscroll-behavior:none;
    }
    body.mobile-nav-open{
        position:fixed;
        left:0;
        right:0;
        width:100%;
    }
    .site-header{z-index:1200}
    .header-topline{display:none !important}
    .main-nav{
        position:fixed !important;
        z-index:1190 !important;
        top:var(--gf-mobile-nav-top,82px) !important;
        right:0 !important;
        bottom:0 !important;
        left:0 !important;
        width:100% !important;
        height:auto !important;
        max-height:none !important;
        margin:0 !important;
        padding:14px max(12px,env(safe-area-inset-right)) max(24px,env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left)) !important;
        display:none;
        flex-direction:column !important;
        justify-content:flex-start !important;
        align-items:stretch !important;
        align-content:flex-start !important;
        gap:7px !important;
        overflow-x:hidden !important;
        overflow-y:auto !important;
        overscroll-behavior-y:contain;
        -webkit-overflow-scrolling:touch;
        background:rgba(8,9,11,.992) !important;
        border-top:1px solid rgba(255,255,255,.055);
        border-bottom:0 !important;
        box-shadow:0 22px 55px rgba(0,0,0,.36);
    }
    .main-nav.is-open{display:flex !important}
    .main-nav > *,
    .nav-dropdown,
    .nav-dropdown-menu,
    .nav-dropdown-menu a{
        flex:0 0 auto !important;
        min-width:0 !important;
        max-width:100% !important;
    }
    .main-nav > a:not(.nav-cta),
    .nav-dropdown-trigger,
    .nav-cta,
    .main-nav .nav-consultation,
    .customer-account-link,
    .cart-link{
        width:100% !important;
        min-width:0 !important;
        max-width:100% !important;
        min-height:48px !important;
        margin:0 !important;
        padding:11px 13px !important;
        justify-content:space-between !important;
        border-radius:12px !important;
        white-space:normal !important;
        line-height:1.25 !important;
        overflow:visible !important;
    }
    .nav-cta,
    .main-nav .nav-consultation{justify-content:center !important}
    .nav-dropdown{display:block !important;width:100% !important;overflow:visible !important}
    .nav-dropdown-trigger{display:flex !important}
    .nav-dropdown-menu{
        position:static !important;
        inset:auto !important;
        top:auto !important;
        left:auto !important;
        right:auto !important;
        width:100% !important;
        max-width:100% !important;
        max-height:none !important;
        margin:6px 0 2px !important;
        padding:7px !important;
        opacity:1 !important;
        visibility:visible !important;
        transform:none !important;
        border:1px solid rgba(255,255,255,.075) !important;
        border-radius:12px !important;
        background:rgba(255,255,255,.025) !important;
        box-shadow:none !important;
        backdrop-filter:none !important;
        overflow:visible !important;
        display:none !important;
    }
    .nav-dropdown.is-open > .nav-dropdown-menu{display:grid !important}
    .nav-dropdown-menu a{
        display:block !important;
        width:100% !important;
        padding:11px 10px !important;
        border-left:0 !important;
        border-radius:9px !important;
        overflow:visible !important;
    }
    .nav-dropdown-menu strong,
    .nav-dropdown-menu small{
        width:100% !important;
        max-width:100% !important;
        white-space:normal !important;
        overflow-wrap:break-word !important;
        word-break:normal !important;
    }
    .nav-dropdown-menu small{display:block !important}
}

@media (max-width:980px){
    html,body{max-width:100%;overflow-x:hidden}
    main{max-width:100%;min-width:0;overflow-x:clip}
    .site-header .header-inner{
        width:calc(100% - 20px) !important;
        min-height:68px !important;
        gap:8px !important;
    }
    .brand{
        flex:1 1 auto !important;
        min-width:0 !important;
        max-width:calc(100% - 52px) !important;
        gap:9px !important;
    }
    .brand-logo-wrap{flex:0 0 42px !important;width:42px !important;height:42px !important}
    .brand-logo{max-width:100%;height:auto}
    .brand-text{min-width:0;max-width:100%}
    .brand-text strong{
        display:block;
        max-width:100%;
        font-size:clamp(.68rem,2.8vw,.82rem) !important;
        line-height:1.2 !important;
        letter-spacing:.02em !important;
        white-space:normal !important;
        overflow-wrap:break-word;
    }
    .brand-text small{display:none !important}
    .nav-toggle{
        display:block !important;
        flex:0 0 42px !important;
        width:42px !important;
        height:42px !important;
        margin:0 !important;
        padding:9px !important;
    }

    /* Jede öffentliche Inhaltsbox darf ihre Spalte nicht aufweiten. */
    main :is([class$="-grid"],[class*="-grid "],[class$="-card"],[class*="-card "],[class$="-layout"],[class*="-layout "]){
        min-width:0;
        max-width:100%;
    }
    main img,
    main video,
    main iframe,
    main svg,
    footer img,
    .consultation-modal img,
    .gallery-lightbox img{
        max-width:100%;
    }
    main iframe,main video{width:100%}

    /* Lange Überschriften/URLs niemals aus dem Handy drücken. */
    main h1,main h2,main h3,
    .site-footer h3,
    .public-cta h2{
        max-width:100%;
        overflow:visible !important;
        overflow-wrap:break-word;
        word-break:normal;
    }
    main h1{padding-bottom:.06em;line-height:1.02 !important}
    main h2{padding-bottom:.04em;line-height:1.07 !important}

    /* Zeilen mit Überschrift + Button sauber stapeln. */
    .section-heading-row,
    .public-cta,
    .home62-section-head,
    .home62-review-head,
    .gallery1900-filter-head,
    .shop1818-products-head,
    .shop1818-flow-hero-inner{
        align-items:stretch !important;
        flex-direction:column !important;
        gap:15px !important;
    }

    /* Hero- und CTA-Aktionsgruppen werden auf schmalen Geräten eindeutig bedienbar. */
    :is(.home62-hero-actions,.services67-hero-actions,.wedding1792-hero-actions,.gallery1900-hero-actions,.shop1818-hero-actions,.reviews-hero-actions,.home62-shop-actions,.home62-region-actions,.wedding1795-region-actions,.gallery1900-public-cta-actions,.shop1818-cart-actions){
        width:100%;
        display:grid !important;
        grid-template-columns:1fr !important;
        gap:10px !important;
    }
    :is(.home62-hero-actions,.services67-hero-actions,.wedding1792-hero-actions,.gallery1900-hero-actions,.shop1818-hero-actions,.reviews-hero-actions,.home62-shop-actions,.home62-region-actions,.wedding1795-region-actions,.gallery1900-public-cta-actions,.shop1818-cart-actions) .button,
    :is(.home62-hero-actions,.services67-hero-actions,.wedding1792-hero-actions,.gallery1900-hero-actions,.shop1818-hero-actions,.reviews-hero-actions,.home62-shop-actions,.home62-region-actions,.wedding1795-region-actions,.gallery1900-public-cta-actions,.shop1818-cart-actions) a{
        width:100% !important;
        max-width:100% !important;
        min-width:0 !important;
        justify-content:center !important;
        text-align:center;
        white-space:normal !important;
    }

    /* Tabellen bleiben in ihrer Karte horizontal scrollbar statt die Seite zu verbreitern. */
    main table{
        display:block;
        width:100%;
        max-width:100%;
        overflow-x:auto;
        overscroll-behavior-inline:contain;
        -webkit-overflow-scrolling:touch;
    }

    /* Formularfelder: keine iOS-Zoom-/Überlaufprobleme. */
    main input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),
    main select,
    main textarea,
    .consultation-modal input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),
    .consultation-modal select,
    .consultation-modal textarea{
        width:100%;
        min-width:0;
        max-width:100%;
        font-size:16px !important;
    }

    /* Bewusst horizontal scrollbare Leisten bleiben innerhalb des Viewports. */
    .seo-breadcrumbs .container,
    .gallery-filter,
    .gallery1900-filter,
    body.page-silvester .shop1820-category-nav,
    .pickup-date-tabs,
    .admin-filter-row{
        width:100%;
        max-width:100%;
        overflow-x:auto !important;
        overflow-y:hidden;
        overscroll-behavior-inline:contain;
        -webkit-overflow-scrolling:touch;
    }

    /* Mobile Dialoge sind nie höher als der sichtbare Bildschirm. */
    .consultation-modal,
    .discount-wheel-modal,
    .review-thanks-modal,
    .consultation-success-modal,
    .gallery-lightbox{
        padding:max(8px,env(safe-area-inset-top)) max(8px,env(safe-area-inset-right)) max(8px,env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left)) !important;
    }
    .consultation-dialog,
    .discount-wheel-dialog,
    .review-thanks-dialog,
    .consultation-success-dialog,
    .gallery-lightbox-dialog{
        width:100% !important;
        max-width:100% !important;
        max-height:calc(100dvh - 16px) !important;
        margin:0 !important;
        overflow-x:hidden !important;
        overflow-y:auto !important;
        -webkit-overflow-scrolling:touch;
    }
    .consultation-modal{align-items:flex-start !important;overflow:hidden !important}
    .consultation-dialog{border-radius:18px !important}
    .consultation-dialog-intro,.consultation-form{padding:22px 18px !important}
    .consultation-form-grid{grid-template-columns:1fr !important}
}

@media (max-width:700px){
    .container{width:calc(100% - 28px) !important;max-width:100%}
    .section{padding-top:54px;padding-bottom:54px}

    /* Die alten Hero-Sektionen hatten overflow:hidden und konnten längeren Mobile-Content unten abschneiden. */
    .services67-hero,
    .wedding1792-hero,
    .wedding1801-local,
    .wedding1792-region,
    .wedding1792-final,
    .occasion1806-local,
    .occasion1806-region,
    .occasion1806-final{
        overflow:visible !important;
    }

    /* Einheitliche Mobile-Heros. */
    .home62-hero,
    .services67-hero,
    .wedding1792-hero,
    .gallery1900-hero,
    .shop1818-hero{
        padding-top:40px !important;
        padding-bottom:48px !important;
    }
    .home62-hero-grid,
    .services67-hero-grid,
    .wedding1792-hero-grid,
    .gallery1900-hero-grid,
    .shop1818-hero-grid,
    .service-page-hero-grid{
        width:100%;
        grid-template-columns:1fr !important;
        gap:28px !important;
    }
    .home62-hero-copy h1,
    .services67-hero-copy h1,
    .wedding1792-hero-copy h1,
    .gallery1900-hero-copy h1,
    .shop1818-hero-copy h1,
    .service-page-hero-copy h1{
        font-size:clamp(2.2rem,10.7vw,3.35rem) !important;
        line-height:1.01 !important;
        letter-spacing:-.035em !important;
    }
    body.page-firmenfeuerwerk .wedding1792-hero-copy h1,
    body.page-mega-events .wedding1792-hero-copy h1{
        font-size:clamp(2.08rem,10vw,3.15rem) !important;
    }
    .home62-hero-copy>p,
    .services67-hero-copy>p:not(.eyebrow),
    .wedding1792-hero-copy>p:not(.eyebrow),
    .gallery1900-hero-copy>p:not(.eyebrow),
    .shop1818-hero-lead,
    .service-page-hero-copy>p:not(.eyebrow){
        font-size:.98rem !important;
        line-height:1.65 !important;
    }
    .home62-hero-visual,
    .services67-hero-visual,
    .wedding1792-hero-visual,
    .gallery1900-hero-visual,
    .shop1818-hero-visual,
    .service-page-hero-media{
        width:100% !important;
        max-width:100% !important;
        min-width:0 !important;
        margin:0 !important;
    }
    .home62-hero-visual figure,
    .services1814-hero-frame,
    .wedding1812-hero-frame,
    .shop1818-hero-frame{
        width:100% !important;
        max-width:100% !important;
        aspect-ratio:16/9 !important;
    }
    .home62-hero-badge,
    .services67-hero-panel,
    .wedding1792-hero-panel{
        left:10px !important;
        right:10px !important;
        bottom:10px !important;
        width:auto !important;
        min-width:0 !important;
        max-width:calc(100% - 20px) !important;
        overflow:visible !important;
    }

    /* Facts/Tags umbrechen statt herauszulaufen. */
    .home62-hero-points,
    .services67-hero-tags,
    .wedding1792-hero-tags,
    .shop1818-trust-row,
    .checkout-hero-points{
        display:flex !important;
        flex-wrap:wrap !important;
        width:100%;
        max-width:100%;
        gap:8px !important;
    }
    .home62-hero-points>*,
    .services67-hero-tags>*,
    .wedding1792-hero-tags>*,
    .shop1818-trust-row>*,
    .checkout-hero-points>*{
        min-width:0 !important;
        max-width:100% !important;
        white-space:normal !important;
    }

    /* Öffentliche Hauptgrids auf Handys: stabile Einzelspalte. */
    .home63-service-grid,
    .home64-process-grid,
    .services67-grid,
    .services67-scope-grid,
    .wedding1792-moment-grid,
    .wedding1792-scope-grid,
    .wedding1792-faq-grid,
    .wedding1801-local-grid,
    .region-seo-grid,
    .feature-card-grid,
    .process-grid,
    .contact-path-grid,
    .crosslink-grid,
    .reviews-public-grid,
    .gallery1900-categories-grid,
    .gallery1900-videos-grid,
    .gallery1900-structure-list,
    .shop1818-product-grid,
    .shop1818-faq-grid,
    .shop1818-local-grid,
    .shop1818-detail-grid,
    .shop1818-detail-info-grid,
    .payment-method-grid,
    .pickup-slot-grid,
    .order-lookup-grid,
    .customer-auth-layout,
    .customer-account-grid,
    .booking-layout,
    .contact-info-layout,
    .legal-layout{
        grid-template-columns:1fr !important;
    }

    /* Karten und CTA-Inhalte nie mit festen Mindestbreiten. */
    main :is(.home63-service-card,.services67-card,.wedding1792-scope-card,.wedding1795-final-option,.gallery1900-category-card,.gallery1900-video-card,.shop1818-product-card,.contact-path-card,.review-card,.product-card,.cart-card,.checkout-card,.customer-auth-card,.customer-account-card){
        width:100%;
        min-width:0 !important;
        max-width:100% !important;
    }

    /* Footer vollständig lesbar. */
    .footer-grid,
    .footer-grid-v14{
        grid-template-columns:1fr !important;
        gap:28px !important;
    }
    .footer-bottom{
        align-items:flex-start !important;
        flex-direction:column !important;
        gap:7px !important;
    }

    /* Shop-Accordion: horizontal scrollen ist erlaubt, die geöffnete Info bleibt innerhalb der Seite. */
    body.page-silvester .shop1820-category-nav{
        display:flex !important;
        width:100% !important;
        padding:7px !important;
    }
    body.page-silvester .shop1820-category-toggle{
        flex:0 0 auto !important;
        min-width:138px !important;
        max-width:168px !important;
    }
    body.page-silvester .shop1820-category-panel,
    body.page-silvester .shop1820-category-facts{
        width:100% !important;
        max-width:100% !important;
        grid-template-columns:1fr !important;
    }
    body.page-silvester .shop1820-category-panel{gap:14px !important;padding:17px !important}
    body.page-silvester .shop1820-category-link{width:100%;white-space:normal !important;justify-content:center}

    /* Galerie: Karten bleiben innerhalb der Breite; Filter darf bewusst scrollen. */
    .gallery1900-masonry-grid{columns:1 !important;width:100% !important}
    .gallery1900-masonry-item{width:100% !important;max-width:100% !important}
    .gallery1900-hero-collage{grid-template-columns:1fr !important}

    /* Anfrage-/Checkout-Formulare */
    .form-grid,
    .checkout-confirm-grid,
    .booking-discount-grid{
        grid-template-columns:1fr !important;
    }
    .form-submit-row,
    .cart-item-actions,
    .compact-actions{
        align-items:stretch !important;
        flex-direction:column !important;
    }
    .form-submit-row .button,
    .cart-item-actions .button,
    .compact-actions .button{
        width:100%;
        justify-content:center;
    }
}

@media (max-width:420px){
    .container{width:calc(100% - 22px) !important}
    .brand-text strong{font-size:.68rem !important}
    .home62-hero-copy h1,
    .services67-hero-copy h1,
    .wedding1792-hero-copy h1,
    .gallery1900-hero-copy h1,
    .shop1818-hero-copy h1,
    .service-page-hero-copy h1{
        font-size:clamp(2.05rem,10.3vw,3rem) !important;
    }
    .consultation-dialog-intro,.consultation-form{padding:20px 15px !important}
    .consultation-close{top:9px !important;right:9px !important}
    .gallery-lightbox-nav{width:42px !important;height:42px !important}
}

/* V18.22 QA-Nachschärfung */
@media(max-width:980px){
    main{overflow:visible !important}
}
@media(max-width:700px){
    /* Shop-Hero: nur das Bild ist 16:9; die Beschreibung darunter bleibt Bestandteil des Rahmens. */
    body.page-silvester .shop1818-hero-frame{
        aspect-ratio:auto !important;
        height:auto !important;
        overflow:hidden !important;
    }
    body.page-silvester .shop1818-hero-image{
        width:100% !important;
        aspect-ratio:16/9 !important;
        min-height:0 !important;
        height:auto !important;
        overflow:hidden !important;
    }
    body.page-silvester .shop1818-hero-image img{
        width:100% !important;
        height:100% !important;
        object-fit:cover !important;
    }
    body.page-silvester .shop1818-hero-frame figcaption{
        position:static !important;
        width:100% !important;
        max-width:100% !important;
        min-width:0 !important;
        height:auto !important;
        overflow:visible !important;
    }
}

/* V18.22 – Mobile-Menühöhe explizit, damit top+bottom nicht mit Altregeln kollidiert. */
@media(max-width:1120px){
    .main-nav{
        bottom:auto !important;
        height:calc(100dvh - var(--gf-mobile-nav-top,82px)) !important;
        min-height:0 !important;
    }
}

/* Legal/Datenschutz: lange Mailadressen und Texte dürfen Grid-Spalten nicht verbreitern. */
@media(max-width:700px){
    .legal-layout,
    .legal-layout > *,
    .legal-content,
    .legal-content section,
    .legal-note-card{
        width:100% !important;
        min-width:0 !important;
        max-width:100% !important;
    }
    .legal-content a,
    .legal-note-card a,
    .legal-content p,
    .legal-note-card p{
        overflow-wrap:anywhere !important;
        word-break:normal !important;
    }
}
@media(max-width:1120px){
    .main-nav{background:#08090b !important}
}

/* V18.25 – transparente Datenschutzhinweise am Entfernungsrechner */
.travel-privacy-note{
    display:block;
    margin:10px 0 0;
    color:inherit;
    opacity:.76;
    font-size:.76rem;
    line-height:1.55;
}
.travel-privacy-note a{font-weight:800;text-decoration:underline;text-underline-offset:2px}

/* ============================================================
   V18.28 – LIVE/STAGING im Admin eindeutig kennzeichnen
   ============================================================ */
.admin-environment-badge-v1828{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    margin-right:auto;
    padding:4px 9px;
    border:1px solid rgba(255,255,255,.14);
    border-radius:999px;
    font-size:.64rem;
    line-height:1;
    font-weight:950;
    letter-spacing:.08em;
    white-space:nowrap;
}
.admin-environment-badge-v1828.admin-environment-live{
    color:#ffe3bd;
    border-color:rgba(244,165,74,.34);
    background:rgba(244,165,74,.12);
}
.admin-environment-badge-v1828.admin-environment-staging{
    color:#c8f7ff;
    border-color:rgba(74,204,225,.34);
    background:rgba(74,204,225,.12);
}
@media(max-width:760px){
    .admin-environment-badge-v1828{font-size:.58rem;padding:4px 7px}
}

/* V18.30 – SMTP-Diagnose */
.email-smtp-diagnostics{margin-bottom:18px}
.email-smtp-diagnostics .admin-alert{margin-top:14px;padding:14px 16px;border-radius:12px}
.email-smtp-diagnostics .admin-alert-error{border:1px solid rgba(229,94,94,.28);background:rgba(229,94,94,.08);color:#ffdada}
.email-smtp-fixed strong small{font:inherit;font-size:.72em;opacity:.72}
