:root{
  --cream:#FBF6EE;       /* warme Grundfläche */
  --cream-deep:#F3E9DA;  /* tieferes Panel */
  --card:#FFFDF9;        /* Kartenfläche */
  --ink:#2E2528;         /* tiefes Braun-Anthrazit (Text) */
  --ink-soft:#6B5D5E;    /* gedämpfter Fließtext */
  --bordeaux:#7A1F2B;    /* Hauptfarbe Weinrot */
  --bordeaux-deep:#651822;/* Hover / Emphasis */
  --bordeaux-soft:#9A4350;/* hellere Akzentnote */
  --stone:#E7D9C7;       /* Haarlinie / Rahmen */
  --shadow:30px 40px 80px -42px rgba(46,37,40,.32);
  --shadow-soft:0 2px 30px -18px rgba(46,37,40,.30);
  --radius:24px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{
  font-family:'Inter',sans-serif;
  background:var(--cream);
  color:var(--ink);
  line-height:1.7;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
h1,h2,h3{font-family:'Fraunces',serif;font-weight:500;line-height:1.12;letter-spacing:-.012em;overflow-wrap:break-word;hyphens:auto}
p,li,span,a,label,h4{overflow-wrap:break-word}
em{font-style:italic}
.wrap{max-width:1120px;margin:0 auto;padding:0 30px}
.narrow{max-width:760px}
.eyebrow{
  font-family:'Inter';font-weight:600;font-size:.74rem;letter-spacing:.2em;
  text-transform:uppercase;color:var(--bordeaux);margin-bottom:20px;display:inline-block;
}
.section{padding:112px 0}
@media(max-width:680px){.section{padding:72px 0}}

/* REVEAL */
.reveal{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .7s ease}
.reveal.in{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .reveal{opacity:1;transform:none;transition:none}
}

/* BUTTONS */
.btn{
  display:inline-flex;align-items:center;gap:11px;
  background:var(--bordeaux);color:#fff;
  font-family:'Inter';font-weight:600;font-size:1rem;
  padding:17px 34px;border-radius:100px;text-decoration:none;
  border:none;cursor:pointer;transition:transform .25s ease,background .25s ease;
}
.btn:hover{background:var(--bordeaux-deep);transform:translateY(-2px)}
.btn-ghost{background:transparent;color:var(--ink);border:1.5px solid var(--ink)}
.btn-ghost:hover{background:var(--ink);color:var(--cream)}
.btn-light{background:#fff;color:var(--bordeaux)}
.btn-light:hover{background:var(--cream);color:var(--bordeaux-deep)}
.btn-outline-light{background:transparent;color:#fff;border:1.5px solid rgba(255,255,255,.55)}
.btn-outline-light:hover{background:#fff;color:var(--bordeaux);border-color:#fff}
.btn-arrow{transition:transform .25s ease}
.btn:hover .btn-arrow{transform:translateX(4px)}

/* NAV */
header{position:sticky;top:0;z-index:50;background:rgba(251,246,238,.86);backdrop-filter:blur(14px);border-bottom:1px solid transparent;transition:border-color .3s}
header.scrolled{border-color:var(--stone)}
.nav{display:flex;align-items:center;gap:36px;padding:16px 30px;max-width:1200px;margin:0 auto}
.logo{display:flex;align-items:center;gap:11px;text-decoration:none;flex-shrink:0}
.logo-icon{height:46px;width:auto;display:block;flex-shrink:0}
.logo-img{height:62px;width:auto;display:block}
.logo-mark{color:var(--bordeaux);display:inline-flex;flex-shrink:0}
.logo-text{font-family:'Fraunces';font-size:1.12rem;font-weight:600;color:var(--ink);line-height:1.05;letter-spacing:-.01em}
.logo-text em{display:block;font-size:.92rem;font-weight:500;color:var(--bordeaux);font-style:italic}
.nav-menu{display:flex;gap:28px;align-items:center;margin:0 auto}
.nav-menu>a{color:var(--ink-soft);text-decoration:none;font-size:.96rem;font-weight:500;transition:color .2s;position:relative}
.nav-menu>a:hover{color:var(--ink)}
.nav-menu>a::after{content:'';position:absolute;left:0;right:0;bottom:-6px;height:2px;background:var(--bordeaux);transform:scaleX(0);transform-origin:left;transition:transform .25s ease}
.nav-menu>a:hover::after{transform:scaleX(1)}
.nav-mobile-contact{display:none}
.nav-apply-cta{display:none}
.nav-actions{display:flex;gap:12px;align-items:center;flex-shrink:0}
.nav-actions .btn{padding:11px 22px;font-size:.92rem}
.nav-form{background:transparent;color:var(--bordeaux);border:1.5px solid var(--bordeaux)}
.nav-form:hover{background:var(--bordeaux);color:#fff}
.burger{display:none;align-items:center;gap:9px;background:var(--card);border:1.5px solid var(--stone);border-radius:12px;cursor:pointer;color:var(--ink);padding:9px 14px 9px 12px;white-space:nowrap;transition:border-color .2s,background .2s}
.burger:hover{border-color:var(--bordeaux)}
.burger .burger-lines{display:flex;flex-direction:column;justify-content:center;gap:4px;flex-shrink:0;width:22px}
.burger .burger-lines span{width:22px;height:2.5px;min-height:2.5px;border-radius:2px;background:var(--bordeaux);display:block;transition:.3s;transform-origin:center}
.burger .burger-label{font-family:'Inter';font-weight:600;font-size:.92rem;color:var(--ink);line-height:1}
.burger[aria-expanded="true"]{background:var(--bordeaux);border-color:var(--bordeaux)}
.burger[aria-expanded="true"] .burger-lines span{background:#fff}
.burger[aria-expanded="true"] .burger-label{color:#fff}
.burger[aria-expanded="true"] .burger-lines span:nth-child(1){transform:translateY(6.5px) rotate(45deg)}
.burger[aria-expanded="true"] .burger-lines span:nth-child(2){opacity:0}
.burger[aria-expanded="true"] .burger-lines span:nth-child(3){transform:translateY(-6.5px) rotate(-45deg)}
@media(max-width:880px){
  header{backdrop-filter:none;-webkit-backdrop-filter:none;background:rgba(251,246,238,.96)}
  .nav{gap:12px;justify-content:space-between;padding:13px 20px}
  .nav-actions{display:none}
  .nav-menu{position:fixed;inset:0 0 0 auto;width:84%;max-width:340px;background:var(--card);flex-direction:column;justify-content:flex-start;align-items:flex-start;gap:22px;margin:0;transform:translateX(100%);transition:transform .35s ease;box-shadow:var(--shadow);padding:92px 34px 40px;z-index:55;overflow-y:auto}
  .nav-menu.open{transform:translateX(0)}
  .nav-menu>a{font-size:1.12rem}
  .nav-apply-cta{display:inline-flex;align-items:center;justify-content:center;background:var(--bordeaux);color:#fff !important;font-weight:600;font-size:1.05rem !important;padding:14px 22px;border-radius:100px;width:100%;margin-bottom:6px}
  .nav-apply-cta::after{display:none}
  .nav-apply-cta:hover{background:var(--bordeaux-deep)}
  .nav-mobile-contact{display:flex;flex-direction:column;gap:14px;margin-top:10px;padding-top:24px;border-top:1px solid var(--stone);width:100%}
  .nav-mobile-contact a{display:inline-flex;align-items:center;gap:9px;color:var(--ink-soft);text-decoration:none;font-size:1rem;font-weight:500}
  .nav-mobile-contact a svg{color:var(--bordeaux);flex-shrink:0}
  .burger{display:flex;z-index:60}
}

/* HERO */
.hero{position:relative;padding:88px 0 96px;overflow:hidden}
.hero-bg{position:absolute;top:50%;right:-8%;transform:translateY(-50%);width:560px;max-width:60%;color:var(--bordeaux);opacity:.05;pointer-events:none;z-index:0}
.hero-bg svg{width:100%;height:auto;display:block}
.hero .wrap{position:relative;z-index:1}
.hero-grid{display:grid;grid-template-columns:1fr;gap:0}
.hero-text{max-width:720px}
.hero h1{font-size:clamp(2.5rem,5.4vw,4.2rem);margin-bottom:26px}
.hero h1 em{color:var(--bordeaux)}
.hero-sub{font-size:1.2rem;color:var(--ink-soft);max-width:560px;margin-bottom:28px}
.hero-checks{display:grid;grid-template-columns:1fr 1fr;gap:12px 24px;margin:0 0 32px;max-width:600px}
.hero-checks span{display:flex;align-items:flex-start;gap:10px;font-size:1rem;font-weight:500;color:var(--ink);line-height:1.4}
.hero-checks svg{color:var(--bordeaux);flex-shrink:0;margin-top:2px}
.hero-cta{display:flex;gap:14px;flex-wrap:wrap;align-items:center}
@media(max-width:880px){
  .hero{padding:36px 0 60px}
  .hero h1{font-size:clamp(2rem,8vw,2.7rem)}
  .hero-sub{font-size:1.08rem}
  .hero-checks{grid-template-columns:1fr;gap:11px;max-width:none}
  .hero-bg{display:none}
  /* Kasten "Für Patienten" naeher an "Fahrt anfragen" ruecken */
  .hero{padding-bottom:28px}
  .split-paths.section{padding-top:24px}
}

/* SPLIT — zwei Pfade */
.split-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px}
.split-card{background:var(--card);border:1px solid var(--stone);border-radius:var(--radius);padding:42px 40px;text-decoration:none;display:flex;flex-direction:column;transition:transform .3s,box-shadow .3s}
.split-card:hover{transform:translateY(-6px);box-shadow:var(--shadow)}
.split-card.feature{background:var(--bordeaux);border-color:var(--bordeaux)}
.split-icon{width:60px;height:60px;border-radius:50%;background:var(--cream-deep);color:var(--bordeaux);display:flex;align-items:center;justify-content:center;margin-bottom:24px}
.split-card.feature .split-icon{background:rgba(255,255,255,.14);color:#fff}
.split-eyebrow{font-family:'Inter';font-weight:600;font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--bordeaux);margin-bottom:12px}
.split-card.feature .split-eyebrow{color:#E9C9CE}
.split-card h2{font-size:1.7rem;margin-bottom:12px;color:var(--ink)}
.split-card.feature h2{color:#fff}
.split-card p{color:var(--ink-soft);font-size:1.04rem;margin-bottom:26px;flex-grow:1}
.split-card.feature p{color:#EAD6D9}
.split-link{font-family:'Inter';font-weight:600;font-size:1rem;color:var(--bordeaux);display:inline-flex;align-items:center;gap:8px}
.split-card.feature .split-link{color:#fff}
.split-link .arrow{transition:transform .25s}
.split-card:hover .split-link .arrow{transform:translateX(4px)}
.split-links{display:flex;flex-direction:column;gap:12px;margin-top:auto}
.split-links .split-link{text-decoration:none}
.split-links .split-link:hover{color:var(--bordeaux-deep)}
.split-links .split-link:hover .arrow{transform:translateX(4px)}
@media(max-width:780px){.split-grid{grid-template-columns:1fr;gap:18px}}

/* ABOUT */
.about{background:var(--cream-deep)}
.about h2{font-size:clamp(1.9rem,3.8vw,2.8rem);margin-bottom:26px}
.about h2 em{color:var(--bordeaux)}
.about p{color:var(--ink-soft);font-size:1.12rem;margin-bottom:18px}
.about .signoff{font-family:'Fraunces';font-style:italic;font-size:1.3rem;color:var(--bordeaux);margin-top:8px}

/* VALUES */
.values-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
.value{background:var(--card);border:1px solid var(--stone);border-radius:var(--radius);padding:38px 34px}
.value-icon{width:54px;height:54px;border-radius:16px;background:var(--cream-deep);color:var(--bordeaux);display:flex;align-items:center;justify-content:center;margin-bottom:22px}
.value h3{font-size:1.35rem;margin-bottom:10px}
.value p{color:var(--ink-soft);font-size:1rem}
@media(max-width:780px){.values-grid{grid-template-columns:1fr;gap:18px}}

/* SERVICE TEASER */
.serv-teaser h2{font-size:clamp(1.9rem,3.8vw,2.7rem);max-width:780px;margin-bottom:22px}
.serv-teaser h2 em{color:var(--bordeaux)}
.serv-lead{color:var(--ink-soft);font-size:1.12rem;max-width:680px;margin-bottom:40px}
.serv-tiles{display:flex;flex-wrap:wrap;gap:12px;max-width:860px}
.serv-tile{display:inline-flex;align-items:center;background:var(--card);border:1px solid var(--stone);border-radius:100px;padding:11px 22px;font-size:1rem;font-weight:500;color:var(--ink)}
.serv-foot{margin-top:40px}
@media(max-width:680px){.serv-tile{font-size:.94rem;padding:10px 18px}}

/* Leistungs-Karten (gleichmäßiges Grid) */
.serv-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;max-width:860px}
.serv-card{display:flex;align-items:center;gap:12px;background:var(--card);border:1px solid var(--stone);border-radius:16px;padding:16px 20px;font-size:1rem;font-weight:500;color:var(--ink);transition:transform .25s,box-shadow .25s,border-color .25s}
.serv-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-soft);border-color:var(--bordeaux-soft)}
.serv-card .sc-ico{width:30px;height:30px;border-radius:9px;background:var(--cream-deep);color:var(--bordeaux);display:flex;align-items:center;justify-content:center;flex-shrink:0}
@media(max-width:780px){.serv-cards{grid-template-columns:1fr 1fr;gap:12px}}
@media(max-width:480px){.serv-cards{grid-template-columns:1fr}.serv-card{padding:14px 18px}}

/* REGION */
.region .region-inner{background:var(--bordeaux);color:#fff;border-radius:var(--radius);padding:60px 56px;box-shadow:var(--shadow)}
.region .eyebrow{color:#E9C9CE}
.region h2{color:#fff;font-size:clamp(1.8rem,3.4vw,2.5rem);max-width:600px;margin-bottom:18px}
.region h2 em{color:#F0D2D7}
.region p{color:#EAD6D9;font-size:1.1rem;max-width:640px;margin-bottom:30px}
.region-tags{display:flex;flex-wrap:wrap;gap:12px}
.region-tags .pin{display:inline-flex;align-items:center;gap:8px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.22);border-radius:100px;padding:9px 18px;font-size:.98rem;font-weight:500;color:#fff}
.region-tags .pin svg{color:#F0D2D7;flex-shrink:0}
.region-tags .pin-more{background:transparent;font-style:italic;font-family:'Fraunces';color:#F0D2D7}
@media(min-width:820px){.region h2.region-title{max-width:none;white-space:nowrap;font-size:clamp(1.8rem,2.9vw,2.4rem)}}
@media(max-width:680px){.region .region-inner{padding:40px 28px}}

/* CONTACT */
.contact{background:var(--ink);color:var(--cream);text-align:center}
.contact h2{color:#fff;font-size:clamp(2rem,4vw,2.9rem);max-width:660px;margin:0 auto 22px}
.contact h2 em{color:var(--bordeaux-soft)}
.contact p{color:#D9CBC6;font-size:1.12rem;max-width:560px;margin:0 auto 34px}
.contact-actions{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}
.contact-hours{margin-top:30px;font-size:.96rem;color:#A99A95}
.contact .eyebrow{display:inline-block}

/* FOOTER */
footer{background:var(--cream);padding:64px 0 32px;border-top:1px solid var(--stone)}
.foot-grid{display:grid;grid-template-columns:1.7fr 1fr 1fr 1fr;gap:40px;padding-bottom:40px;border-bottom:1px solid var(--stone)}
.foot-brand .logo{margin-bottom:14px}
.foot-brand .logo .logo-icon{height:44px}
.foot-brand .logo .logo-text{font-size:1.04rem}
.foot-brand .logo .logo-text em{font-size:.86rem}
.foot-brand p{font-size:.94rem;color:var(--ink-soft);line-height:1.6;max-width:300px;margin-bottom:16px}
.foot-brand .foot-tel,.foot-brand .foot-mail{display:flex;align-items:center;gap:8px;font-size:.94rem;font-weight:500;color:var(--ink-soft);text-decoration:none;margin-bottom:8px;transition:color .2s}
.foot-brand .foot-tel svg,.foot-brand .foot-mail svg{color:var(--bordeaux);flex-shrink:0}
.foot-brand .foot-tel:hover,.foot-brand .foot-mail:hover{color:var(--ink)}
.foot-col h4{font-family:'Inter';font-size:.78rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--ink);margin-bottom:16px}
.foot-col a{display:block;font-size:.94rem;color:var(--ink-soft);text-decoration:none;margin-bottom:10px;transition:color .2s}
.foot-col a:hover{color:var(--bordeaux)}
.foot-bottom{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;padding-top:24px;font-size:.88rem;color:var(--ink-soft)}
.foot-legal a{color:var(--ink-soft);text-decoration:none;border-bottom:1px solid var(--stone)}
.foot-legal a:hover{color:var(--ink)}
@media(max-width:860px){.foot-grid{grid-template-columns:1fr 1fr;gap:32px 24px}}
@media(max-width:520px){.foot-grid{grid-template-columns:1fr;gap:28px}.foot-bottom{flex-direction:column;align-items:flex-start}}

/* MOBILE STICKY BAR */
.mobile-bar{display:none}
@media(max-width:880px){
  .mobile-bar{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:45;border-top:1px solid var(--stone)}
  .mobile-bar a{flex:1;display:flex;align-items:center;justify-content:center;gap:8px;padding:15px 8px;font-family:'Inter';font-weight:600;font-size:1rem;text-decoration:none}
  .mb-call{background:var(--bordeaux);color:#fff}
  .mb-mail{background:var(--card);color:var(--ink)}
  .mb-whatsapp{background:var(--cream);color:var(--bordeaux)}
  body{padding-bottom:56px}
}

/* PAGE HERO (Unterseiten) */
.page-hero{position:relative;padding:72px 0 56px;overflow:hidden}
.page-hero .wrap{position:relative;z-index:1}
.page-hero .eyebrow{margin-bottom:16px}
.page-hero h1{font-size:clamp(2.2rem,5vw,3.6rem);max-width:760px;margin-bottom:22px}
.page-hero h1 em{color:var(--bordeaux)}
.page-hero p{font-size:1.18rem;color:var(--ink-soft);max-width:620px}
.page-hero-bg{position:absolute;top:50%;right:-6%;transform:translateY(-50%);width:480px;max-width:50%;color:var(--bordeaux);opacity:.05;pointer-events:none;z-index:0}
.page-hero-bg svg{width:100%;height:auto;display:block}
@media(max-width:680px){.page-hero{padding:48px 0 36px}.page-hero-bg{display:none}}

/* SERVICE LIST (Leistungen) */
.svc-list{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}
.svc{background:var(--card);border:1px solid var(--stone);border-radius:var(--radius);padding:36px 34px;display:flex;flex-direction:column}
.svc-icon{width:54px;height:54px;border-radius:16px;background:var(--cream-deep);color:var(--bordeaux);display:flex;align-items:center;justify-content:center;margin-bottom:20px}
.svc h3{font-size:1.4rem;margin-bottom:10px}
.svc p{color:var(--ink-soft);font-size:1.02rem;margin-bottom:18px}
.svc ul{list-style:none;margin-top:auto}
.svc li{display:flex;gap:10px;align-items:flex-start;font-size:1rem;color:var(--ink);margin-bottom:9px}
.svc li .dot{width:7px;height:7px;border-radius:50%;background:var(--bordeaux);flex-shrink:0;margin-top:9px}
@media(max-width:780px){.svc-list{grid-template-columns:1fr;gap:18px}}

/* INFO BANNER */
.info-band{background:var(--cream-deep)}
.info-inner{background:var(--card);border:1px solid var(--stone);border-radius:var(--radius);padding:52px 50px;box-shadow:var(--shadow-soft)}
.info-inner h2{font-size:clamp(1.7rem,3vw,2.2rem);max-width:600px;margin-bottom:18px}
.info-inner h2 em{color:var(--bordeaux)}
.info-inner p{color:var(--ink-soft);font-size:1.08rem;max-width:680px;margin-bottom:16px}
.info-inner p strong{color:var(--ink);font-weight:600}
@media(max-width:680px){.info-inner{padding:36px 26px}}

/* PROCESS */
.process h2{font-size:clamp(1.8rem,3.4vw,2.4rem);max-width:560px;margin-bottom:14px}
.process .lead{color:var(--ink-soft);font-size:1.1rem;max-width:580px;margin-bottom:54px}
.process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
.pstep{position:relative}
.pstep .pnum{font-family:'Fraunces';font-style:italic;font-size:2.4rem;color:var(--bordeaux);line-height:1;margin-bottom:16px;display:block}
.pstep h3{font-size:1.18rem;margin-bottom:10px}
.pstep p{color:var(--ink-soft);font-size:.98rem}
.pstep:not(:last-child)::after{content:'';position:absolute;top:18px;right:-14px;width:14px;height:1.5px;background:var(--stone)}
@media(max-width:880px){.process-grid{grid-template-columns:1fr 1fr;gap:34px 24px}.pstep:not(:last-child)::after{display:none}}
@media(max-width:520px){.process-grid{grid-template-columns:1fr}}

/* KARRIERE */
.job-head{background:var(--cream-deep)}
.job-meta{display:flex;flex-wrap:wrap;gap:14px;margin-top:8px}
.job-meta span{display:inline-flex;align-items:center;gap:8px;background:var(--card);border:1px solid var(--stone);border-radius:100px;padding:10px 20px;font-size:.98rem;font-weight:500;color:var(--ink)}
.job-meta span svg{color:var(--bordeaux);flex-shrink:0}
.benefits-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.benefit{background:var(--card);border:1px solid var(--stone);border-radius:var(--radius);padding:30px 28px}
.benefit-icon{width:48px;height:48px;border-radius:14px;background:var(--cream-deep);color:var(--bordeaux);display:flex;align-items:center;justify-content:center;margin-bottom:18px}
.benefit h3{font-size:1.15rem;margin-bottom:8px}
.benefit p{color:var(--ink-soft);font-size:.96rem}
@media(max-width:880px){.benefits-grid{grid-template-columns:1fr 1fr;gap:16px}}
@media(max-width:560px){.benefits-grid{grid-template-columns:1fr}}

.cols{display:grid;grid-template-columns:1fr 1fr;gap:48px}
.col-block h2{font-size:clamp(1.6rem,3vw,2.1rem);margin-bottom:24px}
.checklist{list-style:none}
.checklist li{display:flex;gap:13px;align-items:flex-start;font-size:1.05rem;color:var(--ink);margin-bottom:14px;line-height:1.5}
.checklist li .ck{color:var(--bordeaux);flex-shrink:0;margin-top:3px}
@media(max-width:780px){.cols{grid-template-columns:1fr;gap:34px}}

.req-note{background:var(--cream-deep)}
.req-note .info-inner h2{margin-bottom:16px}

/* APPLY */
.apply{background:var(--bordeaux);color:#fff;text-align:center}
.apply h2{color:#fff;font-size:clamp(2rem,4vw,2.8rem);max-width:640px;margin:0 auto 18px}
.apply p{color:#EAD6D9;font-size:1.12rem;max-width:560px;margin:0 auto 12px}
.apply .apply-person{font-family:'Fraunces';font-style:italic;font-size:1.2rem;color:#fff;margin:18px auto 30px}
.apply-actions{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}

/* IMPRESSUM / LEGAL */
.legal h2{font-size:1.5rem;margin:40px 0 14px;color:var(--ink)}
.legal h2:first-child{margin-top:0}
.legal h3{font-size:1.15rem;margin:24px 0 8px}
.legal p{color:var(--ink-soft);font-size:1.04rem;margin-bottom:14px}
.legal strong{color:var(--ink)}
.legal a{color:var(--bordeaux);text-decoration:none;border-bottom:1px solid var(--stone)}
.legal a:hover{border-color:var(--bordeaux)}
.legal .placeholder{background:var(--cream-deep);border:1px dashed var(--bordeaux-soft);border-radius:16px;padding:20px 24px;color:var(--ink-soft);font-size:.98rem;margin:14px 0}

/* KONTAKTFORMULAR */
.formular{background:var(--cream-deep)}
.formular .narrow{margin:0 auto}
.formular h2{font-size:clamp(1.8rem,3.2vw,2.4rem);margin-bottom:14px}
.formular h2 em{color:var(--bordeaux)}
.form-intro{color:var(--ink-soft);font-size:1.08rem;margin-bottom:34px;max-width:560px}
.req-star{color:var(--bordeaux);font-weight:600}
.kontaktform{background:var(--card);border:1px solid var(--stone);border-radius:var(--radius);padding:44px 42px;box-shadow:var(--shadow-soft)}
.field{margin-bottom:22px}
.field-row{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.field label{display:block;font-size:.92rem;font-weight:500;margin-bottom:8px;color:var(--ink)}
.field .opt{color:var(--ink-soft);font-weight:400}
.field input,.field select,.field textarea{
  width:100%;padding:14px 16px;border:1.5px solid var(--stone);border-radius:14px;
  font-family:'Inter';font-size:1rem;background:var(--cream);color:var(--ink);transition:border-color .2s}
.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--bordeaux)}
.field textarea{resize:vertical}
.checkbox-field{display:flex;align-items:flex-start;gap:12px}
.checkbox-field input{width:auto;margin-top:5px;flex-shrink:0;accent-color:var(--bordeaux)}
.checkbox-field label{font-size:.9rem;color:var(--ink-soft);font-weight:400;line-height:1.5}
.checkbox-field a{color:var(--bordeaux)}
.kontaktform .btn{width:100%;justify-content:center;margin-top:6px}
.form-status{margin-top:18px;font-size:.97rem;text-align:center;min-height:1.2em}
.form-status.ok{color:#5E7250}
.form-status.err{color:var(--bordeaux)}
@media(max-width:680px){.field-row{grid-template-columns:1fr}.kontaktform{padding:32px 24px}}

/* DANKE-SEITE */
.danke-check{display:inline-flex;align-items:center;justify-content:center;width:72px;height:72px;border-radius:50%;background:var(--cream-deep);color:var(--bordeaux);margin-bottom:24px}

/* ============================================================
   MOBILE FEINSCHLIFF — Überlaufschutz & enge Geräte (≤480px)
   ============================================================ */

/* Buttons brechen nicht aus schmalen Boxen aus */
.btn{max-width:100%;white-space:normal;text-align:center;line-height:1.3}

/* Tiles & Pills dürfen umbrechen statt zu überlaufen */
.serv-tile,.region-tags .pin,.job-meta span{white-space:normal;overflow-wrap:break-word;max-width:100%}

/* Sehr schmale Smartphones */
@media(max-width:480px){
  .wrap{padding:0 18px}
  .section{padding:56px 0}

  /* Überschriften kleiner & sicher umbrechend */
  .hero h1{font-size:clamp(1.7rem,7.4vw,2.2rem)}
  .hero-sub{font-size:1rem}
  .page-hero h1{font-size:clamp(1.6rem,6.6vw,2.1rem)}
  .about h2,.serv-teaser h2,.contact h2,.region h2,.apply h2,
  .info-inner h2,.process h2,.col-block h2,.formular h2,
  .split-card h2,.value h3,.svc h3,.benefit h3{
    overflow-wrap:break-word;hyphens:auto
  }
  .contact h2,.apply h2{font-size:clamp(1.5rem,6.4vw,2rem)}

  /* Buttons: volle Breite, damit nichts seitlich rausläuft */
  .hero-cta,.contact-actions,.apply-actions{flex-direction:column;align-items:stretch}
  .hero-cta .btn,.contact-actions .btn,.apply-actions .btn{width:100%;justify-content:center}
  .btn{padding:15px 22px;font-size:.96rem}

  /* Innenabstände der Karten/Boxen reduzieren */
  .split-card{padding:30px 24px}
  .value{padding:30px 24px}
  .svc{padding:28px 22px}
  .info-inner{padding:30px 22px}
  .region .region-inner{padding:34px 22px}
  .kontaktform{padding:28px 20px}

  /* Tiles & Pins kompakter */
  .serv-tile{font-size:.9rem;padding:9px 15px}
  .region-tags .pin{font-size:.9rem;padding:8px 14px}
  .job-meta span{font-size:.9rem;padding:9px 15px;width:100%}

  /* Footer-Logo/Texte sauber */
  .foot-brand p{max-width:none}
}

/* WhatsApp-Button (Karriere) */
.btn-whatsapp{background:#25D366;color:#fff}
.btn-whatsapp:hover{background:#1da851;color:#fff}

/* Kompaktes Bewerbungs-/Kontaktformular auf Unterseiten */
.mini-form-note{color:var(--ink-soft);font-size:.96rem;margin-bottom:28px;max-width:560px}

/* Mobiler Zeilenumbruch in Überschriften (nur schmale Geräte) */
.mobile-break{display:none}
@media(max-width:560px){.mobile-break{display:inline}}
