
/* ===== styles.css ===== */

:root{
  --red:#b80000;
  --red-dark:#8f0000;
  --cream:#fff8ed;
  --cream-2:#f6ead7;
  --ink:#241b18;
  --muted:#6d625d;
  --line:rgba(36,27,24,.14);
  --white:#fff;
  --shadow:0 18px 50px rgba(36,27,24,.10);
  --radius:22px;
  --wrap:1180px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{
  margin:0;
  color:var(--ink);
  background:#fffdf9;
  font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  line-height:1.55;
  overflow-x:hidden;
}
img,svg,video,iframe{max-width:100%;height:auto}
button,input,select,textarea{font:inherit}
a{color:inherit}
.wrap{width:min(calc(100% - 40px),var(--wrap));margin-inline:auto}
.skip{position:absolute;left:-9999px;top:8px;background:#fff;padding:10px 14px;z-index:10000}
.skip:focus{left:8px}
.notice{background:var(--red-dark);color:#fff}
.notice-inner{display:flex;align-items:center;gap:18px;padding:10px 0;font-size:.92rem}
.notice-inner span{flex:1}
.notice a{text-decoration:underline;font-weight:700;white-space:nowrap}

.site-header{
  position:sticky;
  top:0;
  z-index:999;
  background:rgba(255,253,249,.96);
  backdrop-filter:blur(10px);
  border-bottom:1px solid var(--line)
}
.nav-wrap{min-height:82px;display:flex;align-items:center;gap:24px}
.brand{display:flex;align-items:center;text-decoration:none;flex:0 0 auto}
.brand img{width:min(230px,38vw);max-height:62px;object-fit:contain}
.brand-text{font-size:1.35rem;font-weight:900;color:var(--red)}
nav{margin-left:auto;display:flex;align-items:center;gap:20px}
nav a{text-decoration:none;font-weight:700;font-size:.95rem}
nav a:hover,nav a[aria-current="page"]{color:var(--red)}
.menu-btn{
  display:none;
  margin-left:auto;
  min-width:48px;
  min-height:44px;
  padding:9px 14px;
  border:1px solid var(--line);
  border-radius:12px;
  background:#fff;
  color:var(--ink);
  font-weight:800;
  cursor:pointer
}

.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:46px;
  padding:12px 20px;
  border:0;
  border-radius:999px;
  background:var(--red);
  color:#fff;
  text-decoration:none;
  font-weight:800;
  cursor:pointer;
  transition:.2s ease
}
.btn:hover{background:var(--red-dark);transform:translateY(-1px)}
.btn-small{min-height:40px;padding:9px 15px;font-size:.9rem}
.btn-cream{background:var(--cream);color:var(--red-dark)}
.text-link{font-weight:800;color:var(--red);text-decoration:none}

.hero{position:relative;overflow:hidden;padding:clamp(70px,10vw,130px) 0;background:linear-gradient(135deg,#fff9ef 0%,#fff 52%,#f6e4d3 100%)}
.hero-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);gap:56px;align-items:center}
.hero h1{font-size:clamp(2.7rem,6vw,5.8rem);line-height:.94;letter-spacing:-.045em;margin:.25em 0}
.hero h1 em{color:var(--red);font-style:normal}
.lead{font-size:clamp(1.05rem,1.6vw,1.3rem);max-width:760px}
.actions,.hero-actions{display:flex;flex-wrap:wrap;gap:14px;align-items:center;margin-top:25px}
.trust{display:flex;flex-wrap:wrap;gap:10px;margin-top:30px}
.trust span{padding:8px 12px;border:1px solid var(--line);border-radius:999px;font-size:.9rem}
.hero-art{min-height:440px;position:relative;display:grid;place-items:center}
.plate{width:min(390px,75vw);aspect-ratio:1;border-radius:50%;background:#f4e3c8;box-shadow:var(--shadow);display:grid;place-items:center}
.dumpling{width:62%;aspect-ratio:1.35;border-radius:50% 50% 42% 42%;background:radial-gradient(circle at 50% 20%,#fffbe8 0,#ead4a6 72%);box-shadow:inset 0 -22px 30px rgba(120,67,10,.12)}
.stamp{position:absolute;right:2%;bottom:4%;width:105px;height:105px;border:3px solid var(--red);border-radius:50%;display:grid;place-items:center;text-align:center;color:var(--red);font-weight:900;transform:rotate(-8deg)}

.section{padding:clamp(65px,8vw,110px) 0}
.section-alt{background:var(--cream)}
.section.dark{background:#241b18;color:#fff}
.section-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.75fr);gap:50px;align-items:end;margin-bottom:42px}
.section-head h1,.section-head h2{margin:.15em 0;font-size:clamp(2.1rem,4.4vw,4rem);line-height:1.02;letter-spacing:-.035em}
.section-head p{max-width:680px}
.eyebrow{text-transform:uppercase;letter-spacing:.13em;font-size:.78rem;font-weight:900;color:var(--red)}
.dark .eyebrow,.section-head.light .eyebrow{color:#ffb0a8}
.light{color:#fff}

.quick-info{border-block:1px solid var(--line);background:#fff}
.quick-grid{display:grid;grid-template-columns:repeat(3,1fr)}
.quick-grid article{padding:32px 28px;border-right:1px solid var(--line)}
.quick-grid article:last-child{border-right:0}
.num{font-weight:900;color:var(--red);font-size:.8rem}

.cards,.price-grid,.news-grid,.event-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.price-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.news-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.food-card,.price-card,.news-card,.event-card,.contact-card,.cta-box{
  background:#fff;
  border:1px solid var(--line);
  border-radius:var(--radius);
  overflow:hidden;
  box-shadow:0 8px 30px rgba(36,27,24,.05)
}
.card-body,.price-card,.news-card,.contact-card{padding:26px}
.food-visual{min-height:220px;background:linear-gradient(135deg,#f7e7ca,#fff8ee);display:grid;place-items:end start;padding:20px}
.food-visual span,.price-kicker{font-weight:900;color:var(--red)}
.featured-price{outline:2px solid var(--red)}
.price-note,.source-note,.small,.form-note{font-size:.9rem;color:var(--muted)}

.next-event{display:grid;grid-template-columns:auto 1fr auto;gap:24px;align-items:center;padding:24px;border:1px solid rgba(255,255,255,.16);border-radius:var(--radius);margin-bottom:36px}
.date-box,.event-date{width:82px;min-width:82px;text-align:center;border-radius:16px;background:var(--cream);color:var(--red-dark);padding:12px 8px}
.date-box span,.event-date strong{display:block;font-size:2rem;line-height:1;font-weight:950}
.date-box small,.event-date span{font-weight:900;font-size:.78rem}
.event-list{margin-top:36px}
.event-list-head{display:flex;justify-content:space-between;gap:20px;align-items:end;margin-bottom:18px}
.event-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.event-card{display:grid;grid-template-columns:auto 1fr;gap:18px;padding:20px;background:#fff;color:var(--ink)}
.event-info h3{margin:0 0 6px}
.event-info p{margin:.28rem 0}
.event-weekday{font-weight:800;color:var(--red)}

.story-grid,.contact-grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:60px}
.quote-mark{font-size:10rem;line-height:.7;color:var(--red)}
dl{display:grid;grid-template-columns:100px 1fr;gap:8px 16px}
dt{font-weight:800}
dd{margin:0}
.form{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:28px;box-shadow:var(--shadow)}
.form label,.contact-form label{display:grid;gap:6px;font-weight:700;margin-bottom:14px}
.form-row,.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
input,select,textarea{
  width:100%;
  min-height:48px;
  border:1px solid rgba(36,27,24,.22);
  border-radius:12px;
  background:#fff;
  padding:11px 13px;
  color:var(--ink)
}
textarea{resize:vertical;min-height:130px}
input:focus,select:focus,textarea:focus{outline:3px solid rgba(184,0,0,.15);border-color:var(--red)}
.check,.checkbox-row{display:grid!important;grid-template-columns:auto 1fr!important;align-items:start;gap:10px!important}
.check input,.checkbox-row input{width:auto;min-height:auto;margin-top:5px}

.hero-subpage{padding:clamp(65px,9vw,105px) 0;background:linear-gradient(135deg,rgba(184,0,0,.07),#fff)}
.hero-subpage h1{font-size:clamp(2.5rem,5vw,4.8rem);line-height:1;letter-spacing:-.04em}
.cta-box{padding:30px;display:flex;justify-content:space-between;gap:25px;align-items:center}

footer{background:#17110f;color:#fff;padding:48px 0}
.footer-grid{display:grid;grid-template-columns:1.3fr repeat(3,1fr);gap:30px}
.footer-grid>div{display:flex;flex-direction:column;gap:8px}
footer a{color:#fff;text-decoration:none}
footer a:hover{text-decoration:underline}

/* Tablet */
@media (max-width: 980px){
  .wrap{width:min(calc(100% - 32px),var(--wrap))}
  .menu-btn{display:inline-flex;align-items:center;justify-content:center}
  nav{
    display:none;
    position:absolute;
    top:100%;
    left:0;
    right:0;
    margin:0;
    padding:14px 16px 20px;
    background:#fffdf9;
    border-bottom:1px solid var(--line);
    box-shadow:0 16px 30px rgba(0,0,0,.08);
    flex-direction:column;
    align-items:stretch;
    gap:0
  }
  nav.is-open{display:flex}
  nav a{padding:13px 8px;border-bottom:1px solid var(--line)}
  nav a:last-child{border-bottom:0}
  nav .btn{margin-top:10px}
  .hero-grid,.section-head,.story-grid,.contact-grid{grid-template-columns:1fr}
  .hero-art{min-height:320px}
  .section-head{gap:18px}
  .price-grid,.news-grid{grid-template-columns:1fr}
  .quick-grid{grid-template-columns:1fr}
  .quick-grid article{border-right:0;border-bottom:1px solid var(--line)}
  .quick-grid article:last-child{border-bottom:0}
  .footer-grid{grid-template-columns:repeat(2,1fr)}
}

/* Mobile */
@media (max-width: 680px){
  .wrap{width:min(calc(100% - 24px),var(--wrap))}
  .notice-inner{align-items:flex-start;flex-direction:column;gap:4px;padding:10px 0}
  .notice-inner a{white-space:normal}
  .nav-wrap{min-height:68px}
  .brand img{width:190px;max-width:58vw}
  .hero{padding:58px 0}
  .hero h1{font-size:clamp(2.35rem,12vw,3.7rem)}
  .hero-art{min-height:270px}
  .plate{width:min(280px,75vw)}
  .stamp{width:80px;height:80px;font-size:.78rem}
  .actions,.hero-actions{align-items:stretch;flex-direction:column}
  .actions .btn,.hero-actions .btn,.actions .text-link{width:100%;text-align:center}
  .cards,.event-grid{grid-template-columns:1fr}
  .event-list-head{display:block}
  .event-list-head p{margin-top:6px}
  .event-card{grid-template-columns:66px minmax(0,1fr);gap:14px;padding:16px}
  .event-date{width:66px;min-width:66px;padding:10px 5px}
  .event-date strong{font-size:1.7rem}
  .event-info{min-width:0}
  .event-info h3,.event-info p{overflow-wrap:anywhere}
  .next-event{grid-template-columns:auto minmax(0,1fr);align-items:start}
  .next-event .btn{grid-column:1/-1;width:100%}
  .date-box{width:68px;min-width:68px}
  .form-row,.form-grid{grid-template-columns:1fr}
  .form,.contact-card{padding:20px}
  dl{grid-template-columns:1fr;gap:2px}
  dd{margin-bottom:12px;overflow-wrap:anywhere}
  .cta-box{align-items:stretch;flex-direction:column}
  .cta-box .btn{width:100%}
  .footer-grid{grid-template-columns:1fr}
  .section{padding:58px 0}
  .section-head h1,.section-head h2{font-size:clamp(2rem,10vw,3rem)}
  table{display:block;max-width:100%;overflow-x:auto}
}

/* Very small screens */
@media (max-width: 380px){
  .wrap{width:min(calc(100% - 18px),var(--wrap))}
  .menu-btn{padding:8px 10px}
  .event-card{grid-template-columns:1fr}
  .event-date{width:100%;display:flex;gap:8px;align-items:baseline;justify-content:flex-start;text-align:left}
  .event-date strong{font-size:1.4rem}
}


/* Stärkere optische Abgrenzung der einzelnen Inhalte */
:root{
  --line-strong:rgba(36,27,24,.25);
  --card-shadow:0 10px 28px rgba(36,27,24,.10);
}

/* Karten und einzelne Punkte klarer voneinander trennen */
.food-card,
.price-card,
.news-card,
.event-card,
.contact-card,
.card,
.cta-box{
  border:1.5px solid var(--line-strong);
  box-shadow:var(--card-shadow);
}

/* Veranstaltungs-Termine stärker abgrenzen */
.event-card{
  border-left:5px solid var(--red);
  background:#fff;
}
.event-card:hover{
  box-shadow:0 14px 34px rgba(36,27,24,.16);
  transform:translateY(-2px);
}
.event-card{
  transition:box-shadow .2s ease,transform .2s ease;
}

/* Überschriften innerhalb der Karten deutlicher */
.event-info h3,
.card h3,
.food-card h3,
.price-card h3,
.news-card h3{
  color:var(--red-dark);
  font-weight:850;
}

/* Bereiche stärker voneinander unterscheiden */
.section{
  border-bottom:1px solid rgba(36,27,24,.10);
}
.section-alt{
  background:#f5ead9;
}
.section.dark{
  border-bottom:0;
}

/* Quick-Info-Punkte */
.quick-grid article{
  background:#fff;
}
.quick-grid article + article{
  border-left:1.5px solid var(--line-strong);
}

/* Formulareingaben deutlicher sichtbar */
input,
select,
textarea{
  border:1.5px solid rgba(36,27,24,.32);
}

/* Mobile: keine unnötige linke Trennlinie zwischen Quick-Info-Punkten */
@media (max-width:980px){
  .quick-grid article + article{
    border-left:0;
    border-top:1.5px solid var(--line-strong);
  }
}

@media (max-width:680px){
  .event-card{
    border-left:4px solid var(--red);
  }
}


/* Veranstaltungen: roter Hintergrund statt grauem Hintergrund */
#veranstaltungen,
body.veranstaltungen-page main {
  background: var(--red);
  color: #fff;
}

#veranstaltungen .section-head h1,
#veranstaltungen .section-head h2,
#veranstaltungen .section-head p,
#veranstaltungen .event-list-head,
#veranstaltungen .event-list-head p,
body.veranstaltungen-page .section-head h1,
body.veranstaltungen-page .section-head h2,
body.veranstaltungen-page .section-head p,
body.veranstaltungen-page .event-list-head,
body.veranstaltungen-page .event-list-head p {
  color: #fff;
}

#veranstaltungen .eyebrow,
body.veranstaltungen-page .eyebrow {
  color: #fff;
}

/* Terminkarten bleiben hell für guten Kontrast */
#veranstaltungen .event-card,
body.veranstaltungen-page .event-card {
  background: #fff;
  color: var(--ink);
}


/* -------------------------------------------------
   Dezente Ausschmückung der gesamten Website
   ------------------------------------------------- */

:root{
  --gold:#c99a55;
  --gold-soft:#ead5b4;
  --cream-soft:#fffaf3;
}

/* Gesamte Seite etwas wärmer und hochwertiger */
body{
  background:
    radial-gradient(circle at 10% 12%, rgba(201,154,85,.08), transparent 22rem),
    radial-gradient(circle at 92% 30%, rgba(184,0,0,.04), transparent 28rem),
    #fffdf9;
}

/* Navigation mit feinerem aktiven Zustand */
nav a{
  position:relative;
  padding-block:7px;
}
nav a:not(.btn)::after{
  content:"";
  position:absolute;
  left:0;
  right:100%;
  bottom:1px;
  height:2px;
  border-radius:99px;
  background:var(--red);
  transition:right .2s ease;
}
nav a:not(.btn):hover::after,
nav a[aria-current="page"]:not(.btn)::after{
  right:0;
}

/* Hero mit subtilen dekorativen Flächen */
.hero::before,
.hero-subpage::before{
  content:"";
  position:absolute;
  width:280px;
  height:280px;
  border:1px solid rgba(184,0,0,.10);
  border-radius:50%;
  top:-115px;
  right:-80px;
  pointer-events:none;
}
.hero::after,
.hero-subpage::after{
  content:"";
  position:absolute;
  width:180px;
  height:180px;
  border-radius:50%;
  background:rgba(201,154,85,.08);
  left:-80px;
  bottom:-85px;
  pointer-events:none;
}
.hero > .wrap,
.hero-subpage > .wrap{
  position:relative;
  z-index:1;
}

/* Eyebrows als kleine Gestaltungselemente */
.eyebrow{
  display:inline-flex;
  align-items:center;
  gap:9px;
}
.eyebrow::before{
  content:"";
  width:28px;
  height:2px;
  flex:0 0 28px;
  background:currentColor;
  border-radius:99px;
  opacity:.75;
}

/* Überschriften optisch stärker verankern */
.section-head h1,
.section-head h2,
.hero-subpage h1{
  text-wrap:balance;
}
.section-head h1::after,
.section-head h2::after{
  content:"";
  display:block;
  width:72px;
  height:4px;
  margin-top:18px;
  background:linear-gradient(90deg,var(--red),var(--gold));
  border-radius:99px;
}
.dark .section-head h1::after,
.dark .section-head h2::after,
body.veranstaltungen-page .section-head h1::after,
body.veranstaltungen-page .section-head h2::after,
#veranstaltungen .section-head h1::after,
#veranstaltungen .section-head h2::after{
  background:linear-gradient(90deg,#fff,var(--gold-soft));
}

/* Karten etwas lebendiger */
.food-card,
.price-card,
.news-card,
.event-card,
.contact-card,
.card,
.cta-box,
.form{
  position:relative;
}
.food-card::before,
.price-card::before,
.news-card::before,
.contact-card::before,
.card::before{
  content:"";
  position:absolute;
  inset:0 auto auto 0;
  width:100%;
  height:4px;
  background:linear-gradient(90deg,var(--red),var(--gold));
  opacity:.92;
}
.food-card,
.price-card,
.news-card,
.card{
  transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;
}
.food-card:hover,
.price-card:hover,
.news-card:hover,
.card:hover{
  transform:translateY(-4px);
  box-shadow:0 18px 42px rgba(36,27,24,.14);
  border-color:rgba(184,0,0,.28);
}

/* Kleine Nummern / Infopunkte als Plaketten */
.num{
  display:inline-grid;
  place-items:center;
  min-width:38px;
  min-height:38px;
  padding:4px 8px;
  border-radius:50%;
  background:var(--cream);
  border:1px solid var(--gold-soft);
  box-shadow:inset 0 0 0 4px rgba(255,255,255,.65);
}

/* Quick Info wirkt mehr wie einzelne Kacheln */
.quick-info{
  background:linear-gradient(180deg,#fff,var(--cream-soft));
}
.quick-grid article{
  position:relative;
  transition:background .2s ease;
}
.quick-grid article:hover{
  background:#fff8ef;
}

/* Bilder-/Speisenfläche dekorativer */
.food-visual{
  position:relative;
  overflow:hidden;
}
.food-visual::after{
  content:"";
  position:absolute;
  width:145px;
  height:145px;
  border-radius:50%;
  border:1px dashed rgba(184,0,0,.18);
  right:-38px;
  top:-45px;
}

/* Preiskarten */
.featured-price{
  outline:0;
  border:2px solid var(--red);
  box-shadow:0 15px 38px rgba(184,0,0,.13);
}
.price-kicker{
  display:inline-block;
  padding:5px 9px;
  border-radius:999px;
  background:var(--cream);
  border:1px solid var(--gold-soft);
}

/* Veranstaltungs-Karten bleiben sehr klar, erhalten aber mehr Tiefe */
.event-card{
  border-left-width:6px;
  box-shadow:0 11px 28px rgba(36,27,24,.13);
}
.event-date,
.date-box{
  border:1px solid var(--gold-soft);
  box-shadow:inset 0 0 0 3px rgba(255,255,255,.72);
}
.event-info h3{
  letter-spacing:-.01em;
}

/* Buttons hochwertiger, ohne den roten Stil zu verändern */
.btn{
  box-shadow:0 8px 18px rgba(184,0,0,.16);
}
.btn:hover{
  box-shadow:0 11px 24px rgba(143,0,0,.22);
}
.btn-cream{
  border:1px solid var(--gold-soft);
  box-shadow:none;
}

/* Formulare */
.form,
.contact-card{
  background:linear-gradient(180deg,#fff,#fffaf5);
}
input,
select,
textarea{
  transition:border-color .2s ease,box-shadow .2s ease,background .2s ease;
}
input:hover,
select:hover,
textarea:hover{
  border-color:rgba(184,0,0,.42);
}
input:focus,
select:focus,
textarea:focus{
  background:#fff;
  box-shadow:0 0 0 4px rgba(184,0,0,.07);
}

/* CTA als besonderer Abschluss eines Bereichs */
.cta-box{
  overflow:hidden;
  background:
    linear-gradient(135deg,#fff 0%,#fff8ef 100%);
}
.cta-box::after{
  content:"";
  position:absolute;
  width:150px;
  height:150px;
  border-radius:50%;
  background:rgba(184,0,0,.055);
  right:-55px;
  bottom:-72px;
  pointer-events:none;
}

/* Footer mit rotem Abschlussband */
footer{
  position:relative;
  border-top:5px solid var(--red);
  background:
    radial-gradient(circle at 85% 0%, rgba(184,0,0,.16), transparent 24rem),
    #17110f;
}
footer::before{
  content:"";
  position:absolute;
  left:0;
  right:0;
  top:0;
  height:1px;
  background:rgba(255,255,255,.13);
}

/* Rote Veranstaltungsseite bekommt etwas Struktur */
body.veranstaltungen-page main,
#veranstaltungen{
  background:
    radial-gradient(circle at 85% 8%, rgba(255,255,255,.09), transparent 22rem),
    radial-gradient(circle at 12% 70%, rgba(255,255,255,.055), transparent 25rem),
    var(--red);
}

/* Mehr Luft zwischen Textabsätzen in längeren Inhaltskarten */
.card p,
.news-card p,
.price-card p,
.contact-card p,
.event-info p{
  line-height:1.65;
}

/* Mobil: dekorativ, aber ruhig */
@media (max-width:680px){
  .hero::before,
  .hero-subpage::before{
    width:190px;
    height:190px;
    right:-85px;
    top:-70px;
  }
  .section-head h1::after,
  .section-head h2::after{
    width:54px;
    margin-top:14px;
  }
  .food-card:hover,
  .price-card:hover,
  .news-card:hover,
  .card:hover,
  .event-card:hover{
    transform:none;
  }
  .event-card{
    border-left-width:5px;
  }
}


/* FINAL: Veranstaltungsseite bewusst rot */
body.veranstaltungen-page,
body.veranstaltungen-page main,
body.veranstaltungen-page main > .section,
body.veranstaltungen-page #veranstaltungen {
  background:
    radial-gradient(circle at 85% 8%, rgba(255,255,255,.09), transparent 22rem),
    radial-gradient(circle at 12% 70%, rgba(255,255,255,.055), transparent 25rem),
    var(--red) !important;
  color:#fff;
}

body.veranstaltungen-page .section-head h1,
body.veranstaltungen-page .section-head h2,
body.veranstaltungen-page .section-head p,
body.veranstaltungen-page .event-list-head,
body.veranstaltungen-page .event-list-head p,
body.veranstaltungen-page .eyebrow {
  color:#fff;
}

body.veranstaltungen-page .event-card {
  background:#fff !important;
  color:var(--ink);
}


/* FINAL: Veranstaltungsseite in warmem, zur Website passendem Farbton */
body.veranstaltungen-page,
body.veranstaltungen-page main,
body.veranstaltungen-page main > .section,
body.veranstaltungen-page #veranstaltungen {
  background:
    radial-gradient(circle at 85% 8%, rgba(184,0,0,.055), transparent 24rem),
    radial-gradient(circle at 10% 75%, rgba(201,154,85,.12), transparent 28rem),
    #f3e3cc !important;
  color:var(--ink);
}

body.veranstaltungen-page .section-head h1,
body.veranstaltungen-page .section-head h2,
body.veranstaltungen-page .section-head p,
body.veranstaltungen-page .event-list-head,
body.veranstaltungen-page .event-list-head p {
  color:var(--ink);
}

body.veranstaltungen-page .eyebrow {
  color:var(--red);
}

body.veranstaltungen-page .section-head h1::after,
body.veranstaltungen-page .section-head h2::after {
  background:linear-gradient(90deg,var(--red),var(--gold));
}

body.veranstaltungen-page .event-card {
  background:#fffdf9 !important;
  color:var(--ink);
  border-color:rgba(143,0,0,.24);
}


/* =================================================
   Harmonisierte Seitenhintergründe
   Warme Creme-, Sand- und Beigetöne
   ================================================= */

/* Grundregel: Seitenbereiche übernehmen die jeweilige Seitenfarbe */
body.startseite-page,
body.catering-page,
body.speisen-page,
body.veranstaltungen-page,
body.aktuelles-page,
body.ueber-uns-page,
body.galerie-page,
body.kontakt-page,
body.jobs-page {
  color:var(--ink);
}

body.startseite-page main,
body.catering-page main,
body.speisen-page main,
body.veranstaltungen-page main,
body.aktuelles-page main,
body.ueber-uns-page main,
body.galerie-page main,
body.kontakt-page main,
body.jobs-page main {
  min-height:60vh;
}

/* Startseite – sehr helles warmes Creme */
body.startseite-page,
body.startseite-page main,
body.startseite-page main > .section {
  background:
    radial-gradient(circle at 88% 10%, rgba(184,0,0,.035), transparent 25rem),
    radial-gradient(circle at 8% 75%, rgba(201,154,85,.08), transparent 27rem),
    #fffaf3 !important;
}

/* Catering – etwas satteres Sand */
body.catering-page,
body.catering-page main,
body.catering-page main > .section {
  background:
    radial-gradient(circle at 90% 15%, rgba(184,0,0,.045), transparent 24rem),
    radial-gradient(circle at 10% 78%, rgba(201,154,85,.10), transparent 26rem),
    #f7ead8 !important;
}

/* Speisen – warmer Vanille-/Teigton */
body.speisen-page,
body.speisen-page main,
body.speisen-page main > .section {
  background:
    radial-gradient(circle at 86% 12%, rgba(201,154,85,.13), transparent 25rem),
    radial-gradient(circle at 12% 82%, rgba(184,0,0,.035), transparent 25rem),
    #f4e6d2 !important;
}

/* Veranstaltungen – bestehender warmer Sandton */
body.veranstaltungen-page,
body.veranstaltungen-page main,
body.veranstaltungen-page main > .section,
body.veranstaltungen-page #veranstaltungen {
  background:
    radial-gradient(circle at 85% 8%, rgba(184,0,0,.055), transparent 24rem),
    radial-gradient(circle at 10% 75%, rgba(201,154,85,.12), transparent 28rem),
    #f3e3cc !important;
}

/* Aktuelles – etwas heller und ruhiger */
body.aktuelles-page,
body.aktuelles-page main,
body.aktuelles-page main > .section {
  background:
    radial-gradient(circle at 90% 10%, rgba(184,0,0,.04), transparent 23rem),
    radial-gradient(circle at 8% 80%, rgba(201,154,85,.09), transparent 27rem),
    #f8eee0 !important;
}

/* Über uns – klassisches warmes Beige */
body.ueber-uns-page,
body.ueber-uns-page main,
body.ueber-uns-page main > .section {
  background:
    radial-gradient(circle at 85% 14%, rgba(201,154,85,.10), transparent 26rem),
    radial-gradient(circle at 12% 78%, rgba(184,0,0,.035), transparent 24rem),
    #f5e9da !important;
}

/* Galerie – besonders hell, damit Bilder wirken */
body.galerie-page,
body.galerie-page main,
body.galerie-page main > .section {
  background:
    radial-gradient(circle at 90% 15%, rgba(201,154,85,.075), transparent 25rem),
    radial-gradient(circle at 7% 75%, rgba(184,0,0,.025), transparent 24rem),
    #fbf3e8 !important;
}

/* Kontakt – warmes, freundliches Beige */
body.kontakt-page,
body.kontakt-page main,
body.kontakt-page main > .section {
  background:
    radial-gradient(circle at 88% 12%, rgba(184,0,0,.04), transparent 24rem),
    radial-gradient(circle at 10% 82%, rgba(201,154,85,.10), transparent 27rem),
    #f6eadf !important;
}

/* Jobs – leicht rosé-warmes Creme, passend zum Rot */
body.jobs-page,
body.jobs-page main,
body.jobs-page main > .section {
  background:
    radial-gradient(circle at 88% 10%, rgba(184,0,0,.055), transparent 24rem),
    radial-gradient(circle at 10% 80%, rgba(201,154,85,.075), transparent 27rem),
    #f7ede3 !important;
}

/* Karten und Formulare bewusst hell für klare Trennung */
body.startseite-page .card,
body.catering-page .card,
body.speisen-page .card,
body.veranstaltungen-page .card,
body.aktuelles-page .card,
body.ueber-uns-page .card,
body.galerie-page .card,
body.kontakt-page .card,
body.jobs-page .card,
.food-card,
.price-card,
.news-card,
.event-card,
.contact-card,
.form,
.cta-box {
  background:#fffdf9;
}

/* section-alt bleibt als leicht hellere Zwischenfläche erkennbar */
body.startseite-page .section-alt,
body.catering-page .section-alt,
body.speisen-page .section-alt,
body.veranstaltungen-page .section-alt,
body.aktuelles-page .section-alt,
body.ueber-uns-page .section-alt,
body.galerie-page .section-alt,
body.kontakt-page .section-alt,
body.jobs-page .section-alt {
  background:rgba(255,255,255,.34) !important;
  backdrop-filter:blur(1px);
}

/* Header bleibt neutral, damit alle Seiten zusammengehören */
.site-header {
  background:rgba(255,253,249,.96);
}


/* =================================================
   Kostenfreie Stockfotos – visuelle Ergänzungen
   ================================================= */
.section-photo{
  padding:clamp(42px,6vw,78px) 0;
  background:transparent !important;
}
.photo-feature-grid{
  display:grid;
  grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr);
  align-items:center;
  gap:clamp(28px,5vw,70px);
}
.photo-feature-grid-reverse .photo-frame{order:2}
.photo-feature-grid-reverse .photo-feature-copy{order:1}
.photo-frame,
.photo-banner,
.stock-gallery-grid figure{
  position:relative;
  overflow:hidden;
  border-radius:20px;
  border:1px solid rgba(143,0,0,.16);
  box-shadow:0 18px 42px rgba(36,27,24,.15);
  background:#fff;
}
.photo-frame{
  min-height:390px;
}
.photo-frame img,
.photo-banner img,
.stock-gallery-grid img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
}
.photo-frame img{position:absolute;inset:0}
.photo-feature-copy h2{
  margin:.35em 0 .5em;
}
.photo-feature-copy p{
  max-width:48ch;
  line-height:1.7;
}
.photo-banner{
  height:clamp(300px,42vw,510px);
}
.photo-banner-short{
  height:clamp(260px,34vw,420px);
}
.photo-banner-caption{
  position:absolute;
  left:22px;
  bottom:22px;
  max-width:560px;
  padding:14px 18px;
  border-radius:12px;
  background:rgba(255,253,249,.93);
  color:var(--ink);
  box-shadow:0 8px 24px rgba(0,0,0,.16);
  font-size:clamp(1rem,2vw,1.25rem);
}
.stock-gallery-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:18px;
}
.stock-gallery-grid figure{
  margin:0;
  aspect-ratio:4/3;
}
.stock-gallery-grid img{
  transition:transform .35s ease;
}
.stock-gallery-grid figure:hover img{
  transform:scale(1.035);
}
@media (max-width:780px){
  .photo-feature-grid{grid-template-columns:1fr}
  .photo-feature-grid-reverse .photo-frame,
  .photo-feature-grid-reverse .photo-feature-copy{order:initial}
  .photo-frame{min-height:300px}
  .stock-gallery-grid{grid-template-columns:1fr}
  .stock-gallery-grid figure{aspect-ratio:16/10}
}


/* =================================================
   Original-Logo im Seitenkopf
   ================================================= */
.site-logo-link,
.brand,
.logo{
  display:flex;
  align-items:center;
  flex-shrink:0;
  text-decoration:none;
}

.site-logo-img{
  display:block;
  width:auto;
  height:92px;
  max-width:245px;
  object-fit:contain;
  mix-blend-mode:multiply;
}

.site-header .wrap,
.site-header .header-inner,
header .wrap{
  align-items:center;
}

@media (max-width:900px){
  .site-logo-img{
    height:76px;
    max-width:210px;
  }
}

@media (max-width:680px){
  .site-logo-img{
    height:62px;
    max-width:175px;
  }
}


/* ==========================================================
   REDESIGN 2026 – inspiriert von der freigegebenen Vorlage
   ========================================================== */
:root{
  --red:#a70d12;
  --red-dark:#7f090d;
  --gold:#c99838;
  --cream:#f7efe1;
  --paper:#fffaf1;
  --ink:#2b1d17;
  --line:rgba(84,50,31,.16);
}
body{background:#f7efe1;color:var(--ink)}
.notice{background:#7f090d;color:#fff;border:0}
.notice-inner{min-height:36px;padding:6px 0;justify-content:center;font-size:.83rem}
.notice-inner span{opacity:.88}.notice-inner a{color:#fff;text-decoration:underline}

.site-header{position:relative;z-index:20;background:#f8f0e3;border:0;box-shadow:none}
.header-main{background:
  radial-gradient(circle at 12% 0%,rgba(201,152,56,.10),transparent 18rem),
  linear-gradient(90deg,#fbf4e9,#f5ead9)}
.header-main-grid{min-height:230px;display:grid;grid-template-columns:310px 1fr 1fr 315px;gap:28px;align-items:center}
.brand-large{height:210px;justify-content:center;border-right:1px solid rgba(201,152,56,.45);padding-right:28px}
.site-logo-img{height:195px!important;width:auto!important;max-width:300px!important;mix-blend-mode:multiply;filter:contrast(1.02)}
.header-fact{display:grid;grid-template-columns:58px 1fr;gap:17px;align-items:center}
.header-icon{width:58px;height:58px;border:2px solid var(--gold);border-radius:50%;display:grid;place-items:center;color:var(--gold);font-size:1.55rem;font-weight:900}
.header-fact strong,.header-event strong{display:block;font-family:Georgia,'Times New Roman',serif;font-size:1.15rem;margin-bottom:4px}
.header-fact a{display:block;color:var(--red);font-family:Georgia,'Times New Roman',serif;font-size:1.45rem;font-weight:800;text-decoration:none}
.header-fact span:not(.header-icon),.header-fact small{display:block;font-size:.98rem;line-height:1.45}
.header-event{min-height:92px;border-radius:10px;background:linear-gradient(135deg,#ad0d13,#8e0a0f);color:#fff;text-decoration:none;padding:18px 24px;display:grid;grid-template-columns:58px 1fr;gap:17px;align-items:center;box-shadow:0 12px 24px rgba(126,9,13,.16)}
.header-event:hover{transform:translateY(-2px)}
.header-icon-light{background:#fff7ed;border-color:#fff7ed;color:var(--red)}
.header-event small{display:block;color:#fff;font-size:.95rem;margin-top:3px}
.nav-band{background:linear-gradient(90deg,#8f090e,#b01218 50%,#8b090d);box-shadow:0 4px 14px rgba(61,0,0,.22)}
.nav-band-inner{min-height:70px;display:flex;align-items:center}
.nav-band nav{margin:0;width:100%;display:flex;justify-content:center;gap:0}
.nav-band nav a{position:relative;color:#fff;padding:25px 22px 22px;text-decoration:none;font-weight:800;font-size:1rem;white-space:nowrap}
.nav-band nav a:hover,.nav-band nav a[aria-current="page"]{color:#f3c453}
.nav-band nav a::after{content:"";position:absolute;left:22px;right:100%;bottom:10px;height:3px;background:#e1b64c;transition:.2s}
.nav-band nav a:hover::after,.nav-band nav a[aria-current="page"]::after{right:22px}
.menu-btn{color:#fff;background:transparent;border-color:rgba(255,255,255,.35)}

.hero-home{min-height:540px;padding:0;position:relative;background:
 linear-gradient(90deg,rgba(19,10,5,.91) 0%,rgba(24,12,6,.78) 38%,rgba(20,10,4,.20) 64%,rgba(20,10,4,.06) 100%);color:#fff;overflow:visible}
.hero-home::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 65%,rgba(28,10,5,.42));pointer-events:none}
.hero-home-inner{min-height:540px;display:flex;align-items:center;position:relative;z-index:1}
.hero-home-copy{max-width:660px;padding:48px 0 92px}
.hero-script{margin:0 0 8px;color:#e4b247;font-family:'Brush Script MT','Segoe Script',cursive;font-style:italic;font-size:clamp(2rem,3vw,3.2rem);line-height:1}
.hero-home h1{margin:0;color:#fff9ed;font-family:Georgia,'Times New Roman',serif;font-size:clamp(3.4rem,6.4vw,6rem);line-height:.94;letter-spacing:-.035em;text-shadow:0 3px 12px rgba(0,0,0,.22)}
.hero-rule{display:flex;align-items:center;gap:14px;width:420px;max-width:90%;margin:25px 0 17px;color:#dfac3c}
.hero-rule::before,.hero-rule::after{content:"";height:1px;background:#c58e2c;flex:1}.hero-rule span{font-size:1.15rem}
.hero-tagline{font-family:Georgia,'Times New Roman',serif;color:#e6b64e;font-weight:700;font-size:clamp(1.18rem,2vw,1.55rem);line-height:1.4;margin:0 0 22px}
.hero-btn{border-radius:8px;background:linear-gradient(135deg,#b4151b,#910b10);padding-inline:24px;box-shadow:0 10px 25px rgba(0,0,0,.2)}
.hero-btn span{font-size:1.5rem;margin-left:14px;line-height:.6}

.home-feature-wrap{margin-top:-68px;position:relative;z-index:5;padding-bottom:28px}
.home-feature-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.home-feature{min-height:126px;display:grid;grid-template-columns:64px 1fr 18px;gap:16px;align-items:center;padding:22px;border-radius:12px;background:linear-gradient(145deg,#fffdf9,#f8efe3);color:var(--ink);text-decoration:none;border:1px solid rgba(111,70,38,.13);box-shadow:0 12px 30px rgba(49,28,17,.14);transition:.2s}
.home-feature:hover{transform:translateY(-5px);box-shadow:0 18px 38px rgba(49,28,17,.18)}
.feature-icon{width:58px;height:58px;border-radius:50%;background:linear-gradient(135deg,#bd171c,#8b090d);color:#fff;display:grid;place-items:center;font-size:1.55rem;font-weight:900}
.home-feature strong{display:block;color:#a30e13;font-family:Georgia,'Times New Roman',serif;font-size:1.07rem;margin-bottom:7px}
.home-feature small{display:block;font-size:.88rem;line-height:1.42;color:#49362d}.home-feature b{color:#be671e;font-size:1.7rem}

/* Inhaltswelt wie in der Vorlage */
.section{padding:clamp(62px,7vw,96px) 0;background:#f8f0e4}
.section:nth-of-type(even){background:#fffaf2}
.section-head h1,.section-head h2,.hero-subpage h1{font-family:Georgia,'Times New Roman',serif;color:#5e241b;letter-spacing:-.025em}
.eyebrow{color:#ad0d12}.eyebrow::before{background:var(--gold)!important}
.food-card,.price-card,.news-card,.event-card,.contact-card,.card,.form,.cta-box{border-radius:12px;border:1px solid rgba(111,70,38,.16);box-shadow:0 9px 24px rgba(66,39,22,.09);background:#fffdf8}
.food-card::before,.price-card::before,.news-card::before,.contact-card::before,.card::before{background:linear-gradient(90deg,#a70d12,#d3a440)}
.btn{border-radius:7px;background:linear-gradient(135deg,#ae0d13,#8e090e)}

.hero-subpage{padding:74px 0;background:
 linear-gradient(90deg,rgba(67,18,15,.96),rgba(126,11,15,.84));color:#fff;border-bottom:5px solid #d1a044}
.hero-subpage h1,.hero-subpage p,.hero-subpage .eyebrow{color:#fff!important}.hero-subpage .eyebrow{color:#f0c25e!important}

footer{background:linear-gradient(135deg,#4b1513,#250c0a);border-top:5px solid #a70d12}

@media(max-width:1150px){
 .header-main-grid{grid-template-columns:250px 1fr 1fr;min-height:200px}.header-event{grid-column:2/4}.brand-large{grid-row:1/3;height:200px}.site-logo-img{height:180px!important}
 .nav-band nav a{padding-inline:13px;font-size:.93rem}.home-feature-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:980px){
 .header-main-grid{grid-template-columns:190px 1fr;min-height:auto;padding-block:18px}.brand-large{grid-row:1/4;height:170px;padding-right:18px}.site-logo-img{height:155px!important}.header-event{grid-column:2}
 .nav-band-inner{min-height:58px;justify-content:flex-end}.menu-btn{display:inline-flex;margin:0}.nav-band nav{display:none;position:absolute;top:100%;left:0;right:0;background:#8f090e;padding:10px 18px 18px;flex-direction:column}.nav-band nav.is-open{display:flex}.nav-band{position:relative}.nav-band nav a{padding:13px 8px;border-bottom:1px solid rgba(255,255,255,.13)}
 .hero-home{min-height:500px}.hero-home-inner{min-height:500px}.home-feature-wrap{margin-top:-45px}
}
@media(max-width:680px){
 .notice{display:none}.header-main-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding-block:12px}.brand-large{grid-column:1/-1;grid-row:auto;height:150px;border-right:0;border-bottom:1px solid rgba(201,152,56,.35);padding:0 0 10px}.site-logo-img{height:138px!important;max-width:270px!important}
 .header-fact{grid-template-columns:40px 1fr;gap:9px}.header-icon{width:40px;height:40px;font-size:1.05rem}.header-fact strong{font-size:.9rem}.header-fact a{font-size:1rem}.header-fact span:not(.header-icon),.header-fact small{font-size:.78rem}.header-event{grid-column:1/-1;min-height:66px;grid-template-columns:42px 1fr;padding:12px 16px}.header-event strong{font-size:1rem}
 .hero-home{min-height:470px;background-position:62% center!important}.hero-home-inner{min-height:470px}.hero-home-copy{padding:45px 0 95px}.hero-home h1{font-size:clamp(3rem,15vw,4.2rem)}.hero-script{font-size:2rem}.hero-tagline{font-size:1.08rem}
 .home-feature-grid{grid-template-columns:1fr;gap:10px}.home-feature-wrap{margin-top:-60px}.home-feature{min-height:105px;padding:16px;grid-template-columns:52px 1fr 16px}.feature-icon{width:50px;height:50px}.home-feature strong{font-size:1rem}
}

/* ===== redesign.css ===== */

/* =========================================================
   DAMPFNUDELHOF – REDESIGN V2
   Separate Datei, bewusst mit hoher Priorität.
   ========================================================= */

:root{
  --dh-red:#a70b11;
  --dh-red-dark:#7f070c;
  --dh-gold:#d2a13e;
  --dh-cream:#f8efe1;
  --dh-paper:#fffaf2;
  --dh-brown:#2f1d14;
}

html,body{
  margin:0;
  background:var(--dh-cream)!important;
  color:var(--dh-brown)!important;
}

/* ===== Oberer Kopfbereich ===== */
.site-header{
  position:relative!important;
  background:#f8efe1!important;
  border:0!important;
  box-shadow:none!important;
  z-index:50!important;
}

.header-main{
  display:block!important;
  background:
    radial-gradient(circle at 10% 20%,rgba(210,161,62,.16),transparent 24rem),
    linear-gradient(90deg,#fff9ef 0%,#f7ead7 100%)!important;
}

.header-main-grid{
  max-width:1480px!important;
  min-height:250px!important;
  margin:0 auto!important;
  padding:22px 34px!important;
  display:grid!important;
  grid-template-columns:340px minmax(220px,1fr) minmax(220px,1fr) 320px!important;
  gap:34px!important;
  align-items:center!important;
}

.brand-large{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:205px!important;
  padding-right:34px!important;
  border-right:1px solid rgba(210,161,62,.55)!important;
  text-decoration:none!important;
}

.brand-large .site-logo-img,
.site-header .site-logo-img{
  display:block!important;
  width:auto!important;
  height:205px!important;
  max-width:310px!important;
  object-fit:contain!important;
  mix-blend-mode:multiply!important;
}

.header-fact{
  display:grid!important;
  grid-template-columns:62px 1fr!important;
  gap:18px!important;
  align-items:center!important;
}

.header-icon{
  width:60px!important;
  height:60px!important;
  display:grid!important;
  place-items:center!important;
  border-radius:50%!important;
  border:2px solid var(--dh-gold)!important;
  color:var(--dh-gold)!important;
  font-size:1.45rem!important;
  background:rgba(255,255,255,.42)!important;
}

.header-fact strong,
.header-event strong{
  display:block!important;
  font-family:Georgia,"Times New Roman",serif!important;
  color:#341d14!important;
  font-size:1.22rem!important;
  line-height:1.2!important;
  margin-bottom:6px!important;
}

.header-fact a{
  display:block!important;
  color:var(--dh-red)!important;
  font-family:Georgia,"Times New Roman",serif!important;
  font-size:1.48rem!important;
  font-weight:800!important;
  text-decoration:none!important;
}

.header-fact span:not(.header-icon),
.header-fact small{
  display:block!important;
  color:#432f25!important;
  font-size:.96rem!important;
  line-height:1.5!important;
}

.header-event{
  display:grid!important;
  grid-template-columns:58px 1fr!important;
  gap:18px!important;
  align-items:center!important;
  min-height:100px!important;
  padding:20px 24px!important;
  color:#fff!important;
  text-decoration:none!important;
  border-radius:12px!important;
  background:linear-gradient(135deg,#b61117,#8e080d)!important;
  box-shadow:0 14px 28px rgba(95,0,4,.19)!important;
}

.header-event .header-icon{
  color:var(--dh-red)!important;
  background:#fff7ed!important;
  border-color:#fff7ed!important;
}

.header-event strong,
.header-event small{
  color:#fff!important;
}
.header-event small{
  display:block!important;
  margin-top:4px!important;
}

/* ===== Rote Hauptnavigation ===== */
.nav-band{
  display:block!important;
  background:linear-gradient(90deg,#85070b 0%,#b30e15 48%,#85070b 100%)!important;
  box-shadow:0 4px 16px rgba(70,0,0,.27)!important;
  border:0!important;
}

.nav-band-inner{
  min-height:72px!important;
  max-width:1480px!important;
  margin:0 auto!important;
  display:flex!important;
  align-items:center!important;
  padding:0 24px!important;
}

#nav{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  gap:0!important;
  margin:0!important;
  padding:0!important;
}

#nav a{
  position:relative!important;
  display:block!important;
  padding:26px 20px 23px!important;
  color:#fff!important;
  font-size:1rem!important;
  font-weight:800!important;
  text-decoration:none!important;
  white-space:nowrap!important;
  background:transparent!important;
  border:0!important;
}

#nav a:hover,
#nav a[aria-current="page"]{
  color:#f0c259!important;
}

#nav a::after{
  content:""!important;
  position:absolute!important;
  left:20px!important;
  right:100%!important;
  bottom:11px!important;
  height:3px!important;
  border-radius:9px!important;
  background:#e5b545!important;
  transition:right .18s ease!important;
}
#nav a:hover::after,
#nav a[aria-current="page"]::after{
  right:20px!important;
}

/* ===== Startseiten-Hero ===== */
body.index-page .hero-home{
  position:relative!important;
  display:block!important;
  min-height:610px!important;
  padding:0!important;
  overflow:hidden!important;
  color:#fff!important;
  background:
    linear-gradient(90deg,rgba(20,9,4,.94) 0%,rgba(25,12,5,.86) 37%,rgba(25,12,5,.28) 67%,rgba(25,12,5,.12) 100%);
}

body.index-page .hero-home::before{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  background:
    radial-gradient(circle at 76% 40%,rgba(255,214,151,.12),transparent 22rem),
    linear-gradient(180deg,transparent 72%,rgba(16,6,2,.40))!important;
  pointer-events:none!important;
}

.hero-home-inner{
  position:relative!important;
  z-index:2!important;
  min-height:610px!important;
  display:flex!important;
  align-items:center!important;
}

.hero-home-copy{
  max-width:700px!important;
  padding:62px 0 125px!important;
}

.hero-script{
  margin:0 0 10px!important;
  color:#e0ad46!important;
  font-family:"Brush Script MT","Segoe Script",cursive!important;
  font-size:clamp(2.1rem,3.4vw,3.45rem)!important;
  line-height:1!important;
  font-style:italic!important;
}

.hero-home h1{
  margin:0!important;
  color:#fff9ec!important;
  font-family:Georgia,"Times New Roman",serif!important;
  font-size:clamp(4rem,7.2vw,6.7rem)!important;
  line-height:.92!important;
  letter-spacing:-.045em!important;
  text-shadow:0 4px 16px rgba(0,0,0,.26)!important;
}

.hero-rule{
  width:450px!important;
  max-width:92%!important;
  display:flex!important;
  align-items:center!important;
  gap:15px!important;
  margin:27px 0 20px!important;
  color:#e4b347!important;
}

.hero-rule::before,
.hero-rule::after{
  content:""!important;
  height:1px!important;
  flex:1!important;
  background:#d0a03d!important;
}

.hero-tagline{
  margin:0 0 26px!important;
  color:#e3b249!important;
  font-family:Georgia,"Times New Roman",serif!important;
  font-size:clamp(1.25rem,2vw,1.62rem)!important;
  line-height:1.45!important;
  font-weight:700!important;
}

.hero-btn{
  display:inline-flex!important;
  align-items:center!important;
  padding:14px 23px!important;
  border-radius:8px!important;
  background:linear-gradient(135deg,#b51218,#91090e)!important;
  color:#fff!important;
  box-shadow:0 12px 26px rgba(0,0,0,.23)!important;
}

/* ===== Vier Kacheln überlappend unter dem Hero ===== */
.home-feature-wrap{
  position:relative!important;
  z-index:8!important;
  margin-top:-82px!important;
  padding:0 0 40px!important;
  background:transparent!important;
}

.home-feature-grid{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:18px!important;
}

.home-feature{
  min-height:132px!important;
  display:grid!important;
  grid-template-columns:64px 1fr 18px!important;
  gap:16px!important;
  align-items:center!important;
  padding:22px!important;
  border-radius:13px!important;
  border:1px solid rgba(102,62,36,.14)!important;
  background:linear-gradient(145deg,#fffdf8,#f8eee1)!important;
  color:#2e1e17!important;
  text-decoration:none!important;
  box-shadow:0 15px 32px rgba(50,28,16,.16)!important;
}

.feature-icon{
  width:60px!important;
  height:60px!important;
  display:grid!important;
  place-items:center!important;
  border-radius:50%!important;
  color:#fff!important;
  background:linear-gradient(135deg,#bd171d,#8d090e)!important;
  font-size:1.55rem!important;
  font-weight:900!important;
}

.home-feature strong{
  display:block!important;
  color:#a20c12!important;
  font-family:Georgia,"Times New Roman",serif!important;
  font-size:1.12rem!important;
  margin-bottom:7px!important;
}
.home-feature small{
  display:block!important;
  color:#49362d!important;
  font-size:.88rem!important;
  line-height:1.42!important;
}
.home-feature b{
  color:#bd691d!important;
  font-size:1.8rem!important;
}

/* ===== Unterseiten konsistent ===== */
.hero-subpage{
  padding:80px 0!important;
  color:#fff!important;
  border-bottom:5px solid var(--dh-gold)!important;
  background:
    linear-gradient(90deg,rgba(73,15,12,.97),rgba(135,9,14,.86));
}

.hero-subpage h1{
  color:#fff!important;
  font-family:Georgia,"Times New Roman",serif!important;
}
.hero-subpage p,
.hero-subpage .eyebrow{
  color:#fff!important;
}
.hero-subpage .eyebrow{
  color:#efc05b!important;
}

.section{
  background:#f8f0e4!important;
}
.section:nth-of-type(even){
  background:#fffaf2!important;
}

/* ===== Responsive ===== */
@media(max-width:1180px){
  .header-main-grid{
    grid-template-columns:280px 1fr 1fr!important;
  }
  .brand-large{
    grid-row:1/3!important;
  }
  .header-event{
    grid-column:2/4!important;
  }
  #nav a{
    padding-left:13px!important;
    padding-right:13px!important;
    font-size:.92rem!important;
  }
  .home-feature-grid{
    grid-template-columns:repeat(2,1fr)!important;
  }
}

@media(max-width:900px){
  .header-main-grid{
    grid-template-columns:210px 1fr!important;
    gap:18px!important;
    padding:15px 20px!important;
  }
  .brand-large{
    min-height:175px!important;
  }
  .brand-large .site-logo-img,
  .site-header .site-logo-img{
    height:165px!important;
    max-width:235px!important;
  }
  .header-event{
    grid-column:2!important;
  }

  .menu-btn{
    display:inline-flex!important;
    margin-left:auto!important;
    color:#fff!important;
    border:1px solid rgba(255,255,255,.45)!important;
    background:transparent!important;
  }
  #nav{
    display:none!important;
    position:absolute!important;
    left:0!important;
    right:0!important;
    top:100%!important;
    flex-direction:column!important;
    background:#8a080d!important;
    padding:10px 18px 18px!important;
  }
  #nav.is-open{
    display:flex!important;
  }
  #nav a{
    width:100%!important;
    padding:13px 8px!important;
    border-bottom:1px solid rgba(255,255,255,.14)!important;
  }
  .nav-band{
    position:relative!important;
  }
}

@media(max-width:680px){
  .header-main-grid{
    grid-template-columns:1fr 1fr!important;
  }
  .brand-large{
    grid-column:1/-1!important;
    grid-row:auto!important;
    min-height:155px!important;
    padding:0 0 12px!important;
    border-right:0!important;
    border-bottom:1px solid rgba(210,161,62,.45)!important;
  }
  .brand-large .site-logo-img,
  .site-header .site-logo-img{
    height:145px!important;
    max-width:280px!important;
  }
  .header-event{
    grid-column:1/-1!important;
  }
  .header-fact{
    grid-template-columns:42px 1fr!important;
    gap:9px!important;
  }
  .header-icon{
    width:40px!important;
    height:40px!important;
    font-size:1rem!important;
  }

  body.index-page .hero-home{
    min-height:520px!important;
    background-position:62% center!important;
  }
  .hero-home-inner{
    min-height:520px!important;
  }
  .hero-home-copy{
    padding:52px 0 105px!important;
  }
  .hero-home h1{
    font-size:clamp(3.2rem,15vw,4.7rem)!important;
  }
  .hero-script{
    font-size:2rem!important;
  }
  .hero-tagline{
    font-size:1.08rem!important;
  }
  .home-feature-wrap{
    margin-top:-58px!important;
  }
  .home-feature-grid{
    grid-template-columns:1fr!important;
    gap:11px!important;
  }
}


/* =========================================================
   HEADER UPDATE – Logo und Informationsbereich größer
   ========================================================= */

.header-main-grid{
  grid-template-columns:390px minmax(270px,1fr) minmax(270px,1fr) 340px!important;
  min-height:310px!important;
  gap:42px!important;
  padding-top:24px!important;
  padding-bottom:24px!important;
}

.brand-large{
  min-height:260px!important;
  padding-right:40px!important;
}

.brand-large .site-logo-img,
.site-header .site-logo-img{
  height:255px!important;
  max-width:370px!important;
}

/* Jetzt anfragen / Standort größer und besser lesbar */
.header-fact{
  grid-template-columns:72px 1fr!important;
  gap:20px!important;
}

.header-icon{
  width:68px!important;
  height:68px!important;
  font-size:1.65rem!important;
}

.header-fact strong{
  font-size:1.38rem!important;
  margin-bottom:8px!important;
}

.header-fact a{
  font-size:1.65rem!important;
  line-height:1.25!important;
}

.header-fact span:not(.header-icon),
.header-fact small{
  font-size:1.04rem!important;
  line-height:1.55!important;
}

/* Veranstaltungs-Kachel etwas größer */
.header-event{
  min-height:118px!important;
  padding:23px 27px!important;
  grid-template-columns:66px 1fr!important;
}

.header-event strong{
  font-size:1.38rem!important;
}

.header-event small{
  font-size:1rem!important;
}

/* Tablet */
@media(max-width:1180px){
  .header-main-grid{
    grid-template-columns:315px 1fr 1fr!important;
    min-height:280px!important;
  }

  .brand-large{
    min-height:235px!important;
  }

  .brand-large .site-logo-img,
  .site-header .site-logo-img{
    height:225px!important;
    max-width:325px!important;
  }
}

/* Smartphone */
@media(max-width:900px){
  .header-main-grid{
    grid-template-columns:245px 1fr!important;
    min-height:auto!important;
  }

  .brand-large{
    min-height:205px!important;
  }

  .brand-large .site-logo-img,
  .site-header .site-logo-img{
    height:195px!important;
    max-width:280px!important;
  }
}

@media(max-width:680px){
  .header-main-grid{
    grid-template-columns:1fr!important;
  }

  .brand-large{
    min-height:220px!important;
    padding-right:0!important;
  }

  .brand-large .site-logo-img,
  .site-header .site-logo-img{
    height:205px!important;
    max-width:330px!important;
  }

  .header-fact{
    grid-template-columns:54px 1fr!important;
    padding:8px 4px!important;
  }

  .header-icon{
    width:50px!important;
    height:50px!important;
    font-size:1.25rem!important;
  }

  .header-event{
    grid-column:1!important;
  }
}


/* =========================================================
   HEADER FEINTUNING – Infobereiche kompakter
   Logo bleibt groß
   ========================================================= */

/* Kopfbereich wieder etwas kompakter, Logo bleibt prominent */
.header-main-grid{
  grid-template-columns:390px minmax(235px,.9fr) minmax(235px,.9fr) 285px!important;
  min-height:280px!important;
  gap:30px!important;
}

/* Jetzt anfragen + Standort verkleinern */
.header-fact{
  grid-template-columns:54px 1fr!important;
  gap:14px!important;
}

.header-fact .header-icon{
  width:50px!important;
  height:50px!important;
  font-size:1.2rem!important;
}

.header-fact strong{
  font-size:1.12rem!important;
  margin-bottom:5px!important;
}

.header-fact a{
  font-size:1.34rem!important;
  line-height:1.2!important;
}

.header-fact span:not(.header-icon),
.header-fact small{
  font-size:.9rem!important;
  line-height:1.4!important;
}

/* Veranstaltungen-Kachel kompakter */
.header-event{
  min-height:88px!important;
  padding:16px 18px!important;
  grid-template-columns:48px 1fr!important;
  gap:13px!important;
  border-radius:10px!important;
}

.header-event .header-icon{
  width:46px!important;
  height:46px!important;
  font-size:1.1rem!important;
}

.header-event strong{
  font-size:1.12rem!important;
  margin-bottom:2px!important;
}

.header-event small{
  font-size:.86rem!important;
  margin-top:2px!important;
}

/* Tablet */
@media(max-width:1180px){
  .header-main-grid{
    grid-template-columns:315px 1fr 1fr!important;
    gap:24px!important;
  }
  .header-event{
    grid-column:2/4!important;
    max-width:390px!important;
  }
}

/* Smartphone */
@media(max-width:680px){
  .header-main-grid{
    grid-template-columns:1fr!important;
    gap:13px!important;
  }
  .header-fact{
    grid-template-columns:46px 1fr!important;
  }
  .header-fact .header-icon{
    width:42px!important;
    height:42px!important;
  }
  .header-event{
    grid-column:1!important;
    width:100%!important;
    max-width:none!important;
    min-height:76px!important;
  }
}


/* =========================================================
   HEADER FEINTUNING 2
   Schmalere Logo-Spalte, größeres Logo, Infos noch kompakter
   ========================================================= */

/* Logo-Bereich deutlich schmaler */
.header-main-grid{
  grid-template-columns:285px minmax(210px,.82fr) minmax(210px,.82fr) 245px!important;
  min-height:245px!important;
  gap:22px!important;
  padding:16px 28px!important;
}

.brand-large{
  min-height:220px!important;
  padding:0 20px 0 0!important;
  border-right:1px solid rgba(210,161,62,.55)!important;
  overflow:visible!important;
}

/* Logo nutzt den schmaleren Bereich stärker aus */
.brand-large .site-logo-img,
.site-header .site-logo-img{
  width:270px!important;
  height:215px!important;
  max-width:none!important;
  object-fit:contain!important;
}

/* Anfrage und Standort nochmals etwas kleiner */
.header-fact{
  grid-template-columns:45px 1fr!important;
  gap:11px!important;
}

.header-fact .header-icon{
  width:42px!important;
  height:42px!important;
  font-size:1rem!important;
  border-width:1.5px!important;
}

.header-fact strong{
  font-size:1rem!important;
  margin-bottom:3px!important;
}

.header-fact a{
  font-size:1.18rem!important;
  line-height:1.15!important;
}

.header-fact span:not(.header-icon),
.header-fact small{
  font-size:.82rem!important;
  line-height:1.35!important;
}

/* Veranstaltungen ebenfalls nochmals kompakter */
.header-event{
  min-height:72px!important;
  padding:12px 14px!important;
  grid-template-columns:39px 1fr!important;
  gap:10px!important;
  border-radius:9px!important;
}

.header-event .header-icon{
  width:37px!important;
  height:37px!important;
  font-size:.9rem!important;
  border-width:1px!important;
}

.header-event strong{
  font-size:1rem!important;
  margin-bottom:1px!important;
}

.header-event small{
  font-size:.78rem!important;
  line-height:1.25!important;
}

/* Tablet */
@media(max-width:1180px){
  .header-main-grid{
    grid-template-columns:255px 1fr 1fr!important;
    gap:18px!important;
  }

  .brand-large{
    min-height:205px!important;
  }

  .brand-large .site-logo-img,
  .site-header .site-logo-img{
    width:245px!important;
    height:200px!important;
  }

  .header-event{
    grid-column:2/4!important;
    max-width:330px!important;
  }
}

/* Kleinere Tablets */
@media(max-width:900px){
  .header-main-grid{
    grid-template-columns:225px 1fr!important;
  }

  .brand-large{
    min-height:190px!important;
  }

  .brand-large .site-logo-img,
  .site-header .site-logo-img{
    width:220px!important;
    height:185px!important;
  }
}

/* Smartphone: Logo wieder mittig und groß */
@media(max-width:680px){
  .header-main-grid{
    grid-template-columns:1fr!important;
    padding:12px 16px!important;
  }

  .brand-large{
    min-height:190px!important;
    padding:0 0 8px!important;
    border-right:0!important;
  }

  .brand-large .site-logo-img,
  .site-header .site-logo-img{
    width:280px!important;
    height:180px!important;
    max-width:90vw!important;
  }

  .header-fact{
    grid-template-columns:40px 1fr!important;
  }

  .header-fact .header-icon{
    width:37px!important;
    height:37px!important;
  }

  .header-event{
    grid-column:1!important;
    max-width:none!important;
    min-height:66px!important;
  }
}


/* =========================================================
   HEADER – Höhe ungefähr halbiert
   ========================================================= */
.header-main-grid{
  min-height:125px!important;
  padding-top:6px!important;
  padding-bottom:6px!important;
}

.brand-large{
  min-height:110px!important;
  padding-top:0!important;
  padding-bottom:0!important;
}

/* Logo bleibt im verfügbaren Bereich möglichst groß */
.brand-large .site-logo-img,
.site-header .site-logo-img{
  height:108px!important;
  width:250px!important;
  object-fit:contain!important;
}

/* Infobereiche an die reduzierte Höhe anpassen */
.header-fact{
  align-self:center!important;
}

.header-event{
  min-height:58px!important;
  padding-top:8px!important;
  padding-bottom:8px!important;
}

/* Tablet */
@media(max-width:1180px){
  .header-main-grid{
    min-height:120px!important;
  }
  .brand-large{
    min-height:105px!important;
  }
  .brand-large .site-logo-img,
  .site-header .site-logo-img{
    height:103px!important;
    width:235px!important;
  }
}

/* Smartphone */
@media(max-width:680px){
  .header-main-grid{
    min-height:auto!important;
    padding-top:7px!important;
    padding-bottom:7px!important;
  }
  .brand-large{
    min-height:105px!important;
    padding-bottom:4px!important;
  }
  .brand-large .site-logo-img,
  .site-header .site-logo-img{
    height:102px!important;
    width:245px!important;
  }
}


/* =========================================================
   KORREKTUR:
   Letzten 70%-Schritt rückgängig.
   Nur der weiße obere Kopfbereich wird ca. 50 % niedriger.
   Die rote Navigation bleibt unverändert.
   ========================================================= */

.header-main{
  min-height:0!important;
}

.header-main-grid{
  min-height:63px!important;
  padding-top:3px!important;
  padding-bottom:3px!important;
  gap:18px!important;
}

.brand-large{
  min-height:56px!important;
  padding-top:0!important;
  padding-bottom:0!important;
}

/* Logo im verkleinerten weißen Bereich weiterhin gut sichtbar */
.brand-large .site-logo-img,
.site-header .site-logo-img{
  height:55px!important;
  width:250px!important;
  max-width:100%!important;
  object-fit:contain!important;
}

/* Inhalte nur so weit komprimieren, dass sie in den halbierten Bereich passen */
.header-fact{
  grid-template-columns:34px 1fr!important;
  gap:9px!important;
}

.header-fact .header-icon{
  width:31px!important;
  height:31px!important;
  font-size:.8rem!important;
}

.header-fact strong{
  font-size:.88rem!important;
  margin-bottom:1px!important;
  line-height:1.05!important;
}

.header-fact a{
  font-size:1rem!important;
  line-height:1.08!important;
}

.header-fact span:not(.header-icon),
.header-fact small{
  font-size:.73rem!important;
  line-height:1.18!important;
}

.header-event{
  min-height:44px!important;
  padding:6px 10px!important;
  grid-template-columns:31px 1fr!important;
  gap:8px!important;
}

.header-event .header-icon{
  width:29px!important;
  height:29px!important;
  font-size:.75rem!important;
}

.header-event strong{
  font-size:.88rem!important;
  line-height:1.05!important;
  margin-bottom:1px!important;
}

.header-event small{
  font-size:.7rem!important;
  line-height:1.08!important;
}

/* Tablet: weißer Bereich ebenfalls kompakt, aber lesbar */
@media(max-width:900px){
  .header-main-grid{
    min-height:78px!important;
    padding-top:4px!important;
    padding-bottom:4px!important;
  }

  .brand-large{
    min-height:70px!important;
  }

  .brand-large .site-logo-img,
  .site-header .site-logo-img{
    height:68px!important;
    width:220px!important;
  }
}

/* Mobil bleibt der Kopf gestapelt und ausreichend bedienbar */
@media(max-width:680px){
  .header-main-grid{
    min-height:auto!important;
    padding:6px 14px!important;
    gap:7px!important;
  }

  .brand-large{
    min-height:78px!important;
  }

  .brand-large .site-logo-img,
  .site-header .site-logo-img{
    height:76px!important;
    width:235px!important;
  }
}


/* =========================================================
   SEITE FÜR VERANSTALTER
   ========================================================= */
.veranstalter-page main{background:#fbf4e9}
.organizer-hero{
  padding:76px 0 70px;
  color:#fff;
  background:
    linear-gradient(90deg,rgba(72,11,10,.96),rgba(108,15,14,.82));
}
.organizer-hero-grid{
  display:grid;
  grid-template-columns:minmax(0,1.25fr) minmax(280px,.65fr);
  gap:58px;
  align-items:end;
}
.organizer-hero h1{
  margin:8px 0 18px;
  max-width:800px;
  font-family:Georgia,"Times New Roman",serif;
  font-size:clamp(3rem,6vw,5.8rem);
  line-height:.92;
}
.organizer-lead{max-width:760px;font-size:1.1rem;line-height:1.75}
.organizer-actions{display:flex;align-items:center;gap:22px;flex-wrap:wrap;margin-top:28px}
.organizer-phone{font-size:1.15rem;font-weight:800;color:#fff;text-decoration:none}
.organizer-hero-note{
  padding:25px 27px;
  background:rgba(255,249,238,.94);
  color:#3d1d18;
  border-top:4px solid #d3a13f;
  box-shadow:0 16px 42px rgba(0,0,0,.18);
}
.organizer-hero-note strong{display:block;font:700 1.45rem Georgia,serif;margin-bottom:9px}
.organizer-hero-note p{margin:0;line-height:1.65}

.organizer-wagons{background:#fffaf2}
.wagon-profile{
  display:grid;
  grid-template-columns:minmax(300px,.8fr) minmax(0,1.2fr);
  overflow:hidden;
  margin-top:30px;
  background:#fff;
  border:1px solid rgba(127,7,12,.12);
  box-shadow:0 18px 50px rgba(73,33,21,.09);
}
.wagon-photo-placeholder{
  min-height:480px;
  padding:38px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  text-align:center;
  background:linear-gradient(145deg,#f2e4cf,#e5c99f);
  color:#63221e;
}
.wagon-photo-placeholder strong{margin-top:28px;font:700 1.35rem Georgia,serif}
.wagon-photo-placeholder small{margin-top:6px}
.wagon-outline{
  position:relative;
  width:min(320px,90%);
  height:170px;
  border:8px solid #8d1717;
  border-radius:10px 18px 6px 6px;
  background:#fff8ea;
}
.wagon-outline:before{
  content:"";
  position:absolute;
  left:-34px;
  bottom:22px;
  width:34px;
  height:72px;
  background:#8d1717;
  border-radius:10px 0 0 6px;
}
.wagon-window{
  position:absolute;left:42px;top:30px;width:135px;height:72px;
  border:6px solid #8d1717;background:#f4dfb8;
}
.wagon-wheel{position:absolute;bottom:-34px;width:48px;height:48px;border-radius:50%;background:#402722;border:8px solid #eee0c8}
.wagon-wheel-one{left:44px}.wagon-wheel-two{right:44px}
.wagon-data{padding:42px 44px}
.wagon-data h3{font:700 2.2rem Georgia,serif;margin:5px 0 25px;color:#631615}
.tech-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
  margin:0;
}
.tech-grid div{padding:16px 17px;background:#fbf4e9;border-left:3px solid #a70d12}
.tech-grid dt{font-weight:800;font-size:.78rem;text-transform:uppercase;letter-spacing:.05em;color:#7d4e43}
.tech-grid dd{margin:5px 0 0;font-weight:700;color:#4d211d}
.data-note{margin:22px 0 0;padding:15px 17px;background:#fff3d6;border:1px solid #e5c276;line-height:1.55}

.organizer-planning{background:#f5e6d0}
.organizer-info-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.organizer-info-card{padding:25px 22px;background:#fff;box-shadow:0 12px 30px rgba(73,33,21,.07)}
.organizer-info-card>span{display:inline-grid;place-items:center;width:38px;height:38px;border-radius:50%;background:#a70d12;color:#fff;font-weight:800}
.organizer-info-card h3{font:700 1.25rem Georgia,serif;margin:18px 0 9px;color:#651613}
.organizer-info-card p{margin:0;line-height:1.6}

.organizer-requirements{background:#fff}
.organizer-split{display:grid;grid-template-columns:minmax(260px,.65fr) minmax(0,1.35fr);gap:65px}
.organizer-split h2{font:700 clamp(2rem,4vw,3.5rem) Georgia,serif;line-height:1.02;color:#581311}
.requirements-list{display:grid;gap:0;border-top:1px solid #dfcbb1}
.requirements-list>div{display:grid;grid-template-columns:220px 1fr;gap:24px;padding:20px 0;border-bottom:1px solid #dfcbb1}
.requirements-list strong{color:#7f070c}
.requirements-list p{margin:0;line-height:1.55}

.organizer-booking{padding:65px 0;background:#761014;color:#fff}
.organizer-booking-inner{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(280px,.6fr);gap:55px;align-items:center}
.organizer-booking h2{font:700 clamp(2rem,4vw,3.5rem) Georgia,serif;line-height:1.05;margin:7px 0 15px}
.organizer-booking p{max-width:760px;line-height:1.7}
.organizer-contact-box{display:grid;gap:8px;padding:24px;background:#fff6e8;color:#4a211d}
.organizer-contact-box strong{font:700 1.4rem Georgia,serif}
.organizer-contact-box a:not(.btn){color:#791013;text-decoration:none;font-weight:700}
.organizer-contact-box .btn{margin-top:10px;text-align:center}

@media(max-width:1050px){
  .organizer-info-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:850px){
  .organizer-hero-grid,.wagon-profile,.organizer-split,.organizer-booking-inner{grid-template-columns:1fr}
  .organizer-hero{padding:55px 0}
  .wagon-photo-placeholder{min-height:360px}
  .requirements-list>div{grid-template-columns:1fr;gap:5px}
}
@media(max-width:600px){
  .organizer-info-grid,.tech-grid{grid-template-columns:1fr}
  .wagon-data{padding:28px 22px}
  .wagon-photo-placeholder{min-height:300px;padding:25px}
  .organizer-hero h1{font-size:2.9rem}
}

/* Kombinierte Seite Catering + Veranstalter */
.catering-organizer-intro{
  background:#7f070c!important;
  color:#fff;
  padding-top:54px!important;
  padding-bottom:48px!important;
}
.catering-organizer-intro .eyebrow{color:#e1b95f!important}
.catering-organizer-intro h2{
  color:#fff!important;
  margin:6px 0 12px;
  font:700 clamp(2rem,4vw,3.5rem) Georgia,"Times New Roman",serif;
}
.catering-organizer-intro p:last-child{
  max-width:900px;
  margin-bottom:0;
  line-height:1.7;
  font-size:1.05rem;
}


/* Drei Verkaufswagen – Größen-Platzhalter */
.wagon-list{
  display:grid;
  gap:32px;
  margin-top:30px;
}
.wagon-list .wagon-profile{margin-top:0}

/* Die Illustrationen zeigen bewusst drei unterschiedliche Wagenformate.
   Konkrete Maße werden erst mit den echten technischen Daten eingetragen. */
.wagon-outline-small{width:min(245px,82%);height:145px}
.wagon-outline-medium{width:min(300px,88%);height:165px}
.wagon-outline-large{width:min(355px,94%);height:185px}

.wagon-profile-small .wagon-photo-placeholder{min-height:390px}
.wagon-profile-medium .wagon-photo-placeholder{min-height:430px}
.wagon-profile-large .wagon-photo-placeholder{min-height:470px}

@media(max-width:850px){
  .wagon-profile-small .wagon-photo-placeholder,
  .wagon-profile-medium .wagon-photo-placeholder,
  .wagon-profile-large .wagon-photo-placeholder{min-height:320px}
}


/* =========================================================
   JOBS-SEITE – umgesetzt nach dem neuen Entwurf
   ========================================================= */
.jobs-page-new main{
  background:#fff;
}

.jobs-hero-new{
  position:relative;
  overflow:hidden;
  padding:52px 0 48px;
  background:
    linear-gradient(90deg,rgba(248,231,211,.97) 0%,rgba(248,231,211,.92) 48%,rgba(248,231,211,.62) 100%);
  border-bottom:1px solid rgba(127,7,12,.12);
}
.jobs-hero-new:after{
  content:"";
  position:absolute;
  inset:0 0 0 auto;
  width:46%;
  background:radial-gradient(circle at 70% 40%,rgba(255,255,255,.18),transparent 58%);
  pointer-events:none;
}
.jobs-hero-new-inner{
  position:relative;
  z-index:1;
}
.jobs-kicker{
  margin:0;
  color:#a70d12;
  font-family:Impact,"Arial Narrow",sans-serif;
  font-size:clamp(3.8rem,8vw,7rem);
  line-height:.85;
  text-transform:uppercase;
  letter-spacing:.01em;
}
.jobs-hero-new h1{
  margin:7px 0 18px;
  max-width:780px;
  color:#351f1c;
  font-family:Georgia,"Times New Roman",serif;
  font-size:clamp(2.4rem,5vw,4.9rem);
  line-height:1;
  font-style:italic;
}
.jobs-hero-sub{
  margin:0;
  max-width:760px;
  color:#2d2928;
  font-size:clamp(1.1rem,2vw,1.55rem);
  font-weight:700;
}
.jobs-type{
  display:inline-block;
  margin:12px 0 24px;
  color:#2b2827;
  font-size:clamp(1.45rem,2.8vw,2.25rem);
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.02em;
}
.jobs-type strong{
  color:#a70d12;
}

.jobs-main-section{
  padding:46px 0 52px;
  background:#fff;
}
.jobs-main-grid{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(350px,.86fr);
  gap:46px;
  align-items:start;
}
.jobs-intro{
  margin:0 0 18px;
  max-width:780px;
  color:#352d29;
  font-size:1rem;
  line-height:1.72;
}
.jobs-columns{
  display:grid;
  grid-template-columns:1fr;
  gap:30px;
  margin-top:38px;
}
.jobs-list-block h2{
  display:inline-block;
  margin:0 0 18px;
  padding-bottom:8px;
  border-bottom:2px solid #b41618;
  color:#9d0f12;
  font-family:Impact,"Arial Narrow",sans-serif;
  font-size:clamp(1.55rem,2.5vw,2.1rem);
  font-weight:500;
  text-transform:uppercase;
  letter-spacing:.015em;
}
.jobs-checklist{
  display:grid;
  gap:14px;
  margin:0;
  padding:0;
  list-style:none;
}
.jobs-checklist li{
  position:relative;
  padding-left:38px;
  color:#3b302c;
  font-size:1rem;
  line-height:1.45;
}
.jobs-checklist li:before{
  content:"✓";
  position:absolute;
  left:0;
  top:-2px;
  display:grid;
  place-items:center;
  width:23px;
  height:23px;
  border:2px solid #a70d12;
  border-radius:50%;
  color:#a70d12;
  font-size:.82rem;
  font-weight:900;
}
.jobs-benefits li:before{
  content:"♡";
  border:0;
  border-radius:0;
  font-size:1.55rem;
  line-height:1;
}

.jobs-contact-panel{
  display:grid;
  grid-template-columns:76px 1fr;
  gap:19px;
  align-items:center;
  margin-top:34px;
  padding:20px 22px;
  border:2px dashed #b41618;
  border-radius:16px;
  background:#fff8ef;
}
.jobs-contact-icon{
  display:grid;
  place-items:center;
  width:66px;
  height:66px;
  border-radius:50%;
  background:#ad1216;
  color:#fff;
  font-size:1.75rem;
}
.jobs-contact-label{
  margin:0 0 3px;
  color:#4a3630;
  font-size:.84rem;
  font-weight:800;
  text-transform:uppercase;
}
.jobs-contact-phone{
  display:block;
  color:#b41618;
  font-family:Impact,"Arial Narrow",sans-serif;
  font-size:clamp(1.7rem,3vw,2.55rem);
  letter-spacing:.03em;
  text-decoration:none;
}
.jobs-contact-note{
  margin:4px 0 0;
  color:#4d3b35;
  line-height:1.45;
}

.jobs-poster-card{
  position:sticky;
  top:24px;
  padding:12px;
  border:1px solid #e3c99d;
  background:#fffaf2;
  box-shadow:0 18px 42px rgba(74,30,20,.12);
}
.jobs-poster-card img{
  display:block;
  width:100%;
  height:auto;
}

.jobs-why{
  padding:34px 0;
  background:linear-gradient(90deg,#fffaf3,#f6e6d2);
  border-top:1px solid #ead6b9;
  border-bottom:1px solid #ead6b9;
}
.jobs-why-inner{
  display:grid;
  grid-template-columns:80px 1fr;
  gap:24px;
  align-items:center;
}
.jobs-heart{
  color:#a70d12;
  font-size:5.5rem;
  line-height:1;
}
.jobs-why h2{
  margin:4px 0 8px;
  color:#8f1013;
  font-family:Impact,"Arial Narrow",sans-serif;
  font-size:clamp(1.8rem,3.4vw,2.8rem);
  font-weight:500;
  text-transform:uppercase;
}
.jobs-why p:last-child{
  max-width:900px;
  margin:0;
  line-height:1.65;
}

.jobs-final-cta{
  padding:42px 0;
  background:#7f070c;
  color:#fff;
}
.jobs-final-cta-inner{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:34px;
}
.jobs-final-cta h2{
  margin:4px 0 8px;
  color:#fff;
  font-family:Georgia,"Times New Roman",serif;
  font-size:clamp(2rem,4vw,3.3rem);
}
.jobs-final-cta p{
  margin:0;
}
.jobs-final-cta .eyebrow{
  color:#e3bb64!important;
}

@media(max-width:950px){
  .jobs-main-grid{
    grid-template-columns:1fr;
  }
  .jobs-poster-card{
    position:static;
    max-width:620px;
    margin:0 auto;
  }
}
@media(max-width:680px){
  .jobs-hero-new{
    padding:40px 0 36px;
  }
  .jobs-main-section{
    padding:34px 0 40px;
  }
  .jobs-contact-panel{
    grid-template-columns:1fr;
  }
  .jobs-contact-icon{
    width:54px;
    height:54px;
  }
  .jobs-why-inner{
    grid-template-columns:1fr;
    gap:8px;
  }
  .jobs-heart{
    font-size:4rem;
  }
  .jobs-final-cta-inner{
    align-items:flex-start;
    flex-direction:column;
  }
}


/* =========================================================
   GEMEINSAMER KOPF + FUSS WIE IN DER GEZEIGTEN VORLAGE
   ========================================================= */

/* --- Kopfbereich --- */
.photo-frame-layout .site-header{
  position:relative;
  z-index:20;
  background:#fff;
  box-shadow:none!important;
}

.photo-frame-layout .header-main{
  background:#fff!important;
  border:0!important;
}

.photo-frame-layout .header-main-grid{
  grid-template-columns:250px minmax(205px,.92fr) minmax(205px,.92fr) 255px!important;
  min-height:128px!important;
  gap:28px!important;
  padding-top:10px!important;
  padding-bottom:10px!important;
  align-items:center!important;
}

/* Das Logo sitzt – wie auf der Vorlage – groß links und reicht optisch
   dicht an die rote Navigationsleiste. */
.photo-frame-layout .brand-large{
  position:relative;
  min-height:106px!important;
  padding:0!important;
  border:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  overflow:visible!important;
}

.photo-frame-layout .brand-large .site-logo-img,
.photo-frame-layout .site-header .site-logo-img{
  position:relative;
  z-index:4;
  width:215px!important;
  height:118px!important;
  max-width:none!important;
  object-fit:contain!important;
}

.photo-frame-layout .header-fact{
  position:relative;
  grid-template-columns:45px 1fr!important;
  gap:13px!important;
  min-height:70px;
  align-items:center!important;
  padding-right:24px;
}

.photo-frame-layout .header-fact:not(:nth-of-type(3)):after{
  content:"";
  position:absolute;
  top:10px;
  right:0;
  width:1px;
  height:52px;
  background:#e5d7ca;
}

.photo-frame-layout .header-icon{
  width:40px!important;
  height:40px!important;
  border:2px solid #bd171b!important;
  border-radius:50%!important;
  background:#fff!important;
  color:#bd171b!important;
  font-size:1rem!important;
}

.photo-frame-layout .header-fact strong{
  display:block;
  margin:0 0 4px!important;
  color:#292421;
  font-size:.92rem!important;
  line-height:1.1!important;
}

.photo-frame-layout .header-fact a{
  display:block;
  color:#191715!important;
  font-size:1.12rem!important;
  font-weight:800;
  line-height:1.15!important;
  text-decoration:none;
}

.photo-frame-layout .header-fact span:not(.header-icon),
.photo-frame-layout .header-fact small{
  display:block;
  color:#3f3733!important;
  font-size:.8rem!important;
  line-height:1.32!important;
}

.photo-frame-layout .header-event{
  min-height:72px!important;
  padding:10px 12px!important;
  grid-template-columns:42px 1fr!important;
  gap:12px!important;
  border:0!important;
  border-radius:0!important;
  background:#fff!important;
  color:#24201d!important;
  box-shadow:none!important;
}

.photo-frame-layout .header-event:hover{
  background:#fff7f1!important;
}

.photo-frame-layout .header-event .header-icon{
  width:39px!important;
  height:39px!important;
  border-radius:5px!important;
  background:#fff!important;
  color:#b81014!important;
}

.photo-frame-layout .header-event strong{
  color:#292421!important;
  font-size:.94rem!important;
  line-height:1.1!important;
}

.photo-frame-layout .header-event small{
  color:#292421!important;
  font-size:.76rem!important;
  line-height:1.2!important;
  text-decoration:underline;
  text-underline-offset:3px;
}

/* rote, geradlinige Navigation */
.photo-frame-layout .nav-band{
  background:linear-gradient(180deg,#b80d12 0%,#9f090d 100%)!important;
  border:0!important;
  box-shadow:none!important;
}

.photo-frame-layout .nav-band-inner{
  min-height:54px!important;
}

.photo-frame-layout #nav{
  justify-content:center!important;
  gap:0!important;
}

.photo-frame-layout #nav a{
  position:relative;
  padding:18px 16px 16px!important;
  color:#fff!important;
  font-size:.88rem!important;
  font-weight:750!important;
  line-height:1!important;
  text-transform:none!important;
  border:0!important;
}

.photo-frame-layout #nav a:hover,
.photo-frame-layout #nav a[aria-current="page"]{
  background:rgba(92,0,4,.26)!important;
  color:#fff!important;
}

.photo-frame-layout #nav a[aria-current="page"]:after{
  content:"";
  position:absolute;
  left:18%;
  right:18%;
  bottom:6px;
  height:2px;
  background:#e8c06c;
}

/* --- Footer --- */
.photo-footer{
  margin-top:0;
  background:linear-gradient(135deg,#a70b11 0%,#c01318 58%,#8c070c 100%)!important;
  color:#fff!important;
  border:0!important;
}

.photo-footer .photo-footer-grid{
  display:grid;
  grid-template-columns:1fr 1.45fr .9fr 1fr;
  gap:44px;
  align-items:start;
  padding-top:35px;
  padding-bottom:28px;
}

.photo-footer strong{
  display:block;
  margin-bottom:12px;
  color:#fff!important;
  font-size:1rem;
}

.photo-footer p{
  margin:0 0 10px;
  color:#fff!important;
  font-size:.88rem;
  line-height:1.55;
}

.photo-footer a{
  color:#fff!important;
  text-decoration:none;
}

.photo-footer a:hover{
  text-decoration:underline;
  text-underline-offset:3px;
}

.photo-footer-linkcols{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:20px;
}

.photo-footer-linkcols>div{
  display:grid;
  gap:5px;
}

.photo-footer-linkcols a{
  font-size:.86rem;
}

.photo-footer-social p{
  display:flex;
  align-items:center;
  gap:8px;
  margin-bottom:8px;
}

.social-mark{
  display:inline-grid;
  place-items:center;
  width:20px;
  height:20px;
  border-radius:50%;
  background:#fff;
  color:#a70b11;
  font-weight:900;
  font-size:.82rem;
}

.photo-footer-legal{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  margin-top:16px;
  font-size:.75rem;
  opacity:.9;
}

.photo-footer-logo{
  display:flex;
  justify-content:flex-end;
  align-items:center;
  min-height:120px;
}

.photo-footer-logo img{
  display:block;
  width:190px;
  height:120px;
  object-fit:contain;
  filter:brightness(1.05);
  background:#fff;
  border-radius:4px;
  padding:6px;
}

.photo-footer-bottom{
  background:rgba(83,0,4,.28);
  border-top:1px solid rgba(255,255,255,.13);
  color:#fff;
  text-align:center;
  font-size:.76rem;
}

.photo-footer-bottom .wrap{
  padding-top:8px;
  padding-bottom:8px;
}

/* Mobile */
@media(max-width:1100px){
  .photo-frame-layout .header-main-grid{
    grid-template-columns:210px 1fr 1fr!important;
    min-height:118px!important;
  }
  .photo-frame-layout .header-event{
    grid-column:2/4!important;
    max-width:340px!important;
    min-height:48px!important;
  }
  .photo-frame-layout .brand-large .site-logo-img,
  .photo-frame-layout .site-header .site-logo-img{
    width:190px!important;
    height:105px!important;
  }
  .photo-footer .photo-footer-grid{
    grid-template-columns:1fr 1fr;
  }
  .photo-footer-logo{
    justify-content:flex-start;
  }
}

@media(max-width:760px){
  .photo-frame-layout .header-main-grid{
    grid-template-columns:1fr 1fr!important;
    min-height:auto!important;
    gap:10px 16px!important;
    padding-top:8px!important;
    padding-bottom:8px!important;
  }
  .photo-frame-layout .brand-large{
    grid-column:1/3!important;
    min-height:86px!important;
    justify-content:center!important;
  }
  .photo-frame-layout .brand-large .site-logo-img,
  .photo-frame-layout .site-header .site-logo-img{
    width:210px!important;
    height:84px!important;
  }
  .photo-frame-layout .header-fact{
    min-height:58px;
    padding-right:0;
  }
  .photo-frame-layout .header-fact:after{
    display:none!important;
  }
  .photo-frame-layout .header-event{
    grid-column:1/3!important;
    width:100%!important;
    max-width:none!important;
    justify-content:center!important;
    border-top:1px solid #eadfd5!important;
  }
  .photo-frame-layout .menu-btn{
    color:#fff!important;
  }
  .photo-frame-layout #nav{
    justify-content:flex-start!important;
  }
  .photo-frame-layout #nav a{
    padding:13px 15px!important;
  }
  .photo-footer .photo-footer-grid{
    grid-template-columns:1fr!important;
    gap:24px;
  }
  .photo-footer-linkcols{
    grid-template-columns:1fr 1fr;
  }
  .photo-footer-logo{
    justify-content:flex-start;
    min-height:auto;
  }
  .photo-footer-logo img{
    width:170px;
    height:105px;
  }
}


/* =========================================================
   LOGO-POSITION WIE AUF DER JOBS-VORLAGE
   - Logo deutlich größer
   - links oben im weißen Kopfbereich
   - ragt nach unten über die rote Navigation
   - übrige Kopfinhalte beginnen weiter rechts
   ========================================================= */

.photo-frame-layout .header-main{
  overflow:visible!important;
}

.photo-frame-layout .header-main-grid{
  position:relative!important;
  grid-template-columns:245px minmax(205px,.92fr) minmax(205px,.92fr) 255px!important;
  min-height:126px!important;
  padding-top:8px!important;
  padding-bottom:8px!important;
  overflow:visible!important;
}

/* Logo-Zelle selbst nimmt nur den linken Bereich ein. */
.photo-frame-layout .brand-large{
  position:relative!important;
  z-index:40!important;
  align-self:stretch!important;
  min-height:110px!important;
  overflow:visible!important;
  display:block!important;
}

/* Logo wie in der Vorlage:
   oben links, groß und mit Figur über der roten Leiste. */
.photo-frame-layout .brand-large .site-logo-img,
.photo-frame-layout .site-header .site-logo-img{
  position:absolute!important;
  left:-18px!important;
  top:-7px!important;
  z-index:45!important;
  width:255px!important;
  height:166px!important;
  max-width:none!important;
  object-fit:contain!important;
  object-position:left top!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
}

/* Die rote Navigation bleibt direkt unter dem weißen Kopf,
   das Logo darf darüber liegen. */
.photo-frame-layout .nav-band{
  position:relative!important;
  z-index:20!important;
  overflow:visible!important;
}

.photo-frame-layout .nav-band-inner{
  position:relative!important;
  z-index:21!important;
}

/* Links etwas Luft, damit die Navigation optisch wie auf der Vorlage
   erst rechts neben dem überstehenden Logo beginnt. */
@media(min-width:1101px){
  .photo-frame-layout .nav-band-inner{
    padding-left:205px!important;
  }
  .photo-frame-layout #nav{
    justify-content:flex-start!important;
  }
}

/* Tablet */
@media(max-width:1100px) and (min-width:761px){
  .photo-frame-layout .header-main-grid{
    grid-template-columns:215px 1fr 1fr!important;
    min-height:116px!important;
  }

  .photo-frame-layout .brand-large{
    min-height:102px!important;
  }

  .photo-frame-layout .brand-large .site-logo-img,
  .photo-frame-layout .site-header .site-logo-img{
    left:-8px!important;
    top:-4px!important;
    width:220px!important;
    height:148px!important;
  }
}

/* Mobil: nicht mehr über die Navigation legen, damit das Menü bedienbar bleibt. */
@media(max-width:760px){
  .photo-frame-layout .brand-large{
    position:relative!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-height:105px!important;
  }

  .photo-frame-layout .brand-large .site-logo-img,
  .photo-frame-layout .site-header .site-logo-img{
    position:relative!important;
    left:auto!important;
    top:auto!important;
    width:235px!important;
    height:104px!important;
    object-position:center!important;
  }

  .photo-frame-layout .nav-band-inner{
    padding-left:inherit!important;
  }
}


/* =========================================================
   HEADER / LOGO – EXAKT AN DER GEZEIGTEN VORLAGE AUSGERICHTET
   ========================================================= */

.photo-frame-layout .site-header{
  background:#fff!important;
  box-shadow:none!important;
  border:0!important;
  overflow:visible!important;
}

.photo-frame-layout .header-main{
  position:relative!important;
  z-index:30!important;
  min-height:142px!important;
  background:#fff!important;
  overflow:visible!important;
  border:0!important;
}

.photo-frame-layout .header-main .wrap{
  max-width:1180px!important;
}

/* Verhältnis der vier Kopfbereiche wie in der Vorlage */
.photo-frame-layout .header-main-grid{
  position:relative!important;
  display:grid!important;
  grid-template-columns:250px 1fr 1fr 1.08fr!important;
  gap:0!important;
  align-items:center!important;
  min-height:142px!important;
  padding:0 20px!important;
  overflow:visible!important;
}

/* LOGO: links oben, mit der Bäckerfigur über die rote Leiste hinaus */
.photo-frame-layout .brand-large{
  position:relative!important;
  z-index:80!important;
  display:block!important;
  width:250px!important;
  height:142px!important;
  min-height:142px!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  overflow:visible!important;
  background:#fff!important;
}

.photo-frame-layout .brand-large .site-logo-img,
.photo-frame-layout .site-header .site-logo-img{
  position:absolute!important;
  z-index:90!important;
  left:0!important;
  top:13px!important;
  width:218px!important;
  height:auto!important;
  max-width:none!important;
  object-fit:contain!important;
  object-position:left top!important;
  display:block!important;
  background:#fff!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
}

/* Kopf-Infos: weiß, gerade, mit senkrechten Trennlinien */
.photo-frame-layout .header-fact,
.photo-frame-layout .header-event{
  position:relative!important;
  min-height:70px!important;
  height:70px!important;
  margin:0!important;
  padding:0 26px!important;
  display:grid!important;
  align-items:center!important;
  background:#fff!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  color:#1e1b19!important;
}

.photo-frame-layout .header-fact{
  grid-template-columns:40px 1fr!important;
  gap:14px!important;
}

.photo-frame-layout .header-fact:after,
.photo-frame-layout .header-event:before{
  content:"";
  position:absolute;
  top:8px;
  width:1px;
  height:54px;
  background:#e4d6c9;
}

.photo-frame-layout .header-fact:after{right:0}
.photo-frame-layout .header-event:before{left:0}

.photo-frame-layout .header-icon{
  width:34px!important;
  height:40px!important;
  display:grid!important;
  place-items:center!important;
  color:#c31518!important;
  background:#fff!important;
  border:0!important;
  border-radius:0!important;
  font-size:1.35rem!important;
  font-weight:400!important;
}

.photo-frame-layout .header-fact strong,
.photo-frame-layout .header-event strong{
  display:block!important;
  margin:0 0 7px!important;
  color:#1e1b19!important;
  font-size:.92rem!important;
  font-weight:800!important;
  line-height:1!important;
}

.photo-frame-layout .header-fact a{
  display:block!important;
  margin:0!important;
  color:#111!important;
  font-size:1rem!important;
  font-weight:800!important;
  line-height:1.18!important;
  text-decoration:none!important;
}

.photo-frame-layout .header-fact span:not(.header-icon),
.photo-frame-layout .header-fact small{
  display:block!important;
  margin:2px 0 0!important;
  color:#222!important;
  font-size:.79rem!important;
  line-height:1.25!important;
}

.photo-frame-layout .header-event{
  grid-template-columns:42px 1fr!important;
  gap:14px!important;
}

.photo-frame-layout .header-event .header-icon{
  width:38px!important;
  height:38px!important;
  border:2px solid #c31518!important;
  border-radius:4px!important;
  font-size:1rem!important;
}

.photo-frame-layout .header-event small{
  display:block!important;
  margin:0!important;
  color:#111!important;
  font-size:.78rem!important;
  line-height:1.2!important;
  text-decoration:underline!important;
  text-underline-offset:3px!important;
}

/* ROTE NAVIGATION: genau unter dem weißen Kopf */
.photo-frame-layout .nav-band{
  position:relative!important;
  z-index:40!important;
  height:46px!important;
  min-height:46px!important;
  background:#ad0a0f!important;
  border:0!important;
  box-shadow:none!important;
  overflow:visible!important;
}

.photo-frame-layout .nav-band-inner{
  position:relative!important;
  z-index:41!important;
  min-height:46px!important;
  height:46px!important;
  max-width:1180px!important;
  padding:0 20px 0 228px!important;
  overflow:visible!important;
}

.photo-frame-layout #nav{
  height:46px!important;
  display:flex!important;
  align-items:stretch!important;
  justify-content:flex-start!important;
  gap:0!important;
  white-space:nowrap!important;
}

.photo-frame-layout #nav a{
  display:flex!important;
  align-items:center!important;
  padding:0 18px!important;
  min-height:46px!important;
  color:#fff!important;
  font-size:.84rem!important;
  font-weight:800!important;
  line-height:1!important;
  text-decoration:none!important;
  background:transparent!important;
  border:0!important;
}

.photo-frame-layout #nav a:hover,
.photo-frame-layout #nav a[aria-current="page"]{
  background:#8c070b!important;
}

.photo-frame-layout #nav a[aria-current="page"]:after{
  display:none!important;
}

/* Logofigur liegt sichtbar vor der roten Navigation */
.photo-frame-layout .brand-large:after{
  content:"";
  position:absolute;
  z-index:-1;
  left:-12px;
  right:0;
  top:0;
  bottom:-45px;
  background:#fff;
}

/* Footer-Logo nicht vom Header-Zuschnitt beeinflussen */
.photo-footer-logo img{
  position:static!important;
}

/* Tablet */
@media(max-width:1000px) and (min-width:761px){
  .photo-frame-layout .header-main-grid{
    grid-template-columns:210px 1fr 1fr!important;
    min-height:132px!important;
  }

  .photo-frame-layout .header-main{
    min-height:132px!important;
  }

  .photo-frame-layout .brand-large{
    width:210px!important;
    height:132px!important;
    min-height:132px!important;
  }

  .photo-frame-layout .brand-large .site-logo-img,
  .photo-frame-layout .site-header .site-logo-img{
    left:0!important;
    top:12px!important;
    width:188px!important;
  }

  .photo-frame-layout .header-event{
    grid-column:2/4!important;
    height:44px!important;
    min-height:44px!important;
    padding-left:20px!important;
  }

  .photo-frame-layout .nav-band-inner{
    padding-left:190px!important;
  }

  .photo-frame-layout #nav a{
    padding:0 10px!important;
    font-size:.76rem!important;
  }
}

/* Mobil: Logo kompakt innerhalb des weißen Bereichs */
@media(max-width:760px){
  .photo-frame-layout .header-main{
    min-height:auto!important;
  }

  .photo-frame-layout .header-main-grid{
    grid-template-columns:1fr 1fr!important;
    min-height:auto!important;
    padding:8px 14px!important;
    gap:7px 12px!important;
  }

  .photo-frame-layout .brand-large{
    grid-column:1/3!important;
    width:100%!important;
    height:100px!important;
    min-height:100px!important;
    display:flex!important;
    justify-content:center!important;
    align-items:center!important;
  }

  .photo-frame-layout .brand-large:after{
    display:none!important;
  }

  .photo-frame-layout .brand-large .site-logo-img,
  .photo-frame-layout .site-header .site-logo-img{
    position:relative!important;
    left:auto!important;
    top:auto!important;
    width:210px!important;
    max-height:96px!important;
  }

  .photo-frame-layout .header-fact{
    min-height:58px!important;
    height:auto!important;
    padding:4px 5px!important;
  }

  .photo-frame-layout .header-fact:after,
  .photo-frame-layout .header-event:before{
    display:none!important;
  }

  .photo-frame-layout .header-event{
    grid-column:1/3!important;
    min-height:48px!important;
    height:auto!important;
    padding:6px 10px!important;
    border-top:1px solid #eadfd5!important;
  }

  .photo-frame-layout .nav-band,
  .photo-frame-layout .nav-band-inner{
    height:auto!important;
    min-height:48px!important;
  }

  .photo-frame-layout .nav-band-inner{
    padding:0 14px!important;
  }

  .photo-frame-layout #nav{
    height:auto!important;
  }
}


/* =========================================================
   HEADER-LOGO KORREKTUR
   Referenz: Logo links im weißen Kopf, Figur überlappt die rote
   Navigationsleiste; hinter der Figur bleibt ROT sichtbar.
   ========================================================= */

.photo-frame-layout .site-header,
.photo-frame-layout .header-main,
.photo-frame-layout .header-main-grid,
.photo-frame-layout .nav-band{
  overflow:visible!important;
}

/* Weißer Kopfbereich wie in der Referenz */
.photo-frame-layout .header-main{
  min-height:143px!important;
  height:143px!important;
  background:#fff!important;
}

.photo-frame-layout .header-main-grid{
  min-height:143px!important;
  height:143px!important;
  grid-template-columns:245px 1fr 1fr 1.05fr!important;
  padding:0 28px!important;
  align-items:center!important;
}

/* Logo-Zelle */
.photo-frame-layout .brand-large{
  position:relative!important;
  z-index:100!important;
  width:245px!important;
  height:143px!important;
  min-height:143px!important;
  padding:0!important;
  margin:0!important;
  background:transparent!important;
  border:0!important;
  overflow:visible!important;
}

/* Exakte optische Position analog zur Vorlage */
.photo-frame-layout .brand-large .site-logo-img,
.photo-frame-layout .site-header .site-logo-img{
  position:absolute!important;
  z-index:110!important;
  left:4px!important;
  top:10px!important;
  width:205px!important;
  height:auto!important;
  max-width:none!important;
  display:block!important;
  object-fit:contain!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}

/* Alte weiße Überlagerung vollständig entfernen */
.photo-frame-layout .brand-large:after{
  content:none!important;
  display:none!important;
}

/* Rote Navigation direkt unter dem weißen Kopf */
.photo-frame-layout .nav-band{
  z-index:50!important;
  height:46px!important;
  min-height:46px!important;
  background:#ad0a0f!important;
}

/* Navigation beginnt rechts neben der Figur; unter der Figur bleibt Rot sichtbar */
.photo-frame-layout .nav-band-inner{
  max-width:1180px!important;
  height:46px!important;
  min-height:46px!important;
  padding:0 20px 0 225px!important;
}

/* Logo liegt vor dem roten Balken */
.photo-frame-layout .brand-large{
  pointer-events:auto!important;
}

/* Kontaktblöcke proportional zur Vorlage */
.photo-frame-layout .header-fact,
.photo-frame-layout .header-event{
  min-height:72px!important;
  height:72px!important;
}

@media(max-width:1000px) and (min-width:761px){
  .photo-frame-layout .header-main,
  .photo-frame-layout .header-main-grid{
    height:132px!important;
    min-height:132px!important;
  }

  .photo-frame-layout .header-main-grid{
    grid-template-columns:210px 1fr 1fr!important;
    padding-left:18px!important;
    padding-right:18px!important;
  }

  .photo-frame-layout .brand-large{
    width:210px!important;
    height:132px!important;
    min-height:132px!important;
  }

  .photo-frame-layout .brand-large .site-logo-img,
  .photo-frame-layout .site-header .site-logo-img{
    left:2px!important;
    top:9px!important;
    width:182px!important;
  }

  .photo-frame-layout .nav-band-inner{
    padding-left:194px!important;
  }
}

@media(max-width:760px){
  .photo-frame-layout .header-main,
  .photo-frame-layout .header-main-grid{
    height:auto!important;
    min-height:auto!important;
  }

  .photo-frame-layout .brand-large{
    width:100%!important;
    height:102px!important;
    min-height:102px!important;
  }

  .photo-frame-layout .brand-large .site-logo-img,
  .photo-frame-layout .site-header .site-logo-img{
    position:relative!important;
    left:auto!important;
    top:auto!important;
    width:180px!important;
    height:auto!important;
  }

  .photo-frame-layout .nav-band-inner{
    padding-left:14px!important;
  }
}


/* JOBS-KORREKTUR-20260902 */

/* Die oberste Überschrift „Jobs“ nutzt exakt dieselbe
   Script-Schriftfamilie wie „Tradition, die man schmeckt!“ auf der Startseite. */
.jobs-hero-new .jobs-kicker{
  font-family:"Brush Script MT","Segoe Script",cursive !important;
  font-size:clamp(3rem,6vw,5.6rem) !important;
  font-weight:400 !important;
  font-style:normal !important;
  text-transform:none !important;
  letter-spacing:0 !important;
  line-height:1.05 !important;
}

/* Das H1 darunter bleibt unverändert. */
.jobs-phone-icon{
  width:21px;
  height:21px;
  display:block;
  flex:0 0 21px;
  color:currentColor;
}

.jobs-contact-phone,
.jobs-call-btn{
  display:inline-flex !important;
  align-items:center !important;
  gap:9px !important;
}

.jobs-call-btn .jobs-phone-icon{
  width:19px;
  height:19px;
  flex-basis:19px;
}


/* JOBS-KORREKTUR-20260902-2
   Auch „Komm in unser Team!“ in derselben Script-Schrift
   wie „Tradition, die man schmeckt!“ und die Überschrift „Jobs“. */
.jobs-hero-new h1{
  font-family:"Brush Script MT","Segoe Script",cursive !important;
  font-weight:400 !important;
  font-style:normal !important;
  text-transform:none !important;
  letter-spacing:0 !important;
  line-height:1.05 !important;
}


/* JOBS-BLOCKSATZ-20260902
   Fließtexte auf der Jobs-Seite im Blocksatz.
   Überschriften, Buttons und kurze Labels bleiben unverändert. */
.jobs-hero-new .jobs-lead,
.jobs-hero-new .jobs-copy p,
.jobs-page .jobs-copy p,
.jobs-page .jobs-text p,
.jobs-page .jobs-content p,
.jobs-page .jobs-card p,
.jobs-page .jobs-details p,
.jobs-page .jobs-section p {
  text-align: justify !important;
  text-justify: inter-word;
}


/* JOBS-MIDIJOB-ABSTAND-20260902
   Etwas mehr Abstand zwischen dem Midijob-Inhalt und „Jetzt melden“. */
.jobs-midijob-apply-gap{
  margin-top: 1.35rem !important;
}


/* JOBS-SCRIPT-UEBERSCHRIFTEN-20260902
   Gewünschte Zwischenüberschriften in derselben Schriftart
   wie „Komm in unser Team!“. */
.jobs-script-heading{
  font-family:"Brush Script MT","Segoe Script",cursive !important;
  font-weight:400 !important;
  font-style:normal !important;
  text-transform:none !important;
  letter-spacing:0 !important;
  line-height:1.08 !important;
}


/* JOBS-TEAMTEXT-BREITER-20260903
   Mehr nutzbare Breite für den Team-Absatz, damit „herzliches Miteinander“
   auf Desktop gemeinsam in einer Zeile stehen kann.
*/
@media (min-width: 901px){
  .jobs-team-text-wide{
    width:calc(100% + 90px) !important;
    max-width:calc(100% + 90px) !important;
  }
}


/* JOBS-KICKER-WIE-UEBER-UNS-20260904 */
.jobs-hero-new .jobs-kicker{
  font-family:inherit !important;
  font-size:.78rem !important;
  font-weight:900 !important;
  font-style:normal !important;
  text-transform:uppercase !important;
  letter-spacing:.13em !important;
  line-height:normal !important;
}


/* JOBS-KICKER-STRICH-UND-FARBE-20260904
   „Jobs“ wie die Eyebrow-Gestaltung der übrigen Seiten:
   gleicher Strich davor und gleiche rote Schriftfarbe wie auf Veranstaltungen.
*/
.jobs-hero-new .jobs-kicker{
  display:inline-flex !important;
  align-items:center !important;
  gap:9px !important;
  color:var(--red) !important;
}

.jobs-hero-new .jobs-kicker::before{
  content:"" !important;
  display:block !important;
  width:28px !important;
  height:2px !important;
  flex:0 0 28px !important;
  background:currentColor !important;
  border-radius:99px !important;
  opacity:.75 !important;
}


/* INSTAGRAM-OFFICIAL-ICON-20260904 */
a[href*="instagram.com"] .instagram-official-icon{
  width:1.15em !important;
  height:1.15em !important;
  flex:0 0 1.15em !important;
  display:inline-block !important;
  vertical-align:-0.18em !important;
}


/* FACEBOOK-OFFICIAL-ICON-20260904 */
a[href*="facebook.com"] .facebook-official-icon{
  width:1.15em !important;
  height:1.15em !important;
  flex:0 0 1.15em !important;
  display:inline-block !important;
  vertical-align:-0.18em !important;
}


/* JOBS-KICKER-STRICH-FARBE-WIE-ANDERE-SEITEN-20260904 */
.jobs-hero-new .jobs-kicker::before{
  background:var(--ink) !important;
  opacity:1 !important;
}


/* KONTAKT-BUEROADRESSE-ROHLINGE-20260904 */
.contact-pickup-notice{
  padding:0 0 2.5rem;
}
.contact-pickup-notice-box{
  border-left:4px solid var(--red);
  background:#fff7f3;
  padding:1.15rem 1.3rem;
  border-radius:0 10px 10px 0;
}
.contact-pickup-notice-box h2{
  margin:0 0 .45rem;
  font-size:1.1rem;
}
.contact-pickup-notice-box p{
  margin:0;
}


/* KONTAKT-ABHOLHINWEIS-AUFFAELLIG-20260904 */
.contact-pickup-notice-box{
  border:3px solid var(--red) !important;
  border-left-width:7px !important;
  background:#fff3f3 !important;
  padding:1.3rem 1.4rem !important;
  border-radius:12px !important;
  box-shadow:0 8px 22px rgba(127,7,12,.12) !important;
}

.contact-pickup-notice-box h2{
  color:var(--red) !important;
  font-weight:900 !important;
}

.contact-pickup-notice-box p{
  color:#7f070c !important;
  font-weight:600 !important;
}

.contact-pickup-notice-box p strong{
  color:#a70b11 !important;
  font-weight:900 !important;
}

.contact-pickup-order-note{
  margin-top:.85rem !important;
  padding-top:.85rem !important;
  border-top:2px solid rgba(167,11,17,.22) !important;
}


/* KONTAKT-ABHOLUNG-NUR-OEFFNUNGSZEITEN-20260904 */
.contact-pickup-hours-note{
  margin-top:.85rem !important;
  padding-top:.85rem !important;
  border-top:2px solid rgba(167,11,17,.22) !important;
}
.contact-pickup-hours-note a{
  color:var(--red) !important;
  font-weight:900 !important;
  text-decoration:underline !important;
  text-underline-offset:2px !important;
}


/* AKTUELLES-ZUSAETZLICHE-NEWSFELDER-20260904 */
.news-card-placeholder{
  border-style:dashed !important;
  opacity:.88;
}
.news-card-placeholder .meta{
  color:var(--red) !important;
}

/* AKTUELLES-TITEL-EINZEILIG-20260904 */
.aktuelles-title-nowrap{white-space:nowrap !important;}
@media (max-width:640px){.aktuelles-title-nowrap{white-space:normal !important;}}


/* VERANSTALTUNGEN-KOPF-ANGLEICHUNG-20260905 */
.veranstaltungen-head{
  display:block !important;
}
.veranstaltungen-eyebrow{
  color:var(--red) !important;
}
.veranstaltungen-question-nowrap,
.veranstaltungen-edeka-nowrap{
  white-space:nowrap !important;
}
.veranstaltungen-edeka-nowrap{
  margin-top:.65rem !important;
}
@media (max-width:900px){
  .veranstaltungen-question-nowrap,
  .veranstaltungen-edeka-nowrap{
    white-space:normal !important;
  }
}


/* VERANSTALTUNGEN-PLATZHALTER-20260905 */
.event-card-placeholder{
  border-style:dashed !important;
}
.event-card-placeholder .event-date{
  opacity:.72;
}


/* ALS-NAECHSTES-UNTERWEGS-HERVORHEBUNG-20260905 */
#next-event-auto.next-event{
  border:3px solid var(--red) !important;
  border-left-width:7px !important;
  border-radius:14px !important;
  box-shadow:0 10px 28px rgba(0,0,0,.16) !important;
  padding:1.35rem 1.45rem !important;
  position:relative;
}

#next-event-auto .eyebrow{
  color:var(--red) !important;
}

#next-event-auto .btn.btn-cream{
  background:var(--red) !important;
  color:#fff !important;
  border:2px solid var(--red) !important;
  font-weight:800 !important;
}

#next-event-auto .btn.btn-cream:hover,
#next-event-auto .btn.btn-cream:focus{
  background:var(--dark-red, #7f070c) !important;
  color:#fff !important;
  border-color:var(--dark-red, #7f070c) !important;
}


/* BUCHUNGSHINWEIS-VERANSTALTUNGEN-20260905 */
.event-card-booking{
  margin:2rem auto !important;
  border:2px solid var(--red) !important;
}
.event-card-booking .event-date strong,
.event-card-booking .event-date span{
  color:var(--red) !important;
}
.event-card-booking .btn{
  margin-top:.65rem;
}


/* BUCHUNGSHINWEIS-BREITE-WIE-TERMINE-20260905 */
.booking-event-list{
  width:100% !important;
}
.booking-event-grid{
  grid-template-columns:1fr !important;
}
.booking-event-grid .event-card-booking{
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  box-sizing:border-box !important;
}


/* UEBER-UNS-BLOCKSATZ-TRADITION-QUALITAET-20260914 */
body.page-ueber-uns main p,
body.page-ueber-uns .story p,
body.page-ueber-uns .section p {
  text-align: justify !important;
  text-justify: inter-word;
}

body.page-ueber-uns .quote-mark,
body.page-ueber-uns .quote-mark > span,
body.page-ueber-uns .quote-label {
  font-size: 2rem !important;
  line-height: 1 !important;
}

body.page-ueber-uns .quote-mark {
  display: flex !important;
  align-items: center !important;
}

body.page-ueber-uns .quote-label {
  letter-spacing: 0 !important;
  text-transform: none !important;
}

/* ===== header-reference.css ===== */

/* Exakter, isolierter Kopfbereich nach Referenzbild */
.ref-header{
  position:relative;
  z-index:1000;
  width:100%;
  overflow:visible;
  background:#fff;
  font-family:Arial,Helvetica,sans-serif;
}
.ref-header *{box-sizing:border-box}

.ref-header-top{
  height:144px;
  background:#fff;
  overflow:visible;
}
.ref-header-inner{
  position:relative;
  width:min(1180px,calc(100% - 40px));
  height:144px;
  margin:0 auto;
  display:grid;
  grid-template-columns:250px 1fr 1fr 1.06fr;
  align-items:center;
}

.ref-logo{
  position:relative;
  z-index:20;
  display:block;
  height:144px;
  overflow:visible;
}
.ref-logo img{
  position:absolute;
  z-index:30;
  left:0;
  top:16px;
  width:220px;
  height:auto;
  max-width:none;
  display:block;
  background:transparent;
}

/* Infoblöcke wie in der Vorlage */
.ref-info{
  position:relative;
  min-width:0;
  height:72px;
  padding:0 24px;
  display:grid;
  grid-template-columns:42px minmax(0,1fr);
  gap:13px;
  align-items:center;
  color:#151313;
  text-decoration:none;
}
.ref-info + .ref-info:before{
  content:"";
  position:absolute;
  left:0;
  top:8px;
  width:1px;
  height:56px;
  background:#e5d6c8;
}
.ref-icon{
  display:grid;
  place-items:center;
  width:34px;
  height:42px;
  color:#ba0d12;
  font-size:26px;
  line-height:1;
}
.ref-info strong{
  display:block;
  margin:0 0 7px;
  color:#171514;
  font-size:14px;
  font-weight:800;
  line-height:1.05;
}
.ref-info a,
.ref-info-phone a{
  display:block;
  color:#111;
  text-decoration:none;
  font-size:16px;
  font-weight:800;
  line-height:1.15;
}
.ref-info span:not(.ref-icon),
.ref-info small{
  display:block;
  color:#222;
  font-size:13px;
  line-height:1.25;
}
.ref-info-events .ref-under{
  text-decoration:underline;
  text-underline-offset:3px;
  font-weight:600;
}
.ref-calendar{
  width:36px;
  height:36px;
  border:2px solid #ba0d12;
  border-radius:3px;
  font-size:15px;
}

/* rote Navigation */
.ref-nav-bar{
  position:relative;
  z-index:10;
  height:47px;
  background:#ad0a0f;
  overflow:visible;
}
.ref-nav-inner{
  width:min(1180px,calc(100% - 40px));
  height:47px;
  margin:0 auto;
  padding-left:220px; /* exakt Platz für überstehendes Logo */
}
.ref-nav-inner nav{
  height:47px;
  display:flex;
  align-items:stretch;
  justify-content:flex-start;
  gap:0;
  white-space:nowrap;
}
.ref-nav-inner nav a{
  display:flex;
  align-items:center;
  min-height:47px;
  padding:0 15px;
  color:#fff !important;
  background:transparent;
  text-decoration:none;
  font-size:13px;
  font-weight:800;
  line-height:1;
  border:0;
}
.ref-nav-inner nav a:hover,
.ref-nav-inner nav a[aria-current="page"]{
  background:#8c070b;
}
.ref-menu-btn{display:none}

/* Das Logo liegt vor dem roten Balken. */
.ref-logo{pointer-events:auto}
.ref-logo img{pointer-events:none}

/* Tablet */
@media(max-width:1050px){
  .ref-header-top{height:132px}
  .ref-header-inner{
    height:132px;
    width:min(960px,calc(100% - 28px));
    grid-template-columns:205px 1fr 1fr;
  }
  .ref-logo{height:132px}
  .ref-logo img{top:14px;width:185px}
  .ref-info{padding:0 15px}
  .ref-info-events{
    position:absolute;
    right:0;
    bottom:4px;
    width:calc((100% - 205px)/2);
    height:48px;
  }
  .ref-nav-inner{
    width:min(960px,calc(100% - 28px));
    padding-left:188px;
  }
  .ref-nav-inner nav a{padding:0 9px;font-size:11.5px}
}

/* Mobile */
@media(max-width:760px){
  .ref-header-top{height:auto}
  .ref-header-inner{
    width:100%;
    height:auto;
    padding:7px 14px 9px;
    grid-template-columns:1fr 1fr;
    gap:6px 10px;
  }
  .ref-logo{
    grid-column:1/3;
    height:94px;
    display:flex;
    justify-content:center;
  }
  .ref-logo img{
    position:relative;
    top:auto;
    left:auto;
    width:180px;
  }
  .ref-info{
    height:58px;
    padding:0 4px;
    grid-template-columns:32px 1fr;
    gap:7px;
  }
  .ref-info + .ref-info:before{display:none}
  .ref-info strong{font-size:12px;margin-bottom:3px}
  .ref-info a,.ref-info-phone a{font-size:13px}
  .ref-info span:not(.ref-icon),.ref-info small{font-size:11px}
  .ref-info-events{
    position:static;
    grid-column:1/3;
    width:100%;
    height:48px;
    border-top:1px solid #eadfd5;
  }
  .ref-nav-bar{height:auto;min-height:46px}
  .ref-nav-inner{
    width:100%;
    height:auto;
    padding:0 14px;
  }
  .ref-menu-btn{
    display:block;
    margin:7px 0;
    color:#fff;
    background:transparent;
    border:1px solid rgba(255,255,255,.6);
    padding:7px 12px;
  }
  .ref-nav-inner nav{
    display:none;
    height:auto;
    flex-direction:column;
    padding-bottom:8px;
  }
  .ref-nav-inner nav.is-open{display:flex}
  .ref-nav-inner nav a{
    min-height:40px;
    padding:0 10px;
    font-size:13px;
  }
}


/* Social-Media-Links im Footer: siehe footer.css */
.jobs-social-buttons{
  display:flex;
  flex-wrap:wrap;
  gap:9px;
  margin-top:12px;
}
.jobs-social-button{
  display:inline-flex;
  align-items:center;
  gap:7px;
  padding:8px 12px;
  border:1px solid #b41618;
  border-radius:6px;
  color:#a70d12!important;
  background:#fff;
  font-weight:800;
  text-decoration:none!important;
}
.jobs-social-button span{
  display:grid;
  place-items:center;
  width:20px;
  height:20px;
  border-radius:50%;
  background:#a70d12;
  color:#fff;
}
.jobs-social-button:hover{
  background:#fff3e9;
}


/* Einheitliche Kontakt-Symbole im Header */
.ref-header .contact-svg{
  display:block;
  width:25px;
  height:25px;
  fill:currentColor;
}
.ref-header .ref-icon{
  color:#ba0d12;
}
.ref-header .ref-calendar{
  border:0;
  border-radius:0;
}
.ref-header .ref-calendar .contact-svg{
  width:28px;
  height:28px;
}


/* MOBILE-NAVIGATION-FINAL-20260914
   Dauerhaft sichtbar, nicht schliessbar und vollständig im Dokumentfluss. */
@media (max-width: 900px){

  .ref-header{
    position:relative !important;
    top:auto !important;
    left:auto !important;
    right:auto !important;
    width:100% !important;
    height:auto !important;
    min-height:0 !important;
    overflow:visible !important;
    z-index:40 !important;
  }

  /* Wichtig: Auch die beiden Elterncontainer müssen mit der Menühöhe wachsen.
     Zuvor blieben sie bei 47px und das Menü überdeckte den Inhalt. */
  .ref-nav-bar{
    position:relative !important;
    height:auto !important;
    min-height:0 !important;
    overflow:visible !important;
  }

  .ref-nav-inner{
    position:relative !important;
    width:100% !important;
    height:auto !important;
    min-height:0 !important;
    margin:0 auto !important;
    padding:0 14px 8px !important;
    overflow:visible !important;
  }

  .ref-nav-inner nav{
    display:flex !important;
    position:relative !important;
    inset:auto !important;
    width:100% !important;
    height:auto !important;
    min-height:0 !important;
    max-height:none !important;
    margin:0 !important;
    padding:7px 0 0 !important;
    flex-direction:column !important;
    align-items:stretch !important;
    justify-content:flex-start !important;
    gap:0 !important;
    white-space:normal !important;
    visibility:visible !important;
    opacity:1 !important;
    transform:none !important;
    overflow:visible !important;
    pointer-events:auto !important;
  }

  .ref-nav-inner nav a{
    display:flex !important;
    position:relative !important;
    width:100% !important;
    min-height:40px !important;
    height:auto !important;
    padding:10px 12px !important;
    align-items:center !important;
    box-sizing:border-box !important;
    white-space:normal !important;
  }

  /* Das Menü ist dauerhaft offen; der Schalter wird nicht benötigt. */
  .ref-menu-btn,
  .menu-btn,
  button[aria-controls="nav"]{
    display:none !important;
  }

  /* Inhalt bleibt nach dem kompletten Header im normalen Seitenfluss. */
  main{
    position:relative !important;
    top:auto !important;
    margin-top:0 !important;
    transform:none !important;
    z-index:1 !important;
  }

  body{
    overflow-x:hidden !important;
  }
}


/* MOBILE-NAVIGATION-ALS-BUTTONS-20260914 */
@media (max-width: 900px){
  .ref-nav-inner nav{
    gap:8px !important;
    padding:10px 12px 14px !important;
  }

  .ref-nav-inner nav a{
    display:flex !important;
    width:100% !important;
    min-height:44px !important;
    padding:11px 14px !important;
    justify-content:center !important;
    align-items:center !important;
    text-align:center !important;
    border:2px solid rgba(255,255,255,.9) !important;
    border-radius:10px !important;
    background:#fff !important;
    color:var(--red) !important;
    font-weight:800 !important;
    line-height:1.2 !important;
    text-decoration:none !important;
    box-shadow:0 2px 8px rgba(0,0,0,.10) !important;
  }

  .ref-nav-inner nav a:hover,
  .ref-nav-inner nav a:focus,
  .ref-nav-inner nav a[aria-current="page"],
  .ref-nav-inner nav a.active{
    background:var(--red) !important;
    color:#fff !important;
    border-color:#fff !important;
  }
}


/* MOBILE-MENUE-BUTTONS-OHNE-UEBERDECKUNG-20260914 */
@media (max-width: 900px){

  html, body{
    overflow-x:hidden !important;
  }

  .ref-header,
  .ref-header-top,
  .ref-header-inner,
  .ref-nav-bar,
  .ref-nav-inner,
  .ref-nav-inner nav{
    position:relative !important;
    top:auto !important;
    right:auto !important;
    bottom:auto !important;
    left:auto !important;
    height:auto !important;
    min-height:0 !important;
    max-height:none !important;
    overflow:visible !important;
    transform:none !important;
  }

  .ref-header{
    width:100% !important;
    z-index:20 !important;
  }

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

  .ref-nav-inner{
    display:block !important;
    width:100% !important;
    padding:0 12px 12px !important;
    box-sizing:border-box !important;
  }

  .ref-nav-inner nav{
    display:flex !important;
    flex-direction:column !important;
    width:100% !important;
    gap:8px !important;
    padding:10px 0 0 !important;
    box-sizing:border-box !important;
  }

  .ref-nav-inner nav a{
    flex:none !important;
    width:100% !important;
    box-sizing:border-box !important;
  }

  /* Kein Element darf das Menü aus dem Dokumentfluss herausziehen. */
  .ref-nav-inner nav.open,
  .ref-nav-inner nav.active,
  .ref-nav-inner nav[aria-expanded="true"]{
    position:relative !important;
    inset:auto !important;
  }

  /* Seiteninhalt beginnt erst nach der tatsächlichen Header-/Menühöhe. */
  main,
  .hero,
  .page-hero,
  .section:first-of-type{
    position:relative !important;
    top:auto !important;
    margin-top:0 !important;
    transform:none !important;
    z-index:1 !important;
  }
}


/* MOBILE-MENUE-VOR-FOOTER-20260914 */
@media (max-width: 900px){
  body > #mobile-relocatable-nav,
  #mobile-relocatable-nav{
    position:relative !important;
    width:100% !important;
    height:auto !important;
    min-height:0 !important;
    max-height:none !important;
    margin:24px 0 0 !important;
    overflow:visible !important;
    z-index:2 !important;
  }

  #mobile-relocatable-nav .ref-nav-inner{
    height:auto !important;
    min-height:0 !important;
    max-height:none !important;
  }

  #mobile-relocatable-nav nav{
    position:relative !important;
    height:auto !important;
    max-height:none !important;
  }
}


/* MOBILE-MENUE-KLICK-OHNE-UEBERDECKUNG-20260914 */
@media (max-width: 900px){

  .ref-header,
  .ref-header-top,
  .ref-header-inner,
  .ref-nav-bar,
  .ref-nav-inner{
    position:relative !important;
    top:auto !important;
    right:auto !important;
    bottom:auto !important;
    left:auto !important;
    height:auto !important;
    min-height:0 !important;
    max-height:none !important;
    overflow:visible !important;
    transform:none !important;
  }

  .ref-header{
    width:100% !important;
    z-index:20 !important;
  }

  .ref-nav-bar{
    display:block !important;
    width:100% !important;
    margin:0 !important;
  }

  .ref-nav-inner{
    display:block !important;
    width:100% !important;
    padding:8px 12px 12px !important;
    box-sizing:border-box !important;
  }

  /* Der Menü-Button ist mobil sichtbar. */
  .ref-menu-btn,
  .menu-btn{
    display:flex !important;
    position:relative !important;
    width:100% !important;
    min-height:44px !important;
    margin:0 !important;
    padding:11px 14px !important;
    justify-content:center !important;
    align-items:center !important;
    box-sizing:border-box !important;
    border:2px solid #fff !important;
    border-radius:10px !important;
    background:var(--red) !important;
    color:#fff !important;
    font:inherit !important;
    font-weight:800 !important;
    cursor:pointer !important;
    z-index:1 !important;
  }

  /* Menü ist zunächst geschlossen und nimmt dann keinen Platz ein. */
  .ref-nav-inner nav{
    display:none !important;
    position:relative !important;
    inset:auto !important;
    width:100% !important;
    height:auto !important;
    min-height:0 !important;
    max-height:none !important;
    margin:8px 0 0 !important;
    padding:0 !important;
    flex-direction:column !important;
    gap:8px !important;
    transform:none !important;
    overflow:visible !important;
    visibility:visible !important;
    opacity:1 !important;
    z-index:1 !important;
  }

  /* Erst nach Klick auf "Menü" wird die Navigation eingeblendet.
     Sie bleibt dabei im normalen Dokumentfluss und schiebt den Inhalt nach unten. */
  .ref-nav-inner nav.is-open{
    display:flex !important;
  }

  .ref-nav-inner nav a{
    display:flex !important;
    position:relative !important;
    width:100% !important;
    min-height:44px !important;
    padding:11px 14px !important;
    justify-content:center !important;
    align-items:center !important;
    box-sizing:border-box !important;
    border:2px solid rgba(255,255,255,.9) !important;
    border-radius:10px !important;
    background:#fff !important;
    color:var(--red) !important;
    font-weight:800 !important;
    line-height:1.2 !important;
    text-align:center !important;
    text-decoration:none !important;
    box-shadow:0 2px 8px rgba(0,0,0,.10) !important;
  }

  .ref-nav-inner nav a:hover,
  .ref-nav-inner nav a:focus,
  .ref-nav-inner nav a[aria-current="page"],
  .ref-nav-inner nav a.active{
    background:var(--red) !important;
    color:#fff !important;
  }

  /* Der Seiteninhalt bleibt nach der realen Headerhöhe im Fluss. */
  main,
  .hero,
  .page-hero{
    position:relative !important;
    top:auto !important;
    margin-top:0 !important;
    transform:none !important;
    z-index:1 !important;
  }

  body{
    overflow-x:hidden !important;
  }
}

/* ===== footer.css ===== */

/* =========================================================
   DAMPFNUDELHOF – FOOTER
   Eigene Stylesheet-Datei für den gemeinsamen Seitenfuß
   ========================================================= */

.site-footer.photo-footer{
  position:relative;
  margin:0;
  padding:0;
  color:#fff;
  background:linear-gradient(110deg,#a7080d 0%,#bf1015 52%,#99070b 100%);
  border:0;
}

.photo-footer .wrap{
  max-width:1180px;
  margin:0 auto;
}

.photo-footer-grid{
  display:grid;
  grid-template-columns:1.05fr 1.55fr .9fr .85fr;
  gap:38px;
  align-items:start;
  padding:34px 20px 27px;
}

.photo-footer strong{
  display:block;
  margin-bottom:12px;
  color:#fff;
  font-size:1rem;
  font-weight:800;
}

.photo-footer p{
  margin:0 0 9px;
  color:#fff;
  font-size:.88rem;
  line-height:1.55;
}

.photo-footer a{
  color:#fff;
  text-decoration:none;
}

.photo-footer a:hover{
  text-decoration:underline;
  text-underline-offset:3px;
}

/* Kontakt */
.photo-footer-contact p + p{
  margin-top:13px;
}

/* Schnellzugriff */
.photo-footer-linkcols{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px 28px;
}

.photo-footer-linkcols > div{
  display:flex;
  flex-direction:column;
  gap:7px;
}

.photo-footer-linkcols a{
  display:block;
  font-size:.86rem;
  line-height:1.25;
}

/* Social Media */
.photo-footer-social p{
  margin-bottom:8px;
}

.photo-footer-social .social-link{
  display:inline-flex;
  align-items:center;
  gap:8px;
  color:#fff!important;
  text-decoration:none;
}

.photo-footer-social .social-link:hover{
  text-decoration:underline;
  text-underline-offset:3px;
}

.social-mark{
  display:inline-grid;
  place-items:center;
  flex:0 0 auto;
  width:20px;
  height:20px;
  border-radius:50%;
  font-size:12px;
  font-weight:800;
  line-height:1;
}

.social-f{
  background:#1877f2;
  color:#fff;
}

.social-i{
  background:#fff;
  color:#a70d12;
}

.photo-footer-legal{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
  margin-top:18px;
  font-size:.78rem;
}

.photo-footer-legal span{
  opacity:.65;
}

/* Logo rechts */
.photo-footer-logo{
  display:flex;
  justify-content:flex-end;
  align-items:flex-start;
}

.photo-footer-logo img{
  position:static!important;
  display:block;
  width:190px;
  max-width:100%;
  height:auto;
  padding:0;
  background:transparent;
  border-radius:0;
  box-shadow:none;
}

/* untere Copyright-Leiste */
.photo-footer-bottom{
  border-top:1px solid rgba(255,255,255,.16);
  background:rgba(88,0,4,.20);
}

.photo-footer-bottom .wrap{
  padding:8px 20px;
  text-align:center;
  color:rgba(255,255,255,.92);
  font-size:.77rem;
}

/* Tablet */
@media(max-width:1100px){
  .photo-footer-grid{
    grid-template-columns:1fr 1.35fr;
    gap:30px 45px;
  }

  .photo-footer-logo{
    justify-content:flex-start;
  }

  .photo-footer-logo img{
    width:175px;
  }
}

/* Smartphone */
@media(max-width:760px){
  .photo-footer-grid{
    grid-template-columns:1fr;
    gap:25px;
    padding:29px 20px 24px;
  }

  .photo-footer-linkcols{
    grid-template-columns:1fr 1fr;
  }

  .photo-footer-logo{
    justify-content:flex-start;
  }

  .photo-footer-logo img{
    width:160px;
  }

  .photo-footer-bottom .wrap{
    padding:9px 16px;
  }
}

@media(max-width:430px){
  .photo-footer-linkcols{
    grid-template-columns:1fr;
    gap:7px;
  }
}


/* Verlinkung zur zusätzlichen Seite Pfälzer Backstübel */
.backstuebel-crosslink{
  margin-top:18px;
  padding-top:15px;
  border-top:1px solid rgba(255,255,255,.24);
}
.backstuebel-crosslink strong{
  margin-bottom:6px;
}
.backstuebel-crosslink p{
  margin-bottom:7px;
  font-size:.8rem;
  line-height:1.4;
}
.backstuebel-crosslink a{
  display:inline-block;
  font-size:.82rem;
  font-weight:800;
  text-decoration:underline;
  text-underline-offset:3px;
}

.backstuebel-catering-link{
  padding:36px 20px;
  background:#f6eee4;
}
.backstuebel-catering-card{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:28px;
  max-width:1120px;
  margin:0 auto;
  padding:28px 32px;
  background:#fff;
  border-left:5px solid #a70d12;
  box-shadow:0 8px 24px rgba(64,30,20,.08);
}
.backstuebel-catering-card h2{
  margin:.15em 0 .3em;
}
.backstuebel-catering-card p{
  max-width:720px;
  margin:0;
}
.backstuebel-catering-card .btn{
  flex:0 0 auto;
}

@media(max-width:760px){
  .backstuebel-catering-card{
    align-items:flex-start;
    flex-direction:column;
    padding:23px 21px;
  }
}


/* Ansprechpartner und Telefonsymbole */
.footer-person{
  margin:-5px 0 10px;
  color:#fff;
  font-size:.9rem;
  font-weight:700;
}

.footer-phone-link{
  display:inline-flex;
  align-items:center;
  gap:7px;
  color:#fff!important;
  text-decoration:none;
}

.footer-phone-link .contact-svg{
  display:block;
  flex:0 0 auto;
  width:15px;
  height:15px;
  fill:currentColor;
}

.footer-phone-link:hover{
  text-decoration:underline;
  text-underline-offset:3px;
}

/* Offizielle Social-Media-Symbole im Footer */
.photo-footer-social .social-link {
  display: inline-flex;
  align-items: center;
  gap: 9px;
}
.footer-social-icon {
  width: 20px;
  height: 20px;
  flex: 0 0 20px;
  display: block;
  color: currentColor;
}


/* FOOTER-LOGO-TRANSPARENT-NEU */
.photo-footer-logo{
  background:transparent !important;
}

.photo-footer-logo img{
  background:transparent !important;
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
}


/* FOOTER-NEUANORDNUNG-20260903
   Desktop:
   Kontakt | Quicklinks | Pfälzer Backstübel | Folge uns
   Das verkleinerte Logo sitzt unter „Folge uns“ ganz rechts.
*/
@media (min-width: 901px){
  .photo-footer .photo-footer-grid{
    grid-template-columns: 1.15fr .9fr 1.15fr .8fr !important;
    align-items:start !important;
  }

  .photo-footer .footer-backstuebel-column{
    grid-column:3 !important;
    grid-row:1 !important;
  }

  .photo-footer .footer-social-column{
    grid-column:4 !important;
    grid-row:1 !important;
    justify-self:end !important;
    width:100% !important;
    max-width:190px;
  }

  .photo-footer .footer-logo-column{
    grid-column:4 !important;
    grid-row:1 !important;
    justify-self:end !important;
    align-self:start !important;
    width:100% !important;
    max-width:190px !important;
    margin-top:145px !important;
    text-align:left !important;
  }

  .photo-footer .footer-logo-column img,
  .photo-footer .photo-footer-logo img{
    width:118px !important;
    max-width:118px !important;
    height:auto !important;
    object-fit:contain;
  }
}

/* Auf kleineren Ansichten bleibt der Footer sauber untereinander lesbar. */
@media (max-width: 900px){
  .photo-footer .footer-logo-column img,
  .photo-footer .photo-footer-logo img{
    width:118px !important;
    max-width:118px !important;
    height:auto !important;
  }
}


/* FOOTER-REIHENFOLGE-20260903-2
   Desktop-Reihenfolge:
   Dampfnudelhof | Schnellzugriff | Folge uns | Pfälzer Backstübel
*/
@media (min-width: 901px){
  .photo-footer .photo-footer-grid{
    grid-template-columns:1.15fr .9fr .9fr 1.15fr !important;
    align-items:start !important;
  }

  .photo-footer .footer-social-column{
    grid-column:3 !important;
    grid-row:1 !important;
    justify-self:start !important;
    width:100% !important;
    max-width:none !important;
  }

  .photo-footer .footer-backstuebel-column{
    grid-column:4 !important;
    grid-row:1 !important;
    justify-self:start !important;
    width:100% !important;
  }

  /* Das verkleinerte Logo bleibt beim Backstübel-Bereich ganz rechts darunter. */
  .photo-footer .footer-logo-column{
    grid-column:4 !important;
    grid-row:1 !important;
    justify-self:start !important;
    align-self:start !important;
    width:100% !important;
    max-width:none !important;
    margin-top:155px !important;
    text-align:left !important;
  }

  .photo-footer .footer-logo-column img,
  .photo-footer .photo-footer-logo img{
    width:110px !important;
    max-width:110px !important;
    height:auto !important;
  }
}

/* ===== footer-four-columns.css ===== */
/* Footer – vier echte Spalten
   1 Adresse | 2 Schnellzugriff | 3 Folge uns | 4 Pfälzer Backstübel
*/

.photo-footer .footer-four-columns{
  display:grid !important;
  grid-template-columns:minmax(210px,1.05fr) minmax(250px,1.15fr) minmax(170px,.8fr) minmax(240px,1fr) !important;
  gap:clamp(28px,4vw,58px) !important;
  align-items:start !important;
}

.photo-footer .footer-four-columns > *{
  grid-column:auto !important;
  grid-row:auto !important;
  width:auto !important;
  max-width:none !important;
  margin-left:0 !important;
  margin-right:0 !important;
  justify-self:stretch !important;
  align-self:start !important;
}

.photo-footer .footer-social-column .photo-footer-legal{
  margin-top:18px;
}

.photo-footer .footer-backstuebel-column{
  display:block !important;
}

.photo-footer .footer-logo-inline{
  margin-top:22px !important;
  background:transparent !important;
}

.photo-footer .footer-logo-inline img{
  display:block !important;
  width:108px !important;
  max-width:108px !important;
  height:auto !important;
  margin:0 !important;
  padding:0 !important;
  background:transparent !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
}

@media (max-width:1050px){
  .photo-footer .footer-four-columns{
    grid-template-columns:1fr 1fr !important;
  }
}

@media (max-width:640px){
  .photo-footer .footer-four-columns{
    grid-template-columns:1fr !important;
  }
}


/* FOOTER-ANPASSUNG-20260903-3
   Reihenfolge: Adresse | Schnellzugriff | Pfälzer Backstübel | Folge uns
   Kein Logo und kein Trennstrich beim Pfälzer-Backstübel-Bereich.
*/
.photo-footer .footer-backstuebel-column{
  border-top:0 !important;
  border-bottom:0 !important;
  border-left:0 !important;
  border-right:0 !important;
  padding-top:0 !important;
  box-shadow:none !important;
}

.photo-footer .footer-backstuebel-column::before,
.photo-footer .footer-backstuebel-column::after{
  display:none !important;
  content:none !important;
}

.photo-footer .footer-backstuebel-column hr{
  display:none !important;
}


/* FOOTER-UEBERSCHRIFTEN-GLEICHE-HOEHE-20260903 */
@media (min-width: 1051px){
  .photo-footer .footer-four-columns > .footer-backstuebel-column{
    margin-top:0 !important;
    padding-top:0 !important;
    transform:none !important;
  }

  .photo-footer .footer-four-columns > .footer-backstuebel-column > strong{
    display:block !important;
    margin-top:0 !important;
    padding-top:0 !important;
    line-height:1.2 !important;
  }
}


/* Catering-Link im Footer auf Desktop in einer Zeile */
@media (min-width: 641px) {
  .photo-footer .photo-footer-links a[href="catering.html"] {
    white-space: nowrap;
  }
}


/* Footer – mehr Luft zwischen den Spalten */
@media (min-width: 1051px) {
  .footer-four-columns,
  .footer-grid,
  .site-footer .footer-grid,
  .site-footer .footer-four-columns {
    column-gap: 3.5rem !important;
    gap: 2rem 3.5rem !important;
  }
}




/* ============================================================
   Footer – Schnellzugriff korrekt als EINSPALTIGE Linkliste
   Tatsächliches Markup: .photo-footer-links / .photo-footer-linkcols
   ============================================================ */
.photo-footer .photo-footer-links .photo-footer-linkcols {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  gap: 0 !important;
}

.photo-footer .photo-footer-links .photo-footer-linkcols > div {
  display: contents !important;
}

.photo-footer .photo-footer-links .photo-footer-linkcols a {
  display: block !important;
  width: max-content !important;
  max-width: 100% !important;
  margin: 0 0 0.55rem 0 !important;
  padding: 0 !important;
  white-space: nowrap !important;
}

.photo-footer .photo-footer-links .photo-footer-linkcols a:last-child {
  margin-bottom: 0 !important;
}

@media (max-width: 640px) {
  .photo-footer .photo-footer-links .photo-footer-linkcols a {
    white-space: normal !important;
    width: auto !important;
  }
}

/* ===== manufaktur-v2.css ===== */

/* ============================================================
   Dampfnudelhof – Designstudie "Pfälzer Manufaktur" V2
   bewusst als eigener Layer über dem bestehenden Quellcode
   ============================================================ */
:root{
  --m-red:#a70b11;
  --m-red-dark:#72070b;
  --m-cream:#f4eadb;
  --m-paper:#fffaf2;
  --m-white:#fff;
  --m-ink:#27201b;
  --m-muted:#75685e;
  --m-line:#dfd0bf;
  --m-shadow:0 22px 60px rgba(55,34,20,.12);
  --m-radius:26px;
}
html{scroll-behavior:smooth}
body{background:var(--m-paper)!important;color:var(--m-ink)!important}
.wrap{width:min(1180px,calc(100% - 48px))!important}

/* Kopf: ruhiger, markenorientiert */
.notice{background:var(--m-red-dark)!important;color:#fff!important}
.notice a{color:#fff!important;font-weight:800}
.ref-header{background:rgba(255,250,242,.98)!important;box-shadow:0 8px 28px rgba(55,34,20,.08)!important}
.ref-header-inner{min-height:96px!important}
.ref-logo img{max-height:76px!important}
.ref-info strong,.ref-icon{color:var(--m-red)!important}
.ref-nav-bar{background:var(--m-paper)!important;border-top:1px solid var(--m-line)!important;border-bottom:1px solid var(--m-line)!important}
.ref-nav-inner nav{justify-content:center!important;gap:4px!important}
.ref-nav-inner nav a{color:var(--m-ink)!important;background:transparent!important;border-radius:999px!important;padding:12px 14px!important;font-size:.84rem!important}
.ref-nav-inner nav a:hover,.ref-nav-inner nav a[aria-current="page"]{background:var(--m-red)!important;color:#fff!important}

/* Buttons */
.btn,.hero-btn,.craft-button{
  border-radius:999px!important;
  padding:.95rem 1.45rem!important;
  font-weight:850!important;
  letter-spacing:.01em!important;
  transition:.2s ease!important;
}
.btn-primary,.craft-button,.hero-btn-primary{background:var(--m-red)!important;color:#fff!important;border:2px solid var(--m-red)!important}
.btn:hover,.hero-btn:hover{transform:translateY(-2px)!important}

/* ---------- STARTSEITE ---------- */
.manufaktur-home .manu-hero{
  background:var(--m-cream);
  padding:58px 0 72px;
  overflow:hidden;
}
.manu-hero-grid{
  display:grid;
  grid-template-columns:minmax(0,.9fr) minmax(460px,1.1fr);
  align-items:center;
  gap:64px;
}
.manu-hero-copy{padding:32px 0}
.manu-kicker,.manu-eyebrow{
  display:flex;align-items:center;gap:11px;
  margin:0 0 16px;
  color:var(--m-red);
  font-size:.78rem;font-weight:900;letter-spacing:.14em;text-transform:uppercase;
}
.manu-kicker:before,.manu-eyebrow:before{content:"";width:34px;height:2px;background:var(--m-red);flex:0 0 auto}
.manu-hero h1{
  margin:0;
  color:var(--m-ink);
  font-family:"Brush Script MT","Segoe Script",cursive;
  font-size:clamp(4.8rem,8vw,7.4rem);
  font-weight:400;
  line-height:.82;
  letter-spacing:-.035em;
}
.manu-script{
  margin:18px 0 20px;
  color:var(--m-red);
  font-family:"Brush Script MT","Segoe Script",cursive;
  font-size:clamp(2rem,3.2vw,2.85rem);
  line-height:1;
}
.manu-lead{
  max-width:590px;
  margin:0;
  color:var(--m-ink);
  font-size:1.08rem;
  line-height:1.75;
}
.manu-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}
.manu-actions .secondary{background:transparent!important;color:var(--m-red)!important;border:2px solid var(--m-red)!important}
.manu-hero-photo{position:relative;margin:0}
.manu-hero-photo:before{
  content:"";position:absolute;left:-24px;bottom:-24px;width:70%;height:72%;
  background:var(--m-red);border-radius:var(--m-radius);z-index:0;
}
.manu-hero-photo img{
  position:relative;z-index:1;display:block;width:100%;height:620px;object-fit:cover;
  border-radius:var(--m-radius);box-shadow:var(--m-shadow);
}
.manu-photo-badge{
  position:absolute;z-index:2;left:-34px;top:42px;
  width:132px;height:132px;border-radius:50%;
  background:var(--m-red);color:#fff;
  display:grid;place-items:center;text-align:center;
  font-size:.74rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase;
  border:7px solid var(--m-cream);
}

/* schneller Dreiklang statt vieler Karten */
.manu-strip{background:var(--m-red-dark);color:#fff}
.manu-strip-grid{display:grid;grid-template-columns:repeat(3,1fr)}
.manu-strip a{
  color:#fff!important;text-decoration:none!important;padding:27px 30px;
  border-right:1px solid rgba(255,255,255,.18);
  display:flex;align-items:center;justify-content:space-between;gap:20px;
}
.manu-strip a:last-child{border-right:0}
.manu-strip strong{display:block;font-size:1.04rem;margin-bottom:4px}
.manu-strip small{display:block;color:rgba(255,255,255,.75);line-height:1.45}
.manu-strip b{font-size:1.7rem;font-weight:400}

/* Editorial sections */
.manu-section{padding:105px 0}
.manu-section.cream{background:var(--m-cream)}
.manu-section.white{background:#fff}
.manu-editorial{
  display:grid;grid-template-columns:1fr 1fr;gap:78px;align-items:center;
}
.manu-editorial.reverse .manu-media{order:2}
.manu-media{margin:0;position:relative}
.manu-media img{
  display:block;width:100%;height:540px;object-fit:cover;border-radius:var(--m-radius);box-shadow:var(--m-shadow)
}
.manu-copy h2{
  margin:0 0 22px;font-size:clamp(2.65rem,4.6vw,4.5rem);line-height:.98;letter-spacing:-.035em;color:var(--m-ink)
}
.manu-copy p{font-size:1.04rem;line-height:1.82;text-align:justify;text-justify:inter-word}
.manu-copy a:not(.btn){color:var(--m-red)!important;font-weight:850}
.manu-hand{
  color:var(--m-red);font-family:"Brush Script MT","Segoe Script",cursive;
  font-size:2.15rem;line-height:1;margin:0 0 10px;
}

/* Terminband */
.manu-event{
  background:var(--m-red);color:#fff;padding:58px 0;
}
.manu-event-inner{
  display:grid;grid-template-columns:.8fr 1.2fr auto;gap:34px;align-items:center
}
.manu-event .manu-eyebrow{color:#fff;margin:0}.manu-event .manu-eyebrow:before{background:#fff}
.manu-event h2{margin:0;color:#fff;font-size:clamp(2rem,3.3vw,3.25rem);line-height:1.05}
.manu-event p{margin:8px 0 0;color:rgba(255,255,255,.88);line-height:1.6}
.manu-event .btn{background:#fff!important;color:var(--m-red)!important;border:2px solid #fff!important;white-space:nowrap}

/* Geschichte */
.manu-story{background:var(--m-red-dark);color:#fff;padding:105px 0}
.manu-story-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:80px;align-items:center}
.manu-story-photo{margin:0;position:relative}
.manu-story-photo img{width:100%;height:540px;object-fit:cover;border-radius:var(--m-radius);box-shadow:0 24px 65px rgba(0,0,0,.28)}
.manu-story-label{
  position:absolute;right:-28px;bottom:38px;background:var(--m-paper);color:var(--m-red);
  padding:18px 24px;border-radius:16px;font-family:"Brush Script MT","Segoe Script",cursive;font-size:2rem
}
.manu-story .manu-eyebrow{color:#efb9bb}.manu-story .manu-eyebrow:before{background:#efb9bb}
.manu-story h2{color:#fff;margin:0 0 24px;font-size:clamp(2.7rem,4.6vw,4.4rem);line-height:.98}
.manu-story p{color:#fff;line-height:1.82;text-align:justify;text-justify:inter-word}

/* ---------- Unterseiten: dieselbe Designsprache ---------- */
body:not(.manufaktur-home) main{background:var(--m-paper)!important}
body:not(.manufaktur-home) main>section:first-child{
  background:var(--m-cream)!important;
  padding-top:82px!important;padding-bottom:72px!important;
  border-bottom:1px solid var(--m-line)
}
body:not(.manufaktur-home) main h1{
  color:var(--m-ink)!important;font-size:clamp(2.8rem,5vw,4.8rem)!important;line-height:1!important;letter-spacing:-.035em!important
}
body:not(.manufaktur-home) main h2{color:var(--m-ink)}
body:not(.manufaktur-home) .card,
body:not(.manufaktur-home) .event-card,
body:not(.manufaktur-home) .news-card,
body:not(.manufaktur-home) .contact-card{
  border:1px solid var(--m-line)!important;border-radius:22px!important;
  box-shadow:0 14px 38px rgba(55,34,20,.07)!important;background:#fff!important
}
body:not(.manufaktur-home) .eyebrow{color:var(--m-red)!important}
body:not(.manufaktur-home) main p{line-height:1.75}
body.page-ueber-uns main p{text-align:justify!important;text-justify:inter-word}

/* Footer als klarer Markenabschluss */
.site-footer{background:var(--m-red-dark)!important;color:#fff!important}
.site-footer a,.site-footer p,.site-footer strong,.site-footer div{color:#fff}
.photo-footer-grid{padding-top:58px!important;padding-bottom:48px!important}
.photo-footer-bottom{border-top:1px solid rgba(255,255,255,.18)!important}

/* responsive */
@media(max-width:1000px){
  .manu-hero-grid,.manu-editorial,.manu-story-grid{grid-template-columns:1fr;gap:42px}
  .manu-hero-photo{max-width:760px}.manu-hero-photo img{height:520px}
  .manu-editorial.reverse .manu-media{order:0}
  .manu-event-inner{grid-template-columns:1fr 1fr}.manu-event-inner .btn{grid-column:1/-1;justify-self:start}
  .manu-media img,.manu-story-photo img{height:470px}
  .manu-story-label{right:22px}
}
@media(max-width:900px){
  .ref-nav-bar{background:var(--m-red)!important;border:0!important}
  .ref-menu-btn{background:var(--m-red-dark)!important;color:#fff!important;border-color:rgba(255,255,255,.35)!important}
  .ref-nav-inner nav a{color:#fff!important;border-radius:8px!important}
}
@media(max-width:700px){
  .wrap{width:min(100% - 30px,1180px)!important}
  .manu-hero{padding:42px 0 52px!important}
  .manu-hero h1{font-size:clamp(3.7rem,18vw,5.2rem)}
  .manu-hero-photo img{height:420px}.manu-photo-badge{width:104px;height:104px;left:-6px;top:20px;font-size:.64rem}
  .manu-strip-grid{grid-template-columns:1fr}.manu-strip a{border-right:0;border-bottom:1px solid rgba(255,255,255,.18)}
  .manu-section,.manu-story{padding:72px 0}
  .manu-editorial,.manu-story-grid{gap:34px}
  .manu-media img,.manu-story-photo img{height:380px}
  .manu-event-inner{grid-template-columns:1fr;gap:18px}.manu-event-inner .btn{grid-column:auto}
  .manu-copy h2,.manu-story h2{font-size:clamp(2.45rem,11vw,3.5rem)}
}


/* ============================================================
   LESBARKEIT-MENUE-KONTRAST-V3
   Kontrast- und Lesbarkeitskorrekturen
   ============================================================ */

/* Navigation: dauerhaft klarer, kontrastreicher Hintergrund */
.ref-nav-bar{
  background:var(--m-red-dark) !important;
  border-top:0 !important;
  border-bottom:0 !important;
  box-shadow:0 8px 24px rgba(55,34,20,.16) !important;
}
.ref-nav-inner nav a{
  color:#fff !important;
  background:transparent !important;
  text-shadow:none !important;
}
.ref-nav-inner nav a:hover,
.ref-nav-inner nav a:focus-visible,
.ref-nav-inner nav a[aria-current="page"]{
  color:var(--m-red-dark) !important;
  background:#fff !important;
  outline:none !important;
}

/* Text auf dunklen bzw. farbigen Flächen immer mit sicherem Kontrast */
.manu-strip,
.manu-strip *,
.manu-event,
.manu-event h1,
.manu-event h2,
.manu-event h3,
.manu-event p,
.manu-event .manu-eyebrow,
.manu-story,
.manu-story h1,
.manu-story h2,
.manu-story h3,
.manu-story p{
  color:#fff !important;
}

.manu-strip small,
.manu-event p{
  color:rgba(255,255,255,.90) !important;
}

.manu-story .manu-eyebrow{
  color:#ffd9da !important;
}
.manu-story .manu-eyebrow:before{
  background:#ffd9da !important;
}

/* Helle Inhaltsflächen: dunkle Schrift erzwingen */
.manu-hero-copy,
.manu-copy,
.manu-section,
body:not(.manufaktur-home) main{
  color:var(--m-ink) !important;
}
.manu-hero-copy .manu-lead,
.manu-copy p,
.manu-section p,
body:not(.manufaktur-home) main p{
  color:var(--m-ink) !important;
}

/* Rote Akzenttexte auf hellen Flächen */
.manu-hero-copy .manu-kicker,
.manu-hero-copy .manu-script,
.manu-copy .manu-eyebrow,
.manu-copy .manu-hand{
  color:var(--m-red) !important;
}

/* Text, der direkt auf Bildern liegen kann, bekommt eine deckende Fläche */
.manu-photo-badge{
  background:var(--m-red-dark) !important;
  color:#fff !important;
  text-shadow:none !important;
  box-shadow:0 8px 24px rgba(0,0,0,.24) !important;
}
.manu-story-label{
  background:var(--m-paper) !important;
  color:var(--m-red-dark) !important;
  box-shadow:0 8px 24px rgba(0,0,0,.22) !important;
}

/* Buttons: Vorder- und Hintergrund explizit definieren */
.btn-primary,
.hero-btn-primary,
.craft-button{
  background:var(--m-red) !important;
  color:#fff !important;
  border-color:var(--m-red) !important;
}
.manu-actions .secondary{
  background:var(--m-paper) !important;
  color:var(--m-red-dark) !important;
  border-color:var(--m-red-dark) !important;
}
.manu-event .btn{
  background:#fff !important;
  color:var(--m-red-dark) !important;
  border-color:#fff !important;
}

/* Unterseiten: Karten und Inhaltsbereiche */
body:not(.manufaktur-home) .card,
body:not(.manufaktur-home) .event-card,
body:not(.manufaktur-home) .news-card,
body:not(.manufaktur-home) .contact-card{
  color:var(--m-ink) !important;
}
body:not(.manufaktur-home) .card p,
body:not(.manufaktur-home) .event-card p,
body:not(.manufaktur-home) .news-card p,
body:not(.manufaktur-home) .contact-card p{
  color:var(--m-ink) !important;
}

/* Footer ebenfalls mit garantiertem Kontrast */
.site-footer,
.site-footer p,
.site-footer strong,
.site-footer a,
.site-footer h2,
.site-footer h3,
.site-footer h4{
  color:#fff !important;
}

/* Mobiles Menü: vollständig deckender Hintergrund statt Überlagerung */
@media(max-width:900px){
  .ref-nav-bar,
  .ref-nav-inner{
    background:var(--m-red-dark) !important;
  }
  .ref-menu-btn{
    background:var(--m-red-dark) !important;
    color:#fff !important;
    border:1px solid rgba(255,255,255,.55) !important;
  }
  .ref-nav-inner nav{
    background:var(--m-red-dark) !important;
    padding:10px 0 16px !important;
  }
  .ref-nav-inner nav a{
    display:block !important;
    background:rgba(255,255,255,.08) !important;
    color:#fff !important;
    border:1px solid rgba(255,255,255,.18) !important;
    margin:5px 0 !important;
  }
  .ref-nav-inner nav a:hover,
  .ref-nav-inner nav a:focus-visible,
  .ref-nav-inner nav a[aria-current="page"]{
    background:#fff !important;
    color:var(--m-red-dark) !important;
  }
}


/* ============================================================
   EINHEITLICHES-MENUE-UND-HERO-TITEL-V4
   ============================================================ */

/* Gleiche Header-/Menü-Geometrie auf jeder Seite */
.ref-header{
  position:relative !important;
  top:auto !important;
  width:100% !important;
  z-index:1000 !important;
  margin:0 !important;
}
.ref-header-top,
.ref-header-inner,
.ref-nav-bar,
.ref-nav-inner{
  width:100% !important;
  box-sizing:border-box !important;
}
.ref-header-inner{
  min-height:96px !important;
  padding-top:10px !important;
  padding-bottom:10px !important;
}
.ref-nav-bar{
  position:relative !important;
  top:auto !important;
  margin:0 !important;
  min-height:52px !important;
}
.ref-nav-inner{
  min-height:52px !important;
  display:flex !important;
  align-items:center !important;
}
.ref-nav-inner nav{
  width:100% !important;
  min-height:52px !important;
  align-items:center !important;
  justify-content:center !important;
}

/* Startseiten-Titel bewusst kleiner, damit er vollständig in seiner Spalte bleibt */
.manufaktur-home .manu-hero h1{
  font-size:clamp(3.9rem,6.2vw,5.9rem) !important;
  line-height:.88 !important;
  max-width:100% !important;
  overflow-wrap:normal !important;
}

/* Etwas mehr Sicherheitsabstand zwischen Text und Hero-Foto */
.manu-hero-grid{
  grid-template-columns:minmax(0,.95fr) minmax(440px,1.05fr) !important;
  gap:76px !important;
}
.manu-hero-copy{
  min-width:0 !important;
  position:relative !important;
  z-index:2 !important;
}
.manu-hero-photo{
  min-width:0 !important;
  z-index:1 !important;
}

@media(max-width:1000px){
  .manu-hero-grid{
    grid-template-columns:1fr !important;
    gap:42px !important;
  }
  .manufaktur-home .manu-hero h1{
    font-size:clamp(3.7rem,11vw,5.5rem) !important;
  }
}

@media(max-width:900px){
  .ref-nav-inner{
    display:block !important;
    min-height:auto !important;
  }
  .ref-nav-inner nav{
    min-height:auto !important;
  }
}

@media(max-width:640px){
  .manufaktur-home .manu-hero h1{
    font-size:clamp(3.05rem,15vw,4.25rem) !important;
    line-height:.9 !important;
  }
}


/* ============================================================
   MENUE-SCHRIFT-POSITION-EXAKT-V5
   Desktop-Menü auf allen Seiten mit identischer Typografie,
   Höhe, Ausrichtung und Position.
   ============================================================ */
@media (min-width:901px){
  .ref-header{
    position:relative !important;
    top:0 !important;
    left:0 !important;
    right:0 !important;
    margin:0 !important;
    padding:0 !important;
  }

  .ref-header-inner{
    width:min(1180px,calc(100% - 48px)) !important;
    height:96px !important;
    min-height:96px !important;
    margin:0 auto !important;
    padding:10px 0 !important;
    box-sizing:border-box !important;
  }

  .ref-nav-bar{
    position:relative !important;
    top:0 !important;
    left:0 !important;
    width:100% !important;
    height:54px !important;
    min-height:54px !important;
    margin:0 !important;
    padding:0 !important;
  }

  .ref-nav-inner{
    width:min(1180px,calc(100% - 48px)) !important;
    height:54px !important;
    min-height:54px !important;
    margin:0 auto !important;
    padding:0 !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    box-sizing:border-box !important;
  }

  .ref-nav-inner nav{
    width:100% !important;
    height:54px !important;
    min-height:54px !important;
    margin:0 !important;
    padding:0 !important;
    display:flex !important;
    flex-wrap:nowrap !important;
    align-items:center !important;
    justify-content:center !important;
    gap:2px !important;
    box-sizing:border-box !important;
  }

  .ref-nav-inner nav a{
    margin:0 !important;
    padding:10px 10px !important;
    font-family:inherit !important;
    font-size:13px !important;
    font-weight:800 !important;
    line-height:1 !important;
    letter-spacing:0 !important;
    white-space:nowrap !important;
    box-sizing:border-box !important;
  }
}

/* Mobile: ebenfalls eine einzige definierte Schriftgröße und Position */
@media (max-width:900px){
  .ref-nav-bar,
  .ref-nav-inner{
    margin:0 !important;
    padding-left:0 !important;
    padding-right:0 !important;
  }

  .ref-menu-btn{
    width:100% !important;
    margin:0 !important;
    font-family:inherit !important;
    font-size:15px !important;
    font-weight:800 !important;
    line-height:1.2 !important;
  }

  .ref-nav-inner nav a{
    margin:5px 0 !important;
    padding:12px 14px !important;
    font-family:inherit !important;
    font-size:14px !important;
    font-weight:800 !important;
    line-height:1.2 !important;
    letter-spacing:0 !important;
  }
}

/* ===== aktuelles-manufaktur.css ===== */
/* Aktuelles – Startseiten-Typografie mit gut lesbaren Nachrichtentexten */
.aktuelles-manu-page main{
  background:#fffaf2!important;
  font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important;
  color:#27201b!important;
}
.aktuelles-hero{background:#f4eadb;padding:58px 0 72px;overflow:hidden}
.aktuelles-hero-grid{display:grid;grid-template-columns:minmax(0,.95fr) minmax(440px,1.05fr);gap:76px;align-items:center}
.aktuelles-hero-copy{padding:32px 0;min-width:0}
.aktuelles-hero .manu-kicker,
.aktuelles-manu-page .manu-eyebrow{
  font-family:inherit!important;
  font-size:1rem!important;
  font-weight:900!important;
  line-height:1.25!important;
  letter-spacing:.08em!important;
}
.aktuelles-hero h1{
  margin:0;
  color:#27201b;
  font-family:"Brush Script MT","Segoe Script",cursive;
  font-size:clamp(3.9rem,6.2vw,5.9rem);
  font-weight:400;
  line-height:.9;
  letter-spacing:-.035em;
}
.aktuelles-hero .manu-script{
  font-family:"Brush Script MT","Segoe Script",cursive!important;
  font-size:clamp(1.9rem,3vw,2.65rem)!important;
  line-height:1.05!important;
}
.aktuelles-lead{
  max-width:62ch;
  margin:0;
  color:#3f3731;
  font-family:inherit;
  font-size:1.08rem;
  line-height:1.7;
  text-align:left;
}
.aktuelles-hero-photo{position:relative;margin:0;min-width:0}
.aktuelles-hero-photo:before{content:"";position:absolute;left:-24px;bottom:-24px;width:70%;height:72%;background:#a70b11;border-radius:26px;z-index:0}
.aktuelles-hero-photo img{position:relative;z-index:1;display:block;width:100%;height:570px;object-fit:cover;border-radius:26px;box-shadow:0 24px 65px rgba(62,38,25,.16)}
.aktuelles-photo-label{
  position:absolute;z-index:2;right:-22px;bottom:38px;background:#fffaf2;color:#a70b11;
  padding:17px 24px;border-radius:16px;font-family:"Brush Script MT","Segoe Script",cursive;font-size:2rem
}
.aktuelles-highlight{background:#72070b;color:#fff;padding:68px 0}
.aktuelles-highlight-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:72px;align-items:center}
.aktuelles-highlight .manu-eyebrow{color:#efb9bb!important}
.aktuelles-highlight .manu-eyebrow:before{background:#efb9bb!important}
.aktuelles-highlight h2{
  margin:0;color:#fff!important;font-family:inherit!important;
  font-size:clamp(2.25rem,4vw,3.35rem)!important;font-weight:800!important;
  line-height:1.05!important;letter-spacing:-.025em!important
}
.aktuelles-highlight p{color:#fff!important}
.aktuelles-highlight-copy p{
  max-width:65ch;margin:0;font-family:inherit;font-size:1.05rem;
  line-height:1.72;text-align:left
}
.aktuelles-highlight a{color:#fff!important;font-weight:850}
.aktuelles-news{background:#fff;padding:100px 0 110px}
.aktuelles-section-head{max-width:760px;margin-bottom:46px}
.aktuelles-section-head h2{
  margin:0;color:#27201b!important;font-family:inherit!important;
  font-size:clamp(2.25rem,4vw,3.35rem)!important;font-weight:800!important;
  line-height:1.05!important;letter-spacing:-.025em!important
}
.aktuelles-editorial-grid{
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));
  column-gap:76px;row-gap:0;border-top:1px solid #dfd0bf
}
.aktuelles-entry{
  padding:34px 0 38px;border-bottom:1px solid #dfd0bf;
  background:transparent!important;box-shadow:none!important;border-radius:0!important
}
.aktuelles-entry:nth-child(odd){padding-right:16px}
.aktuelles-entry:nth-child(even){padding-left:16px}
.aktuelles-meta{
  margin:0 0 10px!important;color:#a70b11!important;
  font-family:inherit!important;font-size:.86rem!important;font-weight:850!important;
  line-height:1.45!important;letter-spacing:.06em!important;text-transform:uppercase
}
.aktuelles-entry h3{
  margin:0 0 14px;color:#27201b;font-family:inherit!important;
  font-size:clamp(1.4rem,2vw,1.85rem);font-weight:800;
  line-height:1.22;letter-spacing:-.015em
}
.aktuelles-entry-text p{
  max-width:68ch;margin:0;color:#51463e;font-family:inherit!important;
  font-size:1.02rem;line-height:1.72;text-align:left
}
.aktuelles-entry a{color:#a70b11!important;font-weight:800}
.aktuelles-cta{background:#72070b!important}
.aktuelles-cta h2{
  font-family:inherit!important;font-size:clamp(2.25rem,4vw,3.35rem)!important;
  font-weight:800!important;line-height:1.05!important;letter-spacing:-.025em!important
}
.aktuelles-cta p{font-family:inherit!important;font-size:1.02rem!important;line-height:1.65!important}
@media(max-width:1000px){
  .aktuelles-hero-grid,.aktuelles-highlight-grid{grid-template-columns:1fr;gap:42px}
  .aktuelles-hero-photo{max-width:760px}
  .aktuelles-hero-photo img{height:500px}
  .aktuelles-highlight-grid{gap:24px}
}
@media(max-width:760px){
  .aktuelles-hero{padding:42px 0 52px}
  .aktuelles-hero h1{font-size:clamp(3.05rem,15vw,4.25rem);line-height:.92}
  .aktuelles-hero-photo img{height:410px}
  .aktuelles-photo-label{right:14px;bottom:22px;font-size:1.65rem}
  .aktuelles-news{padding:72px 0 78px}
  .aktuelles-editorial-grid{grid-template-columns:1fr}
  .aktuelles-entry:nth-child(odd),.aktuelles-entry:nth-child(even){padding-left:0;padding-right:0}
}


/* Aktuelles – Lesbarkeit und klare Trennung der Beiträge */
.aktuelles-manu-page main{
  color:#27201b!important;
}

/* Hero: rotes Dekoelement hinter dem oberen Bild vollständig entfernen */
.aktuelles-hero-photo::before{
  content:none!important;
  display:none!important;
  background:transparent!important;
}
.aktuelles-hero-photo img{
  box-shadow:0 20px 52px rgba(62,38,25,.13)!important;
}

/* Textfarben näher an der Startseite und mit höherem Kontrast */
.aktuelles-lead,
.aktuelles-entry-text p{
  color:#3f3731!important;
  -webkit-text-fill-color:#3f3731!important;
}
.aktuelles-entry h3,
.aktuelles-section-head h2{
  color:#27201b!important;
  -webkit-text-fill-color:#27201b!important;
}
.aktuelles-meta{
  color:#8f090e!important;
  -webkit-text-fill-color:#8f090e!important;
}
.aktuelles-entry a{
  color:#8f090e!important;
  -webkit-text-fill-color:#8f090e!important;
  text-decoration-thickness:1px!important;
  text-underline-offset:3px!important;
}

/* Beiträge als klar erkennbare, ruhige redaktionelle Karten */
.aktuelles-editorial-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:26px!important;
  border-top:0!important;
}
.aktuelles-entry,
.aktuelles-entry:nth-child(odd),
.aktuelles-entry:nth-child(even){
  position:relative!important;
  padding:30px 30px 32px!important;
  border:1px solid #dfd0bf!important;
  border-top:4px solid #a70b11!important;
  border-radius:20px!important;
  background:#fffaf2!important;
  box-shadow:0 12px 34px rgba(62,38,25,.07)!important;
}
.aktuelles-entry:hover{
  box-shadow:0 16px 40px rgba(62,38,25,.10)!important;
}

/* Dunkelroter Hinweisbereich: reines Weiß/Creme für sicheren Kontrast */
.aktuelles-highlight,
.aktuelles-cta{
  background:#72070b!important;
}
.aktuelles-highlight h2,
.aktuelles-highlight p,
.aktuelles-highlight a,
.aktuelles-cta h2,
.aktuelles-cta p{
  color:#ffffff!important;
  -webkit-text-fill-color:#ffffff!important;
}
.aktuelles-highlight .manu-eyebrow,
.aktuelles-cta .manu-eyebrow{
  color:#fff1e6!important;
  -webkit-text-fill-color:#fff1e6!important;
  opacity:1!important;
}
.aktuelles-highlight .manu-eyebrow::before,
.aktuelles-cta .manu-eyebrow::before{
  background:#fff1e6!important;
}

@media(max-width:760px){
  .aktuelles-editorial-grid{
    grid-template-columns:1fr!important;
    gap:20px!important;
  }
  .aktuelles-entry,
  .aktuelles-entry:nth-child(odd),
  .aktuelles-entry:nth-child(even){
    padding:25px 22px 27px!important;
  }
}


/* Aktuelles Abschluss-CTA – wie der Terminbereich der Startseite */
.aktuelles-manu-page .manu-event.aktuelles-cta{
  background:#72070b!important;
  color:#fff!important;
  padding:72px 0!important;
}
.aktuelles-manu-page .aktuelles-cta .manu-event-inner{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  gap:48px!important;
  align-items:center!important;
}
.aktuelles-manu-page .aktuelles-cta .manu-eyebrow{
  margin:0 0 12px!important;
  color:#fff1e6!important;
  -webkit-text-fill-color:#fff1e6!important;
  font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important;
  font-size:1rem!important;
  font-weight:850!important;
  line-height:1.3!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
  opacity:1!important;
}
.aktuelles-manu-page .aktuelles-cta .manu-eyebrow::before{
  background:#fff1e6!important;
}
.aktuelles-manu-page .aktuelles-cta h2{
  max-width:850px!important;
  margin:0 0 16px!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important;
  font-size:clamp(2.25rem,4vw,3.35rem)!important;
  font-weight:800!important;
  line-height:1.04!important;
  letter-spacing:-.03em!important;
  text-transform:none!important;
}
.aktuelles-manu-page .aktuelles-cta p{
  max-width:720px!important;
  margin:0!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important;
  font-size:1.05rem!important;
  font-weight:430!important;
  line-height:1.7!important;
  text-align:left!important;
}
.aktuelles-manu-page .aktuelles-cta .btn,
.aktuelles-manu-page .aktuelles-cta a.btn{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:48px!important;
  padding:13px 24px!important;
  border:2px solid #fff!important;
  border-radius:999px!important;
  background:#fff!important;
  color:#72070b!important;
  -webkit-text-fill-color:#72070b!important;
  font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important;
  font-size:.98rem!important;
  font-weight:800!important;
  line-height:1.2!important;
  text-decoration:none!important;
  white-space:nowrap!important;
}
.aktuelles-manu-page .aktuelles-cta .btn:hover,
.aktuelles-manu-page .aktuelles-cta a.btn:hover{
  background:transparent!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
}
@media(max-width:760px){
  .aktuelles-manu-page .manu-event.aktuelles-cta{
    padding:58px 0!important;
  }
  .aktuelles-manu-page .aktuelles-cta .manu-event-inner{
    grid-template-columns:1fr!important;
    gap:28px!important;
  }
  .aktuelles-manu-page .aktuelles-cta h2{
    font-size:clamp(2rem,9vw,2.8rem)!important;
  }
  .aktuelles-manu-page .aktuelles-cta .btn,
  .aktuelles-manu-page .aktuelles-cta a.btn{
    justify-self:start!important;
  }
}


/* Newsblöcke: alle Karten auf die Höhe des längsten Beitrags bringen.
   Desktop: einheitliche Kartenhöhe über das gesamte News-Grid.
   Mobil: natürliche Höhe, damit keine unnötigen Leerflächen entstehen. */
.aktuelles-manu-page .aktuelles-editorial-grid{
  align-items:stretch!important;
}
.aktuelles-manu-page .aktuelles-editorial-grid .aktuelles-entry{
  height:100%!important;
  min-height:100%!important;
  display:flex!important;
  flex-direction:column!important;
  align-self:stretch!important;
}
.aktuelles-manu-page .aktuelles-editorial-grid .aktuelles-entry .aktuelles-entry-text{
  display:flex!important;
  flex:1 1 auto!important;
  flex-direction:column!important;
}
.aktuelles-manu-page .aktuelles-editorial-grid .aktuelles-entry .aktuelles-entry-text > :last-child{
  margin-bottom:0!important;
}

@media(min-width:761px){
  /* Eine gemeinsame Mindesthöhe verhindert, dass die zweite Grid-Zeile
     wieder kleiner wird als die Zeile mit dem längsten Beitrag. */
  .aktuelles-manu-page .aktuelles-editorial-grid{
    --aktuelles-news-card-height: 360px;
    grid-auto-rows:minmax(var(--aktuelles-news-card-height),auto)!important;
  }
  .aktuelles-manu-page .aktuelles-editorial-grid .aktuelles-entry{
    min-height:var(--aktuelles-news-card-height)!important;
  }
}

@media(max-width:760px){
  .aktuelles-manu-page .aktuelles-editorial-grid{
    grid-auto-rows:auto!important;
  }
  .aktuelles-manu-page .aktuelles-editorial-grid .aktuelles-entry{
    height:auto!important;
    min-height:0!important;
  }
}


/* ============================================================
   AKTUELLES – BLOCKSATZ FÜR LESETEXTE
   Überschriften, Datumszeilen, Kicker und Buttons bleiben
   bewusst linksbündig.
   ============================================================ */

body.aktuelles-manu-page main.aktuelles-manu .aktuelles-lead,
body.aktuelles-manu-page main.aktuelles-manu .aktuelles-entry-text p,
body.aktuelles-manu-page main.aktuelles-manu .aktuelles-highlight p{
  text-align:justify!important;
  text-align-last:left!important;
  hyphens:none!important;
  -webkit-hyphens:none!important;
  overflow-wrap:break-word!important;
  word-break:normal!important;
}

/* Rubrikzeilen, Metadaten und Überschriften niemals in Blocksatz */
body.aktuelles-manu-page main.aktuelles-manu h1,
body.aktuelles-manu-page main.aktuelles-manu h2,
body.aktuelles-manu-page main.aktuelles-manu h3,
body.aktuelles-manu-page main.aktuelles-manu .aktuelles-meta,
body.aktuelles-manu-page main.aktuelles-manu .aktuelles-hero-kicker,
body.aktuelles-manu-page main.aktuelles-manu .aktuelles-news-kicker,
body.aktuelles-manu-page main.aktuelles-manu .manu-kicker,
body.aktuelles-manu-page main.aktuelles-manu .manu-eyebrow{
  text-align:left!important;
  text-align-last:auto!important;
  hyphens:none!important;
  -webkit-hyphens:none!important;
}

/* Auf sehr schmalen Displays ist linksbündiger Satz besser lesbar
   und verhindert große Wortabstände. */
@media(max-width:640px){
  body.aktuelles-manu-page main.aktuelles-manu .aktuelles-lead,
  body.aktuelles-manu-page main.aktuelles-manu .aktuelles-entry-text p,
  body.aktuelles-manu-page main.aktuelles-manu .aktuelles-highlight p{
    text-align:left!important;
    text-align-last:auto!important;
    hyphens:none!important;
    -webkit-hyphens:none!important;
  }
}


/* Silbentrennung deaktiviert */
html body main p,
html body main li,
html body main h1,
html body main h2,
html body main h3{
  hyphens:none!important;
  -webkit-hyphens:none!important;
  -ms-hyphens:none!important;
}

/* ===== navigation-v7.css ===== */

/* Navigation V7: vollständig vom alten globalen nav-CSS isoliert */
html{scrollbar-gutter:stable}
.dh-nav-shell,.dh-nav-shell *{box-sizing:border-box!important}
.dh-nav-shell{
 position:relative!important;inset:auto!important;z-index:1000!important;display:block!important;
 width:100%!important;height:56px!important;min-height:56px!important;margin:0!important;padding:0!important;
 background:#72070b!important;border:0!important
}
.dh-nav-wrap{
 position:relative!important;display:block!important;width:min(1180px,calc(100% - 48px))!important;
 height:56px!important;min-height:56px!important;margin:0 auto!important;padding:0!important
}
.dh-nav-links{
 position:static!important;display:flex!important;flex-flow:row nowrap!important;align-items:center!important;
 justify-content:center!important;gap:2px!important;width:100%!important;height:56px!important;
 min-height:56px!important;margin:0!important;padding:0!important;background:transparent!important
}
.dh-nav-link{
 all:unset!important;box-sizing:border-box!important;display:flex!important;flex:0 0 auto!important;
 align-items:center!important;justify-content:center!important;height:38px!important;min-height:38px!important;
 margin:0!important;padding:0 10px!important;border:0!important;border-radius:999px!important;
 background:transparent!important;color:#fff!important;font-family:Arial,Helvetica,sans-serif!important;
 font-size:13px!important;font-style:normal!important;font-weight:700!important;line-height:13px!important;
 letter-spacing:0!important;text-transform:none!important;text-decoration:none!important;white-space:nowrap!important;
 cursor:pointer!important
}
.dh-nav-link::before,.dh-nav-link::after{content:none!important;display:none!important}
.dh-nav-link:hover,.dh-nav-link:focus-visible,.dh-nav-link[aria-current="page"]{
 background:#fff!important;color:#72070b!important;height:38px!important;min-height:38px!important;
 margin:0!important;padding:0 10px!important;font-size:13px!important;line-height:13px!important
}
.dh-menu-btn{all:unset!important;display:none!important}

@media(max-width:900px){
 .dh-nav-shell{height:auto!important;min-height:54px!important}
 .dh-nav-wrap{width:min(100% - 30px,1180px)!important;height:auto!important;min-height:54px!important;padding:7px 0!important}
 .dh-menu-btn{
  all:unset!important;box-sizing:border-box!important;display:flex!important;align-items:center!important;
  justify-content:center!important;width:100%!important;height:40px!important;margin:0!important;padding:0 14px!important;
  border:1px solid rgba(255,255,255,.55)!important;border-radius:8px!important;background:#72070b!important;color:#fff!important;
  font-family:Arial,Helvetica,sans-serif!important;font-size:15px!important;font-weight:700!important;line-height:15px!important;
  cursor:pointer!important
 }
 .dh-nav-links{
  display:none!important;flex-direction:column!important;align-items:stretch!important;justify-content:flex-start!important;
  gap:6px!important;width:100%!important;height:auto!important;min-height:0!important;margin:7px 0 0!important;padding:0!important
 }
 .dh-nav-links.is-open{display:flex!important}
 .dh-nav-link,.dh-nav-link:hover,.dh-nav-link:focus-visible,.dh-nav-link[aria-current="page"]{
  width:100%!important;height:42px!important;min-height:42px!important;margin:0!important;padding:0 14px!important;
  justify-content:flex-start!important;border:1px solid rgba(255,255,255,.18)!important;border-radius:8px!important;
  font-family:Arial,Helvetica,sans-serif!important;font-size:14px!important;font-weight:700!important;line-height:14px!important
 }
 .dh-nav-link{background:rgba(255,255,255,.07)!important;color:#fff!important}
 .dh-nav-link:hover,.dh-nav-link:focus-visible,.dh-nav-link[aria-current="page"]{background:#fff!important;color:#72070b!important}
}

/* ===== catering-manufaktur.css ===== */
/* Catering – abgestimmt auf die Startseite */
.catering-manu-page main{
  background:#fffaf2!important;
  color:#27201b!important;
  font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important;
}
.catering-manu .catering-hero{
  background:#f4eadb!important;
  padding:66px 0 76px!important;
}
.catering-manu .catering-hero h1{
  max-width:980px!important;margin:0 0 20px!important;
  color:#27201b!important;-webkit-text-fill-color:#27201b!important;
  font-family:"Brush Script MT","Segoe Script",cursive!important;
  font-size:clamp(3.9rem,6.2vw,5.9rem)!important;
  font-weight:400!important;font-style:normal!important;
  line-height:.9!important;letter-spacing:-.035em!important;text-transform:none!important;
}
.catering-manu .catering-hero p{
  max-width:70ch!important;color:#3f3731!important;-webkit-text-fill-color:#3f3731!important;
  font-family:inherit!important;font-size:clamp(1.06rem,1.5vw,1.2rem)!important;
  font-weight:450!important;line-height:1.7!important;text-align:left!important;
}
.catering-manu section:not(.catering-hero){padding-top:78px!important;padding-bottom:84px!important}

/* Rubriken und Überschriften */
.catering-manu .eyebrow,.catering-manu .kicker,.catering-manu .section-kicker{
  color:#8f090e!important;-webkit-text-fill-color:#8f090e!important;
  font-family:inherit!important;font-size:.95rem!important;font-weight:850!important;
  line-height:1.35!important;letter-spacing:.07em!important;text-transform:uppercase!important;
}
.catering-manu h2{
  color:#27201b!important;-webkit-text-fill-color:#27201b!important;
  font-family:inherit!important;font-size:clamp(2rem,3.4vw,3.15rem)!important;
  font-weight:800!important;line-height:1.08!important;letter-spacing:-.025em!important;
  text-transform:none!important;
}
.catering-manu h3{
  color:#27201b!important;-webkit-text-fill-color:#27201b!important;
  font-family:inherit!important;font-size:clamp(1.25rem,2vw,1.65rem)!important;
  font-weight:800!important;line-height:1.25!important;letter-spacing:-.01em!important;
}

/* Lesetext bewusst nicht in Script-Schrift oder Blocksatz */
.catering-manu p,.catering-manu li,.catering-manu dt,.catering-manu dd{
  color:#3f3731!important;-webkit-text-fill-color:#3f3731!important;
  font-family:inherit!important;font-size:1.03rem!important;
  font-weight:430!important;line-height:1.72!important;text-align:left!important;
}
.catering-manu strong{
  color:#27201b!important;-webkit-text-fill-color:#27201b!important;font-weight:800!important;
}
.catering-manu ul,.catering-manu ol{padding-left:1.3rem!important}
.catering-manu li+li{margin-top:.55rem!important}

/* Karten / technische Planung / Preisbereiche */
.catering-manu .card,
.catering-manu article,
.catering-manu .info-card,
.catering-manu .price-card,
.catering-manu .tech-card{
  border-color:#dfd0bf!important;
}
.catering-manu .card,.catering-manu .info-card,.catering-manu .price-card,.catering-manu .tech-card{
  border-radius:22px!important;background:#fffaf2!important;
  box-shadow:0 12px 34px rgba(62,38,25,.07)!important;
}
.catering-manu img{border-radius:26px!important}

/* Links und Buttons */
.catering-manu a:not(.btn):not(.dh-nav-link){
  color:#8f090e!important;-webkit-text-fill-color:#8f090e!important;
  font-weight:750!important;text-decoration-thickness:1px!important;text-underline-offset:3px!important;
}
.catering-manu .btn,.catering-manu button{
  border-radius:999px!important;font-family:inherit!important;font-weight:800!important;
}

/* Dunkelrote Aktionsflächen: maximaler Kontrast */
.catering-manu .manu-event,
.catering-manu .catering-cta,
.catering-manu .dark-section{
  background:#72070b!important;color:#fff!important;
}
.catering-manu .manu-event h2,.catering-manu .manu-event h3,.catering-manu .manu-event p,
.catering-manu .catering-cta h2,.catering-manu .catering-cta h3,.catering-manu .catering-cta p,
.catering-manu .dark-section h2,.catering-manu .dark-section h3,.catering-manu .dark-section p{
  color:#fff!important;-webkit-text-fill-color:#fff!important;
}

/* Platzhalter für Verkaufswagen ruhig und klar halten */
.catering-manu .wagon-placeholder,
.catering-manu [class*="placeholder"]{
  color:#675a50!important;-webkit-text-fill-color:#675a50!important;
  background:#f4eadb!important;border-color:#dfd0bf!important;
  font-family:inherit!important;font-size:.98rem!important;line-height:1.55!important;
}

@media(max-width:760px){
  .catering-manu .catering-hero{padding:46px 0 56px!important}
  .catering-manu .catering-hero h1{
    font-size:clamp(3.05rem,15vw,4.25rem)!important;line-height:.92!important;
  }
  .catering-manu section:not(.catering-hero){padding-top:58px!important;padding-bottom:64px!important}
  .catering-manu p,.catering-manu li,.catering-manu dt,.catering-manu dd{
    font-size:1rem!important;line-height:1.68!important;
  }
}

/* ===== seiten-typografie-startseite.css ===== */
/* Einheitliche Typografie für Catering, Kontakt und Aktuelles.
   Ziel: gleiche Hierarchie wie auf der Startseite, Script nur als großer Hero-Akzent. */

.catering-manu-page main,
.contact-manu-page main,
.aktuelles-manu-page main{
  --type-ink:#27201b;
  --type-copy:#3f3731;
  --type-muted:#675a50;
  --type-red:#8f090e;
  --type-darkred:#72070b;
  --type-cream:#f4eadb;
  --type-paper:#fffaf2;
  font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important;
  color:var(--type-ink)!important;
}

/* Hero-Haupttitel: derselbe emotionale Akzent wie auf der Startseite */
.catering-manu .catering-hero h1,
.contact-manu .contact-hero h1,
.aktuelles-manu .aktuelles-hero h1{
  color:var(--type-ink)!important;
  -webkit-text-fill-color:var(--type-ink)!important;
  font-family:"Brush Script MT","Segoe Script",cursive!important;
  font-size:clamp(3.9rem,6.2vw,5.9rem)!important;
  font-weight:400!important;
  font-style:normal!important;
  line-height:.9!important;
  letter-spacing:-.035em!important;
  text-transform:none!important;
}

/* Kleine Rubrikzeilen */
.catering-manu .eyebrow,.catering-manu .kicker,.catering-manu .section-kicker,
.contact-manu .eyebrow,.contact-manu .kicker,.contact-manu .section-kicker,
.aktuelles-manu .manu-kicker,.aktuelles-manu .manu-eyebrow,.aktuelles-manu .aktuelles-meta{
  color:var(--type-red)!important;
  -webkit-text-fill-color:var(--type-red)!important;
  font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important;
  font-size:.95rem!important;
  font-weight:850!important;
  line-height:1.35!important;
  letter-spacing:.07em!important;
}

/* Abschnittsüberschriften */
.catering-manu h2,
.contact-manu h2,
.aktuelles-manu .aktuelles-section-head h2,
.aktuelles-manu .aktuelles-highlight h2,
.aktuelles-manu .aktuelles-cta h2{
  font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important;
  font-size:clamp(2.15rem,3.6vw,3.35rem)!important;
  font-weight:800!important;
  font-style:normal!important;
  line-height:1.06!important;
  letter-spacing:-.028em!important;
  text-transform:none!important;
}
.catering-manu h2,.contact-manu h2,.aktuelles-manu .aktuelles-section-head h2{
  color:var(--type-ink)!important;
  -webkit-text-fill-color:var(--type-ink)!important;
}

/* H3 / Beitragsüberschriften */
.catering-manu h3,
.contact-manu h3,
.aktuelles-manu .aktuelles-entry h3{
  color:var(--type-ink)!important;
  -webkit-text-fill-color:var(--type-ink)!important;
  font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important;
  font-size:clamp(1.3rem,2vw,1.7rem)!important;
  font-weight:800!important;
  font-style:normal!important;
  line-height:1.22!important;
  letter-spacing:-.015em!important;
}

/* Fließtext: bewusst linksbündig und kontrastreich */
.catering-manu p,.catering-manu li,.catering-manu dt,.catering-manu dd,
.contact-manu p,.contact-manu li,.contact-manu address,.contact-manu label,
.aktuelles-manu .aktuelles-lead,.aktuelles-manu .aktuelles-entry-text p{
  color:var(--type-copy)!important;
  -webkit-text-fill-color:var(--type-copy)!important;
  font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important;
  font-size:1.04rem!important;
  font-weight:430!important;
  line-height:1.7!important;
  letter-spacing:0!important;
  text-align:left!important;
}

/* Hero-Einleitung etwas größer */
.catering-manu .catering-hero p,
.contact-manu .contact-hero p,
.aktuelles-manu .aktuelles-lead{
  max-width:68ch!important;
  font-size:clamp(1.06rem,1.45vw,1.18rem)!important;
  line-height:1.68!important;
}

/* Links */
.catering-manu a:not(.btn):not(.dh-nav-link),
.contact-manu a:not(.btn):not(.dh-nav-link),
.aktuelles-manu .aktuelles-entry a{
  color:var(--type-red)!important;
  -webkit-text-fill-color:var(--type-red)!important;
  font-family:inherit!important;
  font-weight:750!important;
  text-decoration-thickness:1px!important;
  text-underline-offset:3px!important;
}

/* Dunkelrote Flächen: Weiß statt geerbter dunkler Textfarben */
.catering-manu .manu-event h2,.catering-manu .manu-event h3,.catering-manu .manu-event p,
.catering-manu .catering-cta h2,.catering-manu .catering-cta h3,.catering-manu .catering-cta p,
.contact-manu .manu-event h2,.contact-manu .manu-event h3,.contact-manu .manu-event p,
.contact-manu .contact-cta h2,.contact-manu .contact-cta h3,.contact-manu .contact-cta p,
.aktuelles-manu .aktuelles-highlight h2,.aktuelles-manu .aktuelles-highlight p,
.aktuelles-manu .aktuelles-cta h2,.aktuelles-manu .aktuelles-cta p{
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
}

/* Aktuelles: Beitragstext etwas kompakter als Hero, aber gut lesbar */
.aktuelles-manu .aktuelles-entry-text p{
  font-size:1.02rem!important;
  line-height:1.72!important;
}

/* Formulare Kontakt */
.contact-manu input,.contact-manu textarea,.contact-manu select{
  color:var(--type-ink)!important;
  -webkit-text-fill-color:var(--type-ink)!important;
  font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important;
  font-size:1rem!important;
  line-height:1.45!important;
}

@media(max-width:760px){
  .catering-manu .catering-hero h1,
  .contact-manu .contact-hero h1,
  .aktuelles-manu .aktuelles-hero h1{
    font-size:clamp(3.05rem,15vw,4.25rem)!important;
    line-height:.92!important;
  }
  .catering-manu p,.catering-manu li,.catering-manu dt,.catering-manu dd,
  .contact-manu p,.contact-manu li,.contact-manu address,.contact-manu label,
  .aktuelles-manu .aktuelles-lead,.aktuelles-manu .aktuelles-entry-text p{
    font-size:1rem!important;
    line-height:1.66!important;
  }
}


/* ============================================================
   FINALE ÜBERSCHRIFTEN-FARBEN
   Bewusst mit hoher Seitenspezifität, weil ältere Stylesheets
   ebenfalls !important-Regeln für Überschriften enthalten.
   ============================================================ */

/* Alle Überschriften auf hellen Flächen */
body.catering-manu-page main.catering-manu h1,
body.catering-manu-page main.catering-manu h2,
body.catering-manu-page main.catering-manu h3,
body.contact-manu-page main.contact-manu h1,
body.contact-manu-page main.contact-manu h2,
body.contact-manu-page main.contact-manu h3,
body.aktuelles-manu-page main.aktuelles-manu h1,
body.aktuelles-manu-page main.aktuelles-manu h2,
body.aktuelles-manu-page main.aktuelles-manu h3{
  color:#27201b!important;
  -webkit-text-fill-color:#27201b!important;
}

/* Dunkelrote Flächen – Überschriften und Rubrikzeilen müssen weiß bleiben */
body.catering-manu-page main.catering-manu .manu-event h1,
body.catering-manu-page main.catering-manu .manu-event h2,
body.catering-manu-page main.catering-manu .manu-event h3,
body.catering-manu-page main.catering-manu .catering-cta h1,
body.catering-manu-page main.catering-manu .catering-cta h2,
body.catering-manu-page main.catering-manu .catering-cta h3,
body.catering-manu-page main.catering-manu .dark-section h1,
body.catering-manu-page main.catering-manu .dark-section h2,
body.catering-manu-page main.catering-manu .dark-section h3,
body.contact-manu-page main.contact-manu .manu-event h1,
body.contact-manu-page main.contact-manu .manu-event h2,
body.contact-manu-page main.contact-manu .manu-event h3,
body.contact-manu-page main.contact-manu .contact-cta h1,
body.contact-manu-page main.contact-manu .contact-cta h2,
body.contact-manu-page main.contact-manu .contact-cta h3,
body.aktuelles-manu-page main.aktuelles-manu .aktuelles-highlight h1,
body.aktuelles-manu-page main.aktuelles-manu .aktuelles-highlight h2,
body.aktuelles-manu-page main.aktuelles-manu .aktuelles-highlight h3,
body.aktuelles-manu-page main.aktuelles-manu .aktuelles-cta h1,
body.aktuelles-manu-page main.aktuelles-manu .aktuelles-cta h2,
body.aktuelles-manu-page main.aktuelles-manu .aktuelles-cta h3{
  color:#ffffff!important;
  -webkit-text-fill-color:#ffffff!important;
}

/* Rubrikzeilen auf hellen Flächen */
body.catering-manu-page main.catering-manu .eyebrow,
body.catering-manu-page main.catering-manu .kicker,
body.catering-manu-page main.catering-manu .section-kicker,
body.contact-manu-page main.contact-manu .eyebrow,
body.contact-manu-page main.contact-manu .kicker,
body.contact-manu-page main.contact-manu .section-kicker,
body.aktuelles-manu-page main.aktuelles-manu .manu-kicker,
body.aktuelles-manu-page main.aktuelles-manu .manu-eyebrow,
body.aktuelles-manu-page main.aktuelles-manu .aktuelles-meta{
  color:#8f090e!important;
  -webkit-text-fill-color:#8f090e!important;
}

/* Rubrikzeilen auf dunkelroten Flächen */
body.catering-manu-page main.catering-manu .manu-event .eyebrow,
body.catering-manu-page main.catering-manu .catering-cta .eyebrow,
body.contact-manu-page main.contact-manu .manu-event .eyebrow,
body.contact-manu-page main.contact-manu .contact-cta .eyebrow,
body.aktuelles-manu-page main.aktuelles-manu .aktuelles-highlight .manu-eyebrow,
body.aktuelles-manu-page main.aktuelles-manu .aktuelles-cta .manu-eyebrow{
  color:#fff1e6!important;
  -webkit-text-fill-color:#fff1e6!important;
}


/* Aktuelles Hero-Kicker – exakt wie die kleinen Startseiten-Rubriküberschriften */
body.aktuelles-manu-page main.aktuelles-manu .aktuelles-hero .aktuelles-hero-kicker{
  display:inline-flex!important;
  align-items:center!important;
  gap:11px!important;
  margin:0 0 16px!important;
  padding:0!important;
  color:#a70b11!important;
  -webkit-text-fill-color:#a70b11!important;
  font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important;
  font-size:1rem!important;
  font-weight:800!important;
  font-style:normal!important;
  line-height:1.25!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
  opacity:1!important;
}
body.aktuelles-manu-page main.aktuelles-manu .aktuelles-hero .aktuelles-hero-kicker::before{
  content:""!important;
  display:block!important;
  width:34px!important;
  height:2px!important;
  flex:0 0 34px!important;
  background:#a70b11!important;
}
@media(max-width:760px){
  body.aktuelles-manu-page main.aktuelles-manu .aktuelles-hero .aktuelles-hero-kicker{
    font-size:.92rem!important;
    letter-spacing:.07em!important;
  }
}


/* Aktuelles: Rubrik "Neuigkeiten" exakt im Startseiten-Kicker-Stil */
body.aktuelles-manu-page main.aktuelles-manu .aktuelles-news .aktuelles-news-kicker{
  display:inline-flex!important;
  align-items:center!important;
  gap:11px!important;
  margin:0 0 16px!important;
  padding:0!important;
  color:#a70b11!important;
  -webkit-text-fill-color:#a70b11!important;
  font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important;
  font-size:1rem!important;
  font-weight:800!important;
  font-style:normal!important;
  line-height:1.25!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
  opacity:1!important;
}
body.aktuelles-manu-page main.aktuelles-manu .aktuelles-news .aktuelles-news-kicker::before{
  content:""!important;
  display:block!important;
  width:34px!important;
  height:2px!important;
  flex:0 0 34px!important;
  background:#a70b11!important;
}
@media(max-width:760px){
  body.aktuelles-manu-page main.aktuelles-manu .aktuelles-news .aktuelles-news-kicker{
    font-size:.92rem!important;
    letter-spacing:.07em!important;
  }
}


/* ============================================================
   AKTUELLES – HERO/RUBRIKTYPOGRAFIE WIE STARTSEITE
   Gezielt für:
   - Aktuelles vom Dampfnudelhof
   - Neuigkeiten
   - Neuigkeiten & Hinweise
   - Frisch informiert ♡
   ============================================================ */

/* Kleine Rubriküberschriften: wie "Traditionelles Backhandwerk" */
body.aktuelles-manu-page main.aktuelles-manu .aktuelles-start-kicker,
body.aktuelles-manu-page main.aktuelles-manu .aktuelles-start-news-kicker{
  display:inline-flex!important;
  align-items:center!important;
  gap:11px!important;
  margin:0 0 16px!important;
  padding:0!important;
  color:#a70b11!important;
  -webkit-text-fill-color:#a70b11!important;
  font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important;
  font-size:1rem!important;
  font-weight:800!important;
  font-style:normal!important;
  line-height:1.25!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
  opacity:1!important;
}
body.aktuelles-manu-page main.aktuelles-manu .aktuelles-start-kicker::before,
body.aktuelles-manu-page main.aktuelles-manu .aktuelles-start-news-kicker::before{
  content:""!important;
  display:block!important;
  width:34px!important;
  height:2px!important;
  flex:0 0 34px!important;
  background:#a70b11!important;
}

/* Große Hero-Überschrift: wie "Pfälzer Dampfnudeln" */
body.aktuelles-manu-page main.aktuelles-manu .aktuelles-start-title{
  margin:.2rem 0 .7rem!important;
  max-width:1000px!important;
  color:#27201b!important;
  -webkit-text-fill-color:#27201b!important;
  font-family:"Brush Script MT","Segoe Script",cursive!important;
  font-size:clamp(3.9rem,6.2vw,5.9rem)!important;
  font-weight:400!important;
  font-style:normal!important;
  line-height:.90!important;
  letter-spacing:-.035em!important;
  text-transform:none!important;
}

/* Emotionaler Zusatz: wie "Tradition, die man schmeckt! ♡" */
body.aktuelles-manu-page main.aktuelles-manu .aktuelles-start-script{
  margin:0 0 20px!important;
  color:#a70b11!important;
  -webkit-text-fill-color:#a70b11!important;
  font-family:"Brush Script MT","Segoe Script",cursive!important;
  font-size:clamp(1.55rem,2.35vw,2.15rem)!important;
  font-weight:400!important;
  font-style:normal!important;
  line-height:1.15!important;
  letter-spacing:0!important;
  text-transform:none!important;
  text-align:left!important;
}

@media(max-width:760px){
  body.aktuelles-manu-page main.aktuelles-manu .aktuelles-start-kicker,
  body.aktuelles-manu-page main.aktuelles-manu .aktuelles-start-news-kicker{
    font-size:.92rem!important;
    letter-spacing:.07em!important;
  }
  body.aktuelles-manu-page main.aktuelles-manu .aktuelles-start-title{
    font-size:clamp(3.05rem,15vw,4.25rem)!important;
    line-height:.92!important;
  }
  body.aktuelles-manu-page main.aktuelles-manu .aktuelles-start-script{
    font-size:clamp(1.4rem,7vw,1.85rem)!important;
  }
}

/* ===== seitenkorrekturen.css ===== */
.jobs-bottom-phone{margin:32px auto;padding:0 20px;max-width:1180px;font:800 1.15rem/1.4 system-ui,-apple-system,"Segoe UI",Arial,sans-serif}
.jobs-bottom-phone a{color:#a70b11;text-decoration:none}.jobs-bottom-phone a:hover{text-decoration:underline}

.contact-manu-page main .contact-red-notice,.contact-manu-page main .contact-red-notice *{color:#a70b11!important;-webkit-text-fill-color:#a70b11!important}

.catering-unified-page main{color:#3f3731;font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif}
.catering-unified-page main p,.catering-unified-page main li,.catering-unified-page main address{
 color:#3f3731!important;-webkit-text-fill-color:#3f3731!important;font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important;
 font-size:1.04rem;line-height:1.7
}
.catering-unified-page main p,.catering-unified-page main li{
 text-align:justify;text-align-last:left;hyphens:none;-webkit-hyphens:none;word-break:normal;overflow-wrap:normal
}
.catering-unified-page main h1{
 color:#27201b!important;-webkit-text-fill-color:#27201b!important;font-family:"Brush Script MT","Segoe Script",cursive!important;
 font-size:clamp(3.9rem,6.2vw,5.9rem)!important;font-weight:400!important;line-height:.9!important;letter-spacing:-.035em!important
}
.catering-unified-page main h2{
 color:#27201b!important;-webkit-text-fill-color:#27201b!important;font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important;
 font-size:clamp(2.15rem,3.6vw,3.35rem)!important;font-weight:800!important;line-height:1.06!important;letter-spacing:-.028em!important
}
.catering-unified-page main h3{
 color:#27201b!important;-webkit-text-fill-color:#27201b!important;font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important;
 font-size:clamp(1.3rem,2vw,1.7rem)!important;font-weight:800!important;line-height:1.22!important
}
.catering-unified-page main .eyebrow,.catering-unified-page main .kicker,.catering-unified-page main .manu-kicker,.catering-unified-page main .price-kicker{
 color:#a70b11!important;-webkit-text-fill-color:#a70b11!important;font-size:1rem!important;font-weight:800!important;letter-spacing:.08em!important;text-transform:uppercase
}
.catering-unified-page main .organizer-booking,.catering-unified-page main .organizer-booking *,
.catering-unified-page main .dark,.catering-unified-page main .dark *{color:#fff!important;-webkit-text-fill-color:#fff!important}
.catering-unified-page main a:not(.btn):not([class*="button"]){color:#a70b11}
@media(max-width:640px){
 .catering-unified-page main h1{font-size:clamp(3.05rem,15vw,4.25rem)!important}
 .catering-unified-page main h2{font-size:clamp(1.9rem,8vw,2.65rem)!important}
 .catering-unified-page main p,.catering-unified-page main li{font-size:1rem;text-align:left;text-align-last:auto}
}

/* ===== catering-typografie-final.css ===== */
/* Catering – finale Typografie und Lesbarkeit, passend zu den übrigen Seiten */
body.catering-unified-page main{
  color:#3f3731 !important;
  font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif !important;
}

/* Fließtext */
body.catering-unified-page main p,
body.catering-unified-page main li,
body.catering-unified-page main address,
body.catering-unified-page main label{
  color:#3f3731 !important;
  -webkit-text-fill-color:#3f3731 !important;
  font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif !important;
  font-size:1.04rem !important;
  font-weight:400 !important;
  line-height:1.70 !important;
}

/* Hauptüberschrift wie auf den übrigen Seiten */
body.catering-unified-page main h1{
  color:#27201b !important;
  -webkit-text-fill-color:#27201b !important;
  font-family:"Brush Script MT","Segoe Script",cursive !important;
  font-size:clamp(3.9rem,6.2vw,5.9rem) !important;
  font-weight:400 !important;
  line-height:.90 !important;
  letter-spacing:-.035em !important;
}

/* Abschnittsüberschriften */
body.catering-unified-page main h2{
  color:#27201b !important;
  -webkit-text-fill-color:#27201b !important;
  font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif !important;
  font-size:clamp(2.15rem,3.6vw,3.35rem) !important;
  font-weight:800 !important;
  line-height:1.06 !important;
  letter-spacing:-.028em !important;
}

/* Karten-/Unterüberschriften */
body.catering-unified-page main h3,
body.catering-unified-page main h4{
  color:#27201b !important;
  -webkit-text-fill-color:#27201b !important;
  font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif !important;
  font-size:clamp(1.3rem,2vw,1.7rem) !important;
  font-weight:800 !important;
  line-height:1.22 !important;
}

/* Kleine Rubriken */
body.catering-unified-page main .eyebrow,
body.catering-unified-page main .kicker,
body.catering-unified-page main .manu-kicker,
body.catering-unified-page main .price-kicker{
  color:#a70b11 !important;
  -webkit-text-fill-color:#a70b11 !important;
  font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif !important;
  font-size:1rem !important;
  font-weight:800 !important;
  line-height:1.25 !important;
  letter-spacing:.08em !important;
  text-transform:uppercase !important;
}

/* Blocksatz wie gewünscht, ohne automatische Silbentrennung */
body.catering-unified-page main p,
body.catering-unified-page main li{
  text-align:justify !important;
  text-align-last:left !important;
  hyphens:none !important;
  -webkit-hyphens:none !important;
  word-break:normal !important;
  overflow-wrap:normal !important;
}

/* Rote/dunkle Flächen: heller Text für ausreichenden Kontrast */
body.catering-unified-page main .organizer-booking,
body.catering-unified-page main .organizer-booking *,
body.catering-unified-page main .dark,
body.catering-unified-page main .dark *,
body.catering-unified-page main [class*="cta"],
body.catering-unified-page main [class*="cta"] *{
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
}

/* Helle Karten und Flächen: dunkler Text */
body.catering-unified-page main .organizer-info-card,
body.catering-unified-page main .price-card,
body.catering-unified-page main .wagon-profile,
body.catering-unified-page main .organizer-contact-box{
  color:#3f3731 !important;
}
body.catering-unified-page main .organizer-info-card h2,
body.catering-unified-page main .organizer-info-card h3,
body.catering-unified-page main .price-card h2,
body.catering-unified-page main .price-card h3,
body.catering-unified-page main .wagon-profile h2,
body.catering-unified-page main .wagon-profile h3,
body.catering-unified-page main .organizer-contact-box h2,
body.catering-unified-page main .organizer-contact-box h3{
  color:#27201b !important;
  -webkit-text-fill-color:#27201b !important;
}

/* Links auf hellen Flächen */
body.catering-unified-page main a:not(.btn):not([class*="button"]){
  color:#a70b11;
  -webkit-text-fill-color:#a70b11;
}

/* Mobile Größen wie auf den übrigen Seiten */
@media(max-width:640px){
  body.catering-unified-page main h1{
    font-size:clamp(3.05rem,15vw,4.25rem) !important;
  }
  body.catering-unified-page main h2{
    font-size:clamp(1.9rem,8vw,2.65rem) !important;
  }
  body.catering-unified-page main h3,
  body.catering-unified-page main h4{
    font-size:clamp(1.2rem,5vw,1.5rem) !important;
  }
  body.catering-unified-page main p,
  body.catering-unified-page main li,
  body.catering-unified-page main address,
  body.catering-unified-page main label{
    font-size:1rem !important;
  }
  body.catering-unified-page main p,
  body.catering-unified-page main li{
    text-align:left !important;
    text-align-last:auto !important;
  }
}


/* Catering-Einleitung: hervorgehobener Manufaktur-Text */
body.catering-unified-page main .catering-intro-feature{
  max-width:78ch;
  margin:1.4rem 0 2rem;
  padding:1.25rem 1.4rem;
  border-left:4px solid #a70b11;
  background:#f4eadb;
  border-radius:0 14px 14px 0;
  color:#3f3731 !important;
  -webkit-text-fill-color:#3f3731 !important;
  font-size:1.08rem !important;
  line-height:1.75 !important;
  text-align:justify !important;
  text-align-last:left !important;
  hyphens:none !important;
  -webkit-hyphens:none !important;
}
@media(max-width:640px){
  body.catering-unified-page main .catering-intro-feature{
    padding:1rem 1.1rem;
    font-size:1rem !important;
    text-align:left !important;
    text-align-last:auto !important;
  }
}


/* Buchungsbereich: hoher Kontrast auf dunkelrotem Hintergrund */
body.catering-unified-page main .organizer-booking .booking-readable-kicker,
body.catering-unified-page main .organizer-booking .booking-readable-title,
body.catering-unified-page main .organizer-booking .booking-readable-name{
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  opacity:1 !important;
  text-shadow:none !important;
}
body.catering-unified-page main .organizer-booking .booking-readable-kicker::before{
  background:#ffffff !important;
}


/* Preisübersicht EDEKA / Feste / Veranstaltungen */
body.catering-unified-page main .edeka-price-list{
  margin:2rem 0;
  padding:1.6rem;
  background:#fffaf2;
  border:1px solid #dfd0bf;
  border-top:4px solid #a70b11;
  border-radius:16px;
}
body.catering-unified-page main .edeka-price-list h3{
  margin:0 0 1rem;
  color:#27201b !important;
  -webkit-text-fill-color:#27201b !important;
}
body.catering-unified-page main .edeka-price-items{
  list-style:none;
  margin:0;
  padding:0;
}
body.catering-unified-page main .edeka-price-items li{
  display:flex;
  justify-content:space-between;
  gap:1.5rem;
  padding:.7rem 0;
  border-bottom:1px solid #dfd0bf;
  color:#3f3731 !important;
  -webkit-text-fill-color:#3f3731 !important;
  text-align:left !important;
}
body.catering-unified-page main .edeka-price-items strong{
  color:#a70b11 !important;
  -webkit-text-fill-color:#a70b11 !important;
  white-space:nowrap;
}
body.catering-unified-page main .edeka-price-note{
  margin:1rem 0 0;
  color:#75685e !important;
  -webkit-text-fill-color:#75685e !important;
  font-size:.96rem !important;
  text-align:left !important;
}
@media(max-width:520px){
  body.catering-unified-page main .edeka-price-items li{
    display:block;
  }
  body.catering-unified-page main .edeka-price-items strong{
    display:block;
    margin-top:.15rem;
  }
}


/* Wolfgang Bösl im Buchungsbereich: kontrastreich und gut lesbar */
body.catering-unified-page main .organizer-booking .booking-readable-name{
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
  opacity:1 !important;
  font-weight:800 !important;
}


/* Wolfgang Bösl steht auf weißem Hintergrund: dunkle, kontrastreiche Schrift */
html body.catering-unified-page main .booking-readable-name{
  color:#27201b !important;
  -webkit-text-fill-color:#27201b !important;
  opacity:1 !important;
  font-weight:800 !important;
  text-shadow:none !important;
}

/* ===== catering-buchung-kontrast.css ===== */
/*
 * Buchungsbereich – gezielte Kontrastkorrektur
 * Wolfgang Bösl befindet sich auf weißem Hintergrund.
 */
#main .booking-wolfgang-name,
main .booking-wolfgang-name,
body .booking-wolfgang-name {
  color: #27201b !important;
  -webkit-text-fill-color: #27201b !important;
  font-weight: 800 !important;
  opacity: 1 !important;
  text-shadow: none !important;
}

/* Auch verschachtelte Elemente dürfen die Farbe nicht wieder überschreiben. */
#main .booking-wolfgang-name *,
main .booking-wolfgang-name *,
body .booking-wolfgang-name * {
  color: #27201b !important;
  -webkit-text-fill-color: #27201b !important;
}

/* ===== homepage-hero.css ===== */

/* =========================================================
   STARTSEITE – HERO MIT ORIGINALFOTO DES DAMPFNUDELHOFS
   ========================================================= */

body.index-page .hero-home-userphoto{
  position:relative;
  min-height:610px;
  display:flex;
  align-items:center;
  overflow:hidden;
  isolation:isolate;
  background-image:
    linear-gradient(90deg,
      rgba(39,20,8,.68) 0%,
      rgba(39,20,8,.48) 29%,
      rgba(39,20,8,.22) 48%,
      rgba(39,20,8,.04) 70%,
      rgba(39,20,8,0) 100%),
    url("pics/startseite-dampfnudel.jpg") !important;
  background-size:cover !important;
  background-repeat:no-repeat !important;
  background-position:center 55% !important;
}

body.index-page .hero-home-userphoto::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  pointer-events:none;
  background:
    linear-gradient(180deg,rgba(255,246,223,.04),rgba(95,45,9,.12));
}

body.index-page .hero-home-userphoto .hero-home-inner{
  position:relative;
  z-index:2;
  width:100%;
  max-width:1180px;
  margin:0 auto;
  padding:72px 20px 86px;
}

body.index-page .hero-home-userphoto .hero-home-copy{
  max-width:590px;
  text-align:left;
  color:#fff;
  text-shadow:0 2px 12px rgba(33,13,3,.35);
}

body.index-page .hero-home-userphoto .hero-kicker{
  display:inline-block;
  margin:0 0 12px;
  color:#fff1d7;
  font-size:.9rem;
  font-weight:800;
  letter-spacing:.09em;
  text-transform:uppercase;
}

body.index-page .hero-home-userphoto h1{
  margin:0;
  color:#fff;
  font-size:clamp(3.5rem,7vw,6.8rem);
  line-height:.88;
  font-weight:900;
  letter-spacing:.01em;
  text-transform:uppercase;
}

body.index-page .hero-home-userphoto .hero-script{
  margin:22px 0 18px;
  color:#fff;
  font-family:"Brush Script MT","Segoe Script",cursive;
  font-size:clamp(2rem,4vw,3.45rem);
  line-height:1.05;
}

body.index-page .hero-home-userphoto .hero-tagline{
  max-width:555px;
  margin:0;
  color:#fff;
  font-size:1.15rem;
  font-weight:600;
  line-height:1.55;
}

body.index-page .hero-home-userphoto .hero-actions{
  display:flex;
  flex-wrap:wrap;
  gap:14px;
  margin-top:30px;
}

body.index-page .hero-home-userphoto .hero-btn{
  min-width:190px;
  justify-content:center;
  text-align:center;
}

body.index-page .hero-home-userphoto .hero-btn-light{
  color:#a70d12 !important;
  background:#fff !important;
  border:2px solid #fff !important;
}

body.index-page .hero-home-userphoto .hero-btn-light:hover{
  color:#fff !important;
  background:#8f080d !important;
  border-color:#8f080d !important;
}

/* Die vier vorhandenen Schnellzugriffe schließen direkt an den Hero an. */
body.index-page .home-feature-wrap{
  position:relative;
  z-index:5;
}

/* Desktop: Dampfnudel bewusst rechts halten, Text links. */
@media(min-width:1001px){
  body.index-page .hero-home-userphoto{
    background-position:center 54% !important;
  }
}

/* Tablet */
@media(max-width:1000px){
  body.index-page .hero-home-userphoto{
    min-height:560px;
    background-position:58% 54% !important;
  }

  body.index-page .hero-home-userphoto .hero-home-copy{
    max-width:500px;
  }

  body.index-page .hero-home-userphoto .hero-tagline{
    font-size:1.04rem;
  }
}

/* Smartphone */
@media(max-width:760px){
  body.index-page .hero-home-userphoto{
    min-height:620px;
    align-items:flex-end;
    background-position:66% center !important;
  }

  body.index-page .hero-home-userphoto::after{
    content:"";
    position:absolute;
    inset:0;
    z-index:0;
    background:
      linear-gradient(180deg,
        rgba(24,10,3,.04) 12%,
        rgba(24,10,3,.18) 42%,
        rgba(24,10,3,.72) 72%,
        rgba(24,10,3,.90) 100%);
  }

  body.index-page .hero-home-userphoto .hero-home-inner{
    z-index:2;
    padding:210px 18px 38px;
  }

  body.index-page .hero-home-userphoto .hero-home-copy{
    max-width:none;
  }

  body.index-page .hero-home-userphoto h1{
    font-size:clamp(3rem,15vw,4.9rem);
  }

  body.index-page .hero-home-userphoto .hero-script{
    margin-top:16px;
    font-size:2.15rem;
  }

  body.index-page .hero-home-userphoto .hero-tagline{
    max-width:none;
    font-size:1rem;
  }

  body.index-page .hero-home-userphoto .hero-actions{
    gap:10px;
  }

  body.index-page .hero-home-userphoto .hero-btn{
    min-width:0;
    flex:1 1 165px;
  }
}


/* STARTSEITE-DAMPFNUDELN-SCHREIBSCHRIFT-20260914 */
.hero-home .hero-dampfnudeln-script{
  font-family:"Brush Script MT","Segoe Script",cursive !important;
}


/* STARTSEITE-TEXTE-BLOCKSATZ-20260914 */
/* Fließtexte der Startseite im Blocksatz; Überschriften, Buttons und Navigation bleiben unverändert. */
body.home main p,
.hero-home .hero-tagline,
#catering .section-head > p,
#spezialitaeten .spezialitaeten-intro-text p,
#ueber-uns p {
  text-align: justify !important;
  text-justify: inter-word;
}


/* Blocksatz für weitere Fließtexte auf index.html */
.hero-home p.hero-tagline,
main .section-head > p,
main .spezialitaeten-intro-text p,
main .about-copy p,
main .craft-copy p{
  text-align:justify !important;
  text-justify:inter-word;
}


/* UEBER-TRADITION-QUALITAET-NEBEN-ROTEM-ZEICHEN-20260914 */
#ueber-uns .quote-mark{
  display:flex;
  align-items:center;
  gap:.75rem;
}
#ueber-uns .quote-label{
  font-family:inherit;
  font-size:.78rem;
  font-weight:900;
  letter-spacing:.13em;
  line-height:1.2;
  text-transform:uppercase;
  white-space:nowrap;
}
@media (max-width:640px){
  #ueber-uns .quote-mark{
    flex-wrap:wrap;
  }
}


/* UEBER-ANFUEHRUNGSZEICHEN-TEXT-GLEICHE-GROESSE-20260914 */
#ueber-uns .quote-mark,
#ueber-uns .quote-mark > span,
#ueber-uns .quote-label{
  font-size:2rem !important;
  line-height:1 !important;
}
#ueber-uns .quote-label{
  letter-spacing:0 !important;
  text-transform:none !important;
}


/* HERO-HARMONISCHE-TYPOGRAFIE-20260914 */
.hero-home .hero-kicker {
  color: var(--red) !important;
  font-family: inherit !important;
  font-size: clamp(.78rem, 1.25vw, .92rem) !important;
  font-weight: 900 !important;
  letter-spacing: .11em !important;
  line-height: 1.35 !important;
  text-transform: uppercase !important;
  margin-bottom: .65rem !important;
}

.hero-home .hero-dampfnudeln-script {
  color: var(--ink) !important;
  font-family: "Brush Script MT","Segoe Script",cursive !important;
  font-size: clamp(3.7rem, 8vw, 6.4rem) !important;
  font-weight: 400 !important;
  line-height: .9 !important;
  letter-spacing: -.02em !important;
  margin: 0 0 .55rem !important;
}

.hero-home .hero-script {
  color: var(--red) !important;
  font-family: "Brush Script MT","Segoe Script",cursive !important;
  font-size: clamp(1.85rem, 3.6vw, 2.8rem) !important;
  font-weight: 400 !important;
  line-height: 1.05 !important;
  margin: .25rem 0 .9rem !important;
}

.hero-home .hero-tagline {
  color: var(--ink) !important;
  font-family: inherit !important;
  font-size: clamp(1rem, 1.55vw, 1.16rem) !important;
  font-weight: 500 !important;
  line-height: 1.62 !important;
  max-width: 44rem !important;
  margin-top: 0 !important;
}

@media (max-width: 640px) {
  .hero-home .hero-kicker {
    font-size: .74rem !important;
    letter-spacing: .08em !important;
  }

  .hero-home .hero-dampfnudeln-script {
    font-size: clamp(3rem, 17vw, 4.5rem) !important;
    line-height: .92 !important;
  }

  .hero-home .hero-script {
    font-size: clamp(1.7rem, 9vw, 2.35rem) !important;
  }

  .hero-home .hero-tagline {
    font-size: 1rem !important;
    line-height: 1.55 !important;
  }
}


/* HERO-DAMPFNUDELN-BESCHREIBUNG-WEISS-20260914 */
.hero-home .hero-dampfnudeln-script,
.hero-home .hero-tagline {
  color:#fff !important;
}


/* HERO-KICKER-TRADITION-BUTTON-ROT-20260914 */
/* Gleicher Rotton wie die roten Buttons */
.hero-home .hero-kicker,
.hero-home .hero-script {
  color:var(--red) !important;
}

/* ===== craft-section.css ===== */
/* ==========================================================
   STARTSEITE – „Mit Liebe zum traditionellen Backhandwerk“
   Dieser Abschnitt steht im HTML direkt VOR #catering.
   ========================================================== */

.craft-section {
  width: 100%;
  margin: 0;
  padding: 56px 0;
  background: #fbf6ed;
}

.craft-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(300px, 430px);
  gap: clamp(36px, 5vw, 64px);
  align-items: center;
}

.craft-copy {
  max-width: 570px;
}

.craft-heart {
  margin: 0 0 8px;
  color: #a70d12;
  font-family: "Segoe Script", "Brush Script MT", cursive;
  font-size: 3.4rem;
  line-height: .85;
  transform: rotate(-7deg);
  transform-origin: left center;
}

.craft-script {
  margin: 0 0 8px;
  color: #a70d12;
  font-family: "Segoe Script", "Brush Script MT", cursive;
  font-size: clamp(1.9rem, 3vw, 2.7rem);
  line-height: 1;
}

.craft-copy h2 {
  margin: 0;
  color: #302219;
  font-size: clamp(2.7rem, 4.6vw, 4.7rem);
  font-weight: 900;
  line-height: .94;
  letter-spacing: -.035em;
  text-transform: uppercase;
}

.craft-line {
  display: block;
  width: 92px;
  height: 3px;
  margin: 24px 0;
  background: #a70d12;
}

.craft-copy > p:not(.craft-script) {
  max-width: 49ch;
  margin: 0;
  color: #382b25;
  font-size: 1.02rem;
  line-height: 1.65;
}

.craft-button {
  display: inline-flex;
  margin-top: 25px;
  min-width: 170px;
  justify-content: center;
}

/* Das gewünschte Bild bewusst kompakt halten. */
.craft-photo {
  width: 100%;
  max-width: 430px;
  aspect-ratio: 4 / 3;
  margin: 0;
  overflow: hidden;
  border-radius: 12px;
  background: #e7d5bd;
  box-shadow: 0 14px 30px rgba(61, 35, 20, .12);
}

.craft-photo img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

@media (max-width: 900px) {
  .craft-grid {
    grid-template-columns: 1fr;
    gap: 30px;
  }

  .craft-photo {
    max-width: 480px;
  }
}

@media (max-width: 600px) {
  .craft-section {
    padding: 42px 0;
  }

  .craft-copy h2 {
    font-size: clamp(2.4rem, 12vw, 3.6rem);
  }

  .craft-photo {
    width: 88%;
    max-width: 390px;
  }
}

/* ===== startseite-blocksatz.css ===== */

/* ============================================================
   Startseite – Textausrichtung V4
   Neu aufgebaut anhand der tatsächlich verwendeten HTML-Klassen.
   ============================================================ */

/* Hero: nur der längere Beschreibungstext im Blocksatz */
.manufaktur-home .manu-hero-copy .manu-lead {
  text-align: justify !important;
  text-align-last: left !important;
  text-justify: inter-word !important;
}

/* Längere Fließtexte in den Inhaltsbereichen */
.manufaktur-home .manu-section-copy > p,
.manufaktur-home .manu-story-copy > p {
  text-align: justify !important;
  text-align-last: left !important;
  text-justify: inter-word !important;
}

/* Kicker und dekorativer Schriftzug ausdrücklich KEIN Blocksatz */
.manufaktur-home .manu-hero-copy .manu-kicker,
.manufaktur-home .manu-hero-copy .manu-script {
  text-align: left !important;
  text-align-last: left !important;
  text-justify: auto !important;
  word-spacing: normal !important;
}

/* „Tradition, die man schmeckt! ♡“ vollständig von Blocksatz-Effekten isolieren */
.manufaktur-home p.manu-script {
  display: block !important;
  width: fit-content !important;
  max-width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding-left: 0 !important;
  text-align: left !important;
  text-align-last: left !important;
  text-justify: auto !important;
  word-spacing: normal !important;
  white-space: normal !important;
}

/* Kurze Texte in Bändern und Labels nicht im Blocksatz */
.manufaktur-home .manu-strip p,
.manufaktur-home .manu-event p,
.manufaktur-home .manu-story-label {
  text-align: left !important;
  text-align-last: left !important;
  text-justify: auto !important;
  word-spacing: normal !important;
}

/* Erstes Hero-Foto weiterhin ohne roten Hintergrund/Rahmen */
.manufaktur-home .manu-hero-photo,
.manufaktur-home .manu-hero-photo::before,
.manufaktur-home .manu-hero-photo::after {
  background: transparent !important;
  background-color: transparent !important;
}
.manufaktur-home .manu-hero-photo {
  border-color: transparent !important;
}

/* Auf schmalen Displays Fließtexte linksbündig für saubere Lesbarkeit */
@media (max-width: 560px) {
  .manufaktur-home .manu-hero-copy .manu-lead,
  .manufaktur-home .manu-section-copy > p,
  .manufaktur-home .manu-story-copy > p {
    text-align: left !important;
    text-align-last: left !important;
    text-justify: auto !important;
  }
}


/* ============================================================
   Startseite – einheitliche Abschnittsüberschriften V5
   Alle H2-Überschriften erhalten dieselbe Größe.
   ============================================================ */
.manufaktur-home main h2 {
  font-size: clamp(2.25rem, 4vw, 3.35rem) !important;
  line-height: 1.02 !important;
  letter-spacing: -0.025em !important;
}

/* Auch Überschriften in roten/dunklen Bereichen behalten exakt dieselbe Größe. */
.manufaktur-home .manu-event h2,
.manufaktur-home .manu-story h2,
.manufaktur-home .manu-section h2 {
  font-size: clamp(2.25rem, 4vw, 3.35rem) !important;
  line-height: 1.02 !important;
}

@media (max-width: 700px) {
  .manufaktur-home main h2,
  .manufaktur-home .manu-event h2,
  .manufaktur-home .manu-story h2,
  .manufaktur-home .manu-section h2 {
    font-size: clamp(2rem, 9vw, 2.75rem) !important;
  }
}


/* ============================================================
   Startseite – kleine Überschriften/Kicker einheitlich V6
   Pfälzer Spezialität…, Traditionelles Backhandwerk,
   Frisch vor Ort, Catering & Veranstaltungen,
   Unsere Spezialität und Über den Dampfnudelhof
   ============================================================ */
.manufaktur-home .manu-kicker,
.manufaktur-home .manu-eyebrow {
  font-size: 1rem !important;
  line-height: 1.25 !important;
  font-weight: 800 !important;
  letter-spacing: 0.08em !important;
}

/* Mobile identisch halten – keine abweichende Verkleinerung einzelner Kicker. */
@media (max-width: 700px) {
  .manufaktur-home .manu-kicker,
  .manufaktur-home .manu-eyebrow {
    font-size: 1rem !important;
    line-height: 1.25 !important;
  }
}


/* ============================================================
   Startseite – Eventbereich einzeilig V7
   Überschrift und Begleittext stehen auf Desktop in einer Zeile.
   ============================================================ */
@media (min-width: 901px) {
  .manufaktur-home .manu-event .wrap {
    display: flex !important;
    align-items: center !important;
    gap: 1.25rem !important;
    flex-wrap: nowrap !important;
  }

  .manufaktur-home .manu-event h2,
  .manufaktur-home .manu-event p {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    white-space: nowrap !important;
  }

  .manufaktur-home .manu-event h2 {
    flex: 0 0 auto !important;
  }

  .manufaktur-home .manu-event p {
    flex: 0 0 auto !important;
  }

  .manufaktur-home .manu-event a {
    margin-left: auto !important;
    flex: 0 0 auto !important;
  }
}


/* ============================================================
   Startseite – mehr Abstand vor „Lust auf ne leckere Dampfnudel?“ V8
   ============================================================ */
.manufaktur-home .manu-event {
  margin-top: 4rem !important;
}

@media (max-width: 700px) {
  .manufaktur-home .manu-event {
    margin-top: 2.75rem !important;
  }
}


/* Eventbereich V9 – appetitlicher Begleittext sauber lesbar */
@media (min-width: 901px) {
  .manufaktur-home .manu-event h2 {
    white-space: nowrap !important;
  }

  .manufaktur-home .manu-event p {
    white-space: normal !important;
    max-width: 37rem !important;
    line-height: 1.45 !important;
  }
}


/* ============================================================
   Startseite – „Frisch vor Ort“-Block im dunklen Footer-Rot V10
   ============================================================ */
.manufaktur-home .manu-event {
  background: #72070b !important;
  background-color: #72070b !important;
}

/* ===== jobs-manufaktur.css ===== */
/* Jobs – Typografie passend zur Startseite, mit Fokus auf Lesbarkeit */
.jobs-manu-page main{
  background:#fffaf2!important;
  font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important;
  color:#27201b!important;
}
.jobs-manu .jobs-hero{
  background:#f4eadb!important;
  padding:70px 0 78px!important;
}
.jobs-manu .jobs-kicker{
  display:inline-flex!important;
  align-items:center!important;
  gap:11px!important;
  margin:0 0 16px!important;
  color:#a70b11!important;
  font-family:inherit!important;
  font-size:1rem!important;
  font-weight:900!important;
  line-height:1.25!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
}
.jobs-manu .jobs-kicker:before{
  content:""!important;
  width:34px!important;
  height:2px!important;
  flex:0 0 34px!important;
  background:#a70b11!important;
}
.jobs-manu .jobs-hero h1{
  max-width:900px!important;
  margin:0 0 20px!important;
  color:#27201b!important;
  font-family:"Brush Script MT","Segoe Script",cursive!important;
  font-size:clamp(3.9rem,6.2vw,5.9rem)!important;
  font-weight:400!important;
  font-style:normal!important;
  line-height:.9!important;
  letter-spacing:-.035em!important;
  text-transform:none!important;
}
.jobs-manu .jobs-hero-sub{
  max-width:720px!important;
  margin:0!important;
  color:#27201b!important;
  font-family:inherit!important;
  font-size:clamp(1.12rem,1.7vw,1.35rem)!important;
  font-weight:650!important;
  line-height:1.55!important;
}
.jobs-manu .jobs-type{
  margin:14px 0 10px!important;
  color:#27201b!important;
  font-family:inherit!important;
  font-size:1.08rem!important;
  font-weight:750!important;
  line-height:1.5!important;
  letter-spacing:0!important;
  text-transform:none!important;
}
.jobs-manu .jobs-type strong{color:#a70b11!important}
.jobs-manu section:not(.jobs-hero){padding-top:82px;padding-bottom:88px}
.jobs-manu .jobs-intro,
.jobs-manu .jobs-team-text-wide,
.jobs-manu .jobs-contact-note{
  color:#4f443c!important;
  font-family:inherit!important;
  font-size:1.05rem!important;
  line-height:1.72!important;
  text-align:left!important;
  max-width:70ch!important;
}
.jobs-manu .jobs-script-heading,
.jobs-manu h2{
  color:#27201b!important;
  font-family:inherit!important;
  font-size:clamp(2rem,3.3vw,3rem)!important;
  font-weight:800!important;
  font-style:normal!important;
  line-height:1.08!important;
  letter-spacing:-.025em!important;
  text-transform:none!important;
}
.jobs-manu .jobs-list-block h2{
  display:block!important;
  padding-bottom:0!important;
  border-bottom:0!important;
}
.jobs-manu .jobs-checklist{
  gap:14px!important;
}
.jobs-manu .jobs-checklist li{
  color:#3f3731!important;
  font-family:inherit!important;
  font-size:1.02rem!important;
  line-height:1.6!important;
}
.jobs-manu .jobs-contact-label{
  color:#5d4d44!important;
  font-family:inherit!important;
  font-size:.88rem!important;
  font-weight:800!important;
  line-height:1.45!important;
  letter-spacing:.06em!important;
}
.jobs-manu .jobs-contact-phone{
  color:#a70b11!important;
  font-family:inherit!important;
  font-size:clamp(1.35rem,2.3vw,2rem)!important;
  font-weight:850!important;
  line-height:1.25!important;
  letter-spacing:0!important;
}
.jobs-manu img{
  border-radius:26px!important;
  box-shadow:0 24px 65px rgba(62,38,25,.14)!important;
}
.jobs-manu .card,.jobs-manu .job-card{
  border-radius:26px!important;
  border:1px solid #dfd0bf!important;
  background:#fffaf2!important;
  box-shadow:0 18px 45px rgba(62,38,25,.08)!important;
}
.jobs-manu .btn{border-radius:999px!important}
.jobs-manu a:not(.btn){color:#a70b11}
@media(max-width:700px){
  .jobs-manu .jobs-hero{padding:48px 0 58px!important}
  .jobs-manu .jobs-hero h1{
    font-size:clamp(3.05rem,15vw,4.25rem)!important;
    line-height:.92!important;
  }
  .jobs-manu .jobs-intro,
  .jobs-manu .jobs-team-text-wide,
  .jobs-manu .jobs-contact-note{font-size:1rem!important}
}


/* Jobs-Abschluss: klare, gut lesbare Typografie */
.jobs-manu .jobs-contact-block .jobs-script-heading{
  margin:0 0 14px!important;
  color:#27201b!important;
  font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important;
  font-size:clamp(2rem,3.3vw,3rem)!important;
  font-weight:800!important;
  font-style:normal!important;
  line-height:1.08!important;
  letter-spacing:-.025em!important;
  text-transform:none!important;
}
.jobs-manu .jobs-contact-block .jobs-script-heading .script-small{
  display:block!important;
  margin:0 0 8px!important;
  color:#a70b11!important;
  font-family:inherit!important;
  font-size:1rem!important;
  font-weight:900!important;
  line-height:1.3!important;
  letter-spacing:.07em!important;
  text-transform:uppercase!important;
}
.jobs-manu .jobs-contact-block .jobs-contact-note{
  margin:0!important;
  max-width:58ch!important;
  color:#3f3731!important;
  font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important;
  font-size:1.05rem!important;
  font-weight:450!important;
  line-height:1.7!important;
  letter-spacing:0!important;
  text-align:left!important;
}
@media(max-width:700px){
  .jobs-manu .jobs-contact-block .jobs-script-heading{
    font-size:clamp(1.85rem,8vw,2.45rem)!important;
  }
  .jobs-manu .jobs-contact-block .jobs-contact-note{
    font-size:1rem!important;
  }
}


/* KORREKTUR Jobs-Abschluss:
   Der echte HTML-Bereich heißt .jobs-final-cta. Diese Regeln stehen bewusst
   am Dateiende und überschreiben die alten redesign.css-Vorgaben. */
.jobs-manu .jobs-final-cta{
  background:#72070b!important;
  color:#fffaf2!important;
}
.jobs-manu .jobs-final-cta .jobs-final-cta-inner{
  align-items:center!important;
}
.jobs-manu .jobs-final-cta .eyebrow{
  margin:0 0 10px!important;
  color:#fffaf2!important;
  -webkit-text-fill-color:#fffaf2!important;
  font-family:Arial,Helvetica,sans-serif!important;
  font-size:.95rem!important;
  font-weight:800!important;
  line-height:1.4!important;
  letter-spacing:.07em!important;
  text-transform:uppercase!important;
  opacity:1!important;
}
.jobs-manu .jobs-final-cta .eyebrow::before{
  background:#fffaf2!important;
}
.jobs-manu .jobs-final-cta h2.jobs-script-heading{
  margin:0 0 12px!important;
  color:#ffffff!important;
  -webkit-text-fill-color:#ffffff!important;
  font-family:Arial,Helvetica,sans-serif!important;
  font-size:clamp(2rem,3.2vw,3rem)!important;
  font-weight:800!important;
  font-style:normal!important;
  line-height:1.12!important;
  letter-spacing:-.02em!important;
  text-transform:none!important;
  text-shadow:none!important;
}
.jobs-manu .jobs-final-cta p:not(.eyebrow){
  margin:0!important;
  max-width:62ch!important;
  color:#fffaf2!important;
  -webkit-text-fill-color:#fffaf2!important;
  font-family:Arial,Helvetica,sans-serif!important;
  font-size:1.08rem!important;
  font-weight:400!important;
  line-height:1.65!important;
  letter-spacing:0!important;
  text-align:left!important;
  opacity:1!important;
}
.jobs-manu .jobs-final-cta .jobs-call-btn{
  flex:0 0 auto!important;
}
@media(max-width:700px){
  .jobs-manu .jobs-final-cta h2.jobs-script-heading{
    font-size:clamp(1.9rem,8.5vw,2.55rem)!important;
  }
  .jobs-manu .jobs-final-cta p:not(.eyebrow){
    font-size:1rem!important;
    line-height:1.65!important;
  }
}


/* Jobs: Miteinander-Satz auf Desktop bewusst einzeilig */
.jobs-manu .jobs-miteinander-one-line{
  width:max-content!important;
  max-width:none!important;
  white-space:nowrap!important;
  font-size:clamp(.94rem,1.15vw,1.05rem)!important;
  line-height:1.6!important;
  color:#4f443c!important;
}
@media(max-width:760px){
  .jobs-manu .jobs-miteinander-one-line{
    width:auto!important;
    max-width:100%!important;
    white-space:normal!important;
  }
}


/* Jobs-Abschluss: Hinweis auf Desktop in einer Zeile */
.jobs-manu .jobs-final-cta .jobs-weekend-one-line{
  width:max-content!important;
  max-width:none!important;
  white-space:nowrap!important;
  font-size:1.05rem!important;
  line-height:1.65!important;
}
@media(max-width:760px){
  .jobs-manu .jobs-final-cta .jobs-weekend-one-line{
    width:auto!important;
    max-width:100%!important;
    white-space:normal!important;
  }
}

/* ===== kontakt-manufaktur.css ===== */
/* Kontakt – Gestaltung in der Designsprache der Startseite */
.contact-manu-page main{
  background:#fffaf2!important;
  color:#27201b!important;
  font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important;
}

/* Oberer Einstieg wie auf der Startseite: warm, großzügig, klar */
.contact-manu .contact-hero{
  background:#f4eadb!important;
  padding:66px 0 74px!important;
}
.contact-manu .contact-hero h1{
  max-width:900px!important;
  margin:0 0 20px!important;
  color:#27201b!important;
  -webkit-text-fill-color:#27201b!important;
  font-family:"Brush Script MT","Segoe Script",cursive!important;
  font-size:clamp(3.9rem,6.2vw,5.9rem)!important;
  font-weight:400!important;
  font-style:normal!important;
  line-height:.9!important;
  letter-spacing:-.035em!important;
  text-transform:none!important;
}
.contact-manu .contact-hero p{
  max-width:68ch!important;
  color:#3f3731!important;
  -webkit-text-fill-color:#3f3731!important;
  font-family:inherit!important;
  font-size:clamp(1.05rem,1.45vw,1.2rem)!important;
  font-weight:450!important;
  line-height:1.7!important;
  text-align:left!important;
}

/* Kleine Rubriken wie auf Startseite/Über-uns */
.contact-manu .eyebrow,
.contact-manu .kicker,
.contact-manu .section-kicker{
  color:#8f090e!important;
  -webkit-text-fill-color:#8f090e!important;
  font-family:inherit!important;
  font-size:.95rem!important;
  font-weight:850!important;
  line-height:1.35!important;
  letter-spacing:.07em!important;
  text-transform:uppercase!important;
}

/* Hauptinhalte */
.contact-manu section:not(.contact-hero){
  padding-top:78px!important;
  padding-bottom:84px!important;
}
.contact-manu h2{
  margin-top:0!important;
  color:#27201b!important;
  -webkit-text-fill-color:#27201b!important;
  font-family:inherit!important;
  font-size:clamp(2rem,3.4vw,3.15rem)!important;
  font-weight:800!important;
  line-height:1.08!important;
  letter-spacing:-.025em!important;
  text-transform:none!important;
}
.contact-manu h3{
  color:#27201b!important;
  -webkit-text-fill-color:#27201b!important;
  font-family:inherit!important;
  font-size:clamp(1.25rem,2vw,1.6rem)!important;
  font-weight:800!important;
  line-height:1.25!important;
}
.contact-manu p,
.contact-manu li,
.contact-manu address,
.contact-manu label{
  color:#3f3731!important;
  -webkit-text-fill-color:#3f3731!important;
  font-family:inherit!important;
  font-size:1.02rem!important;
  line-height:1.68!important;
}
.contact-manu address{font-style:normal!important}
.contact-manu strong{
  color:#27201b!important;
  -webkit-text-fill-color:#27201b!important;
}

/* Kontakt-/Infokarten: helle Manufakturflächen statt schwerer Standardboxen */
.contact-manu .card,
.contact-manu .contact-card,
.contact-manu .contact-info-area,
.contact-manu .contact-pickup-area,
.contact-manu form{
  border:1px solid #dfd0bf!important;
  border-radius:24px!important;
  background:#fffaf2!important;
  box-shadow:0 14px 38px rgba(62,38,25,.07)!important;
}
.contact-manu .contact-info-area,
.contact-manu .contact-pickup-area{
  padding:28px 30px!important;
}

/* Wichtiger Abholhinweis erhält einen dezenten roten Akzent */
.contact-manu .contact-pickup-area{
  border-top:4px solid #a70b11!important;
}

/* Links gut erkennbar und kontrastreich */
.contact-manu a:not(.btn):not(.dh-nav-link){
  color:#8f090e!important;
  -webkit-text-fill-color:#8f090e!important;
  font-weight:750!important;
  text-decoration-thickness:1px!important;
  text-underline-offset:3px!important;
}

/* Formular */
.contact-manu input,
.contact-manu textarea,
.contact-manu select{
  width:100%;
  color:#27201b!important;
  -webkit-text-fill-color:#27201b!important;
  background:#fff!important;
  border:1px solid #cdbdab!important;
  border-radius:12px!important;
  font-family:inherit!important;
  font-size:1rem!important;
  line-height:1.45!important;
}
.contact-manu input:focus,
.contact-manu textarea:focus,
.contact-manu select:focus{
  border-color:#a70b11!important;
  outline:3px solid rgba(167,11,17,.13)!important;
  outline-offset:1px!important;
}
.contact-manu .btn,
.contact-manu button{
  border-radius:999px!important;
  font-family:inherit!important;
  font-weight:800!important;
}

/* Dunkelrote Bereiche: Kontrast ausdrücklich absichern */
.contact-manu .manu-event,
.contact-manu .contact-cta{
  background:#72070b!important;
}
.contact-manu .manu-event h2,
.contact-manu .manu-event h3,
.contact-manu .manu-event p,
.contact-manu .manu-event strong,
.contact-manu .contact-cta h2,
.contact-manu .contact-cta h3,
.contact-manu .contact-cta p,
.contact-manu .contact-cta strong{
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
}

@media(max-width:760px){
  .contact-manu .contact-hero{padding:46px 0 56px!important}
  .contact-manu .contact-hero h1{
    font-size:clamp(3.05rem,15vw,4.25rem)!important;
    line-height:.92!important;
  }
  .contact-manu section:not(.contact-hero){
    padding-top:58px!important;
    padding-bottom:64px!important;
  }
  .contact-manu .contact-info-area,
  .contact-manu .contact-pickup-area{
    padding:23px 20px!important;
  }
  .contact-manu p,
  .contact-manu li,
  .contact-manu address,
  .contact-manu label{
    font-size:1rem!important;
  }
}


/* ============================================================
   KONTAKT – BLOCKSATZ FÜR LESETEXTE
   Überschriften, Adressen, Kontaktdaten, Labels und Buttons
   bleiben linksbündig.
   ============================================================ */

body.contact-manu-page main.contact-manu .contact-hero p,
body.contact-manu-page main.contact-manu .contact-info-area p,
body.contact-manu-page main.contact-manu .contact-pickup-area p,
body.contact-manu-page main.contact-manu .card p,
body.contact-manu-page main.contact-manu .contact-card p{
  text-align:justify!important;
  text-align-last:left!important;
  hyphens:none!important;
  -webkit-hyphens:none!important;
  overflow-wrap:break-word!important;
  word-break:normal!important;
}

/* Nicht für kurze funktionale Texte */
body.contact-manu-page main.contact-manu h1,
body.contact-manu-page main.contact-manu h2,
body.contact-manu-page main.contact-manu h3,
body.contact-manu-page main.contact-manu .eyebrow,
body.contact-manu-page main.contact-manu .kicker,
body.contact-manu-page main.contact-manu .section-kicker,
body.contact-manu-page main.contact-manu address,
body.contact-manu-page main.contact-manu label,
body.contact-manu-page main.contact-manu button,
body.contact-manu-page main.contact-manu .btn{
  text-align:left!important;
  text-align-last:auto!important;
  hyphens:none!important;
  -webkit-hyphens:none!important;
}

/* Auf schmalen Smartphones keine großen Wortabstände erzeugen. */
@media(max-width:640px){
  body.contact-manu-page main.contact-manu .contact-hero p,
  body.contact-manu-page main.contact-manu .contact-info-area p,
  body.contact-manu-page main.contact-manu .contact-pickup-area p,
  body.contact-manu-page main.contact-manu .card p,
  body.contact-manu-page main.contact-manu .contact-card p{
    text-align:left!important;
    text-align-last:auto!important;
  }
}


/* Silbentrennung deaktiviert */
html body main p,
html body main li,
html body main h1,
html body main h2,
html body main h3{
  hyphens:none!important;
  -webkit-hyphens:none!important;
  -ms-hyphens:none!important;
}


/* Kontakt – Überschriftengrößen an die übrigen Manufaktur-Seiten angleichen */
body.contact-manu-page main.contact-manu .contact-hero h1{
  font-size:clamp(3.9rem,6.2vw,5.9rem)!important;
  line-height:.90!important;
}
body.contact-manu-page main.contact-manu h2{
  font-size:clamp(2.15rem,3.6vw,3.35rem)!important;
  line-height:1.06!important;
}
body.contact-manu-page main.contact-manu h3{
  font-size:clamp(1.3rem,2vw,1.7rem)!important;
  line-height:1.22!important;
}
@media(max-width:760px){
  body.contact-manu-page main.contact-manu .contact-hero h1{
    font-size:clamp(3.05rem,15vw,4.25rem)!important;
    line-height:.92!important;
  }
  body.contact-manu-page main.contact-manu h2{
    font-size:clamp(1.9rem,8vw,2.65rem)!important;
  }
  body.contact-manu-page main.contact-manu h3{
    font-size:clamp(1.2rem,5vw,1.5rem)!important;
  }
}

/* ===== kontakt-clean.css ===== */
/* ============================================================
   KONTAKT – FINALE TYPOGRAFIE
   Neu aufgebaut und an die übrigen Manufaktur-Seiten angepasst.
   ============================================================ */

body.contact-manu-page #main.contact-manu{
  color:#27201b!important;
  font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important;
}

/* Große Seitentitel – gleiche Hero-Hierarchie wie Startseite/Aktuelles */
body.contact-manu-page #main.contact-manu .contact-hero h1{
  margin:0 0 18px!important;
  max-width:1000px!important;
  color:#27201b!important;
  -webkit-text-fill-color:#27201b!important;
  font-family:"Brush Script MT","Segoe Script",cursive!important;
  font-size:clamp(3.9rem,6.2vw,5.9rem)!important;
  font-weight:400!important;
  font-style:normal!important;
  line-height:.88!important;
  letter-spacing:-.035em!important;
  text-transform:none!important;
}

/* Kleine Rubriküberschriften */
body.contact-manu-page #main.contact-manu .eyebrow,
body.contact-manu-page #main.contact-manu .kicker,
body.contact-manu-page #main.contact-manu .section-kicker{
  color:#a70b11!important;
  -webkit-text-fill-color:#a70b11!important;
  font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important;
  font-size:1rem!important;
  font-weight:800!important;
  font-style:normal!important;
  line-height:1.25!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
}

/* H2 – gleiche Größenhierarchie wie auf den übrigen Inhaltsseiten */
body.contact-manu-page #main.contact-manu h2{
  color:#27201b!important;
  -webkit-text-fill-color:#27201b!important;
  font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important;
  font-size:clamp(2.15rem,3.6vw,3.35rem)!important;
  font-weight:800!important;
  font-style:normal!important;
  line-height:1.06!important;
  letter-spacing:-.028em!important;
  text-transform:none!important;
}

/* H3 */
body.contact-manu-page #main.contact-manu h3{
  color:#27201b!important;
  -webkit-text-fill-color:#27201b!important;
  font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important;
  font-size:clamp(1.3rem,2vw,1.7rem)!important;
  font-weight:800!important;
  font-style:normal!important;
  line-height:1.22!important;
  letter-spacing:-.015em!important;
}

/* Lesetext */
body.contact-manu-page #main.contact-manu p,
body.contact-manu-page #main.contact-manu li,
body.contact-manu-page #main.contact-manu address,
body.contact-manu-page #main.contact-manu label{
  color:#3f3731!important;
  -webkit-text-fill-color:#3f3731!important;
  font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important;
  font-size:1.04rem!important;
  font-weight:430!important;
  line-height:1.70!important;
  letter-spacing:0!important;
}

/* Hero-Einleitung etwas größer */
body.contact-manu-page #main.contact-manu .contact-hero p{
  max-width:68ch!important;
  font-size:clamp(1.06rem,1.45vw,1.18rem)!important;
  line-height:1.68!important;
}

/* Links und Formular */
body.contact-manu-page #main.contact-manu a:not(.btn){
  color:#8f090e!important;
  -webkit-text-fill-color:#8f090e!important;
  font-family:inherit!important;
  font-weight:750!important;
}
body.contact-manu-page #main.contact-manu input,
body.contact-manu-page #main.contact-manu textarea,
body.contact-manu-page #main.contact-manu select{
  color:#27201b!important;
  -webkit-text-fill-color:#27201b!important;
  font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important;
  font-size:1rem!important;
  line-height:1.45!important;
}

/* Dunkelrote Bereiche */
body.contact-manu-page #main.contact-manu .manu-event h2,
body.contact-manu-page #main.contact-manu .manu-event h3,
body.contact-manu-page #main.contact-manu .manu-event p,
body.contact-manu-page #main.contact-manu .contact-cta h2,
body.contact-manu-page #main.contact-manu .contact-cta h3,
body.contact-manu-page #main.contact-manu .contact-cta p{
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
}

/* Blocksatz bleibt erhalten, Silbentrennung bleibt aus */
body.contact-manu-page #main.contact-manu .contact-hero p,
body.contact-manu-page #main.contact-manu .contact-info-area p,
body.contact-manu-page #main.contact-manu .contact-pickup-area p,
body.contact-manu-page #main.contact-manu .card p,
body.contact-manu-page #main.contact-manu .contact-card p{
  text-align:justify!important;
  text-align-last:left!important;
  hyphens:none!important;
  -webkit-hyphens:none!important;
  -ms-hyphens:none!important;
  word-break:normal!important;
  overflow-wrap:normal!important;
}

/* Auf der gesamten Kontaktseite keine automatische Silbentrennung */
body.contact-manu-page #main.contact-manu,
body.contact-manu-page #main.contact-manu *{
  hyphens:none!important;
  -webkit-hyphens:none!important;
  -ms-hyphens:none!important;
}

@media(max-width:760px){
  body.contact-manu-page #main.contact-manu .contact-hero h1{
    font-size:clamp(3.05rem,15vw,4.25rem)!important;
    line-height:.92!important;
  }
  body.contact-manu-page #main.contact-manu h2{
    font-size:clamp(1.9rem,8vw,2.65rem)!important;
  }
  body.contact-manu-page #main.contact-manu h3{
    font-size:clamp(1.2rem,5vw,1.5rem)!important;
  }
  body.contact-manu-page #main.contact-manu p,
  body.contact-manu-page #main.contact-manu li,
  body.contact-manu-page #main.contact-manu address,
  body.contact-manu-page #main.contact-manu label{
    font-size:1rem!important;
    line-height:1.66!important;
  }
}
@media(max-width:640px){
  body.contact-manu-page #main.contact-manu .contact-hero p,
  body.contact-manu-page #main.contact-manu .contact-info-area p,
  body.contact-manu-page #main.contact-manu .contact-pickup-area p,
  body.contact-manu-page #main.contact-manu .card p,
  body.contact-manu-page #main.contact-manu .contact-card p{
    text-align:left!important;
    text-align-last:auto!important;
  }
}


/* Kontakt: Überschriftengrößen an die übrigen Seiten angeglichen */
.contact-manu-page main .kontakt-title-unified{
  font-family:"Brush Script MT","Segoe Script",cursive !important;
  font-size:clamp(3.9rem,6.2vw,5.9rem) !important;
  font-weight:400 !important;
  line-height:.90 !important;
  letter-spacing:-.035em !important;
}
.contact-manu-page main .kontakt-subtitle-unified{
  font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif !important;
  font-size:clamp(2.15rem,3.6vw,3.35rem) !important;
  font-weight:800 !important;
  line-height:1.06 !important;
  letter-spacing:-.028em !important;
}
@media(max-width:640px){
  .contact-manu-page main .kontakt-title-unified{
    font-size:clamp(3.05rem,15vw,4.25rem) !important;
  }
  .contact-manu-page main .kontakt-subtitle-unified{
    font-size:clamp(1.9rem,8vw,2.65rem) !important;
  }
}

/* ===== ueber-uns-manufaktur.css ===== */
/* Über-uns-Seite – Manufaktur-Look passend zur Startseite */
.about-manu {
  background: #fffaf2;
  color: #27201b;
}
.about-manu .wrap { width: min(1180px, calc(100% - 48px)); margin-inline: auto; }
.about-hero { padding: 5.5rem 0 5rem; background: #fffaf2; }
.about-hero-grid, .about-editorial, .about-history-grid {
  display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, .95fr);
  gap: clamp(3rem, 7vw, 6.5rem); align-items: center;
}
.about-hero-copy h1, .about-manu h2 {
  margin: .45rem 0 1.35rem; color: #27201b;
  font-size: clamp(2.7rem, 5vw, 4.7rem); line-height: .98; letter-spacing: -.035em;
}
.about-hero-copy h1 { font-size: clamp(3.35rem, 6.4vw, 6.2rem); }
.about-eyebrow {
  margin: 0 0 .8rem; color: #a70b11; font: 800 1rem/1.25 Arial, Helvetica, sans-serif;
  letter-spacing: .08em;
}
.about-script {
  margin: 0 0 1.1rem; color: #a70b11; font-family: "Brush Script MT", "Segoe Script", cursive;
  font-size: clamp(1.8rem, 3vw, 2.7rem); line-height: 1.05; text-align: left;
}
.about-lead, .about-copy p, .about-history-copy p, .about-cta p {
  font-size: 1.08rem; line-height: 1.75;
}
.about-hero-photo, .about-media, .about-history-photo {
  position: relative; margin: 0; overflow: hidden; border-radius: 26px;
  box-shadow: 0 18px 48px rgba(70, 35, 20, .13);
}
.about-hero-photo img, .about-media img, .about-history-photo img {
  display: block; width: 100%; height: 100%; object-fit: cover;
}
.about-hero-photo { min-height: 520px; }
.about-hero-photo img { position: absolute; inset: 0; }
.about-photo-label {
  position: absolute; left: 1.5rem; bottom: 1.5rem; padding: .75rem 1rem;
  background: #fffaf2; color: #72070b; border-radius: 999px; font-weight: 800;
}
.about-section { padding: 6.5rem 0; }
.about-section.cream { background: #f4eadb; }
.about-section.white { background: #fffaf2; }
.about-editorial.reverse .about-media { order: 2; }
.about-editorial.reverse .about-copy { order: 1; }
.about-media { min-height: 470px; }
.about-media img { position: absolute; inset: 0; }
.about-copy p, .about-history-copy p { margin: 0 0 1.15rem; text-align: justify; text-align-last: left; }
.about-history { padding: 6.5rem 0; background: #72070b; color: #fff; }
.about-history .about-eyebrow, .about-history h2 { color: #fff; }
.about-history-copy p { color: rgba(255,255,255,.92); }
.about-history-photo { min-height: 430px; }
.about-history-photo img { position: absolute; inset: 0; }
.about-cta { padding: 4.25rem 0; background: #72070b; color: #fff; }
.about-cta-inner {
  display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 3rem; align-items: center;
}
.about-cta .about-eyebrow, .about-cta h2 { color: #fff; }
.about-cta h2 { margin-bottom: .8rem; font-size: clamp(2.4rem, 4vw, 3.6rem); }
.about-cta p { margin: 0; max-width: 760px; }
.about-cta .btn {
  background: #fffaf2; color: #72070b; border-color: #fffaf2; white-space: nowrap;
}
@media (max-width: 900px) {
  .about-hero-grid, .about-editorial, .about-history-grid, .about-cta-inner {
    grid-template-columns: 1fr;
  }
  .about-editorial.reverse .about-media, .about-editorial.reverse .about-copy { order: initial; }
  .about-hero { padding-top: 3.5rem; }
  .about-hero-photo, .about-media, .about-history-photo { min-height: 360px; }
}
@media (max-width: 560px) {
  .about-manu .wrap { width: min(100% - 32px, 1180px); }
  .about-hero, .about-section, .about-history { padding-block: 3.6rem; }
  .about-hero-copy h1 { font-size: clamp(2.75rem, 14vw, 4rem); }
  .about-manu h2 { font-size: clamp(2.25rem, 11vw, 3.15rem); }
  .about-copy p, .about-history-copy p { text-align: left; }
  .about-hero-photo, .about-media, .about-history-photo { min-height: 300px; }
}


/* ============================================================
   Über uns – harmonische Schriftfarben passend zur Startseite V2
   ============================================================ */

/* Helle Creme-/Papierflächen */
.about-manu,
.about-hero,
.about-section.white,
.about-section.cream {
  color: #27201b !important;
}

.about-hero-copy h1,
.about-section h2,
.about-copy h2 {
  color: #27201b !important;
}

.about-hero .about-lead,
.about-section .about-copy p {
  color: #51463e !important;
}

/* Kleine Bereichsüberschriften im Markenrot wie auf der Startseite */
.about-hero .about-eyebrow,
.about-section .about-eyebrow {
  color: #a70b11 !important;
}

.about-script {
  color: #a70b11 !important;
}

/* Dunkelrote Bereiche: hohe Lesbarkeit mit warmem Weiß */
.about-history,
.about-cta {
  color: #fffaf2 !important;
}

.about-history h2,
.about-history .about-eyebrow,
.about-cta h2,
.about-cta .about-eyebrow {
  color: #fffaf2 !important;
}

.about-history .about-history-copy p,
.about-cta p {
  color: rgba(255, 250, 242, 0.92) !important;
}

/* Bildlabel passend zum hellen Papier-/Dunkelrot-Kontrast */
.about-photo-label {
  background: #fffaf2 !important;
  color: #72070b !important;
}

/* Links innerhalb heller Textbereiche im Markenrot */
.about-manu .about-copy a:not(.btn) {
  color: #a70b11 !important;
}

/* CTA auf dunklem Rot wie die hellen Aktionsflächen der Startseite */
.about-cta .btn {
  background: #fffaf2 !important;
  color: #72070b !important;
  border-color: #fffaf2 !important;
}


/* ============================================================
   Über uns – Akzentüberschriften wie auf der Startseite V3
   ============================================================ */

/* Traditionelles Backhandwerk / Unsere Geschichte / Frisch vor Ort /
   Dampfnudelhof erleben: gleiche Typografie wie die kleinen
   Bereichsüberschriften der Startseite */
.about-manu .about-eyebrow {
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: 1rem !important;
  line-height: 1.25 !important;
  font-weight: 800 !important;
  letter-spacing: 0.08em !important;
  text-transform: none !important;
}

/* Auf hellen Bereichen Markenrot wie auf der Startseite */
.about-hero .about-eyebrow,
.about-section .about-eyebrow {
  color: #a70b11 !important;
}

/* Auf dunkelroten Bereichen dieselbe Typografie, aber hell für Kontrast */
.about-history .about-eyebrow,
.about-cta .about-eyebrow {
  color: #fffaf2 !important;
}

/* „Tradition, die man schmeckt! ♡“ wie auf der Startseite */
.about-manu .about-script {
  font-family: "Brush Script MT", "Segoe Script", cursive !important;
  font-size: clamp(1.8rem, 3vw, 2.7rem) !important;
  line-height: 1.05 !important;
  font-weight: 400 !important;
  letter-spacing: normal !important;
  color: #a70b11 !important;
  text-align: left !important;
  text-align-last: left !important;
  text-justify: auto !important;
  word-spacing: normal !important;
  white-space: normal !important;
}


/* Über uns – CTA-Fließtext auf dunkelrotem Hintergrund gut lesbar */
.about-manu .about-cta p {
  color: #fffaf2 !important;
  opacity: 1 !important;
}


/* ============================================================
   Über uns – Eyebrows exakt im Stil der Startseite V5
   ============================================================ */

/* Strich vor allen kleinen Abschnittsüberschriften */
.about-manu .about-eyebrow {
  display: flex !important;
  align-items: center !important;
  gap: 9px !important;
}

.about-manu .about-eyebrow::before {
  content: "" !important;
  display: inline-block !important;
  flex: 0 0 28px !important;
  width: 28px !important;
  height: 2px !important;
  background: currentColor !important;
}

/* Auf hellen Flächen derselbe Markenrotton wie auf der Startseite */
.about-hero .about-eyebrow,
.about-section .about-eyebrow {
  color: #a70b11 !important;
}

/* Damit insbesondere diese beiden Überschriften sicher exakt
   denselben Rotton der Startseite verwenden */
.about-section .about-eyebrow {
  color: #a70b11 !important;
}

/* Dunkelrote Flächen: Strich + Text in Cremeweiß für Kontrast */
.about-history .about-eyebrow,
.about-cta .about-eyebrow {
  color: #fffaf2 !important;
}


/* „Tradition, die man schmeckt! ♡“ kompakter und in einer Zeile */
.about-manu .about-script {
  font-size: clamp(1.55rem, 2.45vw, 2.25rem) !important;
  white-space: nowrap !important;
}

/* ===== ueber-uns-startseiten-kicker-final.css ===== */
/* Exakte Startseiten-Rubrikwerte aus manufaktur-v2.css */
body .about-start-kicker-final::before{
  content:"" !important;
  display:block !important;
  width:34px !important;
  height:2px !important;
  flex:0 0 auto !important;
  background:#a70b11 !important;
}
body .about-start-kicker-final[style*="#ffffff"]::before{
  background:#ffffff !important;
}

/* ===== veranstaltungen-manufaktur.css ===== */
/* Veranstaltungen – Manufaktur-Design passend zur Startseite */
.events-manu{
  --ev-red:#a70b11;
  --ev-dark:#72070b;
  --ev-cream:#f4eadb;
  --ev-paper:#fffaf2;
  --ev-ink:#27201b;
  --ev-muted:#675a50;
  --ev-line:#dfd0bf;
  background:var(--ev-paper);
  color:var(--ev-ink);
}
.events-manu > .section.dark{
  background:var(--ev-paper)!important;
  color:var(--ev-ink)!important;
  padding:5rem 0 6.5rem;
}
.events-manu .veranstaltungen-head.light{color:var(--ev-ink)!important;}
.events-manu .veranstaltungen-head{
  margin-bottom:2.2rem;
  max-width:1000px;
}
.events-manu .veranstaltungen-eyebrow,
.events-manu .events-small-heading,
.events-manu .photo-feature .eyebrow{
  display:flex;
  align-items:center;
  gap:9px;
  margin:0 0 .75rem;
  color:var(--ev-red)!important;
  font:800 1rem/1.25 Arial,Helvetica,sans-serif!important;
  letter-spacing:.08em!important;
}
.events-manu .veranstaltungen-eyebrow::before,
.events-manu .events-small-heading::before,
.events-manu .photo-feature .eyebrow::before{
  content:"";
  flex:0 0 28px;
  width:28px;
  height:2px;
  background:currentColor;
}
.events-manu .veranstaltungen-question-nowrap{
  margin:.35rem 0 1rem;
  color:var(--ev-ink)!important;
  font-size:clamp(2.75rem,5vw,4.6rem)!important;
  line-height:1!important;
  letter-spacing:-.035em;
}
.events-manu .veranstaltungen-edeka-nowrap{
  color:var(--ev-muted)!important;
  font-size:1.08rem;
  line-height:1.7;
  white-space:normal!important;
  max-width:850px;
}
.events-manu .next-event{
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  gap:1.5rem;
  align-items:center;
  margin:0 0 3.25rem;
  padding:1.35rem 1.5rem;
  border:0!important;
  border-radius:24px;
  background:var(--ev-dark)!important;
  color:var(--ev-paper)!important;
  box-shadow:0 16px 38px rgba(77,30,23,.16);
}
.events-manu .next-event .date-box{
  background:var(--ev-paper)!important;
  color:var(--ev-dark)!important;
  border-radius:18px;
  min-width:88px;
  padding:.7rem .8rem;
}
.events-manu .next-event .eyebrow,
.events-manu .next-event h3,
.events-manu .next-event p{color:var(--ev-paper)!important;}
.events-manu .next-event .eyebrow{font-size:.78rem!important;letter-spacing:.08em;}
.events-manu .next-event .btn{
  background:var(--ev-paper)!important;
  color:var(--ev-dark)!important;
  border-color:var(--ev-paper)!important;
}
.events-manu .event-list{
  margin:0 0 4rem;
  padding:clamp(1.5rem,3vw,2.4rem);
  border:1px solid var(--ev-line);
  border-radius:26px;
  background:#fff;
  box-shadow:0 14px 36px rgba(77,45,27,.08);
}
.events-manu .event-list-head{
  display:flex;
  justify-content:space-between;
  gap:2rem;
  align-items:end;
  margin-bottom:1.5rem;
  padding-bottom:1.15rem;
  border-bottom:1px solid var(--ev-line);
}
.events-manu .event-list-head h3{
  margin:0;
  color:var(--ev-ink)!important;
  font-size:clamp(1.75rem,3vw,2.35rem);
}
.events-manu .event-list-head p{margin:0;color:var(--ev-muted)!important;line-height:1.55;}
.events-manu .event-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:1rem;
}
.events-manu .event-card{
  display:grid;
  grid-template-columns:84px minmax(0,1fr);
  gap:1.15rem;
  align-items:start;
  padding:1.25rem;
  background:var(--ev-paper)!important;
  border:1px solid #eadbca!important;
  border-radius:20px!important;
  box-shadow:none!important;
  color:var(--ev-ink)!important;
}
.events-manu .event-date{
  background:var(--ev-red)!important;
  color:#fff!important;
  border-radius:16px!important;
  min-height:82px;
}
.events-manu .event-date strong,.events-manu .event-date span{color:#fff!important;}
.events-manu .event-info h3{color:var(--ev-ink)!important;margin:.1rem 0 .35rem;}
.events-manu .event-info p{color:var(--ev-muted)!important;}
.events-manu .event-info strong{color:var(--ev-ink)!important;}
.events-manu .event-weekday{color:var(--ev-red)!important;font-weight:800;}
.events-manu .event-card-placeholder{background:#f8f1e7!important;}
.events-manu .booking-event-list{
  background:var(--ev-cream)!important;
  border-color:#e3d0ba!important;
}
.events-manu .booking-event-grid{grid-template-columns:1fr;}
.events-manu .event-card-booking{
  background:transparent!important;
  border:0!important;
  padding:.5rem!important;
}
.events-manu .event-card-booking .event-date{background:var(--ev-dark)!important;}
.events-manu .past-events-list{
  background:#f1e7da!important;
  border-color:#dccab6!important;
}
.events-manu .past-events-list .event-card{
  background:#faf6ef!important;
  opacity:.88;
}
.events-manu .past-events-list .event-date{background:#8a7465!important;}
.events-manu .past-events-list .event-weekday{color:#756257!important;}
.events-manu .photo-feature{
  background:var(--ev-cream)!important;
  padding:6rem 0!important;
}
.events-manu .photo-feature-grid{gap:clamp(3rem,7vw,6rem)!important;align-items:center;}
.events-manu .photo-frame{
  overflow:hidden;
  border-radius:26px!important;
  box-shadow:0 18px 48px rgba(70,35,20,.13);
}
.events-manu .photo-feature-copy h2{
  color:var(--ev-ink)!important;
  font-size:clamp(2.5rem,4.5vw,4rem)!important;
  line-height:1.02;
  letter-spacing:-.03em;
}
.events-manu .photo-feature-copy p{color:var(--ev-muted)!important;font-size:1.08rem;line-height:1.75;}
@media(max-width:900px){
  .events-manu > .section.dark{padding-top:3.5rem;}
  .events-manu .next-event{grid-template-columns:auto 1fr;}
  .events-manu .next-event .btn{grid-column:1/-1;width:max-content;}
  .events-manu .event-grid{grid-template-columns:1fr;}
}
@media(max-width:640px){
  .events-manu > .section.dark{padding:3.25rem 0 4rem;}
  .events-manu .veranstaltungen-question-nowrap{font-size:clamp(2.4rem,12vw,3.35rem)!important;}
  .events-manu .next-event{grid-template-columns:1fr;padding:1.2rem;}
  .events-manu .next-event .date-box{width:92px;}
  .events-manu .event-list{padding:1.1rem;border-radius:20px;}
  .events-manu .event-list-head{display:block;}
  .events-manu .event-list-head > p{margin-top:.65rem;}
  .events-manu .event-card{grid-template-columns:72px minmax(0,1fr);padding:1rem;gap:.9rem;}
  .events-manu .event-date{min-height:72px;}
}


/* Sternlesmarkt: Datumsbereich auf Desktop in einer Zeile halten */
.events-manu .sternlesmarkt-heading {
  white-space: nowrap !important;
  font-size: clamp(1.45rem, 2.2vw, 2.15rem) !important;
}
@media (max-width: 760px) {
  .events-manu .sternlesmarkt-heading {
    white-space: normal !important;
  }
}


/* ============================================================
   Veranstaltungen – Textsatz & Lesbarkeit V3
   ============================================================ */

/* „Unterwegs für euch“: Fließtext wie auf der Startseite im Blocksatz */
.events-manu .photo-feature-copy > p:not(.eyebrow) {
  text-align: justify !important;
  text-align-last: left !important;
  text-justify: inter-word !important;
  hyphens: none !important;
}

/* „Als Nächstes unterwegs“ auf dem dunkelroten Terminblock besser lesbar */
.events-manu .next-event .eyebrow {
  color: #fffaf2 !important;
  opacity: 1 !important;
}

/* Auf kleinen Displays zugunsten ruhiger Wortabstände linksbündig */
@media (max-width: 560px) {
  .events-manu .photo-feature-copy > p:not(.eyebrow) {
    text-align: left !important;
    text-align-last: left !important;
  }
}


/* ============================================================
   Korrektur: tatsächliche Überschrift „Als Nächstes unterwegs“
   Legacy-Farbregeln sicher überschreiben V4
   ============================================================ */
.events-manu #next-event-auto .next-event-label,
.events-manu .next-event#next-event-auto .next-event-label,
.events-manu #next-event-auto .next-event-label.eyebrow {
  color: #fffaf2 !important;
  -webkit-text-fill-color: #fffaf2 !important;
  opacity: 1 !important;
}


/* Weitere Märkte & Veranstaltungen: Überschrift auf Desktop einzeilig */
.events-manu .weitere-maerkte-heading {
  white-space: nowrap !important;
  font-size: clamp(1.45rem, 2.2vw, 2.15rem) !important;
}
@media (max-width: 760px) {
  .events-manu .weitere-maerkte-heading {
    white-space: normal !important;
  }
}


/* Hero-Frage typografisch wie der Startseiten-Titel */
.events-manu .events-startpage-title {
  margin: .35rem 0 1rem !important;
  max-width: 1000px !important;
  color: #27201b !important;
  font-family: "Brush Script MT", "Segoe Script", cursive !important;
  font-size: clamp(3.9rem, 6.2vw, 5.9rem) !important;
  font-weight: 400 !important;
  line-height: .88 !important;
  letter-spacing: -.035em !important;
  text-transform: none !important;
  white-space: normal !important;
}
@media (max-width: 700px) {
  .events-manu .events-startpage-title {
    font-size: clamp(3.25rem, 15vw, 4.8rem) !important;
    line-height: .9 !important;
  }
}


/* Veranstaltungs-Hero: auf Desktop bewusst einzeilig */
.events-manu .events-startpage-title {
  max-width: none !important;
  font-size: clamp(2.8rem, 4.35vw, 4.35rem) !important;
  line-height: .95 !important;
  white-space: nowrap !important;
}
@media (max-width: 900px) {
  .events-manu .events-startpage-title {
    font-size: clamp(2.25rem, 7.1vw, 3.65rem) !important;
  }
}
@media (max-width: 640px) {
  .events-manu .events-startpage-title {
    font-size: clamp(1.85rem, 7.7vw, 2.8rem) !important;
    letter-spacing: -.045em !important;
  }
}

/* ===== Inline aus aktuelles.html ===== */

/* Direkte finale Kicker-Linien */
#main .direct-kicker-a::before,
#main .direct-kicker-b::before{
  content:""!important;
  display:block!important;
  width:34px!important;
  height:2px!important;
  flex:0 0 34px!important;
  background:#a70b11!important;
}
@media(max-width:760px){
  #main h1.news-title-final{
    font-size:clamp(3.05rem,15vw,4.25rem)!important;
    line-height:.90!important;
  }
}


/* ===== Inline aus aktuelles.html ===== */

@media (max-width:760px){
  #main .ak-title{font-size:58px!important;}
  #main .ak-script{font-size:26px!important;}
  #main .ak-kicker,#main .ak-news-kicker{font-size:15px!important;line-height:19px!important;}
}
@media (max-width:480px){
  #main .ak-title{font-size:49px!important;}
  #main .ak-script{font-size:23px!important;}
}



/* ==========================================================
   EINHEITLICHE RUBRIKÜBERSCHRIFTEN MIT STRICH
   Gilt seitenübergreifend für alle markierten Strich-Rubriken.
   ========================================================== */
html body .dh-line-heading {
  display: flex !important;
  align-items: center !important;
  gap: 11px !important;
  margin-top: 0 !important;
  margin-bottom: 16px !important;
  font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
  font-size: .78rem !important;
  font-style: normal !important;
  font-weight: 900 !important;
  line-height: 1.35 !important;
  letter-spacing: .14em !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  opacity: 1 !important;
}

html body .dh-line-heading::before {
  content: "" !important;
  display: block !important;
  width: 34px !important;
  min-width: 34px !important;
  height: 2px !important;
  flex: 0 0 34px !important;
  background: currentColor !important;
  border: 0 !important;
}

/* Auf hellen Flächen rot, passend zur Startseite. */
html body .dh-line-heading {
  color: #a70b11 !important;
  -webkit-text-fill-color: #a70b11 !important;
}

/* Auf roten/dunklen Flächen weiß für ausreichenden Kontrast. */
html body .dark .dh-line-heading,
html body [class*="dark"] .dh-line-heading,
html body [class*="red"] .dh-line-heading,
html body [class*="cta"] .dh-line-heading,
html body .dh-line-heading.on-dark {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}

/* FINAL: identische Typografie aller Rubriken mit Strich */
html body .dh-line-heading,
html body h1.dh-line-heading,html body h2.dh-line-heading,
html body h3.dh-line-heading,html body h4.dh-line-heading,
html body p.dh-line-heading,html body span.dh-line-heading,
html body div.dh-line-heading{
 font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif !important;
 font-size:12.48px !important;font-style:normal !important;font-weight:900 !important;
 line-height:16.848px !important;letter-spacing:1.7472px !important;
 text-transform:uppercase !important;
}
html body .dh-line-heading::before{
 width:34px !important;min-width:34px !important;max-width:34px !important;
 height:2px !important;min-height:2px !important;max-height:2px !important;
 flex:0 0 34px !important;
}


/* ==========================================================
   STRICH-RUBRIKEN – FESTE, MANUELL GEPRÜFTE ZUORDNUNG
   ID-Selektoren verhindern Überschreibung durch alte Seitenregeln.
   ========================================================== */
#dh-rubric-001,
#dh-rubric-002,
#dh-rubric-003,
#dh-rubric-004,
#dh-rubric-005,
#dh-rubric-006,
#dh-rubric-007,
#dh-rubric-008,
#dh-rubric-009,
#dh-rubric-010,
#dh-rubric-011,
#dh-rubric-012,
#dh-rubric-013,
#dh-rubric-014,
#dh-rubric-015,
#dh-rubric-016,
#dh-rubric-017,
#dh-rubric-018,
#dh-rubric-019,
#dh-rubric-020,
#dh-rubric-021,
#dh-rubric-022,
#dh-rubric-023,
#dh-rubric-024,
#dh-rubric-025,
#dh-rubric-026,
#dh-rubric-027,
#dh-rubric-028,
#dh-rubric-029,
#dh-rubric-030,
#dh-rubric-031,
#dh-rubric-032,
#dh-rubric-033,
#dh-rubric-034,
#dh-rubric-035,
#dh-rubric-036 {
  display:flex !important;
  align-items:center !important;
  gap:11px !important;
  margin-top:0 !important;
  margin-right:0 !important;
  margin-bottom:16px !important;
  margin-left:0 !important;
  padding:0 !important;
  font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif !important;
  font-size:12.48px !important;
  font-style:normal !important;
  font-weight:900 !important;
  font-variant:normal !important;
  line-height:16.848px !important;
  letter-spacing:1.7472px !important;
  text-transform:uppercase !important;
  text-decoration:none !important;
  opacity:1 !important;
  text-shadow:none !important;
}
#dh-rubric-001::before,
#dh-rubric-002::before,
#dh-rubric-003::before,
#dh-rubric-004::before,
#dh-rubric-005::before,
#dh-rubric-006::before,
#dh-rubric-007::before,
#dh-rubric-008::before,
#dh-rubric-009::before,
#dh-rubric-010::before,
#dh-rubric-011::before,
#dh-rubric-012::before,
#dh-rubric-013::before,
#dh-rubric-014::before,
#dh-rubric-015::before,
#dh-rubric-016::before,
#dh-rubric-017::before,
#dh-rubric-018::before,
#dh-rubric-019::before,
#dh-rubric-020::before,
#dh-rubric-021::before,
#dh-rubric-022::before,
#dh-rubric-023::before,
#dh-rubric-024::before,
#dh-rubric-025::before,
#dh-rubric-026::before,
#dh-rubric-027::before,
#dh-rubric-028::before,
#dh-rubric-029::before,
#dh-rubric-030::before,
#dh-rubric-031::before,
#dh-rubric-032::before,
#dh-rubric-033::before,
#dh-rubric-034::before,
#dh-rubric-035::before,
#dh-rubric-036::before {
  content:"" !important;
  display:block !important;
  width:34px !important;
  min-width:34px !important;
  max-width:34px !important;
  height:2px !important;
  min-height:2px !important;
  max-height:2px !important;
  flex:0 0 34px !important;
  border:0 !important;
  border-radius:0 !important;
  opacity:1 !important;
}
#dh-rubric-001,
#dh-rubric-002,
#dh-rubric-004,
#dh-rubric-005,
#dh-rubric-006,
#dh-rubric-007,
#dh-rubric-008,
#dh-rubric-009,
#dh-rubric-010,
#dh-rubric-011,
#dh-rubric-012,
#dh-rubric-013,
#dh-rubric-014,
#dh-rubric-015,
#dh-rubric-016,
#dh-rubric-017,
#dh-rubric-018,
#dh-rubric-020,
#dh-rubric-021,
#dh-rubric-022,
#dh-rubric-023,
#dh-rubric-024,
#dh-rubric-025,
#dh-rubric-027,
#dh-rubric-028,
#dh-rubric-029,
#dh-rubric-030,
#dh-rubric-032,
#dh-rubric-034,
#dh-rubric-035,
#dh-rubric-036 {
  color:#a70b11 !important;
  -webkit-text-fill-color:#a70b11 !important;
}
#dh-rubric-001::before,
#dh-rubric-002::before,
#dh-rubric-004::before,
#dh-rubric-005::before,
#dh-rubric-006::before,
#dh-rubric-007::before,
#dh-rubric-008::before,
#dh-rubric-009::before,
#dh-rubric-010::before,
#dh-rubric-011::before,
#dh-rubric-012::before,
#dh-rubric-013::before,
#dh-rubric-014::before,
#dh-rubric-015::before,
#dh-rubric-016::before,
#dh-rubric-017::before,
#dh-rubric-018::before,
#dh-rubric-020::before,
#dh-rubric-021::before,
#dh-rubric-022::before,
#dh-rubric-023::before,
#dh-rubric-024::before,
#dh-rubric-025::before,
#dh-rubric-027::before,
#dh-rubric-028::before,
#dh-rubric-029::before,
#dh-rubric-030::before,
#dh-rubric-032::before,
#dh-rubric-034::before,
#dh-rubric-035::before,
#dh-rubric-036::before {
  background:#a70b11 !important;
}
#dh-rubric-003,
#dh-rubric-019,
#dh-rubric-026,
#dh-rubric-031,
#dh-rubric-033 {
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
}
#dh-rubric-003::before,
#dh-rubric-019::before,
#dh-rubric-026::before,
#dh-rubric-031::before,
#dh-rubric-033::before {
  background:#ffffff !important;
}


/* ===== Manuell korrigierte Bereiche: Startseite, Veranstaltungen, Kontakt ===== */
#dh-rubric-022,
#dh-rubric-034,
#dh-rubric-035,
#dh-rubric-036 {
  font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif !important;
  font-size:12.48px !important;
  font-style:normal !important;
  font-weight:900 !important;
  line-height:16.848px !important;
  letter-spacing:1.7472px !important;
  text-transform:uppercase !important;
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
}
#dh-rubric-022::before,
#dh-rubric-034::before,
#dh-rubric-035::before,
#dh-rubric-036::before {
  background:#ffffff !important;
}
#dh-rubric-027,
#dh-rubric-028 {
  font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif !important;
  font-size:12.48px !important;
  font-style:normal !important;
  font-weight:900 !important;
  line-height:16.848px !important;
  letter-spacing:1.7472px !important;
  text-transform:uppercase !important;
  color:#a70b11 !important;
  -webkit-text-fill-color:#a70b11 !important;
}
#dh-rubric-027::before,
#dh-rubric-028::before {
  background:#a70b11 !important;
}


/* ==========================================================
   VERANSTALTUNGEN – RUBRIKEN FINAL
   Gleiche Maße wie die übrigen Strich-Rubriken.
   ========================================================== */
html body.events-manu p.veranstaltungen-rubric,
html body p.veranstaltungen-rubric {
  display:flex !important;
  align-items:center !important;
  gap:11px !important;
  margin:0 0 16px 0 !important;
  padding:0 !important;
  border:0 !important;

  font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif !important;
  font-size:12.48px !important;
  font-style:normal !important;
  font-weight:900 !important;
  font-variant:normal !important;
  font-stretch:normal !important;
  line-height:16.848px !important;
  letter-spacing:1.7472px !important;
  text-transform:uppercase !important;
  text-indent:0 !important;
  text-decoration:none !important;
  white-space:normal !important;

  color:#a70b11 !important;
  -webkit-text-fill-color:#a70b11 !important;
  opacity:1 !important;
  transform:none !important;
  zoom:1 !important;
}
html body p.veranstaltungen-rubric::before {
  content:"" !important;
  display:block !important;
  width:34px !important;
  min-width:34px !important;
  max-width:34px !important;
  height:2px !important;
  min-height:2px !important;
  max-height:2px !important;
  flex:0 0 34px !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  background:#a70b11 !important;
  transform:none !important;
}
html body p.veranstaltungen-rubric.dh-on-dark {
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
}
html body p.veranstaltungen-rubric.dh-on-dark::before {
  background:#ffffff !important;
}


/* Veranstaltungen – ausschließlich Farbkorrektur */
html body p.veranstaltungen-rubric,
html body p.veranstaltungen-rubric.dh-on-dark {
  color:#a70b11 !important;
  -webkit-text-fill-color:#a70b11 !important;
}
html body p.veranstaltungen-rubric::before,
html body p.veranstaltungen-rubric.dh-on-dark::before {
  background:#a70b11 !important;
}


/* Veranstaltungen – Farbe nach tatsächlichem Hintergrund */
#dh-rubric-034 {
  color:#a70b11 !important;
  -webkit-text-fill-color:#a70b11 !important;
}
#dh-rubric-034::before { background:#a70b11 !important; }

#dh-rubric-035 {
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
}
#dh-rubric-035::before { background:#ffffff !important; }

#dh-rubric-036 {
  color:#a70b11 !important;
  -webkit-text-fill-color:#a70b11 !important;
}
#dh-rubric-036::before { background:#a70b11 !important; }


/* Catering: Hintergrundbild hinter „Für Feste, Feiern und Veranstaltungen.“ entfernt */
html body .catering-no-bg-image {
  background-image:none !important;
}
html body .catering-no-bg-image::before,
html body .catering-no-bg-image::after {
  background-image:none !important;
}


/* ==========================================================
   GALERIE – Pfälzer Manufaktur
   ========================================================== */
.gallery-manu { background:#fffaf2; color:#3f3731; }
.gallery-manu .wrap { width:min(1180px, calc(100% - 40px)); margin-inline:auto; }
.gallery-hero { padding:92px 0 82px; background:#f4eadb; text-align:center; border-bottom:1px solid #dfd0bf; }
.gallery-hero-inner { max-width:850px; }
.gallery-kicker { display:flex; justify-content:center; align-items:center; gap:11px; margin:0 0 18px; color:#a70b11; font:900 12.48px/16.848px system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; letter-spacing:1.7472px; text-transform:uppercase; }
.gallery-kicker::before { content:""; width:34px; height:2px; flex:0 0 34px; background:currentColor; }
.gallery-hero h1 { margin:0; color:#27201b; font:800 clamp(3rem,7vw,5.7rem)/.95 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; letter-spacing:-.045em; }
.gallery-script { margin:14px 0 22px; color:#a70b11; font:400 clamp(1.65rem,3vw,2.3rem)/1.1 "Brush Script MT","Segoe Script",cursive; }
.gallery-lead { max-width:760px; margin:0 auto; font-size:1.1rem; line-height:1.75; }
.gallery-intro { padding:76px 0; background:#fffaf2; }
.gallery-intro-grid { display:grid; grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr); gap:70px; align-items:end; }
.gallery-intro .gallery-kicker { justify-content:flex-start; }
.gallery-intro h2,.gallery-section-head h2,.gallery-band h2 { margin:0; color:#27201b; font-size:clamp(2rem,4vw,3.35rem); line-height:1.04; letter-spacing:-.035em; }
.gallery-intro-grid > p { margin:0; font-size:1.08rem; line-height:1.75; }
.gallery-showcase { padding:76px 0 92px; background:#fff; }
.gallery-section-head { display:flex; justify-content:space-between; gap:35px; align-items:end; margin-bottom:38px; }
.gallery-section-head .gallery-kicker { justify-content:flex-start; }
.gallery-filters { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:8px; }
.gallery-filters button { border:1px solid #dfd0bf; border-radius:999px; padding:10px 15px; background:#fffaf2; color:#3f3731; font:800 .8rem/1 system-ui,sans-serif; cursor:pointer; }
.gallery-filters button:hover,.gallery-filters button.is-active { background:#a70b11; border-color:#a70b11; color:#fff; }
.gallery-grid { display:grid; grid-template-columns:repeat(12,1fr); gap:18px; }
.gallery-card { grid-column:span 4; margin:0; overflow:hidden; background:#f4eadb; }
.gallery-card:nth-child(5n+1),.gallery-card:nth-child(5n+4) { grid-column:span 8; }
.gallery-photo-button { position:relative; display:block; width:100%; padding:0; border:0; background:#eee; cursor:zoom-in; overflow:hidden; }
.gallery-photo-button img { display:block; width:100%; height:360px; object-fit:cover; transition:transform .35s ease; }
.gallery-card:nth-child(5n+1) .gallery-photo-button img,.gallery-card:nth-child(5n+4) .gallery-photo-button img { height:470px; }
.gallery-photo-button:hover img { transform:scale(1.025); }
.gallery-zoom { position:absolute; right:16px; bottom:16px; width:42px; height:42px; border-radius:50%; display:grid; place-items:center; background:rgba(255,250,242,.94); color:#a70b11; font-size:1.55rem; font-weight:300; }
.gallery-card figcaption { display:flex; justify-content:space-between; gap:15px; align-items:baseline; padding:15px 17px 17px; }
.gallery-card figcaption span { color:#27201b; font-weight:850; }
.gallery-card figcaption small { color:#75685e; text-align:right; }
.gallery-placeholder-inner { min-height:360px; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:9px; padding:35px; text-align:center; border:1px dashed #cdb9a2; color:#75685e; }
.gallery-placeholder-mark { display:grid; place-items:center; width:48px; height:48px; border:1px solid #a70b11; border-radius:50%; color:#a70b11; font-size:1.7rem; }
.gallery-placeholder-inner strong { color:#27201b; }
.gallery-band { padding:66px 0; background:#72070b; color:#fff; }
.gallery-band-inner { display:flex; align-items:center; justify-content:space-between; gap:35px; }
.gallery-band .gallery-kicker { justify-content:flex-start; color:#fff; }
.gallery-band h2 { color:#fff; max-width:680px; }
.gallery-cta { display:inline-flex; align-items:center; justify-content:center; min-height:48px; padding:0 20px; border:1px solid rgba(255,255,255,.75); color:#fff; text-decoration:none; font-weight:800; }
.gallery-cta:hover { background:#fff; color:#72070b; }
.gallery-lightbox[hidden] { display:none; }
.gallery-lightbox { position:fixed; z-index:9999; inset:0; display:grid; place-items:center; padding:60px 28px 28px; background:rgba(20,12,8,.92); }
.gallery-lightbox img { max-width:min(1200px,95vw); max-height:86vh; object-fit:contain; box-shadow:0 20px 80px rgba(0,0,0,.35); }
.gallery-lightbox-close { position:absolute; top:18px; right:24px; border:0; background:transparent; color:#fff; font-size:2.5rem; cursor:pointer; }
body.gallery-lightbox-open { overflow:hidden; }

@media (max-width:850px) {
  .gallery-hero { padding:68px 0 60px; }
  .gallery-intro-grid { grid-template-columns:1fr; gap:25px; }
  .gallery-section-head,.gallery-band-inner { align-items:flex-start; flex-direction:column; }
  .gallery-filters { justify-content:flex-start; }
  .gallery-card,.gallery-card:nth-child(5n+1),.gallery-card:nth-child(5n+4) { grid-column:span 6; }
  .gallery-photo-button img,.gallery-card:nth-child(5n+1) .gallery-photo-button img,.gallery-card:nth-child(5n+4) .gallery-photo-button img { height:330px; }
}
@media (max-width:560px) {
  .gallery-manu .wrap { width:min(100% - 28px,1180px); }
  .gallery-showcase,.gallery-intro { padding:56px 0; }
  .gallery-card,.gallery-card:nth-child(5n+1),.gallery-card:nth-child(5n+4) { grid-column:1/-1; }
  .gallery-photo-button img,.gallery-card:nth-child(5n+1) .gallery-photo-button img,.gallery-card:nth-child(5n+4) .gallery-photo-button img { height:300px; }
  .gallery-card figcaption { align-items:flex-start; flex-direction:column; gap:3px; }
  .gallery-card figcaption small { text-align:left; }
}


/* ==========================================================
   GALERIE – FARBEN WIE AUF DEN ÜBRIGEN SEITEN
   Helle Flächen: Rubrik/Strich rot, Überschrift dunkel.
   Dunkelrote Fläche: Rubrik/Strich und Überschrift weiß.
   ========================================================== */
.gallery-manu .gallery-hero .gallery-kicker,
.gallery-manu .gallery-intro .gallery-kicker,
.gallery-manu .gallery-showcase .gallery-kicker {
  color:#a70b11 !important;
  -webkit-text-fill-color:#a70b11 !important;
}
.gallery-manu .gallery-hero .gallery-kicker::before,
.gallery-manu .gallery-intro .gallery-kicker::before,
.gallery-manu .gallery-showcase .gallery-kicker::before {
  background:#a70b11 !important;
}
.gallery-manu .gallery-hero h1,
.gallery-manu .gallery-intro h2,
.gallery-manu .gallery-showcase h2 {
  color:#27201b !important;
  -webkit-text-fill-color:#27201b !important;
}
.gallery-manu .gallery-band .gallery-kicker,
.gallery-manu .gallery-band .gallery-kicker-light,
.gallery-manu .gallery-band h2 {
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
}
.gallery-manu .gallery-band .gallery-kicker::before,
.gallery-manu .gallery-band .gallery-kicker-light::before {
  background:#ffffff !important;
}

/*
 GALERIE – PFLEGEHINWEIS:
 Neue Fotos benötigen normalerweise KEINE neue CSS-Regel.
 Die Zuordnung erfolgt in galerie.html über:
 data-gallery-category="produkt|anhaenger|team|events"
*/


/* ==========================================================
   GALERIE – ALLE BILDVORSCHAUEN GLEICH GROSS
   object-fit: cover sorgt dafür, dass Hoch-/Querformat dieselbe
   Vorschaufläche füllen, ohne das Bild zu verzerren.
   ========================================================== */
.gallery-manu .gallery-grid .gallery-card .gallery-photo-button {
  width:100% !important;
  aspect-ratio:4 / 3 !important;
  height:auto !important;
  overflow:hidden !important;
}
.gallery-manu .gallery-grid .gallery-card .gallery-photo-button img,
.gallery-manu .gallery-grid .gallery-card:nth-child(5n+1) .gallery-photo-button img,
.gallery-manu .gallery-grid .gallery-card:nth-child(5n+4) .gallery-photo-button img {
  display:block !important;
  width:100% !important;
  height:100% !important;
  aspect-ratio:auto !important;
  object-fit:cover !important;
  object-position:center !important;
}
.gallery-manu .gallery-grid .gallery-placeholder-inner {
  aspect-ratio:4 / 3 !important;
  min-height:0 !important;
  height:auto !important;
}


/* ==========================================================
   GALERIE – VORSCHAU FINAL EINHEITLICH
   Alle Karten besitzen dieselbe Breite und alle Bildflächen 4:3.
   ========================================================== */
.gallery-manu .gallery-grid {
  display:grid !important;
  grid-template-columns:repeat(3, minmax(0, 1fr)) !important;
  gap:18px !important;
}
.gallery-manu .gallery-grid .gallery-card,
.gallery-manu .gallery-grid .gallery-card:nth-child(5n+1),
.gallery-manu .gallery-grid .gallery-card:nth-child(5n+4) {
  grid-column:auto !important;
  width:100% !important;
  min-width:0 !important;
}
.gallery-manu .gallery-grid .gallery-card .gallery-photo-button,
.gallery-manu .gallery-grid .gallery-card:nth-child(5n+1) .gallery-photo-button,
.gallery-manu .gallery-grid .gallery-card:nth-child(5n+4) .gallery-photo-button {
  display:block !important;
  width:100% !important;
  height:auto !important;
  aspect-ratio:4 / 3 !important;
  overflow:hidden !important;
}
.gallery-manu .gallery-grid .gallery-card .gallery-photo-button img,
.gallery-manu .gallery-grid .gallery-card:nth-child(5n+1) .gallery-photo-button img,
.gallery-manu .gallery-grid .gallery-card:nth-child(5n+4) .gallery-photo-button img {
  display:block !important;
  width:100% !important;
  height:100% !important;
  min-height:0 !important;
  max-height:none !important;
  aspect-ratio:auto !important;
  object-fit:cover !important;
  object-position:center !important;
}
@media (max-width:850px) {
  .gallery-manu .gallery-grid {
    grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
  }
}
@media (max-width:560px) {
  .gallery-manu .gallery-grid {
    grid-template-columns:minmax(0, 1fr) !important;
  }
}


/* ==========================================================
   HEADER – FIRMENLOGO UNVERZERRT
   Die Breite darf sich an das Layout anpassen; die Höhe wird
   immer aus dem originalen Seitenverhältnis des Logos berechnet.
   ========================================================== */
.ref-header img[src*="logo" i],
.ref-header img[alt*="Dampfnudelhof" i] {
  width:auto !important;
  height:auto !important;
  max-width:100% !important;
  max-height:86px !important;
  object-fit:contain !important;
  object-position:center !important;
  aspect-ratio:auto !important;
  transform:none !important;
}

.ref-header a:has(> img[src*="logo" i]),
.ref-header a:has(> img[alt*="Dampfnudelhof" i]) {
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  height:auto !important;
}

@media (max-width:700px) {
  .ref-header img[src*="logo" i],
  .ref-header img[alt*="Dampfnudelhof" i] {
    width:auto !important;
    height:auto !important;
    max-width:min(100%, 220px) !important;
    max-height:72px !important;
  }
}


/* ==========================================================
   HEADER – LOGO OBEN LINKS, VOLLSTÄNDIG SICHTBAR
   Das Logo sitzt links oben im Header, behält sein originales
   Seitenverhältnis und darf von keinem Container abgeschnitten werden.
   ========================================================== */
.ref-header {
  overflow:visible !important;
}

.ref-header > *,
.ref-header .wrap,
.ref-header [class*="header"],
.ref-header [class*="brand"],
.ref-header [class*="logo"] {
  overflow:visible !important;
}

.ref-header a:has(> img[src*="logo" i]),
.ref-header a:has(> img[alt*="Dampfnudelhof" i]) {
  position:relative !important;
  display:flex !important;
  align-items:flex-start !important;
  justify-content:flex-start !important;
  align-self:flex-start !important;
  flex:0 0 auto !important;
  width:auto !important;
  height:auto !important;
  margin:0 !important;
  padding:0 !important;
  overflow:visible !important;
}

.ref-header img[src*="logo" i],
.ref-header img[alt*="Dampfnudelhof" i] {
  position:relative !important;
  display:block !important;
  width:auto !important;
  height:auto !important;
  max-width:min(260px, 26vw) !important;
  max-height:92px !important;
  margin:0 !important;
  padding:0 !important;
  object-fit:contain !important;
  object-position:left top !important;
  aspect-ratio:auto !important;
  transform:none !important;
  clip-path:none !important;
}

@media (max-width:700px) {
  .ref-header img[src*="logo" i],
  .ref-header img[alt*="Dampfnudelhof" i] {
    max-width:min(210px, 58vw) !important;
    max-height:76px !important;
    object-position:left top !important;
  }
}


/* ==========================================================
   CATERING – FARBEN AN DIE RESTLICHE WEBSITE ANGEPASST
   Gemeinsame Manufaktur-Palette:
   Rot #a70b11 | Dunkelrot #72070b | Creme #f4eadb
   Papier #fffaf2 | Text #27201b | Fließtext #3f3731
   ========================================================== */

.catering-unified-page {
  background:#fffaf2 !important;
  color:#3f3731 !important;
}

.catering-unified-page main,
.catering-unified-page .catering-unified {
  color:#3f3731 !important;
}

/* Helle Inhaltsflächen */
.catering-unified-page main section:not(.dark):not(.red):not(.catering-dark):not(.catering-red),
.catering-unified-page .catering-section,
.catering-unified-page .catering-content {
  background-color:#fffaf2;
  color:#3f3731;
}

/* Hauptüberschriften wie auf den übrigen Seiten */
.catering-unified-page main h1,
.catering-unified-page main h2,
.catering-unified-page main h3 {
  color:#27201b;
}

/* Kleine Rubriküberschriften + Linie in Markenrot */
.catering-unified-page .manu-kicker,
.catering-unified-page .manu-eyebrow,
.catering-unified-page .dh-line-heading,
.catering-unified-page [class*="kicker"],
.catering-unified-page [class*="eyebrow"] {
  color:#a70b11;
}

.catering-unified-page .manu-kicker::before,
.catering-unified-page .manu-eyebrow::before,
.catering-unified-page .dh-line-heading::before,
.catering-unified-page [class*="kicker"]::before,
.catering-unified-page [class*="eyebrow"]::before {
  background:#a70b11;
}

/* Links und Akzente */
.catering-unified-page main a:not(.btn):not(.button) {
  color:#a70b11;
}

/* Buttons im einheitlichen Dunkelrot */
.catering-unified-page .btn,
.catering-unified-page .button,
.catering-unified-page a[class*="btn"],
.catering-unified-page a[class*="button"] {
  background:#72070b;
  color:#fff;
  border-color:#72070b;
}

/* Dunkelrote Flächen: Weiß für Überschriften, Text und Rubriklinie */
.catering-unified-page .dark,
.catering-unified-page .red,
.catering-unified-page .catering-dark,
.catering-unified-page .catering-red,
.catering-unified-page [class*="cta"] {
  background-color:#72070b;
  color:#fff;
}

.catering-unified-page .dark h1,
.catering-unified-page .dark h2,
.catering-unified-page .dark h3,
.catering-unified-page .red h1,
.catering-unified-page .red h2,
.catering-unified-page .red h3,
.catering-unified-page .catering-dark h1,
.catering-unified-page .catering-dark h2,
.catering-unified-page .catering-dark h3,
.catering-unified-page .catering-red h1,
.catering-unified-page .catering-red h2,
.catering-unified-page .catering-red h3,
.catering-unified-page [class*="cta"] h1,
.catering-unified-page [class*="cta"] h2,
.catering-unified-page [class*="cta"] h3,
.catering-unified-page .dark .manu-kicker,
.catering-unified-page .dark .manu-eyebrow,
.catering-unified-page .red .manu-kicker,
.catering-unified-page .red .manu-eyebrow,
.catering-unified-page [class*="cta"] .manu-kicker,
.catering-unified-page [class*="cta"] .manu-eyebrow {
  color:#fff;
}

.catering-unified-page .dark .manu-kicker::before,
.catering-unified-page .dark .manu-eyebrow::before,
.catering-unified-page .red .manu-kicker::before,
.catering-unified-page .red .manu-eyebrow::before,
.catering-unified-page [class*="cta"] .manu-kicker::before,
.catering-unified-page [class*="cta"] .manu-eyebrow::before {
  background:#fff;
}

/* Karten und Trennlinien wie auf den übrigen hellen Seiten */
.catering-unified-page .card,
.catering-unified-page [class*="card"] {
  border-color:#dfd0bf;
}

.catering-unified-page hr {
  border-color:#dfd0bf;
}


/* Kontaktformular – PHP/STRATO */
.contact-hp{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.contact-security-fields{margin-top:1rem}
.contact-captcha{display:grid;gap:.45rem;max-width:320px}
.contact-captcha span{font-weight:700;color:#27201b}
.contact-captcha input{width:100%}
.contact-form-status{margin:0 0 1.25rem;padding:1rem 1.1rem;border:1px solid #dfd0bf;background:#fffaf2;color:#27201b}




/* Kontakt: Erfolgsmeldung ohne seitlichen roten Balken */



/* Kontakt – Erfolgsmeldung definitiv ohne seitlichen Balken */
.contact-form-status.is-success {
  border-left: 0 !important;
  box-shadow: none !important;
}
.contact-form-status.is-success::before,
.contact-form-status.is-success::after {
  content: none !important;
  display: none !important;
}

/* Kontakt – Hinweise oberhalb des Formulars ohne seitlichen Farbbalken */
.contact-form-status.is-error,
.contact-form-status.is-success {
  border-left: 0 !important;
  box-shadow: none !important;
}
.contact-form-status.is-error::before,
.contact-form-status.is-error::after,
.contact-form-status.is-success::before,
.contact-form-status.is-success::after {
  content: none !important;
  display: none !important;
}

/* Impressum – passend zum bestehenden Dampfnudelhof-Design */
.impressum-manu-page .legal-page{background:var(--m-paper,#fffaf2);color:var(--m-ink,#27201b);padding:clamp(54px,7vw,92px) 0 clamp(70px,9vw,112px)}
.impressum-manu-page .legal-page>.container{width:min(calc(100% - 40px),980px);margin:0 auto}
.impressum-manu-page .legal-page .manu-kicker{display:flex;align-items:center;gap:12px;margin:0 0 14px;color:var(--m-red,#a70b11);font:900 12.48px/16.848px system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;letter-spacing:1.7472px;text-transform:uppercase}
.impressum-manu-page .legal-page .manu-kicker:before{content:"";width:34px;height:2px;flex:0 0 34px;background:var(--m-red,#a70b11)}
.impressum-manu-page .legal-page h1{margin:0 0 clamp(38px,5vw,58px);color:var(--m-ink,#27201b);font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:clamp(2.7rem,5vw,4.6rem);font-weight:800;line-height:1.02;letter-spacing:-.035em}
.impressum-manu-page .legal-page h2{margin:42px 0 13px;color:var(--m-red,#a70b11);font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:clamp(1.2rem,2vw,1.5rem);font-weight:800;line-height:1.25;letter-spacing:-.015em}
.impressum-manu-page .legal-page h2:first-of-type{margin-top:0}
.impressum-manu-page .legal-page p{max-width:780px;margin:0 0 18px;color:#3f3731;font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:1.04rem;line-height:1.72;text-align:left}
.impressum-manu-page .legal-page a{color:var(--m-red,#a70b11);text-decoration-thickness:1px;text-underline-offset:3px}
.impressum-manu-page .legal-page strong{color:var(--m-ink,#27201b)}
@media(max-width:640px){.impressum-manu-page .legal-page{padding:42px 0 66px}.impressum-manu-page .legal-page>.container{width:min(calc(100% - 30px),980px)}.impressum-manu-page .legal-page h1{margin-bottom:32px}.impressum-manu-page .legal-page h2{margin-top:34px}.impressum-manu-page .legal-page p{font-size:1rem;line-height:1.68}}

/* Impressum – final einheitlicher Dampfnudelhof-Rotton und Blocksatz */
.impressum-manu-page .legal-page .manu-kicker,
.impressum-manu-page .legal-page h2,
.impressum-manu-page .legal-page a {
  color: #a70b11 !important;
}
.impressum-manu-page .legal-page .manu-kicker::before {
  background: #a70b11 !important;
}
.impressum-manu-page .legal-page p {
  text-align: justify !important;
  text-justify: inter-word;
  hyphens: auto;
  -webkit-hyphens: auto;
}
@media (max-width: 640px) {
  .impressum-manu-page .legal-page p {
    text-align: justify !important;
    hyphens: auto;
    -webkit-hyphens: auto;
  }
}

/* Datenschutz – Gestaltung analog zum Impressum */
.datenschutz-manu-page .legal-page{background:var(--m-paper,#fffaf2);color:var(--m-ink,#27201b);padding:clamp(54px,7vw,92px) 0 clamp(70px,9vw,112px)}
.datenschutz-manu-page .legal-page>.container{width:min(calc(100% - 40px),980px);margin:0 auto}
.datenschutz-manu-page .legal-page .manu-kicker{display:flex;align-items:center;gap:12px;margin:0 0 14px;color:#a70b11!important;font:900 12.48px/16.848px system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;letter-spacing:1.7472px;text-transform:uppercase}
.datenschutz-manu-page .legal-page .manu-kicker:before{content:"";width:34px;height:2px;flex:0 0 34px;background:#a70b11!important}
.datenschutz-manu-page .legal-page h1{margin:0 0 clamp(38px,5vw,58px);color:var(--m-ink,#27201b);font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:clamp(2.7rem,5vw,4.6rem);font-weight:800;line-height:1.02;letter-spacing:-.035em}
.datenschutz-manu-page .legal-page h2{margin:42px 0 13px;color:#a70b11!important;font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:clamp(1.2rem,2vw,1.5rem);font-weight:800;line-height:1.25}
.datenschutz-manu-page .legal-page h3{margin:25px 0 10px;color:var(--m-ink,#27201b);font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:1.08rem;font-weight:800;line-height:1.35}
.datenschutz-manu-page .legal-page p,.datenschutz-manu-page .legal-page li{color:#3f3731;font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:1.04rem;line-height:1.72;text-align:justify;text-justify:inter-word;hyphens:auto;-webkit-hyphens:auto}
.datenschutz-manu-page .legal-page p{max-width:850px;margin:0 0 18px}
.datenschutz-manu-page .legal-page ul{max-width:850px;margin:8px 0 22px;padding-left:25px}
.datenschutz-manu-page .legal-page li{margin:4px 0}
.datenschutz-manu-page .legal-page a{color:#a70b11!important;text-decoration-thickness:1px;text-underline-offset:3px}
@media(max-width:640px){.datenschutz-manu-page .legal-page{padding:42px 0 66px}.datenschutz-manu-page .legal-page>.container{width:min(calc(100% - 30px),980px)}.datenschutz-manu-page .legal-page h1{margin-bottom:32px}.datenschutz-manu-page .legal-page h2{margin-top:34px}.datenschutz-manu-page .legal-page p,.datenschutz-manu-page .legal-page li{font-size:1rem;line-height:1.68}}
