/* Master Projekte · isolated styles, locally hosted font, no frameworks. */
@font-face {
  font-family:"MPB Serif"; font-style:italic; font-weight:400; font-display:swap;
  src:url("fonts/cardo-italic.woff2") format("woff2");
}
.mpb {
  --mpb-max:1600; --mpb-inset:8; --mpb-pad-top:104; --mpb-pad-bottom:76;
  --mpb-gap:24; --mpb-header-gap:50; --mpb-heading-size:74; --mpb-card-title-size:48;
  --mpb-photo-title-size:32; --mpb-body-size:13; --mpb-label-size:10;
  --mpb-card-height:424; --mpb-mobile-height:340; --mpb-card-padding:28;
  --mpb-radius:4; --mpb-lift:5; --mpb-duration:650; --mpb-stagger:100;
  --mpb-bg:#faf9f5; --mpb-ink:#292929; --mpb-muted:#74736e; --mpb-accent:#a46b00;
  --mpb-font:Arial,Helvetica,sans-serif; --mpb-serif:"MPB Serif",Georgia,"Times New Roman",serif;
  position:relative; width:100%; max-width:none; margin-block:0;
  background:var(--mpb-bg); color:var(--mpb-ink); font-family:var(--mpb-font);
  container:mpb-section / inline-size; isolation:isolate; text-align:left;
}
.mpb.alignfull { width:auto; }
.mpb, .mpb *, .mpb *::before, .mpb *::after { box-sizing:border-box; }
.mpb .mpb-inner {
  width:calc(100% - clamp(18px,calc(var(--mpb-inset) * 1%),200px) * 2);
  max-width:calc(var(--mpb-max) * 1px); margin-inline:auto;
  padding-block:clamp(0px,calc(var(--mpb-pad-top) * .0625vw),calc(var(--mpb-pad-top) * 1px)) clamp(0px,calc(var(--mpb-pad-bottom) * .0625vw),calc(var(--mpb-pad-bottom) * 1px));
  padding-block:clamp(0px,calc(var(--mpb-pad-top) * .0625cqw),calc(var(--mpb-pad-top) * 1px)) clamp(0px,calc(var(--mpb-pad-bottom) * .0625cqw),calc(var(--mpb-pad-bottom) * 1px));
  container:mpb-content / inline-size;
}
.mpb .mpb-header {
  display:flex; align-items:flex-end; justify-content:space-between; gap:24px 40px;
  margin:0 0 clamp(0px,calc(var(--mpb-header-gap) * .0625cqw),calc(var(--mpb-header-gap) * 1px));
}
.mpb .mpb-heading-group { min-width:0; }
.mpb .mpb-eyebrow {
  display:flex; align-items:center; gap:12px; margin:0 0 clamp(20px,2cqw,32px);
  font:500 clamp(9px,calc(var(--mpb-label-size) * .0625cqw),calc(var(--mpb-label-size) * 1px))/1.5 var(--mpb-font);
  letter-spacing:.14em; color:var(--mpb-muted); overflow-wrap:anywhere;
}
.mpb .mpb-eyebrow > span { display:block; flex:0 0 24px; height:2px; background:var(--mpb-accent); }
.mpb .mpb-heading {
  margin:0; padding:0; color:var(--mpb-ink); font-family:var(--mpb-font);
  font-size:clamp(30px,calc(var(--mpb-heading-size) * .0625cqw),calc(var(--mpb-heading-size) * 1px));
  font-weight:400; line-height:1.06; letter-spacing:-.066em; text-transform:none;
}
.mpb .mpb-heading__main, .mpb .mpb-heading__accent { display:block; overflow-wrap:anywhere; }
.mpb .mpb-heading__accent {
  color:var(--mpb-accent); font-family:var(--mpb-serif); font-style:italic;
  font-weight:400; letter-spacing:-.055em; line-height:1.12;
}
.mpb .mpb-cta {
  display:inline-flex; align-items:center; justify-content:space-between; gap:24px;
  flex:0 0 auto; min-width:clamp(170px,13.5cqw,230px); max-width:100%;
  margin:0 0 4px; padding:0 0 12px; border:0; border-bottom:1px solid currentColor;
  font:400 clamp(12px,.8125cqw,14px)/1.5 var(--mpb-font); color:var(--mpb-ink);
  text-decoration:none; background:none; transition:color .22s ease;
}
.mpb .mpb-cta > span { overflow-wrap:anywhere; }
.mpb .mpb-cta svg { flex:0 0 20px; width:20px; height:20px; stroke:currentColor; stroke-width:1.25; transition:transform .25s ease; }
.mpb a.mpb-cta:hover { color:var(--mpb-accent); text-decoration:none; }
.mpb a.mpb-cta:hover svg { transform:translateX(4px); }
.mpb .mpb-cta--unlinked { opacity:.9; }
.mpb a.mpb-cta:focus-visible { outline:2px solid var(--mpb-accent); outline-offset:6px; }
.mpb .mpb-grid {
  display:grid; grid-template-columns:repeat(3,minmax(0,1fr));
  gap:clamp(0px,calc(var(--mpb-gap) * .0625cqw),calc(var(--mpb-gap) * 1px));
  align-items:stretch; margin:0; padding:0;
}
.mpb.mpb--featured .mpb-grid:has(> .mpb-card:nth-child(3):last-child) { grid-template-columns:minmax(0,1fr) minmax(0,1.15fr) minmax(0,1fr); }
.mpb.mpb--two .mpb-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
.mpb.mpb--auto .mpb-grid { grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr)); }
.mpb .mpb-card {
  --mpb-card-bg:#272727; --mpb-card-ink:#fff; --mpb-card-accent:#d39510; --mpb-card-muted:#d3d0c5;
  --mpb-overlay:.55; --mpb-overlay-color:#15110b; --mpb-focal-x:50%; --mpb-focal-y:50%;
  --mpb-mobile-focal-x:50%; --mpb-mobile-focal-y:50%; --mpb-title-scale:1; --mpb-image-zoom:1;
  --mpb-current-padding:clamp(18px,calc(var(--mpb-card-padding) * .0625cqw),calc(var(--mpb-card-padding) * 1px));
  --mpb-computed-height:clamp(210px,calc(var(--mpb-card-height) * .0625cqw),calc(var(--mpb-card-height) * 1px));
  position:relative; min-width:0; min-height:var(--mpb-custom-height,var(--mpb-computed-height));
  margin:0; padding:0; border:0; border-radius:calc(var(--mpb-radius) * 1px);
  overflow:hidden; overflow:clip; color:var(--mpb-card-ink); background:var(--mpb-card-bg);
  display:flex; flex-direction:column; isolation:isolate;
  transition:transform .3s cubic-bezier(.2,.7,.2,1),box-shadow .3s ease;
}
.mpb.mpb--shadow .mpb-card { box-shadow:0 8px 30px rgb(25 23 18 / 9%); }
.mpb .mpb-card__content {
  position:relative; z-index:1; flex:1; display:flex; flex-direction:column; min-width:0;
  padding:var(--mpb-current-padding); pointer-events:none;
}
.mpb .mpb-card__label {
  align-self:flex-start; max-width:100%; margin:0; padding:0;
  color:var(--mpb-card-muted); overflow-wrap:anywhere; text-transform:uppercase;
  font:500 clamp(9px,calc(var(--mpb-label-size) * .0625cqw),calc(var(--mpb-label-size) * 1px))/1.5 var(--mpb-font);
  letter-spacing:.14em;
}
.mpb .mpb-card__label--badge { padding:5px 8px; background:#faf9f0; color:#7b7463; font-size:clamp(9px,calc(var(--mpb-label-size) * .058cqw),calc(var(--mpb-label-size) * .93px)); }
.mpb .mpb-card__copy { display:flex; flex:1; flex-direction:column; min-width:0; padding-top:clamp(24px,4.3cqw,70px); }
.mpb .mpb-card__title {
  margin:0; padding:0; color:var(--mpb-card-ink); font-family:var(--mpb-font);
  font-weight:400; font-size:calc(clamp(24px,calc(var(--mpb-card-title-size) * .0625cqw),calc(var(--mpb-card-title-size) * 1px)) * var(--mpb-title-scale));
  line-height:1.08; letter-spacing:-.055em; text-transform:none;
}
.mpb .mpb-card__title-main, .mpb .mpb-card__title-accent { display:block; overflow-wrap:anywhere; }
.mpb .mpb-card__title-accent { color:var(--mpb-card-accent); font-family:var(--mpb-serif); font-size:1.12em; font-style:italic; font-weight:400; letter-spacing:-.055em; }
.mpb .mpb-card__description {
  margin:0; padding:clamp(26px,3cqw,48px) 32px 0 0; margin-top:auto;
  color:var(--mpb-card-muted); font-family:var(--mpb-font);
  font-size:clamp(12px,calc(var(--mpb-body-size) * .0625cqw),calc(var(--mpb-body-size) * 1px));
  font-weight:400; line-height:1.65; letter-spacing:0; overflow-wrap:anywhere;
}
.mpb .mpb-card__media { position:absolute; z-index:0; inset:0; overflow:hidden; }
.mpb .mpb-card__media picture { position:absolute; inset:0; display:block; }
.mpb .mpb-card__image {
  display:block; width:100%; height:100%; max-width:none; margin:0; padding:0;
  object-fit:cover; object-position:var(--mpb-focal-x) var(--mpb-focal-y);
  transform:scale(var(--mpb-image-zoom)); transition:transform .7s cubic-bezier(.2,.65,.3,1);
}
.mpb .mpb-card__overlay {
  position:absolute; inset:0; display:block;
  background:linear-gradient(180deg,transparent 28%,var(--mpb-overlay-color) 100%);
  opacity:var(--mpb-overlay); pointer-events:none;
}
.mpb .mpb-card--photo .mpb-card__title {
  font-size:calc(clamp(22px,calc(var(--mpb-photo-title-size) * .0625cqw),calc(var(--mpb-photo-title-size) * 1px)) * var(--mpb-title-scale));
  line-height:1.04;
}
.mpb .mpb-card--photo .mpb-card__title-accent { font-size:1.04em; }
.mpb .mpb-card--title-bottom .mpb-card__copy { flex:0; margin-top:auto; padding-top:clamp(24px,3cqw,48px); padding-right:24px; }
.mpb .mpb-card--title-bottom .mpb-card__description { margin:0; padding-top:12px; padding-right:0; }
.mpb .mpb-card--title-center .mpb-card__copy { justify-content:center; }
.mpb .mpb-card--title-center .mpb-card__description { flex:0; margin-top:0; padding-top:24px; }
.mpb .mpb-card__arrow { position:absolute; z-index:2; right:var(--mpb-current-padding); bottom:var(--mpb-current-padding); display:flex; width:22px; height:22px; color:var(--mpb-arrow-color,var(--mpb-card-accent)); pointer-events:none; transition:transform .3s ease; }
.mpb .mpb-grid:focus-visible { outline:2px solid var(--mpb-accent); outline-offset:5px; }
.mpb .mpb-card__arrow svg { width:100%; height:100%; stroke:currentColor; stroke-width:1.6; }
.mpb .mpb-card__link { position:absolute; z-index:3; inset:0; display:block; border-radius:inherit; background:transparent; text-decoration:none; }
.mpb .mpb-card__link:focus-visible { outline:3px solid var(--mpb-card-accent); outline-offset:-6px; }
.mpb .mpb-card:focus-within { box-shadow:0 0 0 3px var(--mpb-card-accent); }
.mpb .mpb-swipe-hint { display:none; }
@media (hover:hover) and (pointer:fine) {
  .mpb .mpb-card--linked:hover { transform:translateY(calc(var(--mpb-lift) * -1px)); }
  .mpb .mpb-card--linked:hover .mpb-card__arrow { transform:translate(3px,-3px); }
  .mpb.mpb--image-hover .mpb-card--linked:hover .mpb-card__image { transform:scale(calc(var(--mpb-image-zoom) + .035)); }
}
.mpb.mpb-animate-ready .mpb-reveal { opacity:0; transition:opacity calc(var(--mpb-duration) * 1ms) ease,translate calc(var(--mpb-duration) * 1ms) cubic-bezier(.2,.65,.2,1),transform .3s ease; transition-delay:var(--mpb-delay,0ms); }
.mpb.mpb-animate-ready[data-mpb-animation="rise"] .mpb-reveal { translate:0 20px; }
.mpb.mpb-animate-ready .mpb-reveal.is-visible { opacity:1; translate:0 0; }
@container mpb-content (max-width:760px) {
  .mpb .mpb-header { flex-wrap:wrap; }
  .mpb .mpb-cta { min-width:180px; }
  .mpb .mpb-grid, .mpb.mpb--featured .mpb-grid:has(> .mpb-card:nth-child(3):last-child) { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .mpb .mpb-card { --mpb-computed-height:clamp(280px,52cqw,380px); }
  .mpb .mpb-card__title { font-size:calc(clamp(28px,calc(var(--mpb-card-title-size) * .1cqw),calc(var(--mpb-card-title-size) * 1px)) * var(--mpb-title-scale)); }
  .mpb .mpb-card--photo .mpb-card__title { font-size:calc(clamp(24px,calc(var(--mpb-photo-title-size) * .1cqw),calc(var(--mpb-photo-title-size) * 1px)) * var(--mpb-title-scale)); }
}
@container mpb-content (max-width:540px) {
  .mpb .mpb-header { display:flex; flex-direction:column; align-items:flex-start; gap:24px; }
  .mpb .mpb-heading { font-size:clamp(28px,calc(var(--mpb-heading-size) * .12cqw),calc(var(--mpb-heading-size) * .68px)); }
  .mpb .mpb-eyebrow { font-size:9px; gap:9px; letter-spacing:.1em; margin-bottom:20px; }
  .mpb .mpb-eyebrow > span { flex-basis:20px; }
  .mpb .mpb-cta { font-size:12px; margin:0; padding-bottom:9px; }
  .mpb .mpb-grid, .mpb.mpb--featured .mpb-grid:has(> .mpb-card:nth-child(3):last-child) { grid-template-columns:minmax(0,1fr); gap:max(12px,calc(var(--mpb-gap) * .7px)); }
  .mpb .mpb-card { --mpb-computed-height:calc(var(--mpb-mobile-height) * 1px); --mpb-current-padding:max(20px,calc(var(--mpb-card-padding) * .8px)); }
  .mpb .mpb-card__copy { padding-top:40px; }
  .mpb .mpb-card__title { font-size:calc(clamp(28px,calc(var(--mpb-card-title-size) * .22cqw),calc(var(--mpb-card-title-size) * 1px)) * var(--mpb-title-scale)); }
  .mpb .mpb-card--photo .mpb-card__title { font-size:calc(clamp(22px,calc(var(--mpb-photo-title-size) * .22cqw),calc(var(--mpb-photo-title-size) * 1px)) * var(--mpb-title-scale)); }
  .mpb .mpb-card__label { font-size:max(9px,calc(var(--mpb-label-size) * .9px)); }
  .mpb .mpb-card__description { font-size:calc(var(--mpb-body-size) * 1px); }
  .mpb.mpb--mobile-swipe .mpb-grid, .mpb.mpb--mobile-swipe.mpb--featured .mpb-grid:has(> .mpb-card:nth-child(3):last-child) {
    display:grid; grid-template-columns:none; grid-auto-flow:column; grid-auto-columns:min(86%,360px);
    overflow-x:auto; overflow-y:hidden; scroll-snap-type:x mandatory; overscroll-behavior-inline:contain;
    scrollbar-width:thin; scrollbar-color:var(--mpb-accent) transparent; padding-bottom:14px;
    scroll-padding-inline:0;
  }
  .mpb.mpb--mobile-swipe .mpb-card { scroll-snap-align:start; }
  .mpb.mpb--mobile-swipe .mpb-swipe-hint { display:block; margin:10px 0 0; color:var(--mpb-muted); font:400 12px/1.5 var(--mpb-font); }
}
@media (max-width:600px) {
  .mpb .mpb-card__image { object-position:var(--mpb-mobile-focal-x) var(--mpb-mobile-focal-y); }
  .mpb .mpb-inner { padding-top:min(48px,calc(var(--mpb-pad-top) * .65px)); padding-bottom:min(48px,calc(var(--mpb-pad-bottom) * .65px)); }
}
@supports not (container-type:inline-size) {
  .mpb .mpb-heading { font-size:clamp(30px,4vw,calc(var(--mpb-heading-size) * 1px)); }
  .mpb .mpb-card { min-height:var(--mpb-custom-height,calc(var(--mpb-card-height) * 1px)); }
  @media (max-width:900px) { .mpb .mpb-grid { grid-template-columns:repeat(2,minmax(0,1fr)) !important; } }
  @media (max-width:600px) { .mpb .mpb-grid { grid-template-columns:minmax(0,1fr) !important; } .mpb .mpb-header { flex-wrap:wrap; } }
}
@media (prefers-reduced-motion:reduce) {
  .mpb *, .mpb *::before, .mpb *::after { animation:none !important; transition:none !important; scroll-behavior:auto !important; }
  .mpb.mpb-animate-ready .mpb-reveal { opacity:1 !important; translate:none !important; }
  .mpb .mpb-card--linked:hover, .mpb .mpb-card--linked:hover .mpb-card__arrow { transform:none; }
  .mpb.mpb--image-hover .mpb-card--linked:hover .mpb-card__image { transform:scale(var(--mpb-image-zoom)); }
}
@media print {
  .mpb.mpb-animate-ready .mpb-reveal { opacity:1 !important; translate:none !important; }
  .mpb .mpb-grid { overflow:visible !important; grid-auto-flow:row !important; grid-template-columns:repeat(3,minmax(0,1fr)) !important; }
  .mpb .mpb-card { break-inside:avoid; print-color-adjust:exact; }
}
