@charset "utf-8";

:root{
  --font-base:"Manrope",system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  --fw-regular:400;
  --fw-medium:500;
  --fw-semibold:600;
  --fw-bold:700;

  --fs-h1:clamp(42px,5.5vw,78px);
  --fs-h2:clamp(22px,2.4vw,34px);
  --fs-h3:clamp(16px,2vw,18px);
  --fs-body:15px;
  --fs-small:14px;
  --fs-eyebrow:12px;
  --fs-nav:15px;
  --fs-lang:12px;
  --fs-brand-name:14px;
  --fs-brand-tagline:13px;
  --fs-brand-by:12px;
  --fs-footer:14px;
  --fs-hero-seo:15px;

  --lh-body:1.6;
  --lh-tight:1.1;
  --lh-heading:1.35;
  --lh-strong:1.45;

  --ls-h1:-0.01em;
  --ls-h2:-0.005em;
  --ls-h3:0;
  --ls-body:0.01em;
  --ls-eyebrow:0.10em;
  --ls-brand-name:0.15em;
  --ls-nav:0.02em;
  --ls-lang:0.10em;
  --ls-footer-brand:0.14em;
  --ls-footer-coltitle:0.10em;

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

  --radius-lg:clamp(12px,2vw,20px);

  --sp-1:clamp(10px,1vw,12px);
  --sp-2:clamp(14px,1.5vw,18px);
  --sp-3:clamp(20px,2.5vw,28px);
  --sp-4:clamp(35px,4vw,44px);
  --sp-5:clamp(40px,6vw,72px);

  --p-main:#F1EADA;
  --p-panel:rgba(206,193,168,.22);
  --p-page:#f8f3ec;
  --p-about:#fcf7f1;
  --p-surface:rgba(255,255,255,.70);
  --p-white:#fff;

  --bg-main:var(--p-main);
  --bg-panel:var(--p-panel);
  --bg-page:var(--p-page);
  --bg-about:var(--p-about);
  --bg-surface:var(--p-surface);
  --bg-white:var(--p-white);

  --k1-soft:#6F7C85;
  --k1-hard:#3F5561;

  --text-main:#141414;
  --text-muted:rgba(20,20,20,0.85);
  --text-soft:rgba(20,20,20,0.75);

  --shadow-ambient:0 8px 20px rgba(27,22,19,.08);
  --shadow-lift:0 5px 15px rgba(27,22,19,.10);

  --border-soft:rgba(88,71,56,.14);

  --dark-hair:rgba(255,255,255,0.20);

  --divider-mini:rgba(111,124,133,0.75);
  --divider-mini-dark:rgba(255,255,255,0.30);
  --divider-mini-image:rgba(255,255,255,0.40);

  --k1-strip:rgba(111,124,133,0.30);
  --k1-strip-strong:rgba(63,85,97,0.35);

  --dark-bg:#1b1613;
  --dark-fg:rgba(255,255,255,0.96);
  --dark-muted:rgba(255,255,255,0.82);

  --link-underline:rgba(111,124,133,0.75);
  --link-underline-strong:rgba(63,85,97,0.85);
  --link-underline-dark:rgba(255,255,255,0.50);

  --btn-font-size:15px;
  --btn-font-weight:500;
  --btn-letter-spacing:0em;
  --btn-radius:14px;
  --btn-pad-y:12px;
  --btn-pad-x:16px;
  --btn-min-h:44px;
  --btn-transition:160ms ease;

  --btn-primary-bg:#141414;
  --btn-primary-fg:rgba(255,255,255,0.92);
  --btn-primary-border:rgba(20,20,20,0.28);
  --btn-primary-bg-active:rgba(20,20,20,0.88);
  --btn-primary-active:rgba(20,20,20,0.42);

  --btn-secondary-bg:rgba(255,255,255,0.40);
  --btn-secondary-fg:#141414;
  --btn-secondary-border:rgba(20,20,20,0.20);

  --btn-focus:rgba(20,20,20,0.22);
  --btn-focus-dark:rgba(255,255,255,0.22);

  --btn-primary-bg-dark:rgba(255,255,255,0.96);
  --btn-primary-border-dark:rgba(255,255,255,0.30);
  --btn-primary-fg-dark:rgba(20,20,20,0.92);
  --btn-secondary-fg-dark:rgba(255,255,255,0.90);

  --header-h:90px;
  --header-h-scrolled:56px;
  --header-ease:220ms cubic-bezier(.2,.8,.2,1);

  --lang-inactive:0.60;
  --lang-active:0.92;

  --hero-img-h:280px;
  --hero-img-a:url("/img/hero-a.jpg");
  --hero-pos-x:50%;
  --hero-pos-y:50%;
  --hero-scale:1.0;

  --footer-meta:rgba(255,255,255,0.70);
  --footer-marknote:rgba(255,255,255,0.65);
  --footer-link-underline:rgba(255,255,255,0.55);
  --footer-coltitle:rgba(255,255,255,0.85);

  --cta-bright:.5;
}

/* 02) GLOBAL BASE */
*,*::before,*::after{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(--fw-regular);line-height:var(--lh-body);letter-spacing:var(--ls-body);text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;}
a,button,.btn,[role="button"]{touch-action:manipulation;}
h1,h2,h3{margin:0 0 var(--sp-2);font-family:var(--font-base);text-wrap:balance;overflow-wrap:normal;word-break:normal;}
h1{font-size:var(--fs-h1);line-height:var(--lh-tight);letter-spacing:var(--ls-h1);font-weight:var(--fw-semibold);hyphens:auto;}
h1#bp-hero-title{margin-top:20px;}
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:var(--lh-strong);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);overflow-wrap:break-word;}
p:last-child{margin-bottom:0;}
a{color:inherit;text-underline-offset:.18em;transition:opacity .2s ease-in-out;-webkit-tap-highlight-color:transparent;text-decoration-skip-ink:auto;}
a:focus-visible{outline:2px solid var(--btn-focus);outline-offset:2px;border-radius:6px;}
a.seiten_links{font-size:.95em;text-decoration:none;opacity:.75;vertical-align:super;margin-left:2px;display:inline-block;}
.link{position:relative;display:inline-block;font-size:var(--fs-body);font-weight:var(--fw-medium);color:var(--k1-hard);text-decoration:none;padding:4px 0;transition:color var(--btn-transition);-webkit-tap-highlight-color:transparent;}
.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:active{opacity:.7;}
img{max-width:100%;height:auto;display:block;}
button.btn{font-family:inherit;background:none;margin:0;}
.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;color:inherit;border:0;padding:0;}
button.btn::-moz-focus-inner{border:0;padding:0;}
.btn--primary{background:var(--btn-primary-bg);color:var(--btn-primary-fg);border-color:var(--btn-primary-border);}
.btn--secondary{background:var(--btn-secondary-bg);color:var(--btn-secondary-fg);border-color:var(--btn-secondary-border);}
.btn:focus:not(:focus-visible){outline:none;}
.btn:focus-visible{outline:2px solid transparent;outline-offset:2px;box-shadow:0 0 0 4px var(--btn-focus);}
@media(forced-colors:active){.btn:focus-visible{outline:2px solid CanvasText;box-shadow:none;}}
@media(hover:hover) and (pointer:fine){
  .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:hover{background:rgba(255,255,255,.9);border-color:rgba(63,85,97,.4);filter:brightness(1.02);}
  .link:hover::after{width:100%;background-color:var(--link-underline-strong);}
}
.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--secondary{background:rgba(255,255,255,.02);color:var(--btn-secondary-fg-dark);border-color:rgba(255,255,255,.30);}
.bp-section--dark .btn:active{opacity:.85;}
.bp-section--dark .btn:focus-visible{outline:2px solid transparent;outline-offset:2px;box-shadow:0 0 0 4px var(--btn-focus-dark);}
@media(forced-colors:active){.bp-section--dark .btn:focus-visible{outline:2px solid CanvasText;box-shadow:none;}}
@media(hover:hover) and (pointer:fine){.bp-section--dark .btn--primary:hover{background:rgba(255,255,255,1);border-color:rgba(255,255,255,.55);filter:brightness(1.03);}}

.bp-reveal [data-reveal]{opacity:0;transform:translateY(10px);transition:opacity 320ms cubic-bezier(.2,.8,.2,1),transform 520ms cubic-bezier(.2,.8,.2,1);will-change:opacity,transform;}
.bp-reveal.is-visible [data-reveal]{opacity:1;transform:translateY(0);}
.bp-reveal.is-visible [data-reveal="1"]{transition-delay:0ms;}
.bp-reveal.is-visible [data-reveal="2"]{transition-delay:80ms;}
.bp-reveal.is-visible [data-reveal="3"]{transition-delay:160ms;}
.bp-reveal.is-visible [data-reveal="4"]{transition-delay:240ms;}
@media(prefers-reduced-motion:reduce){
  .bp-reveal [data-reveal]{transition:opacity 300ms ease;transform:none !important;}
  .bp-reveal.is-visible [data-reveal]{transition-delay:0ms !important;}
}

.bp-actions{margin-top:24px;display:flex;flex-direction:column;gap:12px;align-items:stretch;}
.bp-actions .btn{width:100%;}
.bp-no-scroll{overflow:hidden;overscroll-behavior:none;}

/* 03) UTILITIES */
.text-muted{color:var(--text-muted);}
.bp-section--dark .text-muted{color:var(--dark-muted);}
.small{font-size:var(--fs-small);line-height:1.3;}
.bp-section--dark .small{color:var(--dark-muted);}
.link--muted{color:var(--text-muted);transition:color var(--btn-transition);}
.bp-section--dark .link--muted{color:var(--dark-muted);}
@media(prefers-reduced-motion:reduce){
  .bp-reveal [data-reveal]{opacity:1 !important;transform:none !important;transition:none !important;}
  .btn,.link,.bp-header,.bp-brand,.nav-link,.bp-card{transition:none !important;transform:none !important;}
}

/* 04) COMPONENTS */
.bp-brand{display:inline-flex;flex-direction:column;gap:5px;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-bold);letter-spacing:var(--ls-brand-name);text-transform:uppercase;font-size:var(--fs-brand-name);color:var(--text-main);white-space:nowrap;text-rendering:optimizeLegibility;}
.bp-brand__tagline{font-weight:var(--fw-regular);font-size:var(--fs-brand-tagline);letter-spacing:.04em;color:var(--text-muted);display:block;margin-top:3px;line-height:1.3 !important;}
.bp-brand__sep{display:none}
.bp-footer .bp-brand--footer .bp-brand__name{font-size:14px;color:var(--dark-fg);}
.bp-footer .bp-brand--footer .bp-brand__by{font-size:12px;color:var(--dark-fg);letter-spacing:0.18em;}
.bp-footer .bp-brand--footer .bp-brand__tagline{font-size:13px;color:var(--dark-fg);}
.bp-footer .bp-brand--footer .bp-brand__sep{display:none !important}
.bp-footer__brand .bp-brand__name{font-weight:var(--fw-bold);letter-spacing:var(--ls-brand-name);text-transform:uppercase;font-size:var(--fs-brand-name);color:var(--dark-bg);white-space:nowrap;text-rendering:optimizeLegibility;}
.bp-brand__tagline{font-weight:var(--fw-regular);font-size:var(--fs-brand-tagline);letter-spacing:.04em;color:var(--text-muted);display:block;margin-top:3px;line-height:1.3 !important;}
.bp-brand__sep{display:none}
.bp-brand__by{text-transform:none;font-size:var(--fs-brand-by);letter-spacing:.06em;font-weight:var(--fw-regular);}
.bp-brand:active{opacity:.8;transform:scale(.98);}
.bp-brand__row{display:block;min-width:0;}
.bp-brand__row--top{display:flex;align-items:baseline;gap:4px;flex-wrap:wrap;line-height:1.05;}
.bp-brand__row--top .bp-brand__name{line-height:1.05;white-space:nowrap;min-width:0;}
.bp-brand__row--top .bp-brand__by{line-height:1.05;white-space:normal;opacity:.92;letter-spacing:0.18em;}

.bp-header.is-scrolled .bp-mnav__brand .bp-brand__row--tagline{display:none;}
.bp-header.is-scrolled .bp-mnav__brand .bp-brand__by{display:none;}
.bp-header .bp-mnav{position:relative;}
.bp-header:not(.is-scrolled) .bp-mnav__brand{position:static;transform:none;left:auto;top:auto;max-width:none;overflow:visible;text-overflow:clip;white-space:normal;}
.bp-header.is-scrolled .bp-mnav__brand{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:2;max-width:calc(100% - 92px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.bp-header.is-scrolled .bp-mnav .rechts{position:relative;z-index:3;}
.bp-header.is-scrolled .bp-mnav .rechts .bp-mnav__toggle{top:6px;}
.bp-header.is-scrolled .bp-mnav .links{flex:0 0 auto;}

.bp-mini-divider{margin:12px 0 16px;width:44px;height:2px;border-radius:999px;background:var(--divider-mini);}
.bp-section--dark .bp-mini-divider{background:var(--divider-mini-dark);}
.bp-section--image-cta .bp-mini-divider{background:var(--divider-mini-image);}

.bp-quotes{display:grid;gap:22px;margin-top:var(--sp-3);}
.bp-quote{margin:0;max-width:none;position:relative;padding-left:25px;}
.bp-quote::before{content:"“";position:absolute;left:-5px;top:-6px;font-size:56px;line-height:1;color:rgba(88,71,56,.20);pointer-events:none;}
.bp-quote__text{margin:0;color:rgba(20,20,20,.88);font-size:var(--fs-body);font-weight:var(--fw-regular);overflow-wrap:break-word;}
.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-reveal [data-reveal]{opacity:1 !important;transform:none !important;filter:none !important;transition:none !important;animation:none !important;}
  html{scroll-behavior:auto !important;}
}

/* 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{height:var(--header-h);position:fixed;top:0;left:0;right:0;z-index:1000;display:flex;align-items:center;background:rgba(241,234,218);backdrop-filter:none;-webkit-backdrop-filter:none;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,0.97);border-bottom-color:rgba(111,124,133,0.18);}
.bp-header__grid{position:relative;display:block;width:100%;}
.desktop{display:none;}

.bp-grid{display:grid;grid-template-columns:1fr;gap:22px;margin-top:var(--sp-3);}
.bp-grid--3,.bp-grid--2{grid-template-columns:1fr;}

.bp-card{position:relative;border-radius:var(--radius-lg);padding:20px;border:none;background:var(--p-surface);backdrop-filter:none;-webkit-backdrop-filter:none;box-shadow:var(--shadow-ambient);overflow:hidden;transform:none !important;transition:box-shadow var(--btn-transition);display:flex;flex-direction:column;height:100%;}
.bp-card::before{content:"";position:absolute;left:0;right:0;top:0;height:2px;background:var(--k1-strip);transition:background var(--btn-transition);}
.bp-card::after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;box-shadow:inset 0 1px 0 rgba(255,255,255,0.46);}
.bp-card h3{margin-bottom:10px;}
.bp-card p{margin-bottom:16px;}
.bp-card .btn{margin-top:auto;align-self:flex-start;}

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

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

.bp-card__title{margin:0 0 10px;font-size:17px;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-direction:column;margin-top:8px;}
.bp-card__actions .btn{width:100%;}
.bp-keypoint{padding:18px 0;border-top: 1px solid var(--border-soft);}
.bp-keypoint:first-child{padding-top:0;border-top:0;}
.bp-keypoints{list-style:none;padding-left:0;margin-left:0;display:flex;flex-direction:column;gap:8px;}

.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,0.42);}
.bp-section--about{background:var(--bg-about);}
.bp-section--about .about-text{order:1;}
.bp-section--about .about-photo{order:2;}
.bp-section__head{margin-bottom:var(--sp-3);}

.bp-section__body{max-width:65ch;margin-left:auto;margin-right:auto;}
.bp-section__body p,.bp-section__body .bp-keypoints p{max-width:none;}

#kontakt{scroll-margin-top:calc(var(--header-h-scrolled) + 24px);}
[id]{scroll-margin-top:calc(var(--header-h-scrolled) + 32px);}

/* Header (Mobile) */
.bp-mnav{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;padding-top:40px;padding-bottom:22px;}
.bp-mnav__toggle{appearance:none;-webkit-appearance:none;border:0;background:transparent;min-width:44px;min-height:44px;padding:11px;border-radius:12px;cursor:pointer;margin-left:0;padding-top:0;-webkit-tap-highlight-color:transparent;}
.bp-mnav__toggle:focus-visible{outline:3px solid #0056b3;outline-offset:2px;}
.bp-mnav__burger{display:block;width:24px;height:2px;background:currentColor;position:relative;border-radius:2px;}
.bp-mnav__burger::before,.bp-mnav__burger::after{content:"";position:absolute;left:0;width:24px;height:2px;background:currentColor;border-radius:2px;transition:transform 0.2s ease;}
.bp-mnav__burger::before{top:-8px;}
.bp-mnav__burger::after{top:8px;}
.bp-mnav .alles{display:flex;align-items:flex-start;justify-content:space-between;width:100%;}
.bp-mnav .rechts{position:relative;min-width:44px;min-height:44px;}
.bp-mnav .rechts .bp-mnav__toggle{position:absolute;top:0;right:0;margin:0;}
.bp-header.is-scrolled .bp-mnav{padding-top:10px;padding-bottom:10px;}
.bp-header.is-scrolled .bp-mnav__brand .bp-brand__tagline,.bp-header.is-scrolled .bp-mnav__brand .bp-brand__by{display:none;}
.link::after{height:1px;transform:translateZ(0);}

/* 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,.25);}
@supports(backdrop-filter:blur(8px)){.bp-mnav__scrim{backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);}}
.bp-mnav__panel{position:absolute;top:max(10px,env(safe-area-inset-top));right:10px;left:10px;max-height:calc(100dvh - max(10px,env(safe-area-inset-top)) - max(10px,env(safe-area-inset-bottom)));overflow:auto;-webkit-overflow-scrolling:touch;border-radius:18px;background:var(--p-white,#fff);color:#111;box-shadow:0 18px 50px rgba(0,0,0,.28);outline:none;will-change:transform,opacity;}
.bp-mnav__panel-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:16px 16px 10px;}
@media(prefers-color-scheme:dark){.bp-mnav__panel{background:#0f0f10;color:#f2f2f2;box-shadow:0 18px 50px rgba(0,0,0,.5);} .bp-mnav__panel-top{border-bottom-color:rgba(255,255,255,.10);}}
.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;}
.bp-mnav__panel-brand .bp-brand__name{display:block;line-height:1.1;font-weight:700;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.bp-mnav__panel-brand .bp-brand__tagline{margin:0;padding:0;}
.bp-mnav__close{appearance:none;-webkit-appearance:none;border:0;background:transparent;padding:12px;margin-top:-12px;border-radius:999px;cursor:pointer;line-height:1;font-size:1.1rem;opacity:.8;transition:opacity .2s ease,background .2s ease;-webkit-tap-highlight-color:transparent;}
.bp-mnav__close:active{background:rgba(0,0,0,.05);opacity:1;}
.bp-mnav__nav{display:grid;padding:10px 10px 6px;gap:2px;}
.nav__link{display:block;padding:10px 8px;border-radius:10px;text-decoration:none;color:inherit;border-bottom:1px solid var(--bg-main);}

/* Hero */
.bp-hero{min-height:auto;display:flex;align-items:flex-start;padding:clamp(40px,6vw,72px) 0;}
.bp-hero__grid{display:grid;grid-template-columns:1fr;gap:22px;align-items:start;}
.bp-hero__tagline{margin-top:20px;max-width:min(70ch,100%);font-size:clamp(16px,1.2vw + 13px,18px);line-height:1.50;color:rgba(20,20,20,.92);font-weight:var(--fw-medium);}
.bp-hero__seo{margin-top:14px;max-width:min(70ch,100%);font-size:15px;line-height:var(--lh-body);color:var(--text-main);font-weight:var(--fw-regular);}
.bp-hero__image{position:relative;height:var(--hero-img-h);order:1;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;backface-visibility:hidden;}
.bp-hero__grid > div:first-child{order:2;}

/* Image CTA / Form */
.bp-section--image-cta{position:relative;color:var(--dark-fg);overflow:hidden;padding:var(--sp-5) 0;}
.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(var(--cta-bright,.5));transform:scale(1.03);pointer-events:none;}
.bp-section--image-cta > .bp-container--narrow{position:relative;z-index:1;}
.bp-section--image-cta .text-muted{color:var(--dark-muted);}
.bp-section--image-cta .bp-cta-lead p a.link{color:inherit;font-weight:600;text-decoration:underline;text-decoration-thickness:1.5px;text-underline-offset:0.18em;}
.bp-section--image-cta .bp-cta-lead p a.link::after{content:none !important;}
.bp-cta-layout{display:grid;grid-template-columns:1fr;gap:24px;align-items:flex-start;}
.bp-cta-lead{margin-bottom:30px;}
.bp-cta-lead p{line-height:1.6;}
.bp-cta-card{margin-left:0;padding:0;max-width:none;color:var(--dark-fg);background:transparent;}
.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{font-size:var(--fs-small);color:rgba(255,255,255,0.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:0.12em;text-transform:uppercase;color:rgba(255,255,255,0.82);}
.bp-form-input,.bp-form-textarea{font-family:var(--font-base);font-size:16px;padding:10px 0 6px;border:0;border-bottom:1px solid rgba(255,255,255,0.80);border-radius:0;background:transparent;color:var(--dark-fg);-webkit-appearance:none;appearance:none;}
.bp-form-input::placeholder,.bp-form-textarea::placeholder{color:rgba(255,255,255,0.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:12px;margin-top:14px;}
.bp-section--image-cta .bp-form-note{font-size:12px;color:rgba(255,255,255,0.70);}
.bp-section--image-cta .btn--primary{background:rgba(255,255,255,0.80);color:#141414;border-color:rgba(255,255,255,0.40);width:auto}


/* FOOTER */
.bp-footer{font-size:13px;padding:28px 0 32px}
.bp-footer a{text-decoration:none;color:var(--dark-muted);text-underline-offset:.18em;}
a.bp-footer__legal-link{margin:10px 0;display:inline-block;}
.bp-footer__grid{display:grid;grid-template-columns:1fr;gap:18px;align-items:start;}
.bp-footer__linksgrid{display:grid;grid-template-columns:1fr 1fr;column-gap:24px;row-gap:4px;align-items:start;}
.bp-footer__col-title{font-size:14px;letter-spacing:var(--ls-footer-coltitle);text-transform:uppercase;margin:0 0 20px 0;line-height:1.2;color:var(--footer-coltitle);}
.bp-footer__link{display:block;padding:6px 0;line-height:1.25;text-decoration:none;color:var(--dark-muted);text-underline-offset:0.18em;}
.bp-footer__spacer{display:block;}
.bp-footer__meta{margin-top:24px;padding-top:14px;border-top:1px solid var(--dark-hair);font-size:11px;color:var(--footer-meta);}
.bp-footer__marknote{margin-top:6px;font-size:10px;letter-spacing:0.02em;color:var(--footer-marknote);line-height:1.4;}

/* Index */
.about-grid{display:grid;grid-template-columns:1fr;gap:clamp(2rem,5vw,4rem);align-items:center;}
.about-photo{display:none}
.about-photo img,.about-photo-bis720 img{display:block;width:100%;max-width:180px;height:auto;border-radius:var(--radius-lg);object-fit:cover;box-shadow:var(--shadow-ambient);}
.bp-section--about .about-text{order:1;}
.bp-section--about .about-photo{order:2;margin:0;}
.about-text{max-width:100%;}
.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;}

.bp-orient-item{padding-top:0;padding-bottom:16px;border-top:0;border-bottom:1px solid var(--border-soft);display:flex;flex-direction:column;}
.bp-orient-item:last-child{border-bottom:none;}
.bp-section--dark .bp-orient-item,.bp-section--dark .bp-orient-item:last-child{border-bottom-color:var(--dark-hair);}
.bp-orient-item a{margin-top:auto;}
.bp-orient-item .link{margin-top:auto;align-self:flex-start;display:inline-block;width:fit-content;}
.bp-orient-item > a.link,.bp-resonanz-more > a.bp-link-pill{display:inline-block;margin-top:10px;padding:15px;text-align:center;border-radius:999px;border:1px solid rgba(0,0,0,.12);background:transparent;color:inherit;font-weight:600;font-size:0.92em;line-height:1.15;text-decoration:none;transition:opacity 0.2s ease;}
.bp-orient-item > a.link:hover,.bp-resonanz-more > a.bp-link-pill:hover{opacity:0.7;}

/* Legal */
.bp-legal{max-width:min(72ch,100%);}
.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;line-height:1.3;}
.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);font-style:italic;}
.bp-legal h2{margin-top:var(--sp-4);margin-bottom:var(--sp-2);padding-top:var(--sp-2);border-top:1px solid var(--divider-mini);line-height:1.3;}
.bp-legal h2:first-of-type{margin-top:0;padding-top:0;border-top:0;}
.bp-legal h3{margin-top:var(--sp-3);margin-bottom:var(--sp-1);padding-top:0;border-top:0;}

@media(min-width:360px){
.bp-brand__sep{display:block;margin:0 .35em}
}
@media(min-width:500px){
.bp-section--image-cta .btn--primary,.bp-actions .btn{width:55%;}
}
@media(min-width:720px){
  .bp-hero__image{height:380px}	
  .about-grid{grid-template-columns:minmax(0,240px) minmax(0,1fr);gap:clamp(16px,2vw,26px);align-items:start}
  .about-photo{display:block;justify-content:flex-start}
  .bp-section--about .about-photo{order:1;margin:0}
  .bp-section--about .about-text{order:2}
  
 .bp-cta-layout{grid-template-columns:1fr 1fr;gap:24px;align-items:start;justify-items:start;}
  .bp-cta-lead,.bp-cta-card{max-width:min(60ch,100%);}
  .bp-cta-card{width:100%;}

  .bp-form-footer{display:flex;flex-direction:column;gap:12px;align-items:stretch}
  .bp-section--image-cta .bp-form-note{max-width:48ch}
  .bp-section--image-cta .btn--primary{width:70%}


}
