@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-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:border-box;}
html,body{height:100%;}
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;}
h1,h2,h3{margin:0 0 var(--sp-2);font-family:var(--font-base);}
h1{font-size:var(--fs-h1);line-height:var(--lh-tight);letter-spacing:var(--ls-h1);font-weight:var(--fw-semibold);}
h2{font-size:var(--fs-h2);line-height:var(--lh-heading);letter-spacing:var(--ls-h2);font-weight:var(--fw-medium);}
h3{font-size:var(--fs-h3);line-height:1.2;letter-spacing:var(--ls-h3);font-weight:var(--fw-medium);}
h4{font-weight:500;margin:10px 0 0 0}
p{margin:0 0 var(--sp-2);}
p:last-child{margin-bottom:0;}
a{color:inherit;text-underline-offset:.18em;}
a.seiten_links{font-size:.95em;text-decoration:none;opacity:.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);}
.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.btn{font-family:inherit;background:none;margin:0;}
.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%,#fff 18%);border-color:color-mix(in srgb,var(--btn-primary-border) 75%,#fff 25%);filter:none;}
.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,.9);border-color:rgba(63,85,97,.4);filter:brightness(1.02);}
.btn:focus-visible{outline:none;box-shadow:0 0 0 4px var(--btn-focus);}
.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);}

/* Barrierefreiheit: verhindert reinzoomen */
@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;}}

/* ======================================================================
   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:.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{grid-column:auto!important;justify-self:auto!important;position:absolute;left:50%;top:50%;transform:translate(-50%,-50%) scale(.94);transform-origin:center center;text-align:center;opacity:0;pointer-events:none;white-space:nowrap;}
.bp-brand__by{text-transform:none;font-size:12px;letter-spacing:.06em;font-weight:var(--fw-regular);}
.bp-brand__sep{margin:0 .35em;}


/* --------------------------------------------------
   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);}


/* --------------------------------------------------
   Links 
   -------------------------------------------------- */
.nav-link{font-size:13px;letter-spacing:var(--ls-nav);text-decoration:none;opacity:.62;}
.nav-link:hover{opacity:.82;}
.nav-link[aria-current="page"]{opacity:.92;font-weight:var(--fw-medium);}
.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:.86;}


/* --------------------------------------------------
   Testimonials
   -------------------------------------------------- */
.bp-quotes{display:grid;gap:22px;}
.bp-quote{margin:0;padding:0;max-width:none;position:relative;padding-left:42px;}
.bp-quote::before{content:"“";position:absolute;left:0;top:14px;font-size:70px;line-height:1;color:rgba(88,71,56,.20);pointer-events:none;}
.bp-quote__text{font-size:var(--fs-body);line-height: var(--lh-body);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,.9);}
.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);}


/* --------------------------------------------------
   Buttons
   -------------------------------------------------- */
.bp-actions{margin-top:30px;display:flex;gap:12px;flex-wrap:wrap;}
.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:focus-visible{box-shadow: 0 0 0 4px var(--btn-focus-dark);}


/* ======================================================================
   05) LAYOUT & SECTIONS
   ====================================================================== */
.bp-container{width:min(var(--container),calc(100% - 48px));margin:0 auto;}
.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;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);}
.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(.98);}
.bp-header__grid > .desktop{display: contents;}
.bp-header.is-scrolled .bp-brand--center{opacity:1 !important;pointer-events:auto !important;transform:translate(-50%, -50%) scale(0.86) !important;}
		
/* Navigation */		
.bp-mnav{display:none}
.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;}
		
/* Kacheln */		 
.bp-grid{display:grid;gap:22px;margin-top:var(--sp-3);}
.bp-grid--3{grid-template-columns:repeat(3,minmax(0,1fr));}
.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;}
.bp-grid--3 .bp-card .btn{margin-top:auto;align-self:flex-start;}
.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,.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,.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);}

/* Frageblock */
.bp-keypoints{list-style:none;padding-left:0;margin-left:0;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;}

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

/* Section Anreise */
.bp-orient-item__title { margin: 0 0 8px; font-size: 16px; letter-spacing: -0.01em; font-weight: var(--fw-medium); }
.bp-orient-item{display:flex;flex-direction:column;padding-top:0;padding-bottom:16px;border-top:0;border-bottom:1px solid var(--border-soft);}
.bp-orient-item a{margin-top:auto;}
.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__body{margin:0 0 10px;max-width:32rem;}
.bp-section--dark .bp-orient-item{border-top-color:var(--dark-hair);}
.bp-mini-card__body{margin:0;font-size:14px;color:var(--text-muted);line-height:1.55;max-width:none;}
.bp-keypoint p{color:rgba(20,20,20,.82);line-height:1.72;}
.bp-orient-item .link {margin-top: auto;align-self: flex-start;display:inline-block;width: fit-content;}

/* ======================================================================
   06) HERO
   ====================================================================== */
.bp-hero{min-height:auto;display:flex;align-items:flex-start;padding:clamp(28px,5vw,56px) 0;}
.bp-hero__grid{display:grid;grid-template-columns:1.1fr .9fr;gap:56px;align-items:start;}
.bp-hero__tagline{margin-top:22px;font-size:clamp(16px,1.6vw,20px);max-width:70ch;}
.bp-hero__seo{font-size:16px;max-width:70ch;}
.bp-actions__divider{margin-top:var(--sp-4);height:1px;width:260px;background:var(--border-soft);}
.bp-hero__image{position:relative;height:480px;border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-ambient);background:transparent;align-self:start;}
.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;}


/* ======================================================================
   07) CTA Am Ende
   ====================================================================== */
.bp-section--image-cta{position:relative;color:var(--dark-fg);overflow:hidden;}
.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);}
.bp-section--image-cta>.bp-container--narrow{position:relative;z-index:1;}
.bp-section--image-cta .text-muted{color:var(--dark-muted);}
.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;}
.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:-.01em;color:var(--dark-fg);}
.bp-cta-card p{margin:0 0 14px;font-size:var(--fs-small);color:rgba(255,255,255,.78);}
.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:.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;}
.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:#fff;border-color:rgba(255,255,255,.70);filter:brightness(1.03);}
.bp-section--image-cta .bp-form-feedback--success.bp-card{background:rgba(255,255,255,.74);box-shadow:var(--shadow-lift);border:none;backdrop-filter:blur(8px);overflow:hidden;text-align:center;color:var(--text-main);padding:22px;margin:0 0 var(--sp-2);border-radius:var(--radius-lg);}
.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);}
.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);}
.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);}
.bp-form-feedback{position:relative;border-radius:var(--radius-lg);padding:18px 18px;margin:0 0 14px;box-shadow:none;text-align:center;caret-color:transparent;user-select:none;}
.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);}
.bp-form-feedback--success{background:rgba(111,124,133,.16);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);}
.bp-form-feedback--error{background:rgba(181,158,125,.16);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);}
.bp-form-feedback--error ul{list-style:none;padding:0;margin:0;}
.bp-form-feedback--error li+li{margin-top:6px;}

/* ======================================================================
   08) FOOTER
   ====================================================================== */
.bp-footer{padding:28px 0 32px;font-size:13px;}
.bp-footer__grid{ display:flex;align-items:flex-start;justify-content:space-between;gap:16px;}
.bp-footer__brand{display:flex;flex-direction:column;gap:6px;}
.bp-footer a{text-decoration:none;color:var(--dark-muted);text-underline-offset:.18em;}
.bp-footer a:hover{text-decoration:underline;text-decoration-color:var(--footer-link-underline);color:var(--dark-fg);}
.bp-footer__meta{margin-top:20px;padding-top:20px;border-top:1px solid var(--dark-hair);font-size:11px;color:var(--footer-meta);}
.bp-footer__marknote{margin-top:4px;font-size:10px;letter-spacing:.02em;color:var(--footer-marknote);}
.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:.95;}
.bp-footer .bp-brand--footer,.bp-footer .bp-brand--footer:hover{text-decoration:none !important;}
.bp-footer .bp-brand--footer *{text-decoration:none !important;}
.bp-footer__legal-link{display: inline-block;}
.bp-footer__legal-right{display:flex;align-items:flex-start;justify-content:flex-end;white-space:nowrap;}


/* ======================================================================
   09) PAGE PATCHES
   ====================================================================== */
/* Über Mich */
.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;}

/*Impressum*/
.bp-legal{max-width:72ch;}
.bp-legal h2,.bp-legal h3{margin-top:var(--sp-3);margin-bottom:var(--sp-1);padding-top:0;border-top:0;}
.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 h3{padding-top:var(--sp-3);border-top:1px solid var(--divider-mini);text-align:left;}
.bp-legal h3:first-of-type{margin-top:0;padding-top:0;border-top:0;}
.bp-legal h3 + p{margin-top:0;}
.bp-legal .bp-source{margin-top:var(--sp-4);padding-top:var(--sp-3);border-top:1px solid var(--border-soft);}
.bp-prose p{max-width:78ch;}
.bp-prose p + p{margin-top:18px;}
.background--white{background:white;}





















   