@charset "utf-8";

:root {
    /* ------------------------------------------------------------------
       TYPOGRAFIE
       ------------------------------------------------------------------ */
    --font-base: "Manrope", system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;

    /* Font sizes */
    --fs-h1: clamp(42px, 5.5vw, 78px);
    --fs-h2: clamp(22px, 2.4vw, 34px);
    --fs-h3: 18px;
    --fs-body: 15px;
    --fs-small: 14px;
    --fs-eyebrow: 12px;

    /* Line heights */
    --lh-body: 1.68;
    --lh-heading: 1.15;
    --lh-tight: 1.05;

    /* Letter spacing */
    --ls-h1: -0.02em;
    --ls-h2: -0.012em;
    --ls-h3: -0.008em;
    --ls-body: 0;
    --ls-eyebrow: 0.12em;

    /* Navigation / Footer letter spacing */
    --ls-nav: 0.03em;
    --ls-lang: 0.10em;
    --ls-footer-brand: 0.14em;
    --ls-footer-coltitle: 0.16em;

    /* Font weights (zwei Namens-Schemata – beide bleiben, weil du beides nutzt) */
    --font-weight-regular: 400;
    --font-weight-medium: 500;
    --font-weight-semibold: 600;

    --fw-regular: 400;
    --fw-medium: 500;
    --fw-semibold: 600;

    /* ------------------------------------------------------------------
       SPACING
       ------------------------------------------------------------------ */
    --sp-1: 12px;
    --sp-2: 18px;
    --sp-3: 28px;
    --sp-4: 44px;
    --sp-5: 72px;

    /* ------------------------------------------------------------------
       PALETTE 3
       ------------------------------------------------------------------ */
    --p-vanilla:  #F1EADA;
    --p-sand:     #CEC1A8;
    --p-mountain: #AAA396;
    --p-tobacco:  #B59E7D;
    --p-mahogany: #584738;

    /* K1 */
    --k1-soft: #6F7C85;
    --k1-hard: #3F5561;

    /* ------------------------------------------------------------------
       UI / FLÄCHEN
       ------------------------------------------------------------------ */
    --bg-main:  var(--p-vanilla);
    --bg-panel: rgba(206,193,168,.22);
    --bg-page:  #f8f3ec;
    --bg-about: #fcf7f1;

    --surface-1: rgba(255,255,255,.70);
    --surface-2: rgba(255,255,255,.58);

    --radius-lg: 20px;

    --container: 1120px;
    --narrow:    760px;

    /* ------------------------------------------------------------------
       TEXTFARBEN
       ------------------------------------------------------------------ */
    --text-main:  #141414;
    --text-muted: rgba(20,20,20,.70);
    --text-soft:  rgba(20,20,20,.58);

    /* ------------------------------------------------------------------
       BORDERS / SHADOWS / LINES
       ------------------------------------------------------------------ */
    --border-soft: rgba(88,71,56,.14);
    --border-mid:  rgba(88,71,56,.20);

    --shadow-ambient: 0 18px 40px rgba(27,22,19,.10);
    --shadow-lift:    0 10px 26px rgba(27,22,19,.12);

    /* Dark hairline */
    --dark-hair: rgba(255,255,255,.16);

    /* Mini Divider */
    --divider-mini:       rgba(111,124,133,.70);
    --divider-mini-dark:  rgba(255,255,255,.26);
    --divider-mini-image: rgba(255,255,255,.36);

    /* K1 Accent Strips */
    --k1-strip:        rgba(111,124,133,.24);
    --k1-strip-strong: rgba(63,85,97,.32);

    /* ------------------------------------------------------------------
       DARK SECTIONS / CTA TEXT
       ------------------------------------------------------------------ */
    --dark-bg:    #1b1613;
    --dark-fg:    rgba(255,255,255,.92);
    --dark-muted: rgba(255,255,255,.74);

    /* ------------------------------------------------------------------
       LINKS
       ------------------------------------------------------------------ */
    --link-underline:        rgba(111,124,133,.62);
    --link-underline-strong: rgba(63,85,97,.72);
    --link-underline-dark:   rgba(255,255,255,.38);

    /* ------------------------------------------------------------------
       BUTTONS
       ------------------------------------------------------------------ */
    --btn-font-size: 15px;
    --btn-font-weight: 500;
    --btn-letter-spacing: -0.01em;
    --btn-radius: 14px;
    --btn-pad-y: 12px;
    --btn-pad-x: 16px;
    --btn-min-h: 44px;

    --btn-transition: 160ms ease;

    /* Primary */
    --btn-primary-bg: #141414;
    --btn-primary-fg: rgba(255,255,255,.92);
    --btn-primary-border: rgba(20,20,20,.28);
    --btn-primary-border-hover: rgba(20,20,20,.42);

    /* Secondary (deine Entscheidung: .40) */
    --btn-secondary-bg: rgba(255,255,255,.40);
    --btn-secondary-fg: #141414;
    --btn-secondary-border: rgba(20,20,20,.20);

    /* Focus */
    --btn-focus: rgba(20,20,20,.22);
    --btn-focus-dark: rgba(255,255,255,.22);

    /* Dark buttons */
    --btn-primary-bg-dark: rgba(255,255,255,.92);
    --btn-primary-fg-dark: #141414;
    --btn-primary-border-dark: rgba(255,255,255,.22);

    --btn-secondary-fg-dark: rgba(255,255,255,.92);
    --btn-secondary-border-dark: rgba(255,255,255,.22);

    /* ------------------------------------------------------------------
       HERO / CTA IMAGE (Bildwelt)
       ------------------------------------------------------------------ */
    --hero-img-a: url("/img/hero/hero-a.jpg");
    --hero-pos-x: 60%;
    --hero-pos-y: 30%;
    --hero-scale: 1.02;

    /* ------------------------------------------------------------------
       BRAND / HEADER (Tokens)
       ------------------------------------------------------------------ */
    --brand-track: 0.18em;

    --header-h: 88px;
    --header-h-scrolled: 64px;

    --header-ease: 220ms cubic-bezier(.2,.8,.2,1);

    /* NAV / ACTIVE STATES */
    --nav-inactive: 0.74;
    --nav-active: 1;
    --nav-hover: 0.92;

    /* LANG */
    --lang-inactive: 0.60;
    --lang-active: 0.92;

    /* ------------------------------------------------------------------
       FOOTER
       ------------------------------------------------------------------ */
    --footer-meta: rgba(255,255,255,.60);
    --footer-marknote: rgba(255,255,255,.50);
    --footer-link-underline: rgba(255,255,255,.55);
    --footer-coltitle: rgba(255,255,255,.78);
}


/* ======================================================================
   02) GLOBAL BASE
   ====================================================================== */

/* Box sizing */
* { box-sizing: border-box; }

/* Vollhöhe für Layouts */
html, body { height: 100%; }

/* Body-Standard */
body {
    margin: 0;
    background: var(--bg-main);
    color: var(--text-main);
    font-family: var(--font-base);
    font-size: var(--fs-body);
    font-weight: var(--font-weight-regular, 400);
    line-height: var(--lh-body);
    letter-spacing: var(--ls-body);
    text-rendering: optimizeLegibility;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

/* Headlines: gemeinsame Basis */
h1, h2, h3 {
    margin: 0 0 var(--sp-2);
    font-family: var(--font-base);
}

/* H1 */
h1 {
    font-size: var(--fs-h1);
    line-height: var(--lh-tight);
    letter-spacing: var(--ls-h1);
    font-weight: var(--fw-semibold);
}

/* H2 */
h2 {
    font-size: var(--fs-h2);
    line-height: var(--lh-heading);
    letter-spacing: var(--ls-h2);
    font-weight: var(--fw-medium);
}

/* H3 */
h3 {
    font-size: var(--fs-h3);
    line-height: 1.2;
    letter-spacing: var(--ls-h3);
    font-weight: var(--fw-medium);
}

/* Paragraph baseline */
p { margin: 0 0 var(--sp-2); }
p:last-child { margin-bottom: 0; }

/* Links */
a {
    color: inherit;
    text-underline-offset: 0.18em;
}

a.seiten_links {
    font-size: 0.95em;
    text-decoration: none;
    opacity: 0.75;
    vertical-align: super;
    margin-left: 2px;
}

a.seiten_links:hover { opacity: 1; }

.link {
    position: relative;
    display: inline-block;
    font-size: var(--fs-body);
    font-weight: var(--fw-medium);
    color: var(--k1-hard);
    text-decoration: none;
    padding-bottom: 2px;
}

.link::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    height: 1px;
    width: 0;
    background-color: var(--link-underline);
    transition: width var(--btn-transition), background-color var(--btn-transition);
}

.link:hover::after {
    width: 100%;
    background-color: var(--link-underline-strong);
}

/* Buttons */
.btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    min-height: var(--btn-min-h);
    padding: var(--btn-pad-y) var(--btn-pad-x);
    border-radius: var(--btn-radius);
    border: 1px solid transparent;
    font-size: var(--btn-font-size);
    font-weight: var(--btn-font-weight);
    letter-spacing: var(--btn-letter-spacing);
    line-height: 1.1;
    text-decoration: none;
    cursor: pointer;
    user-select: none;
    -webkit-tap-highlight-color: transparent;
	transform: none !important;
    transition: background-color var(--btn-transition), border-color var(--btn-transition), color var(--btn-transition), filter var(--btn-transition), opacity var(--btn-transition);
}

/* Button-Reset nur für echte <button> */
button.btn {
    font-family: inherit;
    background: none;
    margin: 0;
}

/* Primary */
.btn--primary {
    background: var(--btn-primary-bg);
    color: var(--btn-primary-fg);
    border-color: var(--btn-primary-border);
}

.btn--primary:hover {
  background: color-mix(in srgb, var(--btn-primary-bg) 82%, #ffffff 18%);
    border-color: color-mix(in srgb, var(--btn-primary-border) 75%, #ffffff 25%);
    filter: none;
}

/* Secondary */
.btn--secondary {
    background: var(--btn-secondary-bg);
    color: var(--btn-secondary-fg);
    border-color: var(--btn-secondary-border);
}
.btn--secondary:hover {
    background: rgba(255,255,255,.90);
    border-color: rgba(63,85,97,.40);
    filter: brightness(1.02);
}

/* Focus */
.btn:focus-visible {
    outline: none;
    box-shadow: 0 0 0 4px var(--btn-focus);
}

/* Implementierung für Reinscrollen */
 .bp-reveal [data-reveal]{
            opacity: 0;
            transform: translateY(14px);
            filter: blur(2px);
            transition:
                opacity 520ms cubic-bezier(.2,.8,.2,1),
                transform 700ms cubic-bezier(.2,.8,.2,1),
                filter 700ms cubic-bezier(.2,.8,.2,1);
            will-change: opacity, transform, filter;
        }

        .bp-reveal.is-visible [data-reveal]{
            opacity: 1;
            transform: none;
            filter: blur(0);
        }

        .bp-reveal.is-visible [data-reveal="1"]{ transition-delay: 0ms; }
        .bp-reveal.is-visible [data-reveal="2"]{ transition-delay: 120ms; }
        .bp-reveal.is-visible [data-reveal="3"]{ transition-delay: 220ms; }
        .bp-reveal.is-visible [data-reveal="4"]{ transition-delay: 320ms; }
		
		
		
		
		


/* ======================================================================
   03) UTILITIES
   ====================================================================== */

/* Muted helper (Achtung: du setzt hier zusätzlich font-size + margin-top) */
.text-muted {color: var(--text-muted);}

.bp-section--dark .text-muted {color: var(--dark-muted);}

/* Kleiner Text (z. B. unter Buttons, Fußnoten) */
.small {
    font-size: 12px;
    line-height: 1.55;
}
.bp-section--dark .small { color: var(--dark-muted); }

/* Muted-Link-Variante */
.link--muted { color: var(--text-muted); }
.bp-section--dark .link--muted { color: var(--dark-muted); }


/* ======================================================================
   04) COMPONENTS
   ====================================================================== */


/* --------------------------------------------------
   Brand
   -------------------------------------------------- */
   
.bp-brand {
            display: inline-flex;
            flex-direction: column;
            gap: 6px;
            text-decoration: none;
            transform: none;
            transition: opacity var(--header-ease), transform var(--header-ease);
            will-change: opacity, transform;
        }

      .bp-brand__name{
  font-weight: var(--fw-semibold);
  letter-spacing: var(--brand-track);
  text-transform: uppercase;
  font-size: 14px;
  line-height: 1.1;
  color: var(--text-main);
  white-space: nowrap;
}

        .bp-brand__tagline {
            font-weight: var(--fw-regular);
            font-size: 13px;
            line-height: 1.2;
           
            letter-spacing: 0.04em;
        }

        .bp-brand--left {
            grid-column: 1;
            justify-self: start;
            opacity: 1;
            pointer-events: auto;
            transform: translateX(0) scale(1);
            transform-origin: left center;
        }

        .bp-brand--center {
            position: absolute;
            left: 50%;
            top: 50%;
            transform: translate(-50%, -50%) scale(0.94);
            transform-origin: center center;
            text-align: center;
            opacity: 0;
            pointer-events: none;
            white-space: nowrap;
        }
.bp-brand__by{
  text-transform: none;     /* bleibt lesbar als by Michael Köllner */
  font-size: 12px;          /* kleiner als Brand */
  letter-spacing: 0.06em;   /* weniger eng (Screenshot-Problem) */
  font-weight: var(--fw-regular);

}

/* Separator: optisch leiser und mit sauberem Abstand */
.bp-brand__sep{
  margin: 0 .35em;   /* statt „Punkt klebt“ */
}
/* --------------------------------------------------
   Eyebrow (Label mit K1-Strich)
   -------------------------------------------------- */
.bp-eyebrow,
.bp-card__kicker {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    font-size: var(--fs-eyebrow);
    letter-spacing: var(--ls-eyebrow);
    text-transform: uppercase;
    color: var(--k1-hard);
    font-weight: var(--fw-medium);
    margin: 0 0 10px;
    opacity: 0.98;
}

.bp-eyebrow::before,
.bp-card__kicker::before {
    content: "";
    width: 30px;
    height: 1px;
    background: rgba(111,124,133,.72);
}

/* --------------------------------------------------
   Mini Divider (kurzer dicker Strich unter H2)
   -------------------------------------------------- */
.bp-mini-divider {
    margin: 14px 0 18px;
    width: 44px;
    height: 2px;
    border-radius: 999px;
    background: var(--divider-mini);
}

/* Dark Sections */
.bp-section--dark .bp-mini-divider {
    background: var(--divider-mini-dark);
}

/* Image-CTA */
.bp-section--image-cta .bp-mini-divider {
    background: var(--divider-mini-image);
}

/* --------------------------------------------------
   Hairline (feine 1px Linie)
   -------------------------------------------------- */
.bp-hairline {
    margin-top: var(--sp-3);
    height: 1px;
    width: 100%;
    background: var(--border-soft);
}
.bp-section--dark .bp-hairline {
    background: var(--dark-hair);
}
/* --------------------------------------------------
   Listen
   -------------------------------------------------- */
   .bp-list {
    padding-left: 1.2rem;
    margin: 0;
}
.bp-list li + li {
    margin-top: 4px;
}
.bp-list li {
    font-size: var(--fs-small);
    color: var(--text-muted);
}
.page-angebot .bp-card .bp-list,
.page-angebot .bp-mini-card .bp-list {
    padding-left: 0;
    margin: 0;
    list-style: none;
}

.page-angebot .bp-card .bp-list li,
.page-angebot .bp-mini-card .bp-list li {
    position: relative;
    padding-left: 16px;
    font-size: 14px;
    color: var(--text-muted);
    line-height: 1.6;
}

.page-angebot .bp-card .bp-list li + li,
.page-angebot .bp-mini-card .bp-list li + li {
    margin-top: 6px;
}

.page-angebot .bp-card .bp-list li::before,
.page-angebot .bp-mini-card .bp-list li::before {
    content: "•";
    position: absolute;
    left: 0;
    top: 0.3em;
    font-size: 0.9em;
}
/* --------------------------------------------------
   Links – Basis: erben Farbe
   -------------------------------------------------- */





/* Header-Navigation */
.nav-link {
    font-size: 13px;
    letter-spacing: var(--ls-nav);
    text-decoration: none;
    opacity: 0.62;
}
.nav-link:hover { opacity: 0.82; }
.nav-link[aria-current="page"] {
    opacity: 0.92;
    font-weight: var(--fw-medium);
}

/* Sprachlinks */
.lang a {
    text-decoration: none;
    font-weight: var(--fw-medium);
    font-size: 12px;
    letter-spacing: var(--ls-lang);
    text-transform: uppercase;
    transition: opacity var(--btn-transition);
}
.lang a[aria-current="true"] {
    opacity: var(--lang-active);
    pointer-events: none;
    cursor: default;
}
.lang a:not([aria-current="true"]) { opacity: var(--lang-inactive); }
.lang a:not([aria-current="true"]):hover { opacity: 0.86; }



/* Inline-Link auf Dark */
.bp-section--dark .link { color: var(--dark-fg); }
.bp-section--dark .link::after { background-color: var(--link-underline-dark); }
.bp-section--dark .link:hover::after {
    width: 100%;
    background: rgba(255,255,255,.86);
}

/*Testimonials*/

        /* Stimmen (ohne Kacheln) */
        .bp-quotes { display: grid; gap: 22px; margin-top: var(--sp-3); }
        .bp-quote { margin: 0; padding: 0; max-width: none; position: relative; padding-left: 42px; }

        .bp-quote::before {
            content: "“";
            position: absolute;
            left: 0;
            top: -6px;
            font-size: 70px;
            line-height: 1;
            color: rgba(88,71,56,.20);
            pointer-events: none;
        }

        .bp-quote__text {
            margin: 0;
            color: rgba(20,20,20,.88);
            font-weight: var(--fw-regular);
        }

        .bp-quote__cite {
            display: block;
            margin-top: 14px;
            font-style: normal;
            color: var(--k1-hard);
            font-size: var(--fs-small);
        }
        .bp-quote__rule {
            margin-top: 18px;
            height: 1px;
            width: 100%;
            background: var(--border-soft);
        }
        .bp-section--dark .bp-quote__text { color: rgba(255,255,255,.90); }
        .bp-section--dark .bp-quote__cite { color: rgba(255,255,255,.82); }
        .bp-section--dark .bp-quote__rule { background: var(--dark-hair); }
		.bp-section--dark .bp-quote::before {
    color: rgba(255,255,255,.26);
}


       

       

        @media (prefers-reduced-motion: reduce) {
            .bp-card, .btn, .link, .nav-link, .bp-header, .bp-brand, .bp-reveal [data-reveal]{
                transition: none !important;
                transform: none !important;
                filter: none !important;
                opacity: 1 !important;
            }
        }







/* Dark Buttons */
.bp-section--dark .btn--primary {
    background: var(--btn-primary-bg-dark);
    color: var(--btn-primary-fg-dark);
    border-color: var(--btn-primary-border-dark);
}
.bp-section--dark .btn--primary:hover {
    background: rgba(255,255,255,1);
    border-color: rgba(255,255,255,.55);
    filter: brightness(1.03);
}
.bp-section--dark .btn--secondary {
    color: var(--btn-secondary-fg-dark);
    border-color: rgba(255,255,255,.30);
    background: rgba(255,255,255,.02);
}
.bp-section--dark .btn--secondary:hover {
    background: rgba(255,255,255,.16);
    border-color: rgba(255,255,255,.55);
    filter: brightness(1.02);
}


.bp-section--dark .btn:focus-visible {
    box-shadow: 0 0 0 4px var(--btn-focus-dark);
}

/* Button-Gruppen */
.bp-actions {
    margin-top: 30px;
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
}



/* ======================================================================
   05) LAYOUT & SECTIONS
   ====================================================================== */

/* Container */
.bp-container {
    width: min(var(--container), calc(100% - 48px));
    margin: 0 auto;
}

/*| H2 + Strich  |
|              |
| Fließtext    |
| Fließtext    |
| Fließtext    |
*/
.bp-container--narrow {
    width: min(var(--narrow), calc(100% - 48px));
    margin: 0 auto;
}

.bp-header-spacer {
            height: var(--header-h);
        }
 .bp-header {
            position: fixed;
            top: 0; left: 0; right: 0;
            z-index: 1000;

            height: var(--header-h);
            display: flex;
            align-items: center;

            background: rgba(241,234,218,.86);
            backdrop-filter: blur(10px);
            -webkit-backdrop-filter: blur(10px);

            border-bottom: 1px solid transparent; /* Start: keine Linie */

            transition:
                height var(--header-ease),
                background var(--header-ease),
                border-color var(--header-ease);
        }

        .bp-header.is-scrolled {
            height: var(--header-h-scrolled);
            background: rgba(241,234,218,.92);
            border-bottom-color: rgba(111,124,133,.18); /* Linie erscheint erst beim Shrink */
        }

        .bp-header__grid {
            position: relative;
            display: grid;
            grid-template-columns: 1fr auto 1fr;
            align-items: center;
            gap: 18px;
            width: 100%;
        }

       

        .bp-header.is-scrolled .bp-brand--left {
            opacity: 0;
            pointer-events: none;
            transform: translateX(-8px) scale(0.98);
        }

        .bp-header.is-scrolled .bp-brand--center {
            opacity: 1;
            pointer-events: auto;
            transform: translate(-50%, -50%) scale(0.86);
        }
		
		
		/*Navigation*/
		 .bp-right {
            grid-column: 3;
            justify-self: end;
            display: inline-flex;
            align-items: center;
            gap: 14px;
            white-space: nowrap;

            transition:
                opacity var(--header-ease),
                transform var(--header-ease),
                visibility var(--header-ease);
        }

        .bp-header.is-scrolled .bp-right {
            opacity: 0;
            visibility: hidden;
            pointer-events: none;
            transform: translateY(-6px);
        }

        .bp-nav {
            display: inline-flex;
            gap: 14px;
            align-items: center;
        }/*Sprachmenü*/
		
        .lang {
            display: inline-flex;
            align-items: center;
            gap: 10px;
            margin-left: 6px;
            padding-left: 12px;
        }
        .lang::before { display: none; }

        

        .lang-sep {
            opacity: 0.42;
            font-size: 12px;
            line-height: 1;
            transform: translateY(-1px);
            user-select: none;
        } @media (max-width: 720px) {
            :root {
                --header-h: 92px;
                --header-h-scrolled: 72px;
            }

            .bp-header__grid {
                grid-template-columns: 1fr;
                gap: 10px;
            }

            .bp-brand--left,
            .bp-right {
                grid-column: auto;
            }

            .bp-brand--center { display: none; }
            .bp-header.is-scrolled .bp-brand--left {
                opacity: 1;
                pointer-events: auto;
                transform: none;
            }

            .bp-header.is-scrolled .bp-right {
                opacity: 0;
                visibility: hidden;
                pointer-events: none;
                transform: translateY(-6px);
            }

            .bp-right {
                justify-self: start;
                flex-wrap: wrap;
                row-gap: 10px;
                white-space: normal;
            }

            .lang {
                margin-left: 0;
                padding-left: 0;
            }
            .lang::before { display: none; }
        }/* Grid / Cards */
        .bp-grid {
            display: grid;
            gap: 22px;
            margin-top: var(--sp-3);
        }
        .bp-grid--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
        .bp-grid--2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }

        /* Nur im 3er-Angebots-Grid:
           Cards als Spalten-Flex-Container, Button nach unten drücken */
        .bp-grid--3 .bp-card {
            display: flex;
            flex-direction: column;
        }

        .bp-grid--3 .bp-card h3 {
            margin-bottom: 10px;
        }

        .bp-grid--3 .bp-card p {
            margin-bottom: 16px;
        }

        /* Button immer ganz nach unten, links ausgerichtet */
        .bp-grid--3 .bp-card .btn {
            margin-top: auto;
            align-self: flex-start;
        }

        @media (max-width: 960px) {
            .bp-grid--3,
            .bp-grid--2 { grid-template-columns: 1fr; }
        }

        .bp-card {
            position: relative;
            border-radius: var(--radius-lg);
            padding: 22px;
            border: none;
            background: var(--surface-1);
            box-shadow: var(--shadow-ambient);
            backdrop-filter: blur(8px);
            overflow: hidden;
            transform: none !important;
            transition: box-shadow var(--btn-transition), filter var(--btn-transition);
        }
        .bp-card::before {
            content: "";
            position: absolute;
            left: 0; right: 0; top: 0;
            height: 2px;
            background: var(--k1-strip);
        }
        .bp-card::after {
            content: "";
            position: absolute;
            inset: 0;
            border-radius: inherit;
            pointer-events: none;
            box-shadow: inset 0 1px 0 rgba(255,255,255,.46);
        }
        .bp-card:hover {
            box-shadow: var(--shadow-ambient);
            filter: brightness(1.01);
        }
        .bp-card:hover::before { background: var(--k1-strip-strong); }

        .bp-section--panel .bp-card {
            background: rgba(255, 255, 255, 0.74);
            box-shadow: var(--shadow-lift);
        }
        .bp-section--panel .bp-card:hover { box-shadow: var(--shadow-lift); }

        .bp-section--dark .bp-card {
            background: rgba(255, 255, 255, 0.06);
            box-shadow: none;
            backdrop-filter: none;
        }
        .bp-section--dark .bp-card::before { background: rgba(255,255,255,.10); }
        .bp-section--dark .bp-card::after { box-shadow: inset 0 1px 0 rgba(255,255,255,.10); }
        .bp-section--dark .bp-card:hover { filter: brightness(1.02); }

       
       
        .bp-card__title {
            margin: 0 0 10px;
            font-size: clamp(20px, 1.8vw, 26px);
            line-height: 1.2;
            letter-spacing: -0.01em;
            font-weight: var(--fw-medium);
        }
        .bp-card__body { margin: 0 0 14px;  color: var(--text-main); font-size: var(--fs-small); }
        .bp-card__actions { display: flex; gap: 12px; flex-wrap: wrap; margin-top: 8px; }
  /* ==========================================================
           PAGE PATCH (Struktur B)
           - Head (H2 + Mini-Divider) bleibt links
           - Text/Liste laufen „narrow“ und wirken zentriert
           ========================================================== */

        /* Für den Hilfeblock: UL ohne Default-Einzug (Browser-Default) */
        .bp-keypoints {
            list-style: none;
            padding-left: 0;
            margin-left: 0;
        }

        /* Optional: Link-Optik für Telefonnummern/Websites im Fließtext */
        .linklike{
            color: inherit;
            text-decoration: none;
            border-bottom: 1px solid var(--link-underline);
            padding-bottom: 1px;
        }
        .linklike:hover{
            border-bottom-color: var(--link-underline-strong);
        }
@media (max-width: 960px) {
    .bp-container,
    .bp-container--narrow {
        width: calc(100% - 32px);
    }
}

/* Sections */
.bp-section {
    padding: var(--sp-5) 0; /* jede section: oben/unten Abstand */
}
.bp-section--panel {
    background: var(--bg-panel);
}
.bp-section--dark {
    background: var(--dark-bg);
    color: var(--dark-fg);
}
.bp-section--dark .text-muted {
    color: var(--dark-muted);
}
.bp-section__head {
    margin-bottom: var(--sp-3);
}
.bp-section--surface {
    background: rgba(255,255,255,.42);
}

.bp-section--about {
    background: var(--bg-about) ;
	
}

/* Satzspiegel-Pattern (wiederverwendbar) */
.bp-section__body{
  max-width: 65ch;
  margin-left: auto;
  margin-right: auto;
}

/* Innerhalb des Satzspiegels keine zusätzlichen Begrenzungen erzwingen */
.bp-section__body p,
.bp-section__body .bp-keypoints p{
  max-width: none;
}


/*für ausbildung-ratenzahlung*/

        /* Keypoints (Ablauf) */
        .bp-keypoints{margin-top:var(--sp-3);display:grid;gap:18px;}
        .bp-keypoint{padding:18px 0;border-top:1px solid var(--border-soft);}
        .bp-keypoint:first-child{padding-top:0;border-top:0;}
		
  .bp-rahmen-grid{grid-template-columns:1fr;}


.bp-rahmen-panel{
    padding:0;
}

.bp-rahmen-panel h3{
    margin:0 0 10px;
    font-size:18px;
    line-height:1.25;
    font-weight:var(--fw-medium);
    letter-spacing:-0.01em;
}

.bp-rahmen-panel p{
    margin:0 0 12px;
    font-size:15px;
    line-height:1.72;
    color:rgba(20,20,20,.82);
}

.bp-rahmen-panel p:last-child{
    margin-bottom:0;
}

/*für angebot zitat*/
/* Angebotsseite: Zitat stärker priorisieren (ohne zusätzliche Überschrift) */
.page-angebot .bp-quote__text{
    font-size: clamp(18px, 1.15vw + 14px, 22px);
    line-height: 1.65;
}

.page-angebot .bp-quote__cite{
    margin-top: 12px;
    font-size: 14px;
    opacity: .85;
}
/* Angebotsseite: Quote-Section – gleiche optische Luft oben/unten */
.page-angebot .bp-section--about .bp-quotes{
    margin-top: 0;       /* falls hier vorher extra Abstand drauf war */
    margin-bottom: 0;
}

/* falls Blockquote oder Text intern Margins setzen */
.page-angebot .bp-section--about blockquote{
    margin: 0;
}

/* erster/letzter Inhalt erzeugt keinen zusätzlichen Rand */
.page-angebot .bp-section--about .bp-container--narrow > :first-child{ margin-top: 0; }
.page-angebot .bp-section--about .bp-container--narrow > :last-child{ margin-bottom: 0; }



/*für über mich*/
.about-portrait {
    margin: 0 0 14px;
    display: flex;
    justify-content: left
}


.about-portrait img {
    display: block;
    border-radius: 16px;
}



.about-aside .about-portrait img {
    width: 150px;   /* bisher effektiv ca. 200px – jetzt kleiner */
    height: auto;
    border-radius: 16px;
}
/* ÜBER-MICH: Portrait-Card feinjustieren */

/* Bild nach links, kompakt */
.about-aside .about-portrait {
    margin: 0 0 12px;
    display: block;
}



    /* Über-mich: Portrait-Card Feintuning */
    .about-aside .bp-card{
        padding-top: 22px;
    }

    /* Portrait in der Card: ca. 1/3 kleiner */
    .about-aside .about-portrait{
        margin: 0;
        display: block;
    }

    .about-aside .about-portrait img{
        width: 120px; /* vorher 150px -> ca. 1/3 kleiner */
        height: auto;
        border-radius: 16px;
        display: block;
    }

    /* Start: Bild links, Text rechts oben (nur für den oberen Block) */
    .about-aside .about-top{
        display: grid;
        grid-template-columns: 100px 1fr;
        column-gap: 35px;
        align-items: start;
        margin: 0 0 12px;
    }

    .about-aside .about-top .bp-card__title{
        margin: 0 0 6px !important;
        text-align: left !important;
    }

    .about-aside .about-top .bp-card__body{
        margin: 0;
    }

    /* Danach: normaler Fluss über volle Card-Breite */
    .about-aside .about-after{
        margin-top: 8px;
    }

    .about-aside .about-after .bp-card__body + .bp-card__body{
        margin-top: 10px;
    }
	.about-aside .bp-card__body + .bp-card__body{
    margin-top: 10px; }/* hier kleiner/größer stellen */
/* dezente vertikale Trennung nur auf Desktop */


/*Termin buchen*/
/* Orientierung / FAQ */
        .bp-orient-grid {
            display: grid;
            grid-template-columns: repeat(3, minmax(0, 1fr));
            gap: 28px;
            margin-top: var(--sp-3);
        }
       
        .bp-orient-item__title { margin: 0 0 8px; font-size: 16px; letter-spacing: -0.01em; font-weight: var(--fw-medium); }
        .bp-orient-item__body { margin: 0 0 10px; max-width: 32rem; }

        @media (max-width: 960px) { .bp-orient-grid { grid-template-columns: 1fr; } }

@media (min-width:961px){
    .bp-rahmen-panel + .bp-rahmen-panel{
        padding-left:22px;
        border-left:1px solid rgba(88,71,56,.10);
    }}/* Mid container: ~78ch (ideal für 2 Spalten Text) */
.bp-container--mid{
    width:min(78ch, calc(100% - 48px));
    margin:0 auto;
}
@media (max-width:960px){
    .bp-container--mid{width:calc(100% - 32px);}
}

/* 2-column text layout (ohne Cards) */
.bp-2col-text{
    display:grid;
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap:28px;
}

/* Erst relativ spät auf 1 Spalte fallen lassen */
@media (max-width:820px){
    .bp-2col-text{grid-template-columns:1fr;}
}

.bp-2col-text__col h3{
    margin:0 0 10px;
    font-size:18px;
    line-height:1.25;
    font-weight:var(--fw-medium);
    letter-spacing:-0.01em;
}

.bp-2col-text__col p{
    margin:0 0 12px;
    font-size:15px;
    line-height:1.72;
    color:rgba(20,20,20,.82);
}
.bp-2col-text__col p:last-child{margin-bottom:0;}

/* Trennlinie nur, wenn wirklich 2 Spalten aktiv sind */
@media (min-width:821px){
    .bp-2col-text__col + .bp-2col-text__col{
        padding-left:28px;
        border-left:1px solid rgba(88,71,56,.10);
    }
}
/*für Angebot Testimonial*/
.page-angebot .bp-section--dark .bp-quotes {
    max-width: 48ch;
    margin: var(--sp-3) auto 0;
}

.page-angebot .bp-section--dark .bp-quote {
    padding-left: 0;
    text-align: center;
}

.page-angebot .bp-section--dark .bp-quote::before {
    left: 50%;
    transform: translateX(-50%);
}

.page-angebot .bp-section--dark .bp-quote__cite {
    text-align: center;
}

/* ======================================================================
   06) HERO
   ====================================================================== */
.bp-hero {
    min-height: auto;
    display: flex;
    align-items: flex-start; /* verhindert riesige Center-Luft */
    padding: clamp(28px, 5vw, 56px) 0;
}

.bp-hero__grid {
    display: grid;
    grid-template-columns: 1.1fr 0.9fr;
    gap: 56px;
    align-items: start;
}

/* Unterzeile/Tagline unter H1 */
.bp-hero__tagline {
    margin-top: 22px;
    font-size: clamp(16px, 1.6vw, 20px);
    max-width: 70ch;
}

/* SEO-Zeile (kleiner, muted) */
.bp-hero__seo {
    font-size: 16px;
    max-width: 70ch;
}

/* horizontale Linie unter dem Textblock */
.bp-actions__divider {
    margin-top: var(--sp-4);
    height: 1px;
    width: 260px;
    background: var(--border-soft);
}
.bp-actions__divider-dark {
    margin-top: var(--sp-4);
    height: 1px;
    width: 260px;
    background: var(--divider-mini-dark);
}

/* Bild-Container */
.bp-hero__image {
    position: relative;
    height: 480px;
    border-radius: var(--radius-lg);
    overflow: hidden;
    box-shadow: var(--shadow-ambient);
    background: transparent;
	align-self: start; 
}

/* Bildfläche (Token-gesteuert) */
.bp-hero__image::before {
    content: "";
    position: absolute;
    inset: 0;
    background-image: var(--hero-img-a);
    background-size: cover;
    background-position: var(--hero-pos-x) var(--hero-pos-y);
    transform: scale(var(--hero-scale));
    filter: none;
}

/* Responsive */
@media (max-width: 960px) {
    .bp-hero {
        min-height: 78vh;
        padding: clamp(28px, 4vw, 60px) 0 clamp(28px, 4vw, 60px);
    }
    .bp-hero__grid {
        grid-template-columns: 1fr;
        gap: 36px;
    }
    .bp-hero__image { height: 340px; }
}


/* ======================================================================
   07) IMAGE CTA (bp-section--image-cta)
   ====================================================================== */

/* CTA-Section: Container für Bildlayer + Text */
.bp-section--image-cta {
    position: relative;
    color: var(--dark-fg);
    overflow: hidden;
}

/* Bildlayer hinter Inhalt */
.bp-section--image-cta::before {
    content: "";
    position: absolute;
    inset: 0;

    background-image: var(--hero-img-a);
    background-size: cover;
    background-position: var(--hero-pos-x) var(--hero-pos-y);

    filter: grayscale(.05) brightness(.62);
    transform: scale(1.03);
}

/* Inhalt über Bild */
.bp-section--image-cta > .bp-container--narrow {
    position: relative;
    z-index: 1;
}

/* Muted Text im CTA */
.bp-section--image-cta .text-muted {
    color: var(--dark-muted);
}

/* CTA Layout */
.bp-cta-layout {
    display: grid;
   grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 32px;
  align-items: flex-start;
}

.bp-cta-lead p {
    max-width: 60ch;
}

/* Formularblock rechts */
.bp-cta-card {
    margin-left: 0;
    padding: 0;
    max-width: none;

    color: var(--dark-fg);
    background: transparent;
    border-radius: 0;
    box-shadow: none;
}

.bp-cta-card h3 {
    margin: 0 0 12px;
    font-size: var(--fs-h3);
    letter-spacing: -0.01em;
    color: var(--dark-fg);
}

.bp-cta-card p {
    margin: 0 0 14px;
    font-size: var(--fs-small);
    color: rgba(255,255,255,.78);
}

/* Formular */
.bp-form {
    display: grid;
    gap: 14px;
    margin-top: 6px;
}

.bp-form-row {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.bp-form-label {
    font-size: 11px;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: rgba(255,255,255,.82);
}

.bp-form-input,
.bp-form-textarea {
    font-family: var(--font-base);
    font-size: var(--fs-body);
    padding: 6px 0 4px;

    border: 0;
    border-bottom: 1px solid rgba(255,255,255,.80);
    border-radius: 0;

    background: transparent;
    color: var(--dark-fg);
}

.bp-form-input::placeholder,
.bp-form-textarea::placeholder {
    color: rgba(255,255,255,.55);
}

.bp-form-input:focus,
.bp-form-textarea:focus {
    outline: none;
    border-bottom-color: rgba(255,255,255,1);
}

.bp-form-textarea {
    min-height: 96px;
    resize: vertical;
}

.bp-form-footer {
    display: flex;
    flex-direction: column;
    gap: 8px;
    margin-top: 10px;
}

.bp-section--image-cta .bp-form-note {
    font-size: 12px;
    color: rgba(255,255,255,.70);
    max-width: 48ch;
}

/* CTA Button Override (nur in dieser Section) */
.bp-section--image-cta .btn--primary {
    background: rgba(255,255,255,.70);
    color: #141414;
    border-color: rgba(255,255,255,.40);
}
.bp-section--image-cta .btn--primary:hover {
    background: #ffffff;
    border-color: rgba(255,255,255,.70);
    filter: brightness(1.03);
}

/* Responsive CTA */
@media (max-width: 960px) {
    .bp-cta-layout {
        grid-template-columns: minmax(0, 1fr);
    }
    .bp-cta-card {
        margin-left: 0;
        max-width: none;
        margin-top: 18px;
    }
}


/* ======================================================================
   08) FOOTER
   ====================================================================== */

/* Grundcontainer */
.bp-footer {
    padding: 28px 0 32px;
    font-size: 13px;
}

/* Grid */
.bp-footer__grid {
    display: grid;
    grid-template-columns:
        minmax(0, 1.2fr)
        minmax(0, 0.8fr)
        minmax(0, 0.8fr);
    gap: 22px;
    align-items: flex-start;
}

/* Marke */
.bp-footer__brand {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.bp-footer__brand-name {
    font-weight: var(--fw-medium);
    letter-spacing: var(--ls-footer-brand);
    text-transform: uppercase;
    font-size: 12px;
    color: var(--dark-fg);
}

.bp-footer__brand-tagline {
    color: var(--dark-muted);
    font-size: 13px;
    max-width: 34ch;
}

/* Spalten-Title */
.bp-footer__col-title {
    font-size: 11px;
    letter-spacing: var(--ls-footer-coltitle);
    text-transform: uppercase;
    margin-bottom: 8px;
    color: var(--footer-coltitle);
}

/* Listen */
.bp-footer__list {
    list-style: none;
    margin: 0;
    padding: 0;
}
.bp-footer__list li + li {
    margin-top: 4px;
}

/* Links */
.bp-footer a {
    text-decoration: none;
    color: var(--dark-muted);
    text-underline-offset: 0.18em;
}
.bp-footer a:hover {
    text-decoration: underline;
    text-decoration-color: var(--footer-link-underline);
    color: var(--dark-fg);
}

/* Meta */
.bp-footer__meta {
    margin-top: 18px;
    padding-top: 10px;
    border-top: 1px solid var(--dark-hair);
    font-size: 11px;
    color: var(--footer-meta);
}

/* Marknote */
.bp-footer__marknote {

    margin-top: 4px;
    font-size: 10px;
    letter-spacing: 0.02em;
    color: var(--footer-marknote);
}

/* Responsive Footer */
@media (max-width: 900px) {
    .bp-footer__grid {
        grid-template-columns:
            minmax(0, 1fr)
            minmax(0, 1fr);
        row-gap: 18px;
    }
    .bp-footer__brand {
        grid-column: 1 / -1;
    }
    .bp-footer__meta {
        font-size: 10px;
    }
}

/* Offset für Sprungmarken wegen fixed Header */
#kontakt {
  scroll-margin-top: calc(var(--header-h-scrolled) + 24px);
}

/* Optional: wenn du auch im ungescrolten Zustand sicher sein willst */
@media (min-width: 721px){
  #kontakt { scroll-margin-top: calc(var(--header-h) + 24px); }
}

/* ======================================================================
   09) PAGE PATCHES
   ====================================================================== */

/* Seite: Ausbildung Ratenzahlung / Termin buchen */
.page-ausbildung-ratenzahlung {
    /* Card-Feinsteuerung nur hier */
    --card-border: rgba(88,71,56,.12);
    --card-inset: inset 0 1px 0 rgba(255,255,255,.58);
    --card-kicker-bg: rgba(111,124,133,.10);
    --card-kicker-border: rgba(63,85,97,.18);
    --card-kicker-fg: rgba(63,85,97,.92);
    --card-rule: rgba(88,71,56,.12);

    /* bewusst NICHT überschreiben */
    /* --k1-strip-strong: rgba(63,85,97,.34); */
}
/*about auf intro*/
.about-grid {
            display: grid;
            grid-template-columns: minmax(0, 1.05fr) minmax(0, 1.45fr);
            gap: clamp(2.5rem, 5vw, 4rem);
            align-items: center;
        }

        .about-photo {
            margin: 0;
            display: flex;
            justify-content: center;
        }

        .about-photo img {
            display: block;
            width: 100%;
            max-width: 260px;
            height: auto;
            border-radius: 24px;
            object-fit: cover;
            box-shadow: var(--shadow-ambient);
        }

        .about-text {
            max-width: 640px;
        }

        

        .about-text h2 {
            font-family: var(--font-base);
            font-weight: 600;
            font-size: clamp(1.65rem, 2.4vw, 2rem);
            line-height: 1.25;
            margin: 0 0 1.5rem;
        }

        @media (max-width: 900px) {
            .about-grid {
                grid-template-columns: minmax(0, 1fr);
                gap: 2rem;
            }

            .about-photo {
                justify-content: flex-start;
            }

            .about-photo img {
                max-width: 320px;
            }
        }/* Fragen & Orientierung – Grid */
        .bp-orient-grid {
            display: grid;
            grid-template-columns: repeat(3, minmax(0, 1fr));
            gap: 28px;
            margin-top: var(--sp-3);
        }

      /* Fragen & Orientierung – Linie unter dem Text statt darüber */
.bp-orient-item{
    padding-top: 0;
    padding-bottom: 16px;
    border-top: 0;
    border-bottom: 1px solid var(--border-soft);
}

/* Strich auch beim letzten (Ausbildung) anzeigen */
.bp-orient-item:last-child{
    border-bottom: 1px solid var(--border-soft);
    padding-bottom: 16px;
}
.bp-section--dark .bp-orient-item:last-child{
    border-bottom-color: var(--dark-hair);
}




        .bp-orient-item__title {
            margin: 0 0 8px;
            font-size: 16px;
            letter-spacing: -0.01em;
            font-weight: var(--fw-medium);
        }

        .bp-orient-item__body {
            margin: 0 0 10px;
            max-width: 32rem;
        }

        .bp-section--dark .bp-orient-item {
            border-top-color: var(--dark-hair);
        }

        @media (max-width: 960px) {
            .bp-orient-grid {
                grid-template-columns: 1fr;
            }
        }
		
		/*ausbildung*/
		/* Ausbildung: Listen in den Modul-Kacheln typografisch differenzieren */
.page-ausbildung .bp-section--panel .bp-grid--3 .bp-card .bp-list {
    margin-top: 10px;          /* kleiner Abstand vom Fließtext */
	margin-bottom: 12px;   /* jetzt identischer Abstand nach unten */
    padding-left: 0;           /* eigene Einrückung, nicht Standard-UL */
    list-style: none;
}

.page-ausbildung .bp-section--panel .bp-grid--3 .bp-card .bp-list li {
    position: relative;
    padding-left: 18px;        /* Einzug für den Bullet */
    font-size: 13px;           /* einen Tick kleiner als fs-small */
    line-height: 1.7;          /* etwas luftiger */
    color: var(--text-soft);   /* minimal weicher als der Fließtext */
}

.page-ausbildung .bp-section--panel .bp-grid--3 .bp-card .bp-list li::before {
    content: "•";
    position: absolute;
    left: 0;
    top: 0.35em;
    font-size: 0.9em;
    color: var(--k1-soft);     /* feiner Akzent in K1 */
}
  
		.no-underline {
    text-decoration: none !important;
}
.no-underline::after {
    content: none !important; /* falls Deine Link-Linien per ::after erzeugt werden */
}
.bp-card__body.text-muted {
    color: var(--text-muted);
}

/*Impressum*/
/* PAGE: Legal (Option A: Prose statt Card) */
.bp-legal{
    max-width: 72ch; /* optional: sehr angenehm für Rechtstext */
}

/* Überschrift soll eindeutig zum folgenden Absatz gehören */
.bp-legal h3{
    margin-top: var(--sp-4);
    margin-bottom: var(--sp-1);
    padding-top: var(--sp-3);
    border-top: 1px solid var(--divider-mini);
    text-align: left;
}

/* Erste Überschrift ohne „Abschnittstrenner“ */
.bp-legal h3:first-of-type{
    margin-top: 0;
    padding-top: 0;
    border-top: 0;
}

/* Absatz direkt nach Überschrift: keine Extra-Luft oben */
.bp-legal h3 + p{
    margin-top: 0;
}

/* Quelle-Block: eigener, ruhiger Trenner */
.bp-legal .bp-source{
    margin-top: var(--sp-4);
    padding-top: var(--sp-3);
    border-top: 1px solid var(--border-soft);
}


.bp-welcome {
            display: grid;
            grid-template-columns: 1.15fr 0.85fr;
            gap: 28px;
            align-items: start;
        }
        .bp-welcome__text p {
            max-width: 78ch;
        }
        .bp-welcome__stack {
            display: grid;
            gap: 14px;
        }/*mini-card*/
		
        .bp-mini-card {
            position: relative;
            border-radius: 16px;                             /* minimal weniger weich als die großen Cards */
            background: rgba(255,255,255,0.90);               /* leichter, transparenter Hintergrund */
            box-shadow: none;                                /* kein eigener Schatten, bleibt im Fluss der Section */
            padding: 16px 16px 12px;
            border: 1px solid rgba(88,71,56,.14);            /* feine, aber klarere Linie */
        }

        /* kleiner Eyebrow-Streifen im Card-Kopf */
        .bp-mini-card::before {
            content: "";
            position: absolute;
            left: 16px;
            top: 10px;
            width: 24px;
            height: 1px;
            background: rgba(111,124,133,.45);
        }

        .bp-mini-card__title {
            margin: 0 0 6px;
            padding-top: 12px;                               /* Abstand unter dem Eyebrow-Streifen */
            font-size: 14px;
            letter-spacing: 0.08em;
            text-transform: uppercase;
            color: rgba(20,20,20,.78);
            font-weight: var(--fw-medium);
        }

        .bp-mini-card__body {
            margin: 0;
            font-size: 14px;
            color: var(--text-muted);
            line-height: 1.55;
            max-width: none;
        }

        @media (max-width: 960px) {
            .bp-welcome {
                grid-template-columns: 1fr;
            }
            .bp-mini-card {
                background: rgba(255,255,255,.62);
            }
        }
/*besondere-menschen*/
.bp-prose p { max-width: 78ch; }
.bp-prose p + p { margin-top: 18px; }

/* Magazin-Layout für längere Fließtexte (nur Desktop) */
.bp-article { max-width: 78ch; }

@media (min-width: 1024px) {
    .bp-article--cols {
        column-count: 2;
        column-gap: 44px;
        column-fill: balance;
    }

    /* Absätze/Elemente nicht in Spalten zerbrechen */
    .bp-article--cols p,
    .bp-article--cols h3,
    .bp-article--cols blockquote,
    .bp-article--cols ul,
    .bp-article--cols ol {
        break-inside: avoid;
        page-break-inside: avoid;
    }

    /* Zwischenüberschriften: nicht am Spaltenende hängen */
    .bp-article--cols h3 {
        margin-top: 18px;
        margin-bottom: 10px;
    }
}

/* Mobil/Tablet bleibt einspaltig */
@media (max-width: 1023px) {
    .bp-article--cols { column-count: 1; }
}

/* Spezial-Typo dieser Seite */
.text_head { margin-bottom: -10px; }
.eingeruckt { text-indent: 15px; }

/*für footer*/
/* Footer: Brand wie Header, aber dark-fähig */
.bp-brand--footer{
    display: inline-flex;
    flex-direction: column;
    gap: 6px;
    text-decoration: none;
}

.bp-footer .bp-brand--footer .bp-brand__name{
    color: var(--dark-fg);
}

.bp-footer .bp-brand--footer .bp-brand__tagline{
    color: var(--dark-muted);
}

.bp-footer .bp-brand--footer:hover{
    opacity: 0.95;
}
/* Footer-Brand: niemals unterstreichen (auch nicht beim Hover) */
.bp-footer .bp-brand--footer,
.bp-footer .bp-brand--footer:hover{
    text-decoration: none !important;
}

.bp-footer .bp-brand--footer *{
    text-decoration: none !important;
}
/* Footer: Spalten-Titel stärker als Links */
.bp-footer__col-title{
    font-size: 12px;                 /* vorher 11px */
    font-weight: var(--fw-medium);   /* vorher „normal“ */
    letter-spacing: 0.18em;          /* gern minimal höher als bisher */
    margin-bottom: 10px;             /* etwas mehr Luft */
    color: rgba(255,255,255,.86);    /* leicht präsenter */
}
/*ausbildung-ratenzahlung*/
/* =========================================================
   #modelle – stabil
   ========================================================= */
#modelle .bp-grid--3 .bp-card,
#modelle .bp-grid--2 .bp-card{
    display:flex;
    flex-direction:column;
}

#modelle .bp-card{ padding:20px; }
#modelle .bp-card h3{ margin:10px 0 14px; }
#modelle .bp-card p{ margin:0 0 4px; }

#modelle .bp-card p.text-muted:has(> small){
    position:relative;
    margin-top:16px;
    padding:14px 16px 14px 34px;
    border:0;
    border-radius:14px;
    background:rgba(111,124,133,.08);
}

#modelle .bp-card p.text-muted:has(> small)::before{
    content:"“";
    position:absolute;
    left:10px;
    top:9px;
    font-size:24px;
    line-height:1;
    color:rgba(63,85,97,.22);
    pointer-events:none;
}

#modelle .bp-card p.text-muted > small{
    display:block;
    background:transparent !important;
    border:0 !important;
    padding:0 !important;
    margin:0 !important;
    border-radius:0 !important;
    font-size:13px;
    line-height:1.65;
    font-style:italic;
    letter-spacing:0;
    color:rgba(20,20,20,.76);
}

.bp-section--panel #modelle .bp-card p.text-muted:has(> small){
    background:rgba(111,124,133,.10);
}

#modelle .bp-grid.bp-grid--2{
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:22px;
    justify-items:stretch;
}
#modelle .bp-grid.bp-grid--2 > .bp-card{
    grid-column:1 / 2;
    width:100%;
    max-width:none;
}
@media (max-width:960px){
    #modelle .bp-grid.bp-grid--2{ grid-template-columns:1fr; }
    #modelle .bp-grid.bp-grid--2 > .bp-card{ grid-column:auto; }
}

/* =========================================================
   #ablauf – nur Keypoints (Cards entfernt)
   ========================================================= */
.bp-keypoint p{
    color:rgba(20,20,20,.82);
    line-height:1.72;
}

/* =========================================================
   #gewissen – 2 Kacheln + Typo
   ========================================================= */
#gewissen .bp-grid.bp-grid--2{
    grid-template-columns:repeat(2,minmax(0,1fr));
    align-items:stretch;
}
@media (max-width:960px){
    #gewissen .bp-grid.bp-grid--2{ grid-template-columns:1fr; }
}

#gewissen .bp-commitment-card{ padding:22px 22px 18px; }

#gewissen .bp-commitment-card h3{
    font-size:17px;
    line-height:1.25;
    margin:6px 0 12px;
}

#gewissen .bp-commitment-card p{
    font-size:14.5px;
    line-height:1.75;
    margin:0 0 12px;
    color:rgba(20,20,20,.82);
}

#gewissen .bp-commitment-card p + p{ margin-top:10px; }

#gewissen .bp-commitment-card strong{
    font-weight:inherit;
    color:inherit;
}

#gewissen .bp-commitment-card .bp-keyline{
    margin:14px 0;
    padding:10px 12px;
    background:rgba(111,124,133,.08);
    border-radius:12px;
    font-weight:var(--fw-medium);
    color:rgba(20,20,20,.88);
    text-align:center;
}
/*FAQ*/
/* FAQ – Accordion (Premium, ohne jQuery) */
.bp-faq-grid{
    margin-top: var(--sp-3);
    display: grid;
    gap: 14px;
}

.bp-faq-item{
    border: 1px solid var(--border-soft);
    border-radius: 16px;
    background: rgba(255,255,255,.40);
    overflow: hidden;
}

.bp-faq-item[open]{
    background: rgba(255,255,255,.62);
    border-color: rgba(88,71,56,.18);
}

.bp-faq-q{
    list-style: none;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 16px 18px;
    cursor: pointer;
    font-size: 16px;
    font-weight: var(--fw-medium);
    letter-spacing: -0.01em;
    color: rgba(20,20,20,.92);
}

.bp-faq-q::-webkit-details-marker{ display: none; }

.bp-faq-icon{
    flex: 0 0 auto;
    width: 18px;
    height: 18px;
    position: relative;
    opacity: 0.62;
}

.bp-faq-icon::before,
.bp-faq-icon::after{
    content: "";
    position: absolute;
    left: 50%;
    top: 50%;
    width: 16px;
    height: 1px;
    background: rgba(63,85,97,.62);
    transform: translate(-50%, -50%);
    transition: transform var(--btn-transition), opacity var(--btn-transition);
}

.bp-faq-icon::after{
    transform: translate(-50%, -50%) rotate(90deg);
}

.bp-faq-item[open] .bp-faq-icon::after{
    opacity: 0;
    transform: translate(-50%, -50%) rotate(90deg) scaleX(0.6);
}

.bp-faq-a{
    padding: 0 18px 16px;
    color: rgba(20,20,20,.86);
}

.bp-faq-a p{ max-width: 78ch; }
/*impressum, Datenschutz*/

.background--white{background:white}

/* Legal: klare Hierarchie */
.bp-legal h2{
    margin-top: var(--sp-5);
    margin-bottom: var(--sp-2);
    padding-top: var(--sp-3);
    border-top: 1px solid var(--divider-mini);
}

.bp-legal h2:first-of-type{
    margin-top: 0;
    padding-top: 0;
    border-top: 0;
}

/* H3 bleibt Unterpunkt-Optik (ohne so „dominant“ wie vorher) */
.bp-legal h3{
    margin-top: var(--sp-3);
    margin-bottom: var(--sp-1);
    padding-top: 0;
    border-top: 0;
}

/* Ausbildung-DE: "Was Dich konkret erwartet" – letztes Keypoint ohne Bottom-Padding */
#angebot-faq .bp-keypoint:last-child{
    padding-bottom: 0;
}

.about-photo img{
    transform: none;
    backface-visibility: visible;
}

/*ausbildung-deutschland*/
/* Zitat (Dark) – Typo wie .page-angebot, aber nur hier */
#haltung-zitat .bp-quote__text{
  font-size: clamp(18px, 1.15vw + 14px, 22px);
  line-height: 1.65;
}

#haltung-zitat .bp-quote__cite{
  margin-top: 12px;
  font-size: 14px;
  opacity: .85;
}
/* Mini-Grid: 2 Spalten (Desktop), 1 Spalte (Mobile) */
.bp-mini-grid{
  display: grid;
  gap: 22px;
  margin-top: var(--sp-3);
}

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

@media (max-width: 960px){
  .bp-mini-grid--2{
    grid-template-columns: 1fr;
  }
}

/* ausbildung-deutschland: Zitat – kein Extra-Top-Abstand durch .bp-quotes */
#haltung-zitat .bp-quotes{
  margin-top: 0;
}

/* =========================================================
   CTA: Success-Box exakt wie .bp-card (Ausbildungsseite)
   ========================================================= */

/* In der Image-CTA ist Text sonst "dark-fg" – wir wollen Card wie auf Panel: dark text */
.bp-section--image-cta .bp-form-feedback--success.bp-card{
  /* 1:1 Card-Optik */
  background: rgba(255,255,255,.74);
  box-shadow: var(--shadow-lift);
  border: none;
  backdrop-filter: blur(8px);
  overflow: hidden;
   text-align: center;

  /* Typo wie auf hellen Cards */
  color: var(--text-main);

  /* deine Feedback-Spacing behalten */
  padding: 22px;
  margin: 0 0 var(--sp-2);
  border-radius: var(--radius-lg);
}

/* 1:1 bp-card Streifen oben */
.bp-section--image-cta .bp-form-feedback--success.bp-card::before{
  content: none;
  position: absolute;
  left: 0; right: 0; top: 0;
  height: 2px;
  background: var(--k1-strip);
}

/* 1:1 bp-card Innenkante */
.bp-section--image-cta .bp-form-feedback--success.bp-card::after{
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  pointer-events: none;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.46);
}

/* Hover wie Card (optional, aber "exakt") */
.bp-section--image-cta .bp-form-feedback--success.bp-card:hover{
  box-shadow: var(--shadow-lift);
  filter: brightness(1.01);
}
.bp-section--image-cta .bp-form-feedback--success.bp-card:hover::before{
  background: var(--k1-strip-strong);
}
/* =========================================================
   CTA Feedback – 1:1 wie Card-Optik, nur Farbe variiert
   ========================================================= */

/* Basis: identisch für Erfolg + Fehler */
.bp-form-feedback{
  position: relative;
  border-radius: var(--radius-lg);
  padding: 18px 18px;
  margin: 0 0 14px;
  box-shadow: none;
  text-align: center;

  /* wichtig: KEIN Caret, KEIN Fokus-Outline-Gedöns */
  caret-color: transparent;
  user-select: none;
}

/* Card-Overlays wie bei .bp-card (ohne dass du die ganze bp-card-Kaskade brauchst) */
.bp-form-feedback::before{
  content: none;
  position: absolute;
  left: 0; right: 0; top: 0;
  height: 2px;
  border-radius: inherit;
  background: var(--k1-strip);
}

.bp-form-feedback::after{
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  pointer-events: none;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.10);
}

/* Erfolg: deine „blau getönte“ Box-Logik (K1) */
.bp-form-feedback--success{
  background: rgba(111,124,133,.16);     /* K1 soft wash */
  border: 1px solid rgba(111,124,133,.22);
  color: rgba(255,255,255,.90);
}
.bp-form-feedback--success::before{
  background: rgba(111,124,133,.32);     /* strip etwas stärker */
}

/* Fehler: gleiche Optik, aber klar anderer Akzent (Mahogany/Tobacco) */
.bp-form-feedback--error{
  background: rgba(181,158,125,.16);     /* tobacco wash */
  border: 1px solid rgba(181,158,125,.26);
  color: rgba(255,255,255,.90);
}
.bp-form-feedback--error::before{
  background: rgba(181,158,125,.42);     /* strip deutlich anders */
}

/* UL-Look entfernen (keine Dots, kein Einzug) */
.bp-form-feedback--error ul{
  list-style: none;
  padding: 0;
  margin: 0;
}
.bp-form-feedback--error li + li{
  margin-top: 6px;
}
/* ======================================================================
   MOBILE NAV (bp-mnav) + SWITCH + MOBILE HERO (EIN BLOCK, BEREINIGT)
   Breakpoint: 1024/1025
   ====================================================================== */

/* -------------------------
   Scroll lock helper
   ------------------------- */
.bp-no-scroll { overflow: hidden; }

/* =========================
   MOBILE NAV (bp-mnav)
   ========================= */

.bp-mnav{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  padding:14px 16px;
  width:100%;
}

/* Brand: Desktop-Markup wiederverwenden – nur Layout für Mobile */
.bp-mnav__brand.bp-brand{
  display:grid;
  grid-template-rows:auto auto auto;          /* Name | Bild | Tagline */
  row-gap:6px;
  text-decoration:none;
  color:inherit;
  min-width:0;
  max-width:calc(100% - 54px);               /* Platz für Toggle */
}

/* Name-Zeile: professionell (nicht wie „einfach Text untereinander“) */
.bp-mnav__brand .bp-brand__name{
  display:block;
  white-space:nowrap;                         /* Standard: eine Zeile */
  line-height:1.1;
}

/* by bleibt inline (Desktop-Look) */
.bp-mnav__brand .bp-brand__sep,
.bp-mnav__brand .bp-brand__by{
  display:inline;
}



/* Tagline bleibt darunter – links bündig */
.bp-mnav__brand .bp-brand__tagline{
  margin:0;
  padding:0;
  line-height:1.25;
}

/* Toggle / Button */
.bp-mnav__toggle{
  appearance:none;
  border:0;
  background:transparent;
  padding:10px;
  border-radius:999px;
  cursor:pointer;
  margin-left:auto;
  margin-top:2px;
}

.bp-mnav__toggle:focus-visible,
.bp-mnav__close:focus-visible,
.bp-mnav__link:focus-visible,
.bp-mnav__lang-link:focus-visible{
  outline:2px solid currentColor;
  outline-offset:2px;
}

/* Burger: 3 Linien */
.bp-mnav__burger{
  display:block;
  width:22px;
  height:2px;                 /* mittlere Linie */
  background:currentColor;
  position:relative;
  border-radius:2px;
  transform:translateY(6px);
}

.bp-mnav__burger::before,
.bp-mnav__burger::after{
  content:"";
  position:absolute;
  left:0;
  width:22px;
  height:2px;
  background:currentColor;
  border-radius:2px;
}

.bp-mnav__burger::before{ top:-6px; }
.bp-mnav__burger::after { top: 6px; }

/* =========================
   OVERLAY
   ========================= */

.bp-mnav__overlay[hidden]{ display:none; }

.bp-mnav__overlay{
  position:fixed;
  inset:0;
  z-index:9999;
}

.bp-mnav__scrim{
  position:absolute;
  inset:0;
  background:rgba(0,0,0,0.45);
}

.bp-mnav__panel{
  position:absolute;
  top:10px;
  right:10px;
  left:10px;
  border-radius:18px;
  background:#fff;
  color:#111;
  box-shadow:0 18px 50px rgba(0,0,0,0.28);
  overflow:hidden;
  outline:none;
}

@media (prefers-color-scheme: dark){
  .bp-mnav__panel{
    background:#0f0f10;
    color:#f2f2f2;
  }
}

.bp-mnav__panel-top{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  padding:16px 16px 10px;
  border-bottom:1px solid rgba(0,0,0,0.08);
}

@media (prefers-color-scheme: dark){
  .bp-mnav__panel-top{
    border-bottom-color:rgba(255,255,255,0.10);
  }
}

/* Overlay-Brand: ebenfalls 1:1, inkl. Feder direkt nach Brand */
.bp-mnav__panel-brand.bp-brand{
  display:grid;
  grid-template-rows:auto auto auto;
  row-gap:6px;
  text-decoration:none;
  color:inherit;
  min-width:0;
  position:static;
}

.bp-mnav__panel-brand .bp-brand__name{
  display:block;
  white-space:nowrap;
  line-height:1.1;
}



.bp-mnav__panel-brand .bp-brand__tagline{
  margin:0;
  padding:0;
  line-height:1.25;
}

.bp-mnav__close{
  appearance:none;
  border:0;
  background:transparent;
  padding:10px 12px;
  border-radius:999px;
  cursor:pointer;
  line-height:1;
  font-size:16px;
  opacity:0.9;
}

/* Links */
.bp-mnav__nav{
  display:grid;
  padding:10px 10px 6px;
}

.bp-mnav__link{
  display:flex;
  align-items:center;
  justify-content:space-between;
  text-decoration:none;
  color:inherit;
  padding:14px 12px;
  border-radius:14px;
  font-size:16px;
}

.bp-mnav__link:hover{ background:rgba(0,0,0,0.06); }

@media (prefers-color-scheme: dark){
  .bp-mnav__link:hover{ background:rgba(255,255,255,0.08); }
}

.bp-mnav__link--cta{
  margin-top:4px;
  font-weight:600;
}

/* Languages */
.bp-mnav__lang{
  display:flex;
  gap:10px;
  padding:12px 16px 16px;
  border-top:1px solid rgba(0,0,0,0.08);
}

@media (prefers-color-scheme: dark){
  .bp-mnav__lang{
    border-top-color:rgba(255,255,255,0.10);
  }
}

.bp-mnav__lang-link{
  text-decoration:none;
  color:inherit;
  padding:8px 10px;
  border-radius:999px;
  font-size:13px;
  opacity:0.75;
}

.bp-mnav__lang-link.is-active,
.bp-mnav__lang-link[aria-current="page"]{
  opacity:1;
  font-weight:600;
  background:rgba(0,0,0,0.06);
}

@media (prefers-color-scheme: dark){
  .bp-mnav__lang-link.is-active,
  .bp-mnav__lang-link[aria-current="page"]{
    background:rgba(255,255,255,0.10);
  }
}

/* =========================
   SWITCH-LOGIK
   ========================= */

/* Mobile/Tablet: Desktop-Headerteile AUS, Mobile-Header AN */
@media (max-width: 1024px){
  .bp-header__grid > .bp-brand--left,
  .bp-header__grid > .bp-brand--center,
  .bp-header__grid > .bp-right{
    display:none !important;
  }

  .bp-header__grid{ display:block !important; }
  .bp-mnav{ display:flex !important; }
}

/* Desktop: Mobile-Nav AUS */
@media (min-width: 1025px){
  .bp-mnav,
  .bp-mnav__overlay{
    display:none !important;
  }
}

/* =========================
   HERO (Mobile): Bild vor Text
   -> Bild kommt NACH dem Brand im Seitenfluss
   ========================= */
@media (max-width: 1024px){
  .bp-hero__grid{
    display:grid;
    grid-template-columns:1fr;
    gap:22px;
  }

  .bp-hero__image{
    order:1;
    height:320px;
  }

  .bp-hero__grid > div:first-child{
    order:2;
  }
}

/* =========================
   360px Finetune: Brand bleibt hochwertig
   ========================= */
@media (max-width: 360px){
  .bp-mnav__brand.bp-brand{
    max-width:calc(100% - 52px);
    row-gap:5px;
  }

  /* Name darf umbrechen, ohne dass es „zerfällt“ */
  .bp-mnav__brand .bp-brand__name{
    white-space:normal;
    line-height:1.12;

  }

  /* Separator weg, by in eigene Zeile – sauber */
  .bp-mnav__brand .bp-brand__sep{ display:none; }
  .bp-mnav__brand .bp-brand__by{
    display:block;
    margin-top:2px;
    font-size:11.5px;
    letter-spacing:0.06em;
    opacity:0.72;
  }
.bp-mnav__brand .bp-brand__name::after {
margin-top: 0; 
height: 0;}

  /* Tagline kompakter, aber nicht gequetscht */
  .bp-mnav__brand .bp-brand__tagline{
    font-size:11.5px;
    line-height:1.32;
    letter-spacing:0.03em;
    opacity:0.86;
    max-width:24ch;
  }

  /* Overlay analog */
  .bp-mnav__panel-brand .bp-brand__name{ white-space:normal; }
  .bp-mnav__panel-brand .bp-brand__sep{ display:none; }
  .bp-mnav__panel-brand .bp-brand__by{
    display:block;
    margin-top:2px;
    font-size:11.5px;
    letter-spacing:0.06em;
    opacity:0.72;
  }
  .bp-mnav__panel-brand .bp-brand__name::after{
    height:16px;
    width:30px;
    margin-top:7px;
  }
  .bp-mnav__panel-brand .bp-brand__tagline{
    font-size:11.5px;
    line-height:1.32;
    letter-spacing:0.03em;
    opacity:0.86;
    max-width:24ch;
  }

  .bp-hero__image{ height:280px; }
}
/* Scroll lock helper */
.bp-no-scroll { overflow: hidden; }

.bp-faq-item {
    scroll-margin-top: 120px; /* Höhe deines Headers + etwas Luft */
}
.bp-orient-item {
    display: flex;
    flex-direction: column;
}.bp-orient-item a {
    margin-top: auto;
}
/* Links in den Orient-Kacheln: unten ausrichten, aber nur Textbreite */
.bp-orient-item .link {
    margin-top: auto;          /* bleibt: drückt Link nach unten */
    align-self: flex-start;    /* kein Stretch in der Breite */
    display: inline-block;     /* nur so breit wie Inhalt */
    width: fit-content;        /* sichert: keine volle Breite */
}
.bp-fineprint {
  font-size: 12px;
  line-height: 1.45;
}
/* Besondere Menschen – mittlere Section bewusst breiter */
.page-besondere-menschen .bm-wide .bp-section__head,
.page-besondere-menschen .bm-wide .bp-prose {
  max-width: 980px; /* Varianz: deutlich breiter als --narrow */
  margin-left: auto;
  margin-right: auto;
}

/* Wenn du wirklich "Spalten breiter" meinst (mehr Zeilenlänge in 2-col),
   dann erhöhen wir zusätzlich die mögliche Breite im 2-Spalten-Prosa-Layout. */
@media (min-width: 980px) {
  .page-besondere-menschen .bm-wide .bp-article--cols {
    column-gap: 56px; /* mehr Luft zwischen den Spalten */
  }
}

@media (max-width: 960px) {
    .bp-mnav__burger {
        background-color: #141414; /* Schwarz für den Hamburger-Button */
    }

    .bp-mnav__burger::before,
    .bp-mnav__burger::after {
        background-color: #141414; /* Ebenfalls schwarz für die Linien */
    }
}

/* =========================
   FOOTER Desktop (ab 1024px): 3 Spalten
   ========================= */
@media (min-width: 1024px){



  /* Brand links wieder sichtbar + 2-Spalten-Layout im Footer */
  .bp-footer__brand{ display:flex; }

  .bp-footer__grid{
    grid-template-columns: 1fr 2fr;
    gap: 48px;
    align-items: start;
  }

  /* Rechts: LINKS-GRID bleibt 2-spaltig und wird sauber platziert */
  .bp-footer__linksgrid{
    display: grid;
    grid-template-columns: 1fr 1fr;
    column-gap: 56px;
    row-gap: 6px;
    justify-self: end;
    width: min(620px, 100%);
  }

  /* EXPLIZITE PLATZIERUNG (matcht exakt deine Child-Reihenfolge) */
  .bp-footer__linksgrid > :nth-child(1){ grid-column: 1; grid-row: 1; } /* Kontakt */
  .bp-footer__linksgrid > :nth-child(2){ grid-column: 2; grid-row: 1; } /* Rahmen */
  .bp-footer__linksgrid > :nth-child(3){ grid-column: 1; grid-row: 2; } /* Nachricht senden */
  .bp-footer__linksgrid > :nth-child(4){ grid-column: 2; grid-row: 2; } /* Impressum */
  .bp-footer__linksgrid > :nth-child(5){ grid-column: 1; grid-row: 3; } /* E-Mail */
  .bp-footer__linksgrid > :nth-child(6){ grid-column: 2; grid-row: 3; } /* Datenschutz */
  .bp-footer__linksgrid > :nth-child(7){ grid-column: 1; grid-row: 4; } /* Spacer */
  .bp-footer__linksgrid > :nth-child(8){ grid-column: 2; grid-row: 4; } /* FAQ */

}
