@font-face{font-family:Sen;src:url('sen-regular.woff2') format('woff2');font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:Sen;src:url('sen-bold.woff2') format('woff2');font-style:normal;font-weight:700;font-display:swap}
:root{--dark:#063b3b;--deep:#043636;--text:#173e3d;--lime:#a4e35f;--aqua:#bff0ef;--mint:#71d5bb;--line:#68cec8;--max:1360px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;color:var(--text);font:400 1rem/1.62 Sen,Arial,sans-serif}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.2;font-weight:700}a{color:inherit}a:focus-visible,button:focus-visible{outline:3px solid #2f9b93;outline-offset:4px}img{max-width:100%;display:block}.container{width:min(calc(100% - 48px),var(--max));margin:auto}.skip-link{position:absolute;z-index:99;top:-100px;left:10px;background:white;padding:12px}.skip-link:focus{top:10px}.site-header{height:104px;background:#fff;position:relative;z-index:20}.header-inner,.main-nav,.nav-actions,.brand{display:flex;align-items:center}.header-inner{justify-content:space-between;height:100%;gap:40px}.brand{text-decoration:none;gap:14px;font-weight:700;line-height:1.05;font-size:1.45rem;white-space:nowrap;color:var(--dark)}.brand-mark{width:49px;height:49px;flex:none}.main-nav{gap:35px;font-size:.95rem;font-weight:700}.main-nav>a{text-decoration:none}.main-nav>a:hover,.footer a:hover,.detail a:hover{text-decoration:underline;text-underline-offset:5px}.nav-actions{gap:12px;margin-left:24px}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:10px 19px;text-decoration:none;font-size:.89rem;font-weight:700;border-radius:3px;transition:transform .2s,background .2s;white-space:nowrap}.btn:hover{transform:translateY(-2px)}.btn-lime{background:var(--lime);color:var(--dark)}.btn-lime:hover{background:#bcf27c}.btn-outline{border:1px solid #fff;color:white}.btn-outline:hover{background:rgba(255,255,255,.13)}.btn-dark{background:var(--dark);color:#fff}.menu-toggle{display:none}.eyebrow{margin-bottom:34px;text-transform:uppercase;letter-spacing:.08em;font-weight:700;font-size:.8rem;color:#088172}.eyebrow.bright{color:var(--lime)}.hero{min-height:690px;background:#3e625d;color:#fff;position:relative;overflow:hidden}.hero-image{position:absolute;inset:0 0 0 44%;background-size:cover;background-position:center}.hero::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#3c605b 0%,#3c605b 33%,rgba(29,73,68,.9) 44%,rgba(18,56,52,.1) 75%);pointer-events:none}.hero-inner{min-height:690px;display:flex;align-items:center;position:relative;z-index:1}.hero-copy{max-width:700px;padding:80px 0}.hero h1{font-size:clamp(2.8rem,4.5vw,5.15rem);letter-spacing:-.035em;margin-bottom:26px}.hero-copy>p:not(.eyebrow){max-width:580px;font-size:1.18rem;line-height:1.5}.button-row{display:flex;flex-wrap:wrap;gap:15px;margin-top:38px}.notice{background:var(--deep);color:white;padding:44px 0 50px}.notice-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px}.notice .eyebrow{margin:0 0 6px}.notice p:not(.eyebrow){margin:0;font-size:.94rem}.notice strong{display:block;font-size:1.35rem;line-height:1.5}.notice strong+p{margin-top:14px!important}.section{padding:105px 0}.intro .container{border-bottom:2px solid var(--line);padding-bottom:92px}.intro-content{display:grid;grid-template-columns:78px minmax(0,950px);gap:28px;align-items:start}.intro-mark{width:66px;margin-top:3px}.intro h2{font-size:clamp(1.85rem,3vw,2.65rem);margin-bottom:22px}.intro p:not(.eyebrow){max-width:950px}.team{padding-top:20px}.team h2,.travel h2{font-size:clamp(2.3rem,3.5vw,3.65rem)}.team-lead{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:start;margin:55px 0 90px}.team-lead p{max-width:580px}.team-quote,.contact-quote{border-left:5px solid var(--lime);padding-left:27px;font-size:1.4rem;line-height:1.45;font-weight:700}.team-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:56px}.person img{width:100%;height:auto;aspect-ratio:1.25;object-fit:cover;object-position:center 30%;background:#e8ecee;margin-bottom:23px}.person h3{font-size:1.32rem;line-height:1.3;margin-bottom:8px}.person h3 small{font-size:.85em}.person p{font-size:.97rem;line-height:1.5}.travel{overflow:hidden;position:relative;background:var(--deep);color:#fff;padding:145px 0}.travel:before,.travel:after{content:"";position:absolute;pointer-events:none;border-radius:50%;height:600px;width:850px}.travel:before{left:-640px;top:50px;background:linear-gradient(140deg,#a1e44f,#61cdbb);transform:rotate(-30deg)}.travel:after{right:-680px;bottom:-500px;background:linear-gradient(130deg,#6dd5c1,#91de58)}.travel-grid{position:relative;z-index:1;display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}.travel .btn{margin-top:35px}.travel p:not(.eyebrow){max-width:570px}.services{padding:125px 0}.services h2,.contact h2{font-size:clamp(2rem,3vw,2.8rem)}.section-intro{max-width:670px;margin-bottom:75px}.services-grid{display:grid;grid-template-columns:1fr 1fr;column-gap:70px}.service{display:flex;align-items:flex-start;gap:24px;min-height:150px;padding:26px 20px 25px;border-bottom:2px solid var(--line)}.service-icon{display:grid;place-items:center;flex:0 0 72px;height:72px;background:linear-gradient(130deg,#a3e34d,#65d3c4);border-radius:50%;font-size:2.25rem;line-height:1;color:#10544c}.service h3{font-size:1.3rem;margin:2px 0 8px}.service p{line-height:1.45;margin:0}.contact{background:var(--aqua);padding:100px 0 72px}.contact-lead{display:grid;grid-template-columns:1.1fr .75fr;gap:130px;margin:35px 0 90px}.contact-quote{align-self:center}.contact-details{display:grid;grid-template-columns:1fr 1fr;column-gap:70px;row-gap:0}.detail{display:grid;grid-template-columns:150px 1fr;gap:20px;padding:24px 0;border-bottom:1px solid #62c7c4}.detail h3{font-size:.82rem;text-transform:uppercase;letter-spacing:.06em;margin:5px 0}.detail p{margin:0;font-size:.95rem;font-weight:700}.detail a{text-decoration:none;overflow-wrap:anywhere}.rezept-info{margin:50px 0;background:rgba(255,255,255,.55);border-left:5px solid var(--lime);padding:27px 30px}.rezept-info h3{margin-bottom:8px}.rezept-info p{max-width:850px}.map-link{display:block;position:relative;overflow:hidden;margin-top:70px}.map-link img{width:100%;height:400px;object-fit:cover}.map-link span{position:absolute;bottom:20px;right:20px;background:#fff;padding:12px 18px;font-weight:700;border-radius:3px}.footer{background:var(--deep);color:white;padding:30px 0}.footer-inner{display:flex;justify-content:space-between;align-items:center;gap:30px}.footer-brand{color:#fff;font-size:1rem}.footer-brand .brand-mark{width:34px;height:34px}.footer nav{display:flex;gap:35px;font-size:.8rem}.footer a{text-decoration:none}.legal{min-height:70vh;padding:90px 0}.legal article{max-width:760px}.legal h1{font-size:clamp(2.1rem,4vw,3.4rem)}.legal .pending{padding:20px;background:#fff0cc;border-left:5px solid #ad7515;margin:30px 0}.legal h2{margin-top:42px}.legal a{color:#00695f}
@media(max-width:1100px){.main-nav{gap:16px}.nav-actions{margin-left:2px}.brand{font-size:1.2rem}.nav-actions .btn{padding:9px 12px}.team-grid{gap:22px}.hero-image{left:39%}}
@media(max-width:850px){.site-header{height:78px}.brand-mark{width:42px;height:42px}.menu-toggle{display:flex;width:48px;height:48px;border:0;background:transparent;flex-direction:column;align-items:center;justify-content:center;gap:6px;cursor:pointer}.menu-toggle span{width:26px;height:2px;background:var(--dark);transition:transform .2s,opacity .2s}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(8px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:nth-child(2){opacity:0}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-8px) rotate(-45deg)}.main-nav{display:none;position:absolute;top:78px;left:0;right:0;align-items:stretch;flex-direction:column;gap:0;background:#fff;box-shadow:0 12px 24px rgba(0,0,0,.12);padding:18px 24px 26px}.main-nav.open{display:flex}.main-nav>a{padding:12px 0;border-bottom:1px solid #e1eeee}.nav-actions{margin:18px 0 0;flex-wrap:wrap}.hero,.hero-inner{min-height:600px}.hero-image{left:25%}.hero:after{background:linear-gradient(90deg,rgba(8,53,51,.94),rgba(8,53,51,.64) 66%,rgba(8,53,51,.28))}.hero-copy{max-width:620px}.notice-grid,.team-lead,.travel-grid,.contact-lead{gap:35px}.section{padding:75px 0}.team{padding-top:0}.team-lead{margin:40px 0 55px}.team-grid{gap:18px}.person h3{font-size:1.1rem}.person p{font-size:.86rem}.travel{padding:100px 0}.services-grid{column-gap:25px}.service{gap:15px;padding-inline:0}.service-icon{flex-basis:56px;height:56px;font-size:1.8rem}.contact-details{column-gap:35px}.detail{grid-template-columns:100px 1fr}}
@media(max-width:640px){.container{width:min(calc(100% - 36px),var(--max))}.hero,.hero-inner{min-height:660px}.hero-image{inset:0;background-position:57% center}.hero:after{background:linear-gradient(90deg,rgba(5,48,47,.96),rgba(5,48,47,.78) 72%,rgba(5,48,47,.52))}.hero-copy{padding:70px 0}.hero h1{font-size:clamp(2.5rem,9vw,4rem)}.hero-copy>p:not(.eyebrow){font-size:1.05rem}.eyebrow{margin-bottom:24px}.button-row{gap:11px}.btn{white-space:normal;text-align:center}.notice{padding:35px 0}.notice-grid,.team-lead,.travel-grid,.services-grid,.contact-lead,.contact-details{grid-template-columns:1fr}.notice-grid{gap:32px}.notice strong{font-size:1.15rem}.intro-content{grid-template-columns:43px 1fr;gap:14px}.intro-mark{width:42px}.intro .container{padding-bottom:65px}.intro h2{font-size:1.85rem}.team-lead{margin:30px 0 48px}.team-quote,.contact-quote{font-size:1.18rem}.team-grid{grid-template-columns:1fr;gap:42px}.person img{aspect-ratio:1.35;max-height:420px}.person h3{font-size:1.3rem}.person p{font-size:1rem}.travel{padding:90px 0}.travel:before{left:-790px}.travel:after{right:-790px}.travel-grid{gap:40px}.services{padding:85px 0}.section-intro{margin-bottom:20px}.service{min-height:125px}.contact{padding:80px 0 50px}.contact-lead{gap:25px;margin:25px 0 50px}.contact-details{gap:0}.detail{grid-template-columns:100px 1fr}.rezept-info{padding:22px;margin:38px 0}.map-link{margin-top:45px}.map-link img{height:280px}.footer-inner{align-items:flex-start;flex-direction:column}.footer nav{gap:25px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}
/* WordPress theme overrides */
.main-nav .menu{display:flex;align-items:center;gap:35px;list-style:none;margin:0;padding:0}.main-nav .menu a{text-decoration:none}.main-nav .menu a:hover{text-decoration:underline;text-underline-offset:5px}.page-content{min-height:55vh;padding:80px 0}.page-content article{max-width:850px}.page-content h1{font-size:clamp(2rem,4vw,3.5rem)}.page-content .entry-content a{color:#00695f}.person img{object-position:center 30%}
@media(max-width:1100px){.main-nav .menu{gap:16px}}@media(max-width:850px){.main-nav .menu{display:flex;flex-direction:column;align-items:stretch;gap:0}.main-nav .menu li{border-bottom:1px solid #e1eeee}.main-nav .menu a{display:block;padding:12px 0}}

/* WordPress logo and editable page content */
.brand .custom-logo-link{display:block;line-height:0}.brand .custom-logo{display:block;width:auto;max-width:240px;max-height:68px;height:auto}.footer-brand .custom-logo{max-width:170px;max-height:48px}.hero-copy .button-row{margin-top:38px}.recipe-page{min-height:65vh;padding:90px 0;background:#bff0ef}.recipe-wrap{max-width:830px}.recipe-wrap h1{font-size:clamp(2.25rem,4vw,3.6rem)}.recipe-form{display:grid;gap:19px;margin-top:38px;padding:40px;background:#fff}.recipe-form label{display:block;font-weight:700;margin-bottom:7px}.recipe-form input:not([type=checkbox]),.recipe-form select,.recipe-form textarea{width:100%;border:1px solid #9bbbb8;border-radius:2px;padding:12px;font:inherit;color:#173e3d;background:#fff}.recipe-form input:focus,.recipe-form select:focus,.recipe-form textarea:focus{outline:3px solid #9bdf56;outline-offset:1px}.recipe-form .checkline{display:flex;align-items:flex-start;gap:12px}.recipe-form .checkline input{margin-top:6px}.recipe-form .honeypot{position:absolute;left:-9999px;opacity:0}.form-alert{padding:20px 24px;border:1px solid var(--dark);border-left:6px solid #ff6b6b;border-radius:4px;background:var(--dark);color:#fff;margin:24px 0;line-height:1.65;overflow-wrap:anywhere}.form-alert.success{background:#e5f5f0;color:var(--dark);border-color:#71d5bb;border-left-color:#07827e}.recipe-form .btn{border:0;cursor:pointer;justify-self:start}.recipe-form small{font-size:.86rem}.recipe-wrap .entry-content{max-width:760px}.recipe-wrap .entry-content p{margin:1em 0}@media(max-width:640px){.brand .custom-logo{max-width:180px;max-height:52px}.footer-brand .custom-logo{max-width:150px}.recipe-form{padding:22px}.recipe-page{padding:65px 0}}
.intro-mark{display:block;width:66px;height:66px;object-fit:contain;margin-top:3px}@media(max-width:640px){.intro-mark{width:42px;height:42px}}

.footer-brand .custom-logo:not(.cw-footer-alt){filter:brightness(0) invert(1)}.footer-brand:has(.custom-logo) .brand-mark{display:none}

/* CARL FRITZ parent alignment and supplied SVG assets */
.container{max-width:none;padding:0}.site-header{border:0}.footer{margin-top:0}.default-logo,.custom-logo{max-width:262px;max-height:63px;width:auto;height:auto}.footer-brand .default-logo,.footer-brand .custom-logo{max-width:150px;max-height:42px}.footer-brand .custom-logo{filter:brightness(0) invert(1)}.hero .hero-lead{max-width:580px;font-size:1.18rem;line-height:1.5}.rich-text>p:last-child{margin-bottom:0}.rich-text p{margin-bottom:1em}.team-quote p,.contact-quote p{margin:0}.service-asset{flex:0 0 72px;width:72px;height:72px;object-fit:contain}.travel::before{background:url("Arztpraxis-Campus-West-Aachen-Reisemedizin-Element-links.svg") left top/contain no-repeat;border-radius:0;left:-240px;top:-20px;width:520px;height:650px;transform:none}.travel::after{background:url("Arztpraxis-Campus-West-Aachen-Reisemedizin-Element-rechts.svg") right bottom/contain no-repeat;border-radius:0;right:-290px;bottom:-270px;width:680px;height:690px}.service{align-items:center}.intro-mark{display:block;object-fit:contain}.recipe-page{min-height:65vh;padding:90px 0;background:#bff0ef}.recipe-wrap{max-width:830px}.recipe-wrap h1{font-size:clamp(2.25rem,4vw,3.6rem)}.recipe-form{display:grid;gap:19px;margin-top:38px;padding:40px;background:#fff}.recipe-form label{display:block;font-weight:700;margin-bottom:7px}.recipe-form input:not([type=checkbox]),.recipe-form select,.recipe-form textarea{width:100%;border:1px solid #9bbbb8;border-radius:2px;padding:12px;font:inherit;color:#173e3d;background:#fff}.recipe-form .checkline{display:flex;align-items:flex-start;gap:12px}.recipe-form .checkline input{margin-top:6px}.recipe-form .honeypot{position:absolute;left:-9999px;opacity:0}.form-alert{padding:20px 24px;border:1px solid var(--dark);border-left:6px solid #ff6b6b;border-radius:4px;background:var(--dark);color:#fff;margin:24px 0;line-height:1.65;overflow-wrap:anywhere}.form-alert.success{background:#e5f5f0;color:var(--dark);border-color:#71d5bb;border-left-color:#07827e}.recipe-form .btn{border:0;cursor:pointer;justify-self:start}.recipe-form small{font-size:.86rem}.recipe-wrap .entry-content{max-width:760px}@media(max-width:850px){.travel::before{left:-370px}.travel::after{right:-480px}}@media(max-width:640px){.default-logo,.custom-logo{max-width:190px;max-height:53px}.recipe-form{padding:22px}.recipe-page{padding:65px 0}.travel::before{left:-465px}.travel::after{right:-550px}}

.footer-brand .default-logo{filter:brightness(0) invert(1)}

/* Die linke Grafik folgt der Textspalte, damit das Flugzeug unabhängig von
   der Bildschirmbreite oberhalb der Eyebrow "Reisemedizin" bleibt. */
.travel::before{display:none}
.travel-grid > div:first-child{position:relative}
.travel-grid > div:first-child::before{
  content:"";
  position:absolute;
  pointer-events:none;
  width:650px;
  height:650px;
  left:-565px;
  top:-83px;
  background:url("Arztpraxis-Campus-West-Aachen-Reisemedizin-Element-links.svg") center/contain no-repeat;
}
@media (max-width:850px){
  .travel-grid > div:first-child::before{width:550px;height:550px;left:-470px;top:-80px}
}
@media (max-width:640px){
  .travel{padding-top:135px}
  .travel-grid > div:first-child::before{width:460px;height:460px;left:-390px;top:-78px}
  .travel::after{display:none}
}

/* Kompakter Header beim Scrollen. Sprungziele bleiben darunter sichtbar. */
html{scroll-padding-top:96px}
.skip-link{position:fixed;top:12px;left:12px;z-index:100001;transform:translateY(calc(-100% - 24px));background:#fff;color:var(--dark);padding:12px 18px;border:2px solid var(--dark);border-radius:4px;font-weight:700;text-decoration:none;box-shadow:0 4px 14px rgba(4,54,54,.18)}
.skip-link:focus,.skip-link:focus-visible{top:12px;transform:none;outline:3px solid #2f9b93;outline-offset:3px}
.admin-bar .skip-link:focus,.admin-bar .skip-link:focus-visible{top:44px}
@media(max-width:782px){.admin-bar .skip-link:focus,.admin-bar .skip-link:focus-visible{top:58px}}
.site-header{position:sticky;top:0;width:100%;height:104px;z-index:100;transition:height .2s ease,box-shadow .2s ease}
.site-header.is-compact{height:76px;box-shadow:0 5px 18px rgba(4,54,54,.12)}
.admin-bar .site-header{top:32px}
@media(max-width:850px){
  html{scroll-padding-top:82px}
  .site-header{height:78px}
  .site-header.is-compact{height:64px}
  .main-nav{top:100%;max-height:calc(100dvh - 64px);overflow-y:auto}
}
@media(max-width:782px){.admin-bar .site-header{top:46px}}
@media(prefers-reduced-motion:reduce){.site-header{transition:none}}

/* Seitenhintergrund über die gesamte Breite; Text bleibt gut lesbar. */
.practice-subpage{width:100%;background:var(--aqua)}
.practice-subpage .recipe-wrap{width:min(calc(100% - 48px),var(--max));max-width:var(--max);margin-inline:auto}
.practice-subpage article{max-width:950px}
.practice-subpage .entry-content{max-width:950px;overflow-wrap:anywhere}
.practice-subpage .entry-content h2{margin-top:2em;font-size:clamp(1.5rem,2.5vw,2rem)}
.practice-subpage .entry-content h3{margin-top:1.5em}
.practice-subpage .entry-content a{color:#005b55;text-decoration:underline;text-underline-offset:3px}
.practice-subpage .entry-content img{height:auto}
@media(max-width:640px){.practice-subpage .recipe-wrap{width:calc(100% - 36px)}}

/* Einheitliches, scharfes Telefonsymbol statt eines Schriftzeichens. */
.phone-link .phone-icon{display:block;width:18px;height:18px;flex:none;margin-right:8px}

/* Rezept- und Überweisungsanfrage: übersichtliche Felder wie in der Vorlage. */
.recipe-form{max-width:760px}
.recipe-form .recipe-intro{margin:0 0 8px}
.recipe-form .recipe-form-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.recipe-form .recipe-options{border:0;margin:0;padding:0;min-width:0}
.recipe-form .recipe-options legend{font-weight:700;margin-bottom:12px}
.recipe-form .recipe-options>div{display:flex;align-items:flex-start;gap:12px;margin:9px 0}
.recipe-form .recipe-options input[type=radio]{width:18px;height:18px;flex:none;margin:5px 0 0;padding:0;border:0;accent-color:var(--dark)}
.recipe-form .recipe-options label{font-weight:400;margin:0}
.recipe-form .checkline input[type=checkbox]{width:auto;flex:none;accent-color:var(--dark)}
.recipe-form #cw_postal_hint{display:block;margin-top:6px}
@media(max-width:640px){.recipe-form .recipe-form-row{grid-template-columns:1fr;gap:19px}}

/* Leistungsseiten und Wege dorthin. */
.service-more{display:inline-block;margin-top:15px;color:#005b55;font-weight:700;text-decoration:underline;text-underline-offset:4px}
.service-more:hover,.travel-detail-link:hover,.service-back:hover{text-decoration-thickness:2px}
.travel-actions{display:flex;align-items:center;flex-wrap:wrap;gap:15px 24px;margin-top:35px}
.travel-actions .btn{margin-top:0}
.travel-detail-link{color:#fff;font-weight:700;text-underline-offset:4px}
.practice-subpage .entry-content ul{padding-left:1.5em;margin:1em 0 1.5em}
.practice-subpage .entry-content li{padding-left:.25em;margin:.4em 0}
.practice-subpage .entry-content h2[id]{scroll-margin-top:115px}
.service-page-actions{display:flex;align-items:center;flex-wrap:wrap;gap:18px 28px;margin-top:50px;padding-top:26px;border-top:2px solid var(--line)}
.service-back{color:#005b55;font-weight:700;text-underline-offset:4px}
.service-icon-link{display:block;flex:0 0 72px;width:72px;height:72px;border-radius:50%}
.service-icon-link .service-asset{width:100%;height:100%;transition:transform .2s ease,filter .2s ease}
.service-icon-link:hover .service-asset,.service-icon-link:focus-visible .service-asset{transform:scale(1.08);filter:drop-shadow(0 4px 6px rgba(4,54,54,.2))}
@media(prefers-reduced-motion:reduce){.service-icon-link .service-asset{transition:none}}

/* Arztprofile mit portraitgestütztem Einstieg und gut lesbarer Chronologie. */
.team .person img{border-radius:4px}
.person-photo-link{display:block;overflow:hidden;margin-bottom:23px;border-radius:4px;transition:border-radius .25s ease}
.person-photo-link img{margin-bottom:0;transition:transform .25s ease,border-radius .25s ease}
.person-photo-link:hover img,.person-photo-link:focus-visible img{transform:scale(1.025)}
.team .person-photo-link:hover,.team .person-photo-link:focus-visible,.team .person-photo-link:hover img,.team .person-photo-link:focus-visible img{border-radius:0}
.person h3 a{text-decoration:none}
.person h3 a:hover,.person h3 a:focus-visible{text-decoration:underline;text-underline-offset:4px}
.person-more{display:inline-block;margin-top:8px;color:#005b55;font-weight:700;text-decoration:underline;text-underline-offset:4px}
.person-more:hover{text-decoration-thickness:2px}
.profile-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:30px;margin-bottom:32px}
.profile-heading h1{margin:0}
.profile-portrait{width:190px;max-width:35%;height:auto;aspect-ratio:1.25;object-fit:cover;object-position:center 30%;flex:none}
.doctor-profile .entry-content h2{margin-top:1.65em}
.doctor-profile .entry-content .profile-timeline{list-style:none;padding:0;margin:18px 0 36px;border-top:1px solid var(--line)}
.doctor-profile .entry-content .profile-timeline li{display:grid;grid-template-columns:175px minmax(0,1fr);gap:12px 22px;margin:0;padding:15px 0;border-bottom:1px solid var(--line)}
.profile-timeline strong{font-weight:700}
@media(max-width:640px){.profile-heading{gap:18px}.profile-portrait{width:115px}.doctor-profile .entry-content .profile-timeline li{grid-template-columns:1fr;gap:2px}}
@media(prefers-reduced-motion:reduce){.person-photo-link img{transition:none}}
.profile-subtitle{margin:15px 0 0;font-weight:700;line-height:1.5}

/* Profil-Einstieg: Portrait und Kurzvorstellung als gemeinsame Fläche. */
.doctor-profile .profile-feature{padding-bottom:58px;margin-bottom:52px;border-bottom:2px solid var(--line)}
.doctor-profile .profile-feature.has-portrait{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,330px);gap:clamp(35px,5vw,75px);align-items:center}
.profile-feature-copy h1{margin:0;max-width:630px}
.profile-feature-copy .eyebrow{margin-bottom:35px}
.profile-feature-copy .profile-subtitle{margin-top:23px}
.profile-lead{margin-top:32px;max-width:580px;font-size:1.06rem;line-height:1.65}
.profile-lead p:last-child{margin-bottom:0}
.profile-photo-frame{position:relative;isolation:isolate;background:#fff;padding:10px;box-shadow:0 13px 32px rgba(4,54,54,.12)}
.profile-photo-frame::before{content:"";position:absolute;z-index:-1;inset:17px -17px -17px 17px;background:linear-gradient(90deg,#a1e455 0%,#55c7c2 100%)}
.profile-photo-frame .profile-portrait{display:block;width:100%;max-width:none;height:390px;aspect-ratio:auto;object-fit:cover;object-position:center 22%}
.doctor-profile .entry-content > h2:first-child{margin-top:0}
@media(max-width:750px){
  .doctor-profile .profile-feature.has-portrait{grid-template-columns:1fr;gap:36px}
  .profile-photo-frame{width:min(100% - 18px,370px);margin:0 18px 0 0}
  .profile-photo-frame .profile-portrait{height:360px}
  .doctor-profile .profile-feature{padding-bottom:48px;margin-bottom:43px}
}
@media(max-width:440px){.profile-photo-frame .profile-portrait{height:310px}}
.doctor-profile .service-page-actions{border-top:0;padding-top:0;margin-top:32px}

/* Dezenter Agenturhinweis innerhalb des bestehenden Footers. */
.footer-agency{display:flex;align-items:center;gap:10px;margin:0;font-size:.8rem;line-height:1.4;color:#d1e7e3;white-space:nowrap}
.footer-agency a{display:block;line-height:0}
.footer-agency img{width:auto;height:1.1em;max-width:none;transform:translateY(-2px)}
.footer-agency a:hover img{opacity:.85}
@media(max-width:1100px){.footer-inner{flex-wrap:wrap}.footer-agency{margin-left:auto}}
@media(max-width:640px){.footer-agency{margin-left:0;white-space:normal;flex-wrap:wrap}}

/* Editierbare Einleitung zur Anfahrtskarte. */
.map-intro{max-width:960px;margin:70px 0 28px}.map-intro h3{font-size:clamp(1.55rem,2.3vw,2.15rem);margin-bottom:17px}.map-intro .rich-text{max-width:920px}.map-link{margin-top:0}@media(max-width:640px){.map-intro{margin:48px 0 24px}}

/* Akutsprechstunde im Sprechzeitenband und volle Textbreite. */
.notice-acute{margin-top:28px;padding-top:22px;border-top:1px solid rgba(255,255,255,.3)}
.notice-acute .rich-text p{margin:0 0 .8em;line-height:1.55}.notice-acute .rich-text p:last-child{margin-bottom:0}
.intro .intro-content{grid-template-columns:78px minmax(0,1fr)}.intro .intro-content>div{min-width:0}.intro p:not(.eyebrow){max-width:none}
.map-intro,.map-intro .rich-text{max-width:none}
@media(max-width:640px){.intro .intro-content{grid-template-columns:43px minmax(0,1fr)}}

/* Rezeptbestellung: breite Einleitung, kompakter Formularblock. */
.practice-subpage.recipe-order-page article,.practice-subpage.recipe-order-page .entry-content{max-width:none}
.recipe-order-page .recipe-form{max-width:830px}
.recipe-form .recipe-intro p{margin:0 0 12px}.recipe-form .recipe-intro p:last-child{margin-bottom:0}
.recipe-form .recipe-intro ul{margin:0 0 16px 1.2em;padding:0}.recipe-form .recipe-intro li{margin-bottom:4px}

.recipe-form .recipe-form-heading{font-size:1.25rem;line-height:1.3;margin:0}

/* Die generische H2-Regel der Unterseiten darf vor der Formularüberschrift keinen Leerraum erzeugen. */
.practice-subpage .entry-content .recipe-form-heading{margin:0;font-size:1.25rem;line-height:1.3}
.recipe-order-page .recipe-form{padding-top:30px}
@media(max-width:640px){.recipe-order-page .recipe-form{padding-top:22px}}

/* Teamfoto unter „Unser Selbstverständnis“ mit dem Rahmen der Arztprofile. */
.staff-team{margin-top:55px;padding-top:0;border-top:0}
@media(max-width:640px){.staff-team{margin-top:36px}}
.intro .intro-team-frame{position:relative;display:block;float:none;width:min(calc(100% - 106px),967px);height:auto;min-height:0;max-height:none;aspect-ratio:auto;margin:48px 0 0 106px;padding:0 17px 17px 0;background:linear-gradient(90deg,#a1e455 0%,#55c7c2 100%) 17px 17px / calc(100% - 17px) calc(100% - 17px) no-repeat}
.intro-team-frame::before,.intro-team-frame::after{content:none}
.intro-team-mat{display:block;position:relative;width:100%;height:auto;min-height:0;padding:10px;background:#fff;box-shadow:0 13px 32px rgba(4,54,54,.12)}
.intro-team-crop{display:block;overflow:hidden;height:clamp(243px,26.1vw,324px);min-height:0;margin:0;padding:0}
.intro-team-photo,.intro-team-placeholder{position:static;display:block;float:none;width:100%;max-width:100%;height:clamp(270px,29vw,360px);min-height:0;max-height:none;margin:0}
.intro-team-photo{object-fit:cover;object-position:center 35%;contain:none;contain-intrinsic-size:none}
.intro-team-placeholder{display:grid;place-items:center;background:#e4f3f0;color:var(--dark);text-align:center;padding:24px;font-weight:700;letter-spacing:.02em}
.intro-team-placeholder span{display:inline-block;border:1px solid #8acdc4;padding:14px 22px;background:rgba(255,255,255,.58)}
@media(max-width:750px){
  .intro .intro-team-frame{width:100%;margin:36px 0 0}
  .intro-team-crop{height:auto;aspect-ratio:var(--cw-team-crop-ratio,auto)}
  .intro .intro-team-frame .intro-team-photo{height:auto;min-height:0;max-height:none;aspect-ratio:var(--cw-team-ratio,auto);object-fit:contain;contain:none;contain-intrinsic-size:none}
}
@media(max-width:640px){
  .intro-team-placeholder{height:clamp(140px,45vw,270px)}
}

/* Optionaler, editierbarer Abschiedsbrief direkt unter dem Selbstverständnis. */
.predecessor-letter{margin-top:30px;padding:25px 30px;background:#f0f8f5;border-left:4px solid var(--lime);border-radius:0 4px 4px 0}
.predecessor-letter .eyebrow{margin:0 0 16px}
.predecessor-letter blockquote{margin:0;padding:0;border:0;background:transparent;color:inherit;font:inherit;font-style:normal}
.predecessor-letter blockquote p{font:inherit;margin-bottom:1em}
.predecessor-letter blockquote p:last-child{margin-bottom:0}
@media(max-width:640px){.predecessor-letter{padding:20px 18px;margin-top:24px}}

/* Einstiegsfoto früh im HTML entdecken; Bildausschnitt und Überlagerung beibehalten. */
.hero-image{background-image:none}
.hero-image img{display:block;width:100%;height:100%;max-width:none;object-fit:cover;object-position:center}
@media(max-width:640px){.hero-image img{object-position:57% center}}

/* Farbige Original-Logoversion für den dunklen Praxisfooter. */
.footer-brand .cw-footer-logo{display:block;width:150px;max-width:100%;height:auto;filter:none}
.form-alert a,.practice-subpage .entry-content .form-alert a{color:inherit;text-decoration:underline;text-underline-offset:3px;font-weight:700}
.form-alert a:focus-visible{outline-color:var(--lime)}
.form-alert.success a:focus-visible{outline-color:var(--dark)}
@media(max-width:640px){.form-alert{padding:18px;border-left-width:5px}}
