/*
Theme overrides loaded after style.css.
Locks the requested subpage color rhythm and removes old form box styling.
*/


.region-seo-faq-section{
  position:relative!important;
  background:linear-gradient(135deg,var(--bordeaux-dark),var(--bordeaux))!important;
  background-image:linear-gradient(135deg,var(--bordeaux-dark),var(--bordeaux))!important;
  color:#fff!important;
}


.region-contact-section{
  position:relative!important;
  background-color:#fff!important;
  background-image:linear-gradient(rgba(255,255,255,.2),rgba(255,255,255,.2)),url('../patterns/Meinert-Hintergrund-Muster.png')!important;
  background-size:auto,1400px auto!important;
  background-position:center!important;
  background-repeat:repeat!important;
  color:var(--dark)!important;
}












.region-landing .leistung-item{
  clip-path:none!important;
  border-radius:10px!important;
  border:0!important;
  box-shadow:0 12px 28px rgba(26,18,8,.08)!important;
}


.region-landing .leistung-item::before,
.region-landing .leistung-item::after{
  content:none!important;
  display:none!important;
}


.region-landing section[style*="cream"] .leistung-item{
  background:#fff!important;
  color:var(--dark)!important;
}


.region-landing section[style*="cream"] .leistung-item h3{
  color:var(--dark)!important;
}


.region-landing section[style*="cream"] .leistung-item p{
  color:var(--text-light)!important;
}




.region-contact-section .section-inner,
.contact-section .section-inner{
  max-width:1100px!important;
}


.home-contact-section .home-contact-grid,
.region-contact-section .home-contact-grid,
.contact-section .contact-grid{
  display:flex!important;
  flex-direction:column!important;
  gap:34px!important;
  max-width:100%!important;
  margin:0!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  border-radius:0!important;
}


.home-contact-section .home-contact-grid > div,
.region-contact-section .home-contact-grid > div,
.contact-section .contact-grid > div{
  width:100%!important;
  max-width:none!important;
}


.home-contact-section .section-desc,
.region-contact-section .section-desc,
.contact-section .section-desc{
  max-width:760px!important;
}


.home-contact-section .home-contact-info,
.region-contact-section .home-contact-info,
.contact-section .contact-info-list{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:18px!important;
  max-width:760px!important;
  padding:0!important;
  margin:28px 0 0!important;
}


.home-contact-section .meinert-contact-form-clean,
.region-contact-section .meinert-contact-form-clean,
.contact-section .meinert-contact-form-clean,
.contact-section .contact-form{
  display:flex!important;
  flex-direction:column!important;
  gap:18px!important;
  width:100%!important;
  max-width:none!important;
  padding:0!important;
  margin:0!important;
  background:transparent!important;
  background-image:none!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  clip-path:none!important;
  overflow:visible!important;
  color:inherit!important;
}


.home-contact-section .meinert-contact-form-clean::before,
.home-contact-section .meinert-contact-form-clean::after,
.region-contact-section .meinert-contact-form-clean::before,
.region-contact-section .meinert-contact-form-clean::after,
.contact-section .meinert-contact-form-clean::before,
.contact-section .meinert-contact-form-clean::after,
.contact-section .contact-form::before,
.contact-section .contact-form::after{
  content:none!important;
  display:none!important;
}


.home-contact-section .form-row,
.region-contact-section .form-row,
.contact-section .form-row{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:18px!important;
  width:100%!important;
  max-width:100%!important;
}


.home-contact-section .form-group,
.region-contact-section .form-group,
.contact-section .form-group{
  margin:0!important;
  min-width:0!important;
  max-width:100%!important;
}


.home-contact-section .form-group label,
.region-contact-section .form-group label,
.contact-section .form-group label{
  color:inherit!important;
}


.home-contact-section .form-group input,
.home-contact-section .form-group select,
.home-contact-section .form-group textarea,
.region-contact-section .form-group input,
.region-contact-section .form-group select,
.region-contact-section .form-group textarea,
.contact-section .form-group input,
.contact-section .form-group select,
.contact-section .form-group textarea{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  box-sizing:border-box!important;
  background:#fff!important;
  color:var(--text)!important;
  border:1px solid rgba(114,6,60,.18)!important;
  border-radius:12px!important;
  box-shadow:none!important;
}

.home-contact-section input[type="date"],
.region-contact-section input[type="date"],
.contact-section input[type="date"]{
  display:block!important;
  max-width:100%!important;
  min-width:0!important;
  -webkit-appearance:none!important;
  appearance:none!important;
}




.home-contact-section .form-privacy a,
.region-contact-section .form-privacy a,
.contact-section .form-privacy a{
  color:inherit!important;
  text-decoration:underline!important;
}


.home-contact-section .meinert-form-message,
.region-contact-section .meinert-form-message,
.contact-section .meinert-form-message{
  max-width:1100px!important;
  margin:0 0 28px!important;
  border:1px solid currentColor!important;
  border-radius:12px!important;
  font-weight:700!important;
}


.home-contact-section .meinert-form-message.success,
.home-contact-section .meinert-form-message.error,
.region-contact-section .meinert-form-message.success,
.region-contact-section .meinert-form-message.error,
.contact-section .meinert-form-message.success,
.contact-section .meinert-form-message.error{
  background:rgba(255,255,255,.16)!important;
  color:inherit!important;
}

.region-seo-faq-section .section-label,
.region-seo-faq-section .section-title,
.region-seo-faq-section .title-accent,
.region-seo-faq-section .faq-question,
.region-seo-faq-section .faq-toggle{
  color:#fff!important;
}

.region-seo-faq-section p,
.region-seo-faq-section .faq-answer p{
  color:rgba(255,255,255,.88)!important;
}

.region-seo-faq-section .faq-item{
  background:rgba(255,255,255,.1)!important;
  border-color:rgba(255,255,255,.24)!important;
}

@media(max-width:768px){
  
  .region-contact-section{
    background-size:auto,1000px auto!important;
  }

  

  
  .home-contact-section .home-contact-info,
  .home-contact-section .form-row,
  .region-contact-section .home-contact-info,
  .region-contact-section .form-row,
  .contact-section .contact-info-list,
  .contact-section .form-row{
    grid-template-columns:minmax(0,1fr)!important;
  }

  .home-contact-section .form-group input,
  .home-contact-section .form-group select,
  .home-contact-section .form-group textarea,
  .region-contact-section .form-group input,
  .region-contact-section .form-group select,
  .region-contact-section .form-group textarea,
  .contact-section .form-group input,
  .contact-section .form-group select,
  .contact-section .form-group textarea{
    font-size:16px!important;
  }
}

/* =====================================================================
   Unterseiten (Catering, Imbiss Haiger, Ueber mich)
   Abschnitte wechseln sich ab: weiss - lila - weiss - lila ...
   Die Klassen kommen aus meinert_band_class() in der functions.php.
   ===================================================================== */

.meinert-subpage > .meinert-band-white{
  position:relative;
  overflow:hidden;
  background-color:#fff!important;
  background-image:linear-gradient(rgba(255,255,255,.34),rgba(255,255,255,.34)),url('../patterns/Meinert-Hintergrund-Muster.png')!important;
  background-size:auto,1200px auto!important;
  background-position:center,center!important;
  background-repeat:repeat!important;
  color:var(--dark)!important;
}

.meinert-subpage > .meinert-band-lila{
  position:relative;
  overflow:hidden;
  background:linear-gradient(135deg,var(--bordeaux-dark),var(--bordeaux))!important;
  background-image:linear-gradient(135deg,var(--bordeaux-dark),var(--bordeaux))!important;
  color:#fff!important;
}

.meinert-subpage > .meinert-band-white > *,
.meinert-subpage > .meinert-band-lila > *{
  position:relative;
  z-index:1;
}

/* dezentes Symbol nur auf den lila Baendern */
.meinert-subpage > .meinert-band-white::after{
  content:none!important;
}

.meinert-subpage > .meinert-band-lila::after{
  content:'outdoor_grill';
  position:absolute;
  z-index:0;
  right:-3vw;
  bottom:-90px;
  font-family:'Material Symbols Rounded';
  font-weight:400;
  font-size:clamp(180px,30vw,430px);
  line-height:1;
  letter-spacing:0;
  text-transform:none;
  color:#fff;
  opacity:.08;
  pointer-events:none;
  -webkit-font-feature-settings:'liga';
  font-feature-settings:'liga';
}

.meinert-subpage > .faq-section.meinert-band-lila::after{content:'quiz'}
.meinert-subpage > .page-contact-section.meinert-band-lila::after{content:'local_dining'}
.meinert-subpage > .cta-band.meinert-band-lila::after{content:'local_dining'}

/* ---------- Typografie auf weissen Baendern ---------- */
.meinert-subpage > .meinert-band-white .section-label{color:var(--bordeaux)!important}
.meinert-subpage > .meinert-band-white .section-title{color:var(--dark)!important}
.meinert-subpage > .meinert-band-white .section-title .title-accent,
.meinert-subpage > .meinert-band-white .title-accent{color:var(--bordeaux)!important}
.meinert-subpage > .meinert-band-white .section-desc,
.meinert-subpage > .meinert-band-white .form-privacy,
.meinert-subpage > .meinert-band-white .faq-answer p{color:var(--text-light)!important}
.meinert-subpage > .meinert-band-white .faq-question{color:var(--dark)!important}
.meinert-subpage > .meinert-band-white .faq-toggle{color:var(--bordeaux)!important}
.meinert-subpage > .meinert-band-white .form-group label{color:var(--text)!important}
.meinert-subpage > .meinert-band-white .contact-icon{color:var(--bordeaux)!important}
.meinert-subpage > .meinert-band-white .contact-info-list strong{color:var(--dark)!important}
.meinert-subpage > .meinert-band-white .contact-info-list a,
.meinert-subpage > .meinert-band-white .form-privacy a{color:var(--bordeaux)!important}

.meinert-subpage > .meinert-band-white .faq-item{
  background:linear-gradient(180deg,#fff 0%,#fff8f2 100%)!important;
  border:1px solid rgba(114,6,60,.12)!important;
  box-shadow:0 10px 30px rgba(37,21,9,.05)!important;
}

.meinert-subpage > .meinert-band-white .leistung-item{
  background:#fff!important;
  color:var(--dark)!important;
}
.meinert-subpage > .meinert-band-white .leistung-item h3{color:var(--dark)!important}
.meinert-subpage > .meinert-band-white .leistung-item p{color:var(--text-light)!important}

/* ---------- Typografie auf lila Baendern ---------- */
.meinert-subpage > .meinert-band-lila .section-label,
.meinert-subpage > .meinert-band-lila .section-title,
.meinert-subpage > .meinert-band-lila .faq-question,
.meinert-subpage > .meinert-band-lila .faq-toggle,
.meinert-subpage > .meinert-band-lila h2{color:#fff!important}

.meinert-subpage > .meinert-band-lila .section-title .title-accent,
.meinert-subpage > .meinert-band-lila .title-accent{color:var(--gold-light)!important}

.meinert-subpage > .meinert-band-lila > .section-inner > p,
.meinert-subpage > .meinert-band-lila .section-desc,
.meinert-subpage > .meinert-band-lila .cta-inner p,
.meinert-subpage > .meinert-band-lila .contact-info-list span,
.meinert-subpage > .meinert-band-lila .form-privacy,
.meinert-subpage > .meinert-band-lila .faq-answer p{color:rgba(255,255,255,.86)!important}

.meinert-subpage > .meinert-band-lila .contact-info-list strong,
.meinert-subpage > .meinert-band-lila .form-group label{color:#fff!important}

.meinert-subpage > .meinert-band-lila .contact-info-list a,
.meinert-subpage > .meinert-band-lila .form-privacy a{color:#fff!important}

.meinert-subpage > .meinert-band-lila .contact-icon{color:var(--gold-light)!important}

.meinert-subpage > .meinert-band-lila .form-group input,
.meinert-subpage > .meinert-band-lila .form-group select,
.meinert-subpage > .meinert-band-lila .form-group textarea{
  background:#fff!important;
  color:var(--text)!important;
  border:1px solid rgba(255,255,255,.38)!important;
}

.meinert-subpage > .meinert-band-lila .btn-primary{
  background:var(--gold)!important;
  border-color:var(--gold)!important;
  color:var(--dark)!important;
}
.meinert-subpage > .meinert-band-lila .btn-primary:hover{
  background:var(--gold-light)!important;
  border-color:var(--gold-light)!important;
}

.meinert-subpage > .meinert-band-lila .leistung-item{
  background:rgba(255,255,255,.12)!important;
  border:1px solid rgba(255,255,255,.24)!important;
  box-shadow:none!important;
  color:#fff!important;
}
.meinert-subpage > .meinert-band-lila .leistung-item h3{color:#fff!important}
.meinert-subpage > .meinert-band-lila .leistung-item p{color:rgba(255,255,255,.86)!important}
.meinert-subpage > .meinert-band-lila .leistung-item .l-icon{
  color:var(--gold-light)!important;
  background:rgba(255,255,255,.14)!important;
  box-shadow:none!important;
}

.meinert-subpage > .meinert-band-lila .faq-item{
  background:rgba(255,255,255,.1)!important;
  border:1px solid rgba(255,255,255,.24)!important;
  box-shadow:none!important;
}

/* ---------- Karten und Tabellen auf den Unterseiten ---------- */
.meinert-subpage .leistung-item,
.meinert-subpage .event-card{
  clip-path:none!important;
  border-radius:10px!important;
  box-shadow:0 12px 28px rgba(26,18,8,.08)!important;
}

.meinert-subpage .leistung-item::before,
.meinert-subpage .leistung-item::after,
.meinert-subpage .event-card::before,
.meinert-subpage .event-card::after{
  content:none!important;
  display:none!important;
}

.meinert-subpage .info-table{
  border-radius:12px!important;
  background:#fff!important;
  border:1px solid rgba(114,6,60,.12)!important;
  box-shadow:0 12px 28px rgba(26,18,8,.07)!important;
  padding:4px 22px!important;
  overflow:hidden;
}

/* ---------- Finale Anfrage-CTA ---------- */
.meinert-subpage > .page-final-cta{
  padding:clamp(58px,7vw,96px) 40px!important;
  overflow:hidden;
}

.meinert-subpage > .page-final-cta::after{
  content:'local_dining';
}

.meinert-subpage > .page-final-cta .cta-inner{
  width:min(1180px,100%);
  margin:0 auto;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  gap:clamp(26px,4vw,64px)!important;
  align-items:center!important;
  text-align:left!important;
}

.meinert-subpage > .page-final-cta .section-label{
  color:var(--gold-light)!important;
  margin-bottom:12px;
}

.meinert-subpage > .page-final-cta h2{
  max-width:780px;
  margin:0 0 14px!important;
  font-size:clamp(2.15rem,4vw,4.25rem)!important;
  line-height:1.02!important;
  overflow-wrap:break-word;
}

.meinert-subpage > .page-final-cta p{
  max-width:760px;
  margin:0!important;
  color:rgba(255,255,255,.86)!important;
  font-size:clamp(1rem,.35vw + .92rem,1.12rem)!important;
  line-height:1.7!important;
}

.meinert-subpage > .page-final-cta .btn-gold{
  align-self:center;
  justify-self:end;
  min-width:210px;
  text-align:center;
  white-space:nowrap;
  box-shadow:0 16px 36px rgba(26,18,8,.18);
}

.meinert-subpage > .page-final-cta.meinert-band-white::after{
  content:none!important;
}

.meinert-subpage > .page-final-cta.meinert-band-white .section-label{
  color:var(--bordeaux)!important;
}

.meinert-subpage > .page-final-cta.meinert-band-white h2{
  color:var(--dark)!important;
}

.meinert-subpage > .page-final-cta.meinert-band-white p{
  color:var(--text-light)!important;
}

.meinert-subpage > .page-final-cta.meinert-band-white .btn-gold{
  background:var(--bordeaux)!important;
  color:#fff!important;
}

/* ---------- Imbiss Intro ---------- */
.imbiss-subpage .imbiss-intro{
  display:grid!important;
  grid-template-columns:minmax(320px,.92fr) minmax(0,1.08fr)!important;
  gap:clamp(32px,5vw,72px)!important;
  align-items:center!important;
}

.imbiss-subpage .imbiss-intro .imbiss-img{
  width:100%!important;
  min-height:420px;
  max-height:560px;
  aspect-ratio:5/4!important;
  object-fit:cover!important;
  border-radius:18px!important;
  box-shadow:0 24px 70px rgba(26,18,8,.18)!important;
}

.imbiss-subpage .imbiss-copy{
  max-width:720px;
}

.imbiss-subpage .imbiss-copy .section-title{
  margin-bottom:18px;
}

.imbiss-subpage .imbiss-copy p{
  max-width:66ch;
  font-size:clamp(.98rem,.42vw + .9rem,1.06rem)!important;
}

.imbiss-subpage .imbiss-facts{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:0 28px;
  margin-top:30px;
  border-top:1px solid rgba(114,6,60,.16);
  border-bottom:1px solid rgba(114,6,60,.16);
}

.imbiss-subpage .imbiss-fact{
  display:grid;
  grid-template-columns:minmax(90px,.42fr) minmax(0,1fr);
  gap:16px;
  align-items:start;
  padding:16px 0;
  border-top:1px solid rgba(114,6,60,.1);
}

.imbiss-subpage .imbiss-fact:nth-child(-n+2){
  border-top:0;
}

.imbiss-subpage .imbiss-fact span{
  color:var(--text-light);
  font-family:'FS',sans-serif;
  font-size:.74rem;
  font-weight:800;
  letter-spacing:.08em;
  line-height:1.35;
  text-transform:uppercase;
}

.imbiss-subpage .imbiss-fact strong,
.imbiss-subpage .imbiss-fact a{
  color:var(--dark);
  font-size:.96rem;
  font-weight:800;
  line-height:1.45;
  overflow-wrap:anywhere;
}

.imbiss-subpage .imbiss-fact a{
  color:var(--bordeaux);
  text-decoration:none;
}

.imbiss-subpage .imbiss-booking-btn{
  margin-top:30px;
}

.imbiss-subpage .meinert-band-lila .imbiss-facts{
  border-color:rgba(255,255,255,.24);
}

.imbiss-subpage .meinert-band-lila .imbiss-fact{
  border-color:rgba(255,255,255,.16);
}

.imbiss-subpage .meinert-band-lila .imbiss-fact span{
  color:rgba(255,255,255,.74);
}

.imbiss-subpage .meinert-band-lila .imbiss-fact strong,
.imbiss-subpage .meinert-band-lila .imbiss-fact a{
  color:#fff;
}

.imbiss-subpage .meinert-band-lila .imbiss-copy p{
  color:rgba(255,255,255,.84)!important;
}

/* ---------- Responsive ---------- */
.meinert-subpage img{max-width:100%}
.meinert-subpage .section-inner{width:100%}

@media(max-width:1024px){
  .meinert-subpage .about-story,
  .meinert-subpage .imbiss-info{gap:40px!important}

  .imbiss-subpage .imbiss-intro{
    grid-template-columns:1fr!important;
  }

  .imbiss-subpage .imbiss-intro .imbiss-img{
    min-height:0;
    max-height:none;
    aspect-ratio:16/9!important;
  }

  .imbiss-subpage .imbiss-copy{
    max-width:none;
  }
}

@media(max-width:768px){
  .meinert-subpage > .meinert-band-white{
    background-size:auto,860px auto!important;
  }

  .meinert-subpage > .meinert-band-lila::after{
    right:-36px;
    bottom:-52px;
    font-size:170px;
    opacity:.07;
  }

  .meinert-subpage .event-types,
  .meinert-subpage .leistung-grid,
  .meinert-subpage .imbiss-info,
  .meinert-subpage .about-story{
    grid-template-columns:1fr!important;
    gap:24px!important;
  }

  .meinert-subpage .about-story > img{aspect-ratio:4/3}
  .meinert-subpage .cta-inner{flex-direction:column;text-align:center}
  .meinert-subpage .cta-inner .btn-gold{width:100%;text-align:center}

  .meinert-subpage > .page-final-cta{
    padding:58px 22px!important;
  }

  .meinert-subpage > .page-final-cta .cta-inner{
    grid-template-columns:1fr!important;
    gap:28px!important;
    text-align:center!important;
  }

  .meinert-subpage > .page-final-cta h2,
  .meinert-subpage > .page-final-cta p{
    max-width:100%;
  }

  .meinert-subpage > .page-final-cta h2{
    font-size:clamp(2rem,9vw,3rem)!important;
  }

  .meinert-subpage > .page-final-cta .btn-gold{
    width:100%;
    min-width:0;
    justify-self:stretch;
  }

  .imbiss-subpage .imbiss-intro{
    gap:28px!important;
  }

  .imbiss-subpage .imbiss-intro .imbiss-img{
    aspect-ratio:4/3!important;
    border-radius:14px!important;
    box-shadow:0 16px 42px rgba(26,18,8,.16)!important;
  }

  .imbiss-subpage .imbiss-copy .section-title{
    font-size:clamp(2rem,9vw,3rem)!important;
    line-height:1.05!important;
  }

  .imbiss-subpage .imbiss-facts{
    grid-template-columns:1fr;
    gap:0;
    margin-top:24px;
  }

  .imbiss-subpage .imbiss-fact:nth-child(-n+2){
    border-top:1px solid rgba(114,6,60,.1);
  }

  .imbiss-subpage .imbiss-fact:first-child{
    border-top:0;
  }

  .imbiss-subpage .meinert-band-lila .imbiss-fact:nth-child(-n+2){
    border-color:rgba(255,255,255,.16);
  }

  .imbiss-subpage .meinert-band-lila .imbiss-fact:first-child{
    border-top:0;
  }

  .imbiss-subpage .imbiss-booking-btn{
    width:100%;
    margin-top:26px;
  }
}

@media(max-width:600px){
  .meinert-subpage .info-table{padding:10px 16px!important}

  .meinert-subpage .info-table tbody,
  .meinert-subpage .info-table tr,
  .meinert-subpage .info-table td{
    display:block;
    width:100%;
  }

  .meinert-subpage .info-table tr{padding:10px 0}

  .meinert-subpage .info-table td{
    padding:0;
    width:100%!important;
  }

  .meinert-subpage .info-table td:first-child{
    font-size:.75rem;
    letter-spacing:.1em;
    text-transform:uppercase;
    margin-bottom:2px;
  }

  .imbiss-subpage .imbiss-copy p{
    font-size:.95rem!important;
    line-height:1.68!important;
  }

  .imbiss-subpage .imbiss-fact{
    grid-template-columns:1fr;
    gap:4px;
    padding:14px 0;
  }

  .imbiss-subpage .imbiss-fact strong,
  .imbiss-subpage .imbiss-fact a{
    font-size:.94rem;
  }

  .meinert-subpage .gallery-grid{
    grid-template-columns:1fr!important;
    grid-template-rows:auto!important;
  }

  .meinert-subpage .gallery-item{aspect-ratio:4/3}
  .meinert-subpage .gallery-item:first-child{grid-row:span 1!important}
}

/* Unterseiten-Hero auf kleinen Displays */
@media(max-width:768px){
  .meinert-subpage .sub-hero{padding:118px 20px 64px}

  .meinert-subpage .sub-hero h1{
    font-size:clamp(1.85rem,7.4vw,2.65rem)!important;
    line-height:1.14!important;
    max-width:100%;
    overflow-wrap:break-word;
    hyphens:none;
  }

  .meinert-subpage .sub-hero .hero-accent{
    display:block;
    font-size:.9em;
    white-space:normal;
  }

  .meinert-subpage .sub-hero p{font-size:.95rem;line-height:1.65}
  .meinert-subpage .breadcrumb{font-size:.72rem}
}
