:root {
  --zmc-blue-950: #0a2944;
/* Initiativhinweis: bewusst eckige Form. */
.single-job_listing .zmc-notice {
/* Startseite: dezentes Mönch-Signet in der Arbeitskultur-Box. */
#ueber-uns .moench-about-grid > aside {
  position: relative;
  overflow: hidden;
}
#ueber-uns .moench-about-grid > aside::after {
  position: absolute;
  right: -12px;
  bottom: -12px;
  width: 116px;
  height: 116px;
  opacity: .12;
  background: url("https://web.zahnarztpraxis-moench.de/wp-content/uploads/2026/09/signet-4c.png") center / contain no-repeat;
  content: "";
  pointer-events: none;
}
#ueber-uns .moench-about-grid > aside > * {
  position: relative;
  z-index: 1;
}

  border-radius: 0;
}
  --zmc-blue-800: #123f64;
  --zmc-blue-600: #2b6f97;
  --zmc-aqua-300: #a8d5d2;
  --zmc-cream: #f5f2ec;
  --zmc-white: #fff;
  --zmc-ink: #17242d;
  --zmc-muted: #5f6c75;
  --zmc-border: #dbe3e7;
  --zmc-radius: 1.25rem;
  --zmc-shadow: 0 1.25rem 3.5rem rgba(10, 41, 68, .1);
}

.zmc-shell {
  width: min(100% - 2rem, 76rem);
  margin-inline: auto;
}

.zmc-eyebrow {
  margin: 0 0 .75rem;
  color: var(--zmc-blue-600);
  font-size: .78rem;
  font-weight: 700;
  letter-spacing: .13em;
  text-transform: uppercase;
}

.zmc-button {
  display: inline-flex;
  min-height: 3rem;
  align-items: center;
  justify-content: center;
  padding: .75rem 1.25rem;
  border: 1px solid var(--zmc-blue-950);
  border-radius: 999px;
  background: var(--zmc-blue-950);
  color: var(--zmc-white) !important;
  font-weight: 700;
  line-height: 1;
  text-decoration: none;
  transition: transform .2s ease, background-color .2s ease;
}

.zmc-button:hover,
.zmc-button:focus-visible {
  background: var(--zmc-blue-800);
  transform: translateY(-2px);
}

.zmc-button--secondary {
  border-color: var(--zmc-white);
  background: transparent;
}

.zmc-job-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1rem;
}

.zmc-job-card {
  display: flex;
  min-height: 20rem;
  flex-direction: column;
  align-items: flex-start;
  padding: clamp(1.25rem, 3vw, 2rem);
  border: 1px solid var(--zmc-border);
  border-radius: var(--zmc-radius);
  background: var(--zmc-white);
  box-shadow: 0 .75rem 2rem rgba(10, 41, 68, .05);
}

.zmc-job-card[data-status="inactive"],
.zmc-job-card[data-status="filled"],
.zmc-job-card[data-status="expired"],
.zmc-job-card[data-status="paused"] {
  background: #f4f6f7;
  box-shadow: none;
}

.zmc-job-card__status,
.zmc-status {
  display: inline-flex;
  margin-bottom: 1rem;
  padding: .38rem .7rem;
  border-radius: 999px;
  background: #dcefeb;
  color: #17524f;
  font-size: .76rem;
  font-weight: 700;
}

[data-status="inactive"] .zmc-job-card__status,
.zmc-status[data-status="inactive"],
[data-status="paused"] .zmc-job-card__status,
.zmc-status[data-status="paused"] {
  background: #ece8df;
  color: #655b45;
}

.zmc-job-card h3 {
  margin: 0 0 .75rem;
  color: var(--zmc-blue-950);
  font-size: clamp(1.25rem, 2.4vw, 1.65rem);
  line-height: 1.2;
}

.zmc-job-card p {
  color: var(--zmc-muted);
}

.zmc-job-card__meta {
  margin: 0 0 1rem;
  font-size: .9rem;
  font-weight: 700;
}

.zmc-job-card .zmc-button,
.zmc-job-card .zmc-text-link {
  margin-top: auto;
}

.zmc-text-link {
  color: var(--zmc-blue-800);
  font-weight: 700;
  text-underline-offset: .25rem;
}

.zmc-job-hero {
  padding: clamp(4rem, 9vw, 8rem) 0;
  background: var(--zmc-blue-950);
  color: var(--zmc-white);
}

.zmc-job-hero .zmc-eyebrow {
  color: var(--zmc-aqua-300);
}

.zmc-back {
  display: inline-block;
  margin-bottom: 3rem;
  color: var(--zmc-white);
  text-decoration: none;
}

.zmc-job-hero__grid {
  display: grid;
  grid-template-columns: minmax(0, 1.55fr) minmax(18rem, .75fr);
  gap: clamp(2rem, 7vw, 6rem);
  align-items: end;
}

.zmc-job-hero h1 {
  max-width: 18ch;
  margin: 0 0 1.25rem;
  color: var(--zmc-white);
  font-size: clamp(2.4rem, 6vw, 5rem);
  line-height: .98;
}

.zmc-job-lead {
  max-width: 43rem;
  margin: 0 0 2rem;
  color: rgba(255, 255, 255, .8);
  font-size: clamp(1.05rem, 2vw, 1.3rem);
}

.zmc-job-facts {
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, .2);
  border-radius: var(--zmc-radius);
}

.zmc-job-facts > div {
  display: grid;
  grid-template-columns: 1fr 1.15fr;
  gap: 1rem;
  padding: .9rem 1rem;
  border-bottom: 1px solid rgba(255, 255, 255, .16);
}

.zmc-job-facts > div:last-child {
  border-bottom: 0;
}

.zmc-job-facts span {
  color: rgba(255, 255, 255, .65);
  font-size: .86rem;
}

.zmc-job-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.6fr) minmax(17rem, .65fr);
  gap: clamp(2rem, 7vw, 6rem);
  padding-block: clamp(4rem, 8vw, 7rem);
}

.zmc-section {
  padding-bottom: clamp(2.5rem, 6vw, 5rem);
}

.zmc-section h2 {
  margin-top: 0;
  color: var(--zmc-blue-950);
  font-size: clamp(1.8rem, 3.6vw, 3rem);
}

.zmc-check-list {
  display: grid;
  gap: .8rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

.zmc-check-list li {
  position: relative;
  padding: 1rem 1rem 1rem 3rem;
  border-radius: .75rem;
  background: var(--zmc-cream);
}

.zmc-check-list li::before {
  position: absolute;
  top: 1rem;
  left: 1rem;
  color: var(--zmc-blue-600);
  content: "\2713";
  font-weight: 800;
}

.zmc-detail-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1rem;
}

.zmc-detail-grid > div {
  padding: 1.25rem;
  border-top: 3px solid var(--zmc-aqua-300);
  background: #f6f9fa;
}

.zmc-job-sidebar {
  align-self: start;
}

.zmc-contact,
.zmc-map,
.zmc-notice {
  padding: clamp(1.25rem, 3vw, 2rem);
  border-radius: var(--zmc-radius);
  background: var(--zmc-cream);
}

.zmc-contact {
  margin-bottom: 1rem;
}

.zmc-contact h2 {
  margin-top: 0;
  color: var(--zmc-blue-950);
}

.zmc-contact a {
  color: var(--zmc-blue-800);
}

.zmc-map iframe {
  width: 100%;
  min-height: 25rem;
  border: 0;
  border-radius: var(--zmc-radius);
}

.zmc-application input:not([type="checkbox"]):not([type="radio"]),
.zmc-application textarea,
.zmc-application select {
  width: 100%;
  min-height: 3rem;
  border: 1px solid var(--zmc-border);
  border-radius: .5rem;
}

/* Einheitliches Mönch-Detaildesign fuer alle WP-Job-Manager-Stellen. */
.single-job_listing .site-content{background:#fff}
.zmc-moench-detail{padding:16px 0 72px;background:#fff}
.zmc-moench-detail .zmc-shell{width:min(100% - 48px,1120px)}
.zmc-moench-detail .zmc-back{margin:0 0 14px;color:#294f73;font-weight:600}
.zmc-moench-detail__top{display:grid;grid-template-columns:minmax(0,2fr) minmax(270px,1fr);gap:20px;align-items:stretch}
.zmc-moench-job-card{overflow:hidden;border-top:4px solid #6b9bc9;background:#eef5fa}
.zmc-moench-job-card figure{margin:0}.zmc-moench-job-card figure img{display:block;width:100%;height:auto;aspect-ratio:16/8;object-fit:cover}
.zmc-moench-job-card__copy{padding:28px clamp(24px,4vw,46px) 34px}.zmc-moench-job-card h1{margin:0 0 .5rem;color:#294f73;font-size:clamp(2rem,4vw,3.2rem);line-height:1.06}.zmc-moench-job-card .zmc-job-lead{max-width:42rem;margin:0;color:#40505f;font-size:1.05rem}
.zmc-moench-contact-card{box-sizing:border-box;border-top:4px solid #6b9bc9;background:#f3f4f5;padding:22px}.zmc-moench-contact-card>img{display:block;width:100%;aspect-ratio:1/1;object-fit:cover;margin:0 0 20px}.zmc-moench-contact-card h2{margin:.15em 0;color:#294f73;font-size:1.5rem;line-height:1.15}.zmc-moench-contact-card p{margin:.65em 0;color:#4d5963}.zmc-moench-contact-card a{color:#294f73}
.zmc-moench-job-facts{display:flex;flex-wrap:wrap;gap:13px 28px;padding:22px 0 30px;color:#40505f}.zmc-moench-job-facts span{position:relative;padding-left:20px}.zmc-moench-job-facts span:before{position:absolute;left:0;color:#376b9e;content:'→'}.zmc-moench-job-facts b{color:#294f73}
.zmc-moench-content{display:grid;gap:0}.zmc-moench-section{padding:38px clamp(24px,5vw,58px);margin:0 0 20px;background:#f3f4f5}.zmc-moench-section:nth-child(even){background:#fff;border-top:1px dashed #8fa9c1;border-bottom:1px dashed #8fa9c1}.zmc-moench-section h2{margin:0 0 1rem;color:#294f73;font-size:clamp(1.55rem,3vw,2.35rem)}.zmc-moench-section .zmc-check-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.zmc-moenchsection .zmc-check-list li{background:#fff;border-left:3px solid #6b9bc9;border-radius:0;padding:18px 18px 18px 42px}.zmc-moench-section .zmc-check-list li:before{top:18px;left:17px}
.zmc-moench-section.zmc-detail-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;background:#fff;border-top:1px dashed #8fa9c1;border-bottom:1px dashed #8fa9c1}.zmc-moench-section.zmc-detail-grid>div{padding:20px;background:#f3f4f5;border-top:3px solid #6b9bc9}.zmc-moench-section.zmc-apply-section{margin-bottom:0;background:#eef5fa}
/* Die Standardausgabe von WP Job Manager wird im eigenen Template nicht doppelt gezeigt. */
.zmc-moench-section .single_job_listing>.job-listing-meta,.zmc-moench-section .single_job_listing>.company,.zmc-moench-section .single_job_listing>.job_application{display:none}
.zmc-moench-section .zmc-job-prepared{margin:0}.zmc-moench-section .zmc-job-prepared>p:first-child{margin:0 0 .75rem;color:#376b9e;font-size:.78rem;font-weight:700;letter-spacing:.12em}.zmc-moench-section .zmc-job-prepared h2{margin:0 0 1rem}.zmc-moench-section .zmc-job-prepared h3{margin:2rem 0 .8rem;color:#294f73;font-size:1.25rem}.zmc-moench-section .zmc-job-prepared ul{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0;padding:0;list-style:none}.zmc-moench-section .zmc-job-prepared li{padding:18px;background:#fff;border-left:3px solid #6b9bc9}
/* Die fertig gestaltete ZFA-Seite behaelt ihren eigenen Detail- und Formularbereich. */
body.postid-46972 .zmc-moench-content>.zmc-moench-section:first-child{display:none}body.postid-46972 .entry-content .zmc-zfa-hero-wrap,body.postid-46972 .entry-content #stellendaten{display:none}
@media(max-width:700px){.zmc-moench-detail{padding:0 0 42px}.zmc-moench-detail .zmc-shell{width:100%}.zmc-moench-detail .zmc-back{display:block;margin:14px 24px}.zmc-moench-detail__top{grid-template-columns:1fr;gap:0}.zmc-moench-job-card figure img{aspect-ratio:16/10}.zmc-moench-job-card__copy{padding:24px}.zmc-moench-job-card h1{font-size:clamp(1.65rem,7.5vw,2.2rem)}.zmc-moench-contact-card{margin:0 24px;padding:22px}.zmc-moench-contact-card>img{max-width:220px}.zmc-moench-job-facts{display:grid;gap:10px;padding:22px 24px 28px}.zmc-moench-section{padding:34px 24px;margin:0}.zmc-moench-section .zmc-check-list,.zmc-moench-section.zmc-detail-grid,.zmc-moench-section .zmc-job-prepared ul{grid-template-columns:1fr}.zmc-moench-section:nth-child(even){border-top:0;border-bottom:0}.zmc-moench-section.zmc-detail-grid{gap:12px}.zmc-moench-section.zmc-apply-section{padding-bottom:42px}}

@media (max-width: 900px) {
  .zmc-job-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .zmc-job-hero__grid,
  .zmc-job-layout {
    grid-template-columns: 1fr;
  }

  .zmc-detail-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 600px) {
  .zmc-job-grid {
    grid-template-columns: 1fr;
  }

  .zmc-job-card {
    min-height: 0;
  }

  .zmc-job-card .zmc-button,
  .zmc-job-card .zmc-text-link {
    margin-top: 1rem;
  }

  .zmc-job-facts > div {
    grid-template-columns: 1fr;
    gap: .15rem;
  }
}

@media (prefers-reduced-motion: reduce) {
  .zmc-button {
    transition: none;
  }
}

/* ZFA-Inhalte nach der neuen Kopfstruktur sichtbar halten. */
body.postid-46972 .zmc-moench-content>.zmc-moench-section:first-child{display:block}
body.postid-46972 .entry-content .zmc-zfa-hero-wrap,body.postid-46972 .entry-content #stellendaten{display:none}
.zmc-initiative-cta{margin:22px 0 0}.zmc-initiative-cta .zmc-button{display:inline-flex;align-items:center;gap:10px}
/* Aktive ZFA: Formular immer anzeigen */body.postid-46972 .zmc-moench-content > .zmc-moench-section.zmc-apply-section { display: block !important; }
/* Einheitliche Mönch-Detailseiten: ruhige Flächen statt Trennlinien */.single-job_listing .zmc-moench-section,.single-job_listing .zmc-moench-section:nth-child(even),.single-job_listing .zmc-moench-section.zmc-detail-grid {  margin: 0 0 20px;  border: 0 !important;  background: #f3f4f5;}.single-job_listing .zmc-moench-section.zmc-detail-grid > div,.single-job_listing .zmc-moench-section .zmc-job-prepared li,.single-job_listing .zmc-moench-section .zmc-check-list li {  border: 0 !important;  background: #ffffff;}.single-job_listing .zmc-initiative-cta .zmc-button {  display: inline-flex;  align-items: center;  gap: .55rem;  padding: .9rem 1.3rem;  border: 0;  border-radius: 2px;  background: #5299d3;  color: #ffffff !important;  font-weight: 700;  text-decoration: none;}.single-job_listing .zmc-initiative-cta .zmc-button:hover,.single-job_listing .zmc-initiative-cta .zmc-button:focus-visible {  background: #376b9e;  color: #ffffff !important;  transform: none;}


/* Ruecksprung erst nach dem vollstaendigen Stelleninhalt */
.single-job_listing .zmc-shell { display: flex; flex-direction: column; }
.single-job_listing .zmc-shell > .zmc-back { order: 10; align-self: flex-start; margin: 8px 0 28px; }


/* Initiativbewerbung: gleiche Inhaltsbreite wie FAQ und Kontakt */
.page-id-47213 .moench-initiative-page {
  box-sizing: border-box;
  width: 100%;
  max-width: 1120px;
  margin-inline: 8px !important;
  padding-inline: 64px !important;
}
/* Stellenübersicht: Navigation an die übrigen Seiten angleichen */
.page-id-47132 #site-navigation #menu-primary-menu > li > a {
  font-size: 20px;
}

/* Stellenübersicht: vorhandene Sonderregel auf die Standardnavigation zurueckfuehren */
body.page-id-47132 #site-navigation .main-nav > ul > li > a {
  font-size: 20px !important;
}

/* Initiativbewerbung: Seitentitel bündig zum Seiteninhalt */
.page-id-47213 .entry-header {
  margin-inline: 72px;
}
@media (max-width: 700px) {
  .page-id-47213 .entry-header {
    margin-inline: 24px;
  }
}

/* Stellendaten: bündig zur Textflucht, mit klarer optischer Ruhe. */
.single-job_listing .zmc-moench-job-facts {
  margin: 20px 58px;
  padding: 0;
}
@media (max-width: 700px) {
  .single-job_listing .zmc-moench-job-facts {
    margin: 20px 24px;
    padding: 0;
  }
}
/* Stellendaten: zusätzlicher vertikaler Abstand. */
.single-job_listing .zmc-moench-job-facts {
  margin-block: 40px;
}
@media (max-width: 700px) {
  .single-job_listing .zmc-moench-job-facts {
    margin-block: 40px;
  }
}	
/* Initiativhinweis: dezente Hervorhebung im Corporate-Blau. */
.single-job_listing .zmc-notice {
  background-color: rgba(43, 111, 151, .2);
}
/* Einheitlicher Anschluss: Stellenübersicht und Jobdetails beginnen direkt unter dem Menü. */
.post-type-archive-job_listing #content,
.single-job_listing #content {
  padding-top: 0 !important;
}
.single-job_listing .zmc-moench-detail {
  padding-top: 0;
}

/* Die Stellenübersicht ist technisch eine WordPress-Seite, nicht das Job-Archiv. */
.page-id-47132 #content {
  padding-top: 0 !important;
}

/* 2026-09-28: gezielte ZFA- und Mobilkorrekturen. */
/* Die Einleitung "Die Stelle / Darum geht es" wird nur für Job 46972 im Template ausgelassen. */
body.postid-46972 .zmc-initiative-cta {
  margin-left: 58px;
}
@media (max-width: 700px) {
  /* Freiraum für die sticky Navigation beim Benefits-Anker. */
  #benefits {
    scroll-margin-top: 50px;
  }
  /* Ausschließlich die Abstände der primären Smartphone-Navigation um 5px reduzieren. */
  #generate-slideout-menu .main-nav > ul.slideout-menu > li {
    margin-bottom: 5px;
  }
  /* Initiativ-CTA exakt an der Textflucht dieser Detailseite ausrichten. */
  body.postid-46972 .zmc-initiative-cta {
    margin-left: 24px;
  }
}

/* 2026-09-28: direkter Bewerbungsweg und sichere globale Ankerpositionen. */
.single-job_listing .zmc-moench-job-card__copy .zmc-initiative-cta--in-card {
  margin: 12px 0 0;
}
@media (max-width: 767px) {
  /* Einheitlicher Abstand unter der mobilen Sticky-Leiste; Benefits behält die zusätzlich gewünschten 20px. */
  body.page-id-46910 #praxis-einblicke,
  body.page-id-46910 #benefits,
  body.page-id-46910 #stellenangebote,
  body.page-id-46910 #initiativbewerbung,
  body.page-id-46910 #bewerbungsprozess,
  body.page-id-46910 #kontakt {
    scroll-margin-top: 65px !important;
  }
  /* Formularziele liegen außerhalb der 60px hohen mobilen Sticky-Navigation. */
  .single-job_listing #bewerbung,
  .single-job_listing #initiativbewerbung-formular {
    scroll-margin-top: 85px;
  }
}
@media (min-width: 768px) {
  .single-job_listing #bewerbung,
  .single-job_listing #initiativbewerbung-formular {
    scroll-margin-top: 90px;
  }
}

/* 2026-09-28: Die ersten fünf mobilen Menüabstände folgen der vereinbarten 5px-Rhythmik. */
@media (max-width: 767px) {
  body.page-id-46910 #generate-slideout-menu .main-nav > ul > li:nth-child(-n+5) {
    margin-bottom: 5px !important;
  }
}

/* 2026-09-28: Theme-Override fuer die fuenf primären mobilen Navigationsabstände. */
@media (max-width: 767px) {
  body.home.page-id-46910 #generate-slideout-menu .main-nav > ul > li:nth-child(-n+5) {
    margin-bottom: 5px !important;
  }
}


/* 2026-09-28: Desktop-Initiativformular vollstaendig unter der Sticky-Navigation sichtbar halten. */
@media (min-width: 768px) {
  .single-job_listing #initiativbewerbung-formular {
    scroll-margin-top: 170px;
  }
}

/* CTA-Leiste unter jeder aktiven Stellenkarte */
.zmc-job-card {
	padding-bottom: 0;
	overflow: hidden;
}

.zmc-job-card__cta {
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: calc(100% + clamp(2.5rem, 6vw, 4rem));
	box-sizing: border-box;
	margin-top: auto;
	margin-right: clamp(-2rem, -3vw, -1.25rem);
	margin-left: clamp(-2rem, -3vw, -1.25rem);
	padding: 1rem clamp(1.25rem, 3vw, 2rem);
	background: #eaf4fb;
	color: var(--zmc-blue-800);
	font-weight: 700;
	line-height: 1.2;
	text-decoration: none;
	transition: background-color .2s ease, color .2s ease;
}

.zmc-job-card__cta:hover,
.zmc-job-card__cta:focus-visible {
	background: var(--zmc-blue-600);
	color: var(--zmc-white);
}

.zmc-job-card__cta span:last-child {
	font-size: 1.8rem;
	line-height: 1;
}
