
:root{
  --bg:#ffffff;--text:#082656;--muted:#7f8a9a;--teal:#4e9f9d;--teal2:#7fd1d3;--navy:#071f49;--line:#e7ebef;--radius:20px;--shadow:0 15px 35px rgba(5,24,58,.09);--content:1140px;
}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:80px}body{margin:0;font-family:Manrope,sans-serif;background:var(--bg);color:var(--text);line-height:1.45}img{display:block;max-width:100%}a{text-decoration:none;color:inherit}button,input,select{font:inherit}
.skip-link{position:absolute;left:-9999px}.skip-link:focus{left:12px;top:12px;background:#fff;padding:8px 12px;z-index:999}
.container{width:min(calc(100% - 34px),var(--content));margin:0 auto}.center{text-align:center}.section{padding:72px 0}.compact{padding:54px 0}.narrow-head{max-width:900px}
.site-header{position:sticky;top:0;z-index:120;margin-bottom:0;background:#fff;}.topbar{display:flex;justify-content:space-between;align-items:center;padding:10px 0}.brand,.footer-brand{display:flex;align-items:center;gap:12px}.brand img{width:52px;height:auto}.brand-title{display:block;color:#3d9a9c;font-size:13px;font-weight:800;letter-spacing:.12em}.brand-subtitle,.footer-brand span{display:block;font-size:10px;letter-spacing:.12em;color:#1a3154}.top-actions{display:flex;align-items:center;gap:14px}.top-link{font-size:12px}.menu-toggle{width:36px;height:36px;border:1px solid #d7e0e5;border-radius:8px;background:#fff;display:grid;place-items:center;gap:3px}.menu-toggle span{display:block;width:16px;height:1.8px;background:#4d999a}.doctor-strip{background:#4f9f9d;color:#fff;font-size:11px;padding:6px 0;margin-bottom:0;position:relative;z-index:1;}.topbar-sticky{position:relative;z-index:121;background:#fff;display:block;width:100%;}.pill{background:#f2f8f8;color:#1f6669;border-radius:999px;padding:2px 8px;margin-right:10px;font-weight:700}.mobile-menu{display:none;padding:0 18px 16px}.mobile-menu.open{display:grid}.mobile-menu a{padding:10px 0;border-bottom:1px solid #edf1f5}
.hero{position:relative;min-height:470px;overflow:hidden}.hero-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 30%}.hero-shade{position:absolute;inset:0;background:rgba(7,20,35,.35)}.hero-content{position:relative;height:100%;display:flex;align-items:flex-end;padding-bottom:42px}.hero-copy{max-width:460px;color:#fff}.hero h1{font-size:38px;line-height:.96;margin:0 0 18px;font-weight:800}.hero h1 span{background:rgba(78,159,157,.92);padding:0 .16em;border-radius:6px}.hero-hours{font-size:12px;line-height:1.55;margin-bottom:18px}.hero-cta-row{display:flex;gap:12px;flex-wrap:wrap}
.btn{display:inline-flex;align-items:center;justify-content:center;border-radius:8px;padding:13px 22px;font-size:12px;font-weight:700}.btn-primary{background:var(--teal);color:#fff}.btn-outline{border:1px solid rgba(255,255,255,.55);color:#fff}.full{width:100%}
h2{font-size:22px;line-height:1.1;margin:0 0 14px;font-weight:800}h3{font-size:14px;line-height:1.2;margin:0 0 10px;font-weight:800}p{margin:0}
.intro-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:36px;align-items:center}.intro p,.services p,.gradient-facts p,.service-band p,.facts-list p{font-size:11px;color:var(--muted)}.tick-list{list-style:none;padding:0;margin:20px 0 0;display:grid;grid-template-columns:repeat(2,1fr);gap:10px 20px}.tick-list li{font-size:18px;font-weight:700;position:relative;padding-left:46px;line-height:35px}.tick-list li:before{content:'';position:absolute;left:0;top:50%;width:35px;height:35px;background:url('assets/bullet.gif') no-repeat center/contain;transform:translateY(-50%)}.tick-links a{position:relative;display:inline-block;color:inherit;text-decoration:none}.tick-links a:after{content:'';position:absolute;left:0;bottom:-2px;width:100%;height:2px;background:#4e9f9d;transform:scaleX(0);transform-origin:center;transition:transform .22s ease;pointer-events:none}.tick-links a:hover:after,.tick-links a:focus-visible:after{transform:scaleX(1)}.intro-side img{width:100%;height:auto;aspect-ratio:auto;object-fit:contain;object-position:center center}.rating-inline{margin-top:8px;font-size:10px;text-align:center;font-weight:700}
.gradient-facts{background:linear-gradient(90deg,#168281,#78d0d2);color:#fff}.gradient-facts h2,.gradient-facts p{color:#fff}.fact-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:20px}.fact-card{position:relative;border-radius:6px;overflow:hidden;min-height:95px}.fact-card img{width:100%;height:100%;object-fit:cover}.img-focus-left img{object-position:left center}.img-focus-center img{object-position:center center}.fact-card span{position:absolute;left:8px;right:8px;bottom:7px;font-size:11px;line-height:1.05;font-weight:800;color:#fff;text-shadow:0 1px 8px rgba(0,0,0,.4)}
.services{padding-top:62px}.card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.service-card,.approach-card{border:1px solid var(--line);background:#fff;border-radius:14px;overflow:hidden}.thumb{background:#efefef;aspect-ratio:1.25/1;overflow:hidden}.thumb img{width:100%;height:100%;object-fit:cover;object-position:center center}.img-top img{object-position:center top}.card-body{padding:14px 14px 16px}.card-body p{font-size:10px;color:var(--muted);min-height:88px}.mini-btn{display:inline-block;background:var(--teal);color:#fff;padding:8px 12px;border-radius:4px;font-size:10px;font-weight:700;margin-top:10px}
.service-band{background:linear-gradient(90deg,#0b7577,#7dd4d7);color:#fff}.service-grid{display:grid;grid-template-columns:1fr .72fr;gap:34px;align-items:center}.service-band p{color:#fff}.benefit-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px 24px;margin-top:16px}.benefit-grid span{font-size:11px;font-weight:600}.service-image-wrap{aspect-ratio:1/0.75;background:transparent}.service-image-wrap img{width:100%;height:100%;object-fit:cover;object-position:center center}
.team-banner{position:relative;height:192px;overflow:hidden;background:#5d6d47}.team-banner img{width:100%;height:100%;object-fit:cover;object-position:center 35%;filter:brightness(.62)}.team-banner h2{position:absolute;left:0;right:0;top:75%;transform:translateY(-50%);display:grid;place-items:center;color:#fff;font-size:37.5px;text-align:center;padding:0 20px}
.approach-grid .card-body p{min-height:78px}.step{display:block;color:var(--teal);font-size:10px;font-weight:800;margin-bottom:6px}
.dark{background:var(--navy);color:#fff}.reviews{padding:46px 0 52px}.marquee{overflow:hidden;position:relative;margin-top:18px}.fade-mask:before,.fade-mask:after{content:'';position:absolute;top:0;bottom:0;width:50px;z-index:2}.fade-mask:before{left:0;background:linear-gradient(90deg,var(--navy),transparent)}.fade-mask:after{right:0;background:linear-gradient(270deg,var(--navy),transparent)}.marquee-track{display:flex;gap:16px;width:max-content;animation:scroll 34s linear infinite}.review-card{width:240px;min-height:145px;background:#fff;color:var(--text);border-radius:6px;padding:14px}.stars{color:#ffbb23;font-size:12px;letter-spacing:2px;margin-bottom:8px}.review-card p{font-size:10px;color:#44516a}.review-card h3{font-size:12px}.marquee:hover .marquee-track{animation-play-state:paused}
@keyframes scroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.icon-facts{display:grid;grid-template-columns:repeat(2,1fr);gap:20px 40px;margin-top:28px}.icon-facts p{font-size:11px;color:var(--muted)}
.appointment-zone{background:linear-gradient(rgba(11,40,54,.38),rgba(11,40,54,.38)),url('assets/praxisraum-2.jpg') center/cover no-repeat;padding:48px 0}.appointment-card{display:grid;grid-template-columns:1fr 1fr;gap:30px;background:#fff;border-radius:8px;padding:26px;box-shadow:var(--shadow)}.appointment-copy h2{max-width:320px}.appointment-copy p,.appointment-times,.mail-link,.rating-bottom{font-size:11px;color:#47556c}.mail-link{display:inline-block;margin:14px 0}.contact-person{display:flex;align-items:center;gap:10px;margin-top:18px}.contact-person img{width:42px;height:42px;border-radius:50%;object-fit:cover;object-position:center top}.contact-person strong{display:block;font-size:11px}.contact-person span{display:block;font-size:10px;color:var(--muted)}.appointment-form{display:grid;gap:10px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}.appointment-form input,.appointment-form select{width:100%;padding:11px 12px;border:1px solid #dde3e8;border-radius:4px;font-size:11px;background:#fff}.rating-bottom{text-align:center;font-weight:700}
.footer{background:var(--navy);color:#fff;padding-top:26px}.footer-grid{display:grid;grid-template-columns:1.1fr .7fr .7fr .7fr;gap:28px;padding-bottom:24px}.footer-grid p,.footer-grid a{display:block;font-size:10px;color:#d5ddec;margin:6px 0}.footer h3{font-size:12px;margin-bottom:8px;color:#fff}.footer-bar{background:#4d9e9d;color:#fff;text-align:center;padding:8px 12px;font-size:10px}
@media (max-width:900px){.intro-grid,.service-grid,.appointment-card,.footer-grid,.form-row{grid-template-columns:1fr}.fact-cards,.card-grid,.icon-facts{grid-template-columns:1fr 1fr}.team-banner{height:152px}}
@media (max-width:640px){.container{width:min(calc(100% - 24px),var(--content))}.top-link{display:none}.hero{min-height:360px}.hero h1{font-size:30px}.hero-copy{max-width:300px}.hero-cta-row{flex-direction:column;align-items:flex-start}.btn{width:100%}.intro-grid,.fact-cards,.card-grid,.icon-facts{grid-template-columns:1fr}.service-grid{grid-template-columns:1fr}.reviews .review-card{width:220px}.appointment-card{padding:18px}.footer-grid{grid-template-columns:1fr 1fr}.team-banner h2{font-size:27.5px}}

.brand-lockup.stack{display:flex;flex-direction:column;align-items:flex-start;gap:2px}.brand-lockup.stack .brand-title{font-size:15px}.brand-lockup.stack .brand-subtitle{font-size:12px;letter-spacing:.08em}
.icon-link{width:36px;height:36px;border:1px solid #d7e0e5;border-radius:999px;display:grid;place-items:center;color:#0b2b58;background:#fff}
.hero-copy-bottom{padding-top:220px;padding-bottom:10px}.hero-copy-bottom h1{font-size:28px;line-height:1.08;max-width:280px;text-shadow:0 2px 16px rgba(0,0,0,.24)}.hero-copy-bottom h1 span{display:block;font-size:25px;background:none;padding:0;margin-top:4px}.hero-copy-bottom .hero-hours{font-size:11px;background:rgba(8,20,35,.35);display:inline-block;padding:10px 12px;border-radius:6px}.hero .hero-content{align-items:flex-end}.hero{min-height:560px}.hero-bg{object-position:center center}
.intro h2,.gradient-facts h2,.services h2,.service-band h2,.approach h2,.reviews h2,.facts-list h2,.appointment-copy h2{font-size:28px}.intro p,.services p,.gradient-facts p,.service-band p,.facts-list p,.card-body p,.icon-facts p,.appointment-copy p,.appointment-times,.mail-link,.rating-bottom{font-size:14px;line-height:1.6}.tick-list li,.benefit-grid span{font-size:14px}.card-body h3,.icon-facts h3{font-size:20px}.mini-btn,.btn{font-size:13px}
.thumb,.fact-card,.intro-side img,.service-image-wrap,.team-banner img{overflow:hidden}.thumb img,.fact-card img,.intro-side img,.service-slide-track img,.team-banner img{transition:transform .45s ease}.thumb:hover img,.fact-card:hover img,.intro-side:hover img,.team-banner:hover img{transform:scale(1.06)}
.service-slider{position:relative;overflow:hidden}.service-slide-track{display:flex;gap:6px;width:calc(400% + 18px);height:100%;animation:serviceSlider 18s ease-in-out infinite}.service-slide-track img{width:calc(25% - 4.5px);height:100%;object-fit:cover}.service-slider:hover .service-slide-track img{transform:none}@keyframes serviceSlider{0%,22%{transform:translateX(0)}28%,47%{transform:translateX(calc(-25% - 1.5px))}53%,72%{transform:translateX(calc(-50% - 3px))}78%,100%{transform:translateX(calc(-75% - 4.5px))}}
.team-banner h2{font-size:42.5px;text-shadow:0 2px 16px rgba(0,0,0,.24)}
.mega-menu{background:#fff;display:grid;grid-template-columns:1.1fr 1.9fr 1.4fr;gap:56px;padding:0 52px;background:#fff;border-top:1px solid #eef2f5;box-shadow:0 20px 40px rgba(9,31,73,.08);max-height:0;opacity:0;overflow:hidden;pointer-events:none;visibility:hidden;transition:max-height .3s ease,opacity .22s ease,padding .3s ease,visibility 0s linear .3s}.mega-menu.open{display:grid;max-height:900px;opacity:1;pointer-events:auto;visibility:visible;padding:42px 52px 48px;transition-delay:0s}.mega-menu h3{font-size:26px;letter-spacing:.01em;margin-bottom:28px;color:#071f49}.mega-col>a{display:block;font-size:22px;font-weight:800;padding:14px 0;color:#071f49}.mega-col>a.active{position:static}.mega-col>a.active:after{content:none}.service-link{display:grid !important;grid-template-columns:62px 1fr;gap:20px;align-items:start;padding:0 0 28px !important}.service-link img{width:62px;height:62px;object-fit:cover;border-radius:10px}.service-link strong{display:block;font-size:17px;margin-bottom:4px}.service-link em,.menu-person em{font-style:normal;font-size:15px;line-height:1.5;color:#5d687c}.map-box{border-radius:10px;overflow:hidden;margin-bottom:14px;background:#f3f5f7}.map-box img{width:100%;height:auto;display:block}.contact-col p{font-size:16px;margin-bottom:22px}.menu-person{display:flex;align-items:center;gap:16px;margin-bottom:18px}.menu-person img{width:62px;height:62px;border-radius:50%;object-fit:cover}.menu-person strong{display:block;font-size:17px}.menu-cta{display:inline-flex !important;align-items:center;justify-content:center;background:#4e9f9d;color:#fff;padding:18px 24px;border-radius:6px;font-size:18px;font-weight:800;min-width:315px}
@media (max-width:900px){.mega-menu,.mega-menu.open{grid-template-columns:1fr;gap:24px;padding:24px}.mega-col>a{font-size:18px}.mega-menu h3{font-size:22px}.service-link strong{font-size:16px}.service-link em,.menu-person em,.contact-col p{font-size:14px}}
@media (max-width:640px){.hero-copy-bottom{padding-top:140px}.hero-copy-bottom h1{font-size:24px}.hero-copy-bottom h1 span{font-size:22px}.intro h2,.gradient-facts h2,.services h2,.service-band h2,.approach h2,.reviews h2,.facts-list h2,.appointment-copy h2{font-size:24px}.card-body h3,.icon-facts h3{font-size:18px}.mega-menu{padding:20px}}

.topbar{padding:12px 0}.brand{gap:10px}.brand img{width:54px}.brand-lockup.stack{align-items:center;text-align:center}.brand-lockup.stack .brand-title{font-size:16px;letter-spacing:.14em}.brand-lockup.stack .brand-subtitle{font-size:13px;letter-spacing:.08em}.top-actions{gap:10px}.menu-toggle{order:-1}
.hero{min-height:560px}.hero-content{min-height:560px;padding-bottom:22px}.hero-copy-bottom{padding-top:0;padding-bottom:0;align-self:flex-end;margin-bottom:6px}.hero-copy-bottom h1{font-size:27px;line-height:1.08;max-width:250px;margin-bottom:14px}.hero-copy-bottom h1 span{font-size:24px;margin-top:2px}.hero-bg{object-position:center 22%}
.team-banner img{object-position:center 48%}
.mega-menu{grid-template-columns:.85fr 1.35fr 1fr;gap:34px;padding:28px 34px 34px;max-width:1120px;margin:0 auto}.mega-menu h3{font-size:20px;margin-bottom:20px}.mega-col>a{font-size:17px;padding:10px 0}.service-link{grid-template-columns:56px 1fr;gap:14px;padding:0 0 18px !important}.service-link img{width:56px;height:56px}.service-link strong{font-size:15px}.service-link em,.menu-person em{font-size:13px}.contact-col p{font-size:14px;margin-bottom:16px}.menu-person{gap:12px;margin-bottom:14px}.menu-person img{width:56px;height:56px}.menu-person strong{font-size:15px}.menu-cta{min-width:0;width:100%;padding:15px 20px;font-size:16px}
.service-slider{position:relative;overflow:hidden}.service-slide-track{display:flex;width:max-content;height:100%;animation:serviceMarquee 24s linear infinite}.service-slide-track img{width:300px;height:100%;object-fit:cover;flex:0 0 300px}.service-slider:hover .service-slide-track{animation-play-state:paused}@keyframes serviceMarquee{from{transform:translateX(0)}to{transform:translateX(-900px)}}
@media (max-width:900px){.mega-menu,.mega-menu.open{max-width:none}.hero-bg{object-position:center 28%}}
@media (max-width:640px){.brand-lockup.stack .brand-title{font-size:13px}.brand-lockup.stack .brand-subtitle{font-size:10px}.hero-content{min-height:420px;padding-bottom:16px}.hero{min-height:420px}.hero-copy-bottom{margin-bottom:0}.hero-bg{object-position:center 24%}.mega-menu{padding:20px}}

.reviews{padding:56px 0 66px}.reviews-marquee-wrap{overflow:hidden}.reviews-marquee{margin-top:22px;overflow:hidden}.reviews-track{display:flex;gap:18px;width:max-content;animation:reviewsScroll 52s linear infinite}.review-card{width:372px;min-height:182px;background:#fff;color:#082656;border-radius:8px;padding:18px 18px 20px;display:flex;flex-direction:column}.review-card h3{font-size:16px;margin-bottom:8px}.review-card p{font-size:13px;line-height:1.55;color:#45536e}.stars{font-size:13px;margin-bottom:10px}.fade-mask:before,.fade-mask:after{width:72px}.reviews:hover .reviews-track{animation-play-state:paused}@keyframes reviewsScroll{from{transform:translateX(0)}to{transform:translateX(calc(-50% - 9px))}}@media (max-width:640px){.review-card{width:300px;min-height:200px}.review-card h3{font-size:15px}.review-card p{font-size:12px}}

.brand.brand-vertical{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px}.brand.brand-vertical .brand-lockup.stack{align-items:center;text-align:center}
.reviews-track{align-items:flex-start}.review-card{width:400px;min-height:unset;height:auto;padding:20px 20px 22px}.review-card h3{font-size:18px;margin-bottom:10px}.review-card p{font-size:15px;line-height:1.58;color:#45536e;margin:0 0 12px}.review-card p:last-child{margin-bottom:0}.stars{font-size:14px;margin-bottom:12px}.reviews-track{animation:reviewsScroll 64s linear infinite}@media (max-width:640px){.review-card{width:320px}.review-card h3{font-size:16px}.review-card p{font-size:14px}}

.brand.brand-vertical .brand-lockup.stack .brand-title{font-size:18px}.brand.brand-vertical .brand-lockup.stack .brand-subtitle{font-size:11px;letter-spacing:.11em;max-width:190px;line-height:1.15}

.brand img{width:111px;height:auto}.brand-lockup.stack .brand-title{font-size:20px}.brand-lockup.stack .brand-subtitle{font-size:10px;max-width:170px} .brand.brand-vertical{gap:4px}

.brand img{width:111px;height:102px;object-fit:contain}.brand-lockup.stack .brand-title{font-size:20px}.brand-lockup.stack .brand-subtitle{font-size:10px;max-width:170px}.topbar{align-items:center}

/* hover underline for existing menu structure only */
.mega-col > a[href]:not(.service-link):not(.menu-cta){position:relative;width:fit-content;max-width:100%;}
.mega-col > a[href]:not(.service-link):not(.menu-cta)::after{content:'';position:absolute;left:0;bottom:4px;width:100%;height:2px;background:#4e9f9d;transform:scaleX(0);transform-origin:center;transition:transform .22s ease;pointer-events:none;}
.mega-col > a.active[href]:not(.service-link):not(.menu-cta)::after,.mega-col > a[href]:not(.service-link):not(.menu-cta):hover::after,.mega-col > a[href]:not(.service-link):not(.menu-cta):focus-visible::after{transform:scaleX(1);}
.mega-col:hover > a.active[href]:not(.service-link):not(.menu-cta):not(:hover)::after{transform:scaleX(0);}

/* underline for service titles in middle menu block */

.services-col .service-link strong{position:relative;display:table;width:max-content;max-width:100%;}
.services-col .service-link strong::after{content:"";position:absolute;left:0;bottom:-4px;width:100%;height:2px;background:#4e9f9d;transform:scaleX(0);transform-origin:center;transition:transform .22s ease;pointer-events:none;}
.services-col .service-link.active strong::after{transform:scaleX(1);}
.services-col:hover .service-link.active:not(:hover):not(:focus-visible) strong::after{transform:scaleX(0);}
.services-col .service-link:hover strong::after,.services-col .service-link:focus-visible strong::after{transform:scaleX(1);}

/* remove faint separators in the left menu block only */
.mega-col > a[href]:not(.service-link):not(.menu-cta){border-bottom:none !important;box-shadow:none !important;background-image:none !important;}
.mega-col > a[href]:not(.service-link):not(.menu-cta) + a[href]:not(.service-link):not(.menu-cta){border-top:none !important;}

/* animated open/close for actual mega menu */
.mega-menu{display:grid;grid-template-columns:.85fr 1.35fr 1fr;gap:34px;padding:0 34px;max-width:1120px;margin:0 auto;background:#fff;box-shadow:0 20px 40px rgba(9,31,73,.08);max-height:0;opacity:0;overflow:hidden;pointer-events:none;visibility:hidden;border-top:0;transition:max-height .3s ease,opacity .24s ease,padding .3s ease,visibility 0s linear .3s;}
.mega-menu.open,.mega-menu.is-hover-open{max-height:900px;opacity:1;pointer-events:auto;visibility:visible;padding:28px 34px 34px;transition-delay:0s;}
@media (max-width:900px){.mega-menu,.mega-menu.open,.mega-menu.is-hover-open{grid-template-columns:1fr;gap:24px;padding:24px;max-width:none;}}

/* header refinements: larger responsive logo/* header refinements: larger responsive logo + slightly larger doctor strip text */
.brand img{width:200px;max-width:min(200px,42vw);height:auto;object-fit:contain;}
.doctor-strip{font-size:13px;}
@media (max-width:640px){.brand img{max-width:min(200px,46vw);} .doctor-strip{font-size:12px;}}


/* hero + typography refinements */
.hero{min-height:672px;}
.hero-content{min-height:672px;padding-bottom:28px;}
.hero-copy.hero-copy-bottom{max-width:100%;display:grid;grid-template-columns:minmax(280px,1.2fr) auto auto;align-items:end;gap:26px 34px;}
.hero-copy-bottom h1{font-size:31px;max-width:none;margin-bottom:0;}
.hero-copy-bottom h1 span{font-size:28px;}
.hero-copy-bottom .hero-hours{font-size:15px;margin-bottom:0;}
.hero-copy-bottom .hero-cta-row{flex-wrap:nowrap;align-items:center;}
.hero-copy-bottom .btn{font-size:16px;}

.intro h2,.gradient-facts h2,.services h2,.service-band h2,.approach h2,.facts-list h2,.appointment-copy h2,.team-banner h2{font-size:37.5px;}
.card-body h3,.icon-facts h3{font-size:22px;}
.intro p,.services p,.gradient-facts p,.service-band p,.facts-list p,.card-body p,.icon-facts p,.appointment-copy p,.appointment-times,.mail-link,.rating-bottom,.tick-list li,.benefit-grid span,.fact-card span,.contact-person strong,.contact-person span,.appointment-form input,.appointment-form select,.mini-btn,.btn,.contact-col p,.menu-person strong,.menu-person em,.service-link strong,.service-link em{font-size:16px;}
.step{font-size:12px;}

@media (max-width:1100px){
  .hero-copy.hero-copy-bottom{grid-template-columns:1fr;align-items:flex-start;gap:18px;max-width:420px;}
  .hero-copy-bottom .hero-cta-row{flex-wrap:wrap;}
}
@media (max-width:640px){
  .hero{min-height:500px;}
  .hero-content{min-height:500px;}
  .hero-copy-bottom h1{font-size:27px;}
  .hero-copy-bottom h1 span{font-size:24px;}
  .hero-copy-bottom .hero-hours,.hero-copy-bottom .btn{font-size:14px;}
  .intro h2,.gradient-facts h2,.services h2,.service-band h2,.approach h2,.facts-list h2,.appointment-copy h2,.team-banner h2{font-size:32.5px;}
  .card-body h3,.icon-facts h3{font-size:20px;}
  .intro p,.services p,.gradient-facts p,.service-band p,.facts-list p,.card-body p,.icon-facts p,.appointment-copy p,.appointment-times,.mail-link,.rating-bottom,.tick-list li,.benefit-grid span,.fact-card span,.contact-person strong,.contact-person span,.appointment-form input,.appointment-form select,.mini-btn,.btn,.contact-col p,.menu-person strong,.menu-person em,.service-link strong,.service-link em{font-size:14px;}
}





/* corrected scoped fixes */
.hero{min-height:672px;}
.hero-content{min-height:672px;padding-bottom:28px;}
.hero-copy.hero-copy-bottom{max-width:100%;display:grid;grid-template-columns:minmax(360px,1.35fr) auto auto;grid-template-areas:"headline times actions";align-items:end;column-gap:30px;row-gap:14px;}
.hero-copy-bottom h1{grid-area:headline;font-size:38px;max-width:none;margin-bottom:0;}
.hero-copy-bottom h1 span{font-size:35px;}
.hero-copy-bottom .hero-hours{grid-area:times;font-size:17px;margin-bottom:0;white-space:nowrap;}
.hero-copy-bottom .hero-cta-row{grid-area:actions;display:flex;flex-wrap:nowrap;align-items:center;gap:14px;}
.hero-copy-bottom .btn{font-size:16px;}

.team-banner{height:384px;min-height:0;}
.team-banner img{height:100%;min-height:0;object-fit:cover;}



.doctor-strip-layout{display:flex;align-items:center;justify-content:center;gap:4px 6px;flex-wrap:wrap;}.pill{flex:0 0 auto;}.doctor-names{display:flex;flex:0 1 auto;flex-wrap:nowrap;justify-content:center;align-items:center;min-width:0;max-width:100%;}.doctor-name{white-space:nowrap;flex:0 0 auto;}.doctor-name:not(:last-child)::after{content:' | ';white-space:pre;}.doctor-break{display:none;}@media (max-width:900px){.doctor-names{flex-wrap:wrap;}.doctor-break{display:block;flex-basis:100%;height:0;}}


.footer,.footer p,.footer a,.footer-bar{font-size:14px;}
.footer h3{font-size:14px;margin-bottom:8px;}
.footer-social{display:flex;gap:10px;margin-top:12px;}
.footer-social a{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border:1px solid rgba(255,255,255,.28);border-radius:999px;margin:0;}
.footer-social svg{width:18px;height:18px;fill:currentColor;display:block;}
.footer-map-link{display:block;border-radius:10px;overflow:hidden;background:#f3f5f7;}
.footer-map-link img{display:block;width:100%;height:auto;}

@media (max-width:1240px){
  .hero-copy.hero-copy-bottom{grid-template-columns:minmax(300px,1fr) auto;grid-template-areas:"headline times" "headline actions";}
}
@media (max-width:1020px){
  .hero-copy.hero-copy-bottom{grid-template-columns:minmax(280px,1fr) auto;grid-template-areas:"headline headline" "times actions";align-items:flex-start;}
  .hero-copy-bottom .hero-hours{justify-self:start;}
  .hero-copy-bottom .hero-cta-row{justify-self:start;}
}
@media (max-width:860px){
  .hero-copy.hero-copy-bottom{grid-template-columns:1fr;grid-template-areas:"headline" "times" "actions";gap:18px;max-width:420px;}
  .hero-copy-bottom .hero-cta-row{flex-wrap:wrap;}
  
  
  
}
@media (max-width:640px){
  .hero{min-height:500px;}
  .hero-content{min-height:500px;}
  .hero-copy-bottom h1{font-size:31px;}
  .hero-copy-bottom h1 span{font-size:28px;}
  .hero-copy-bottom .hero-hours,.hero-copy-bottom .btn{font-size:14px;}
  .team-banner{height:288px;}
  
}

/* footer refinements only */
.footer,.footer p,.footer a,.footer-bar,.footer h3{font-size:16px;}
.footer-grid > div:first-child p{max-width:20ch;line-height:1.55;}
.footer-social{display:flex !important;gap:10px;margin-top:12px;}
.footer-social a{display:inline-flex !important;align-items:center;justify-content:center;width:38px;height:38px;border:1px solid rgba(255,255,255,.28);border-radius:999px;}
.footer-map-link,.map-box a{display:block;background:#eef2f5;border-radius:10px;overflow:hidden;}
.footer-map-link img,.map-box img{display:block;width:100%;height:auto;background:#eef2f5;}

/* footer intro + social correction */
.footer-intro{width:115%;max-width:34ch;}
.footer-intro p{max-width:100%;line-height:1.6;}
.footer-social{display:flex !important;gap:10px;margin-top:16px;}
.footer-social a{display:inline-flex !important;align-items:center;justify-content:center;width:36px;height:36px;border-radius:999px;background:#071f49;color:#fff;border:1px solid rgba(255,255,255,.16);text-decoration:none;}
.footer-social svg{width:16px;height:16px;fill:currentColor;display:block;}
@media (max-width:900px){.footer-intro{width:100%;max-width:40ch;}}

/* footer width, sizes, map scale, footer logo */
.footer-grid{grid-template-columns:1.26fr .7fr .7fr .98fr;gap:32px;}
.footer-intro{width:auto;max-width:39ch;}
.footer-intro p{max-width:39ch;}
.footer-grid > div:not(.footer-intro) p,.footer-grid > div:not(.footer-intro) a,.footer-grid > div:not(.footer-intro) h3,.footer-bar{font-size:18px;line-height:1.55;}
.footer-map-link,.map-box{transform:none;transform-origin:top left;max-width:100%;margin-bottom:0;}
.footer-social a{background:transparent;color:#fff;}
.footer-brand img{width:200px;height:auto;object-fit:contain;}
@media (max-width:900px){.footer-grid{grid-template-columns:1fr}.footer-map-link,.map-box{transform:none;max-width:100%;margin-bottom:0;}}


.icon-facts article{display:grid;grid-template-columns:44px 1fr;align-items:start;gap:0 18px}.fact-icon{width:35px;height:39px;object-fit:contain;display:block;margin-top:4px}@media (max-width:640px){.icon-facts article{grid-template-columns:38px 1fr;gap:0 14px}.fact-icon{width:30px;height:33px;margin-top:3px}}

.icon-facts article{display:grid;grid-template-columns:56px 1fr;align-items:start;column-gap:18px}.fact-icon{width:66px;height:66px;object-fit:contain;display:block;margin-top:3px}.icon-facts h3{margin-bottom:8px}@media (max-width:640px){.icon-facts article{grid-template-columns:68px 1fr;column-gap:14px}.fact-icon{width:54px;height:54px;margin-top:2px}}

.footer-contact-list{display:grid;gap:16px}.footer-contact-item{display:grid;grid-template-columns:34px 1fr;column-gap:12px;align-items:start}.footer-contact-icon{width:28px;height:28px;object-fit:contain;display:block;margin-top:2px}.footer-contact-item strong{display:block;font-size:18px;line-height:1.3;color:#fff;margin-bottom:2px}.footer-contact-item p{margin:0;color:#d5ddec}@media (max-width:640px){.footer-contact-item{grid-template-columns:30px 1fr}.footer-contact-icon{width:24px;height:24px}}

.map-box iframe,.footer-map-link iframe{display:block;width:100%;aspect-ratio:16 / 9;height:auto;border:0;background:#eef2f5}.map-box,.footer-map-link{border-radius:10px;overflow:hidden;background:#eef2f5}.map-box img,.footer-map-link img{display:none}

.footer-intro .footer-brand{margin-bottom:12px}.footer-nav{display:grid;gap:0;align-content:start;margin-top:-2px}.footer-nav .footer-sub-link + .footer-sub-link{margin-top:-8px}.footer-nav > a{position:relative;width:fit-content;max-width:100%;text-decoration:none;line-height:1.08;padding:0}.footer-nav > a::after{content:"";position:absolute;left:0;bottom:0;width:100%;height:2px;background:#4e9f9d;transform:scaleX(0);transform-origin:center;transition:transform .22s ease;pointer-events:none}.footer-nav > a:hover::after,.footer-nav > a:focus-visible::after,.footer-nav > a.active::after{transform:scaleX(1)}.footer-nav:hover > a.active:not(:hover):not(:focus-visible)::after{transform:scaleX(0)}.footer-nav > a.active:hover::after,.footer-nav > a.active:focus-visible::after{transform:scaleX(1)}.footer-sub-link{padding-left:18px !important;font-size:16px !important;line-height:1.02}.footer-contact-item p,.footer-contact-item p a{font-size:14px !important;line-height:1.5}.footer-contact-item strong{font-size:18px !important}.footer-bar{font-size:14px !important;line-height:1.35;text-align:center;padding:8px 12px 10px}.footer-bar > div{font-size:inherit}.footer-bar-meta{font-size:10px !important;line-height:1.2}.footer-bar a{position:relative;display:inline-block;text-decoration:none}.footer-bar a::after{content:"";position:absolute;left:0;bottom:0;width:100%;height:2px;background:#fff;transform:scaleX(0);transform-origin:center;transition:transform .22s ease;pointer-events:none}.footer-bar a:hover::after,.footer-bar a:focus-visible::after{transform:scaleX(1)}.footer-bar > div + div{margin-top:1px}@media (max-width:640px){.footer-sub-link{font-size:14px !important;padding-left:16px !important}.footer-contact-item p,.footer-contact-item p a{font-size:12px !important}.footer-bar{font-size:12px !important;line-height:1.3}.footer-bar-meta{font-size:8px !important}}

.footer-grid > div > h3{margin-bottom:8px}.footer-nav{margin-top:-6px}.footer-contact-list{margin-top:0}.footer-bar .footer-bar-meta,.footer-bar .footer-bar-meta a{font-size:10px !important;line-height:1.2 !important}.footer-bar > :first-child{font-size:14px !important}@media (max-width:640px){.footer-bar .footer-bar-meta,.footer-bar .footer-bar-meta a{font-size:8px !important}.footer-bar > :first-child{font-size:12px !important}}

.benefit-grid span{display:flex;align-items:center;gap:12px}.benefit-icon{width:34px;height:34px;object-fit:contain;display:block;flex:0 0 34px}@media (max-width:640px){.benefit-grid span{gap:10px}.benefit-icon{width:28px;height:28px;flex-basis:28px}}

.footer-appointment-btn{display:flex;width:100%;margin-top:14px;justify-content:center;align-items:center;text-align:center;}

.footer-appointment-btn{display:flex !important;width:100% !important;min-height:52px;align-items:center;justify-content:center;margin:18px 0 16px;padding:14px 18px;background:#4e9f9d;color:#fff !important;border-radius:6px;font-size:16px;font-weight:800;text-decoration:none;box-shadow:0 8px 18px rgba(7,31,73,.12);}
.footer-appointment-btn:hover,.footer-appointment-btn:focus-visible{background:#3f8c8a;color:#fff !important;}

.footer-map-link{margin-bottom:8px !important;}
.footer-map-link iframe{display:block;}
.footer > .container.footer-grid > div:last-child{display:flex;flex-direction:column;}

.footer-map-link{margin-bottom:0 !important;}
.footer-appointment-btn{margin-top:18px !important;}

.appointment-times{display:grid;gap:1px;}
.appointment-time-row{display:grid;grid-template-columns:34px 1fr;column-gap:10px;align-items:baseline;}
.appointment-time-row .day{font-weight:700;}
.appointment-time-row .time{font-variant-numeric:tabular-nums;}

.menu-person img{transform:scale(1.2);transform-origin:center center;}
.contact-person img{transform:scale(1.2);transform-origin:center center;object-position:center center;}

.page-placeholder{padding:96px 0 120px;}
.page-placeholder-inner{background:#fff;border:1px solid #dde3e8;border-radius:8px;padding:48px 32px;box-shadow:var(--shadow);}
.page-placeholder-kicker{display:inline-block;margin-bottom:14px;font-size:12px;font-weight:800;letter-spacing:.12em;color:#4e9f9d;}
.page-placeholder h1{margin-bottom:14px;}
.page-placeholder p{max-width:62ch;}


.about-hero{padding-top:56px;padding-bottom:34px}.about-hero-inner{max-width:980px;text-align:center}.about-hero h1{max-width:760px;margin:0 auto 18px;font-size:clamp(2.2rem,3.8vw,3.6rem);line-height:1.08}.about-hero p{max-width:680px;margin:0 auto;color:#8a93a3}.about-collage{margin-top:34px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.about-collage img{width:100%;aspect-ratio:1.05/1;object-fit:cover;border-radius:6px}
.team-section{padding-top:24px;padding-bottom:52px}.section-heading{margin-bottom:26px}.section-heading.center{text-align:center}.section-heading h2{font-size:clamp(1.7rem,2.2vw,2.3rem)}
.team-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:26px 22px}.team-card img{width:100%;aspect-ratio:0.88/1;object-fit:cover;border-radius:4px;background:#eef2f5}.team-card h3{font-size:14px;line-height:1.25;margin:10px 0 4px;color:#0b234f}.team-card p{font-size:12px;line-height:1.35;color:#4e9f9d;max-width:none}.staff-section{padding-top:48px}.memberships-section{background:#4e9f9d;padding:42px 0 52px}.memberships-section h2{color:#fff}.memberships-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:18px}.memberships-grid img{width:100%;aspect-ratio:0.74/1;object-fit:contain;background:#fff;padding:10px;border-radius:2px}
.about-benefits-section{background:#eef4f4;padding-top:56px;padding-bottom:56px}.about-benefits-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,420px);gap:34px;align-items:center}.about-benefits-copy h2{font-size:clamp(2rem,2.8vw,3rem);line-height:1.02;max-width:360px;margin-bottom:18px}.about-benefits-copy p{max-width:480px;color:#47566d}.about-benefits-copy ul{margin:20px 0 0;padding:0;list-style:none;display:grid;gap:14px}.about-benefits-copy li{position:relative;padding-left:22px;color:#0b234f}.about-benefits-copy li::before{content:"•";position:absolute;left:0;top:0;color:#4e9f9d;font-size:20px;line-height:1}.about-benefits-image img{width:100%;border-radius:4px;object-fit:cover}
.about-cta-band{position:relative;min-height:360px}.about-cta-band img{width:100%;height:360px;object-fit:cover}.about-cta-band-overlay{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:24px;background:linear-gradient(to top,rgba(7,31,73,.32),rgba(7,31,73,.12))}.about-cta-band-overlay h2{max-width:520px;color:#fff;font-size:clamp(2rem,3vw,3.1rem);line-height:1.06;text-shadow:0 3px 14px rgba(0,0,0,.24)}.about-cta-band-overlay a{margin-top:18px;display:inline-flex;align-items:center;justify-content:center;padding:14px 26px;border-radius:6px;background:#4e9f9d;color:#fff;font-weight:800;text-decoration:none}
@media (max-width:900px){.about-collage{grid-template-columns:1fr}.about-benefits-grid{grid-template-columns:1fr}.about-benefits-copy h2{max-width:none}.about-cta-band img,.about-cta-band{min-height:280px}.about-cta-band img{height:280px}}


.about-marquee{margin-top:34px;overflow:hidden;position:relative}.about-marquee-track{display:flex;gap:0px;width:max-content;animation:aboutMarquee 24s linear infinite}.marquee-card{flex:0 0 auto;opacity:.95}.marquee-card img{height:260px;width:auto;max-width:none;object-fit:contain;border-radius:14px;background:transparent}.team-card-media{overflow:hidden;border-radius:16px;background:#eef2f5}.doctor-card .team-card-media img,.staff-card .team-card-media img{width:100%;display:block;transition:transform .35s ease;transform:scale(1.001)}.doctor-card .team-card-media img{aspect-ratio:1/1.03;object-fit:cover;object-position:center 16%}.staff-card .team-card-media img{aspect-ratio:1/1;object-fit:cover;object-position:center 14%}.doctor-card[data-crop="high"] .team-card-media img,.staff-card[data-crop="high"] .team-card-media img{transform:scale(1.12);object-position:center 10%}.doctor-card[data-crop="close"] .team-card-media img,.staff-card[data-crop="close"] .team-card-media img{transform:scale(1.18);object-position:center 8%}.doctor-card[data-crop="low"] .team-card-media img,.staff-card[data-crop="low"] .team-card-media img{object-position:center 22%}.about-benefits-copy li::before{content:'';position:absolute;left:0;top:1px;width:15px;height:15px;background:url('assets/bullet.gif') no-repeat center/contain}.about-benefits-copy li{position:relative;padding-left:28px;color:#0b234f}@keyframes aboutMarquee{from{transform:translateX(0)}to{transform:translateX(calc(-50% - 1.5px))}}@media (prefers-reduced-motion:reduce){.about-marquee-track{animation:none}}


/* final about-us portrait sizing override */
.team-card .team-card-media{width:100%;aspect-ratio:1/1;overflow:hidden;border-radius:16px}
.doctor-card .team-card-media{aspect-ratio:1/1.03}
.staff-card .team-card-media{aspect-ratio:1/1}
.team-card .team-card-media img,.doctor-card .team-card-media img,.staff-card .team-card-media img{width:100%;height:100%;aspect-ratio:auto !important;object-fit:cover;border-radius:0;background:#eef2f5}
.team-card img{aspect-ratio:auto !important;height:auto}


/* stricter about-us portrait sizing */
.team-grid .team-card{display:flex;flex-direction:column}
.team-grid .team-card-media{position:relative;width:100%;height:0 !important;padding-bottom:100% !important;overflow:hidden;border-radius:16px}
.team-grid .doctor-card .team-card-media{padding-bottom:106% !important}
.team-grid .staff-card .team-card-media{padding-bottom:100% !important}
.team-grid .team-card-media img{position:absolute;inset:0;width:100% !important;height:100% !important;max-width:none;aspect-ratio:auto !important;object-fit:cover}
.team-grid .team-card-media{transform-origin:center center;transition:transform .35s ease}
.team-grid .team-card:hover .team-card-media{transform:scale(1.05)}
.about-cta-band img{height:432px;object-position:center 30%}
.about-cta-band{min-height:432px}
.about-cta-band-overlay{justify-content:flex-end;padding:24px 24px 40px}
.about-cta-band-overlay h2{font-size:clamp(1.7rem,2.4vw,2.65rem);margin-bottom:10px}
.about-cta-band-overlay a{margin-top:8px}
@media (max-width:900px){.about-cta-band img,.about-cta-band{min-height:336px}.about-cta-band img{height:336px}.about-cta-band-overlay{padding-bottom:28px}}


/* final CTA banner tuning */
.about-cta-band img{object-position:center 20%}
.about-cta-band-overlay{justify-content:flex-end;padding:24px 24px 42px}
.about-cta-band-overlay h2{font-size:clamp(1.7rem,2.3vw,2.45rem);margin-bottom:6px}
.about-cta-band-overlay a{margin-top:12px}


/* doctors grid sizing + wrap */
@media (min-width: 1200px){
  .doctors-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:30px 28px}
}
.doctors-grid .team-card-media{aspect-ratio:1/1.02}
.doctors-grid .team-card h3{font-size:15px}
.doctors-grid .team-card p{font-size:12px}
/* match bullet.gif sizing with index */
.about-benefits-copy li{padding-left:46px;line-height:35px}
.about-benefits-copy li::before{width:35px;height:35px;top:50%;transform:translateY(-50%)}
/* CTA image focus lower */
.about-cta-band img{object-position:center 58%}
.about-cta-band-overlay{justify-content:flex-end;padding:24px 24px 34px}

/* memberships rebuilt */
.memberships-container{max-width:1220px}.memberships-flex{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:18px;align-items:start;justify-content:center}.membership-card{display:flex;flex-direction:column;align-items:center;text-align:center;background:#fff;border-radius:8px;padding:24px 18px;min-height:100%}.membership-logo{width:100%;display:flex;align-items:center;justify-content:center;min-height:190px}.membership-logo img{width:auto;max-width:100%;max-height:180px;height:auto;object-fit:contain}.membership-card p{margin-top:14px;font-size:11px;line-height:1.35;color:#0b234f;text-transform:uppercase;max-width:20ch}.about-benefits-copy li::before{background:none;-webkit-mask:url('assets/bullet.gif') no-repeat center/contain;mask:url('assets/bullet.gif') no-repeat center/contain;background-color:currentColor}.about-benefits-copy li{color:#0b234f}.about-benefits-copy li::before{color:#4e9f9d}
@media (max-width:1100px){.memberships-flex{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media (max-width:900px){.memberships-flex{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:640px){.memberships-flex{grid-template-columns:repeat(2,minmax(0,1fr))}.membership-card{padding:18px 14px}}

/* tighter marquee + visible gif bullets + exact why image fix */
.about-marquee-track{gap:1px}
@keyframes aboutMarquee{from{transform:translateX(0)}to{transform:translateX(calc(-50% - 0.5px))}}
.about-benefits-copy li::before{background:url('assets/bullet.gif') no-repeat center/contain !important;-webkit-mask:none !important;mask:none !important;mix-blend-mode:multiply;opacity:1}
.about-benefits-image img{object-position:center center}


/* requested v12 tweaks */
.about-marquee-track{gap:0 !important}
.marquee-card{margin:0 !important}
.marquee-card img{display:block}

/* corrected marquee spacing + memberships */
.about-marquee-track{gap:2px !important}
@keyframes aboutMarquee{from{transform:translateX(0)}to{transform:translateX(calc(-50% - 1px))}}

/* stronger portrait crop overrides */

/* final portrait crop rules */
.doctor-card[data-crop="fanninger-final"] .team-card-media img{object-position:center 3%;transform:scale(.90)!important}
.staff-card[data-crop="abel-final"] .team-card-media img{object-position:center 3%;transform:scale(.90)!important}
.staff-card[data-crop="fehring-final"] .team-card-media img{object-position:center 3%;transform:scale(.90)!important}
.staff-card[data-crop="mueller-final"] .team-card-media img{object-position:center 8%;transform:scale(.96)!important}
.staff-card[data-crop="ruehlandt-final"] .team-card-media img{object-position:center 8%;transform:scale(.96)!important}
.staff-card[data-crop="kolkowski-final"] .team-card-media img{object-position:center 24%;transform:scale(1.16)!important}
.staff-card[data-crop="karakus-final"] .team-card-media img{object-position:center 24%;transform:scale(1.16)!important}
.staff-card[data-crop="koestermann-final"] .team-card-media img{object-position:center 24%;transform:scale(1.16)!important}
.staff-card[data-crop="gruener-final"] .team-card-media img{object-position:center 24%;transform:scale(1.16)!important}
.staff-card[data-crop="nagel-final"] .team-card-media img{object-position:center 24%;transform:scale(1.16)!important}

/* v17 portrait corrections */
.team-card-media{background:transparent}
.doctor-card[data-crop="fanninger-final2"] .team-card-media img{object-position:center 5%;transform:scale(1.00)!important}
.doctor-card[data-crop="aubke-final"] .team-card-media img{object-position:center 18%;transform:scale(1.10)!important}
.doctor-card[data-crop="witthoeft-final"] .team-card-media img{object-position:center 10%;transform:scale(.94)!important}
.staff-card[data-crop="gruener-final2"] .team-card-media img{object-position:center 30%;transform:scale(1.14)!important}
.staff-card[data-crop="fehring-final2"] .team-card-media img{object-position:center 5%;transform:scale(1.00)!important}
.staff-card[data-crop="koestermann-final2"] .team-card-media img{object-position:center 30%;transform:scale(1.20)!important}
.staff-card[data-crop="petersen-final"] .team-card-media img{object-position:center 10%;transform:scale(.94)!important}
.staff-card[data-crop="siep-final"] .team-card-media img{object-position:center 4%;transform:scale(1.02)!important}
.staff-card[data-crop="abel-final2"] .team-card-media img{object-position:center 5%;transform:scale(1.00)!important}
.staff-card[data-crop="sierk-final"] .team-card-media img{object-position:center 16%;transform:scale(1.12)!important}

/* v18 typography and portrait corrections */
.about-hero h1{font-size:clamp(1.85rem,2.9vw,2.95rem)!important}
.section-heading h2{font-size:clamp(1.55rem,2vw,2rem)!important}
.about-benefits-copy h2{font-size:clamp(1.7rem,2.2vw,2.45rem)!important}
.team-card h3{font-size:16px!important}
.team-card p{font-size:14px!important}
.doctor-card[data-crop="witthoeft-final"] .team-card-media img{object-position:center 12%;transform:scale(.90)!important}
.doctor-card[data-crop="matthias-big"] .team-card-media img{object-position:center 18%;transform:scale(1.08)!important}
.doctor-card[data-crop="quell-big"] .team-card-media img{object-position:center 18%;transform:scale(1.08)!important}
.doctor-card[data-crop="aubke-big2"] .team-card-media img{object-position:center 18%;transform:scale(1.14)!important}
.doctor-card[data-crop="sievers-big"] .team-card-media img{object-position:center 18%;transform:scale(1.08)!important}
.staff-card[data-crop="gruener-final2"] .team-card-media img{object-position:center 22%;transform:scale(1.10)!important}
.staff-card[data-crop="koestermann-final2"] .team-card-media img{object-position:center 22%;transform:scale(1.14)!important}
.staff-card[data-crop="siep-final"] .team-card-media img{object-position:center 12%;transform:scale(1.02)!important}
.staff-card[data-crop="kolkowski-final"] .team-card-media img{object-position:center 18%;transform:scale(1.20)!important}

/* v19 crop and role formatting */
.team-card p br{content:"";display:block}
.doctor-card[data-crop="matthias-bigger"] .team-card-media img{object-position:center 24%;transform:scale(1.16)!important}
.doctor-card[data-crop="quell-bigger"] .team-card-media img{object-position:center 24%;transform:scale(1.16)!important}
.doctor-card[data-crop="aubke-bigger"] .team-card-media img{object-position:center 24%;transform:scale(1.22)!important}
.doctor-card[data-crop="sievers-lower"] .team-card-media img{object-position:center 24%;transform:scale(1.08)!important}
.doctor-card[data-crop="witthoeft-up"] .team-card-media img{object-position:center 6%;transform:scale(.90)!important}
.staff-card[data-crop="gruener-lower"] .team-card-media img{object-position:center 34%;transform:scale(1.10)!important}
.staff-card[data-crop="thaden-up"] .team-card-media img{object-position:center 4%;transform:scale(1.00)!important}
.staff-card[data-crop="koestermann-lower"] .team-card-media img{object-position:center 32%;transform:scale(1.14)!important}
.staff-card[data-crop="gruendel-smaller"] .team-card-media img{object-position:center 12%;transform:scale(.92)!important}
.staff-card[data-crop="bartel-bigger"] .team-card-media img{object-position:center 18%;transform:scale(1.10)!important}
.staff-card[data-crop="siep-up2"] .team-card-media img{object-position:center 0%;transform:scale(1.02)!important}
.staff-card[data-crop="sandra-up"] .team-card-media img{object-position:center 4%;transform:scale(1.00)!important}
.staff-card[data-crop="kolkowski-bigger-lower"] .team-card-media img{object-position:center 24%;transform:scale(1.24)!important}

/* v20 requested doctor crop refinements */
.doctor-card[data-crop="matthias-bigger2"] .team-card-media img{object-position:center 24%;transform:scale(1.22)!important}
.doctor-card[data-crop="aubke-bigger2"] .team-card-media img{object-position:center 24%;transform:scale(1.28)!important}
.doctor-card[data-crop="quell-lower2"] .team-card-media img{object-position:center 30%;transform:scale(1.16)!important}
.doctor-card[data-crop="sievers-lower2"] .team-card-media img{object-position:center 30%;transform:scale(1.08)!important}

/* v21 corrected crop directions and manual roles */
.doctor-card[data-crop="groefke-upfocus"] .team-card-media img{object-position:center 16%;transform:scale(1.22)!important}
.doctor-card[data-crop="quell-upfocus"] .team-card-media img{object-position:center 16%;transform:scale(1.16)!important}
.doctor-card[data-crop="sievers-upfocus"] .team-card-media img{object-position:center 16%;transform:scale(1.08)!important}
.doctor-card[data-crop="witthoeft-bigger-down"] .team-card-media img{object-position:center 14%;transform:scale(.96)!important}
.doctor-card[data-crop="aubke-bigger3"] .team-card-media img{object-position:center 24%;transform:scale(1.32)!important}
.staff-card[data-crop="gruener-reverse"] .team-card-media img{object-position:center 12%;transform:scale(1.10)!important}
.staff-card[data-crop="koestermann-reverse"] .team-card-media img{object-position:center 16%;transform:scale(1.14)!important}
.staff-card[data-crop="bartel-reverse"] .team-card-media img{object-position:center 12%;transform:scale(1.10)!important}
.staff-card[data-crop="siep-reverse"] .team-card-media img{object-position:center 8%;transform:scale(1.02)!important}
.staff-card[data-crop="sandra-reverse"] .team-card-media img{object-position:center 10%;transform:scale(1.00)!important}
.staff-card[data-crop="kolkowski-reverse"] .team-card-media img{object-position:center 18%;transform:scale(1.20)!important}
.staff-card[data-crop="gruendel-safe-small"] .team-card-media img{object-position:center 10%;transform:scale(.88)!important}

/* v22 exact pixel-guided doctor corrections */
.doctor-card[data-crop="groefke-px40down"] .team-card-media img{object-position:center calc(16% + 40px);transform:scale(1.22)!important}
.doctor-card[data-crop="quell-px20down"] .team-card-media img{object-position:center calc(16% + 20px);transform:scale(1.16)!important}
.doctor-card[data-crop="witthoeft-noborder"] .team-card-media img{object-position:center 12%;transform:scale(1.02)!important}

/* v23 no-frame-safe refinements */
.doctor-card[data-crop="groefke-safeup"] .team-card-media img{object-position:center calc(16% + 22px);transform:scale(1.22)!important}
.doctor-card[data-crop="aubke-down5"] .team-card-media img{object-position:center calc(24% + 5px);transform:scale(1.32)!important}
.doctor-card[data-crop="witthoeft-up5"] .team-card-media img{object-position:center calc(12% - 5px);transform:scale(1.02)!important}

/* v24 fine staff crop refinements */
.staff-card[data-crop="bruenjes-smaller-safe"] .team-card-media img{object-position:center 12%;transform:scale(.94)!important}
.staff-card[data-crop="gruener-down3"] .team-card-media img{object-position:center calc(12% + 3px);transform:scale(1.10)!important}
.staff-card[data-crop="thaden-up8"] .team-card-media img{object-position:center calc(4% - 8px);transform:scale(1.00)!important}

/* v25 staff fixes */
.staff-card[data-crop="bruenjes-min-noframe"] .team-card-media img{object-position:center 12%;transform:scale(.98)!important}
.staff-card[data-crop="thaden-up13"] .team-card-media img{object-position:center calc(4% - 13px);transform:scale(1.00)!important}
.staff-card[data-crop="koestermann-zoom"] .team-card-media img{object-position:center 16%;transform:scale(1.18)!important}

/* v26 no-frame corrections */
.staff-card[data-crop="koestermann-down3"] .team-card-media img{object-position:center calc(16% + 3px);transform:scale(1.18)!important}
.staff-card[data-crop="gruendel-noframe"] .team-card-media img{object-position:center 10%;transform:scale(.96)!important}
.staff-card[data-crop="petersen-noframe"] .team-card-media img{object-position:center 12%;transform:scale(1.02)!important}

/* v27 html/css only patch */
.staff-card[data-crop="koestermann-zoom2"] .team-card-media img{object-position:center calc(16% + 3px);transform:scale(1.22)!important}
.staff-card[data-crop="bartel-down3"] .team-card-media img{object-position:center calc(12% + 3px);transform:scale(1.10)!important}
.staff-card[data-crop="siep-up10"] .team-card-media img{object-position:center calc(8% - 10px);transform:scale(1.02)!important}
.staff-card[data-crop="abel-minsafe"] .team-card-media img{object-position:center 12%;transform:scale(1.00)!important}

/* v28 small frame moves */
.staff-card[data-crop="thaden-up16"] .team-card-media img{object-position:center calc(4% - 16px);transform:scale(1.00)!important}
.staff-card[data-crop="bartel-down6"] .team-card-media img{object-position:center calc(12% + 6px);transform:scale(1.10)!important}
.staff-card[data-crop="siep-up13"] .team-card-media img{object-position:center calc(8% - 13px);transform:scale(1.02)!important}
.staff-card[data-crop="sandra-up5"] .team-card-media img{object-position:center calc(10% - 5px);transform:scale(1.00)!important}

/* v29 size-only portrait refinements */
.staff-card[data-crop="bartel-bigger2"] .team-card-media img{object-position:center calc(12% + 6px);transform:scale(1.14)!important}
.staff-card[data-crop="karakus-bigger"] .team-card-media img{object-position:center 12%;transform:scale(1.06)!important}
.staff-card[data-crop="kolkowski-bigger2"] .team-card-media img{object-position:center 18%;transform:scale(1.24)!important}
.staff-card[data-crop="grigorjew-smaller"] .team-card-media img{object-position:center 12%;transform:scale(.96)!important}

/* v30 corrected size/position refinements */
.staff-card[data-crop="karakus-head-bigger"] .team-card-media img{object-position:center 14%;transform:scale(1.14)!important}
.staff-card[data-crop="bartel-down9"] .team-card-media img{object-position:center calc(12% + 9px);transform:scale(1.14)!important}
.staff-card[data-crop="schlesselmann-bigger"] .team-card-media img{object-position:center 12%;transform:scale(1.08)!important}
.staff-card[data-crop="kolkowski-down4"] .team-card-media img{object-position:center calc(18% + 4px);transform:scale(1.24)!important}

/* v31 size move and grid swap */
.staff-card[data-crop="karakus-bigger2"] .team-card-media img{object-position:center 14%;transform:scale(1.18)!important}
.staff-card[data-crop="kolkowski-down8"] .team-card-media img{object-position:center calc(18% + 8px);transform:scale(1.24)!important}

.team-card:hover .team-card-media img{transform:scale(1.06)}

/* v39 marquee width alignment */
.about-hero-inner{max-width:var(--content)!important}
.about-hero h1,.about-hero p{max-width:760px}
.about-marquee{width:100%;margin:34px auto 0}
.about-marquee-track{justify-content:flex-start}



/* impressum page v2 */
.legal-page{padding-top:56px;padding-bottom:72px}
.legal-layout{display:grid;grid-template-columns:220px minmax(0,700px);gap:54px;align-items:start;justify-content:start}
.legal-sidebar{align-self:start;padding-top:6px}
.legal-sidebar h1{margin:0;font-size:clamp(1.9rem,2.8vw,2.65rem);line-height:1.02;color:#071f49}
.legal-content{min-width:0;max-width:700px}
.legal-block + .legal-block{margin-top:34px}
.legal-content h2{margin:0 0 18px;font-size:16px;line-height:1.2;color:#071f49}
.legal-content h3{margin:26px 0 10px;font-size:14px;line-height:1.25;color:#071f49}
.legal-content h4{margin:18px 0 8px;font-size:13px;line-height:1.25;color:#071f49}
.legal-content p,.legal-content li{font-size:12px;line-height:1.55;color:#2c3d58}
.legal-content p{margin:0 0 12px;max-width:none}
.legal-content ul{margin:0 0 14px 18px;padding:0}
.legal-content li{margin:0 0 6px}
.legal-content a{color:#2c5f92;text-decoration:underline}
@media (max-width:900px){
  .legal-layout{grid-template-columns:1fr;gap:28px}
  .legal-content{max-width:none}
}

/* impressum page v3 full-width legal text */
.legal-layout-top{display:grid;grid-template-columns:220px minmax(0,700px);gap:54px;align-items:start;justify-content:start}
.legal-content-top{max-width:700px}
.legal-fullwidth{margin-top:34px}
.legal-fullwidth .legal-block{max-width:none}
.legal-fullwidth .legal-content,.legal-fullwidth p,.legal-fullwidth li{max-width:none}
.legal-major{margin:0 0 24px;font-size:clamp(1.9rem,2.8vw,2.65rem)!important;line-height:1.02;color:#071f49}
@media (max-width:900px){.legal-layout-top{grid-template-columns:1fr;gap:28px}.legal-fullwidth{margin-top:26px}}

/* impressum page v4 heading sizing */
.legal-content-top .legal-block h2{font-size:12px!important;line-height:1.55!important;font-weight:700;margin:0 0 12px}

/* impressum page v5 top-right heading final fix */
.legal-content-top .legal-block > h2:first-child{font-size:12px!important;line-height:1.55!important;font-weight:400!important;color:#2c3d58!important;margin:0 0 12px!important}

/* impressum page v6 heading corrections */
.legal-top-label{font-size:12px!important;line-height:1.55!important;font-weight:700!important;color:#071f49!important;margin:0 0 12px!important}
.legal-major{font-size:clamp(2.15rem,3vw,2.95rem)!important;line-height:1.02!important;font-weight:800!important}

/* impressum page v7 cascade fix */
.legal-content-top .legal-top-label,
.legal-content.legal-content-top .legal-top-label,
article.legal-content.legal-content-top .legal-top-label{
  display:block !important;
  font-size:14px !important;
  line-height:1.55 !important;
  font-weight:800 !important;
  color:#071f49 !important;
  margin:0 0 12px !important;
}
.legal-content-top ul li,
.legal-content-top p,
.legal-content-top h3,
.legal-content-top h4{
  font-size:12px !important;
  line-height:1.55 !important;
}

/* impressum page v8 single-column reset */
.legal-single{max-width:820px}
.legal-content-single{max-width:820px}
.legal-content-single h1{margin:0 0 28px;font-size:clamp(1.95rem,2.8vw,2.7rem);line-height:1.02;color:#071f49}
.legal-content-single h2{margin:0 0 14px;font-size:14px!important;line-height:1.45!important;font-weight:800!important;color:#071f49!important}
.legal-content-single h3{margin:22px 0 10px;font-size:13px!important;line-height:1.4!important;font-weight:800!important;color:#071f49!important}
.legal-content-single h4{margin:16px 0 8px;font-size:12px!important;line-height:1.5!important;font-weight:800!important;color:#071f49!important}
.legal-content-single p,.legal-content-single li{font-size:12px!important;line-height:1.6!important;color:#2c3d58!important}
.legal-content-single p{margin:0 0 12px;max-width:none}.legal-content-single ul{margin:0 0 14px 18px;padding:0}.legal-content-single li{margin:0 0 6px}
.legal-content-single .legal-top-label{font-size:14px!important;font-weight:800!important;color:#071f49!important}

/* impressum page v9 intermediate headings larger than body */
.legal-content-single h2{font-size:15px!important;line-height:1.45!important}
.legal-content-single h3{font-size:14px!important;line-height:1.45!important}
.legal-content-single h4{font-size:13px!important;line-height:1.5!important}

/* impressum page v11 major section title */
.legal-content-single .legal-section-title{font-size:clamp(1.95rem,2.8vw,2.7rem)!important;line-height:1.02!important;font-weight:800!important;color:#071f49!important;margin:34px 0 22px!important}

/* Leistungen rebuild */
.service-hero{position:relative;min-height:520px;overflow:hidden;background:#111}
.service-hero-media{position:absolute;inset:0}
.service-hero-media img{width:100%;height:100%;object-fit:cover;object-position:center center;filter:brightness(.55)}
.service-hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.58),rgba(0,0,0,.15) 60%,rgba(0,0,0,.4))}
.service-hero-inner{position:relative;z-index:1;min-height:520px;display:flex;flex-direction:column;justify-content:center;color:#fff;max-width:1120px}
.service-hero-inner h1{font-size:clamp(2.6rem,5vw,4.4rem);line-height:1.04;margin:0 0 14px;max-width:540px}
.service-hero-inner p{font-size:16px;line-height:1.6;max-width:560px;margin:0 0 24px;color:rgba(255,255,255,.9)}
.service-section{padding-top:64px;padding-bottom:24px;display:grid;gap:72px}
.service-split{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}
.service-split.reverse{direction:rtl}.service-split.reverse > *{direction:ltr}
.service-image img{width:100%;height:auto;display:block;border-radius:0;object-fit:cover;box-shadow:var(--shadow-md)}
.service-copy h2{font-size:clamp(2rem,3vw,3rem);line-height:1.05;margin:0 0 6px;color:#071f49}
.service-copy h3{font-size:18px;line-height:1.2;margin:0 0 16px;color:#4e9f9d;font-weight:800}
.service-copy p{font-size:14px;line-height:1.65;color:#31425c;max-width:520px}
.service-copy a{display:inline-block;margin-top:18px;font-size:12px;font-weight:800;color:#071f49;text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:2px}
@media (max-width:900px){.service-hero-inner{min-height:460px}.service-hero{min-height:460px}.service-section{gap:48px}.service-split,.service-split.reverse{grid-template-columns:1fr;direction:ltr}}

.service-hero{position:relative;min-height:520px;overflow:hidden;background:#111}.service-hero-media{position:absolute;inset:0}.service-hero-media img{width:100%;height:100%;object-fit:cover;object-position:center center;filter:brightness(.55)}.service-hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.58),rgba(0,0,0,.15) 60%,rgba(0,0,0,.4))}.service-hero-inner{position:relative;z-index:1;min-height:520px;display:flex;flex-direction:column;justify-content:center;color:#fff;max-width:1120px}.service-hero-inner h1{font-size:clamp(2.6rem,5vw,4.4rem);line-height:1.04;margin:0 0 14px;max-width:540px}.service-hero-inner p{font-size:16px;line-height:1.6;max-width:560px;margin:0 0 24px;color:rgba(255,255,255,.9)}.service-section{padding-top:64px;padding-bottom:24px;display:grid;gap:72px}.service-split{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}.service-split.reverse{direction:rtl}.service-split.reverse > *{direction:ltr}.service-image img{width:100%;height:auto;display:block;box-shadow:var(--shadow-md)}.service-copy h2{font-size:clamp(2rem,3vw,3rem);line-height:1.05;margin:0 0 6px;color:#071f49}.service-copy h3{font-size:18px;line-height:1.2;margin:0 0 16px;color:#4e9f9d;font-weight:800}.service-copy p{font-size:14px;line-height:1.65;color:#31425c;max-width:520px}.service-copy a{display:inline-block;margin-top:18px;font-size:12px;font-weight:800;color:#071f49;text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:2px}@media (max-width:900px){.service-hero-inner{min-height:460px}.service-hero{min-height:460px}.service-section{gap:48px}.service-split,.service-split.reverse{grid-template-columns:1fr;direction:ltr}}

.service-thumb{max-width:100%;width:100%;height:auto;aspect-ratio:1.18/0.88;object-fit:cover;border-radius:0;box-shadow:var(--shadow-md)}
.service-section{gap:54px}
.service-split{gap:38px}
.service-copy{padding-inline:8px}
.service-copy p{max-width:460px}
.service-hero-inner{max-width:1080px}
.service-hero-media img{object-position:center 35%}
@media (min-width:901px){
  .service-split{align-items:center}
  .service-split .service-image{max-width:520px}
  .service-split .service-copy{max-width:520px}
}

.service-hero{position:relative;min-height:460px;overflow:hidden;background:#111}.service-hero-media{position:absolute;inset:0}.service-hero-media img{width:100%;height:100%;object-fit:cover;object-position:center center;filter:brightness(.55)}.service-hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.58),rgba(0,0,0,.15) 60%,rgba(0,0,0,.4))}.service-hero-inner{position:relative;z-index:1;min-height:460px;display:flex;flex-direction:column;justify-content:center;color:#fff;max-width:1120px}.service-hero-inner h1{font-size:clamp(2.6rem,5vw,4.4rem);line-height:1.04;margin:0 0 14px;max-width:540px}.service-hero-inner p{font-size:16px;line-height:1.6;max-width:560px;margin:0 0 24px;color:rgba(255,255,255,.9)}.service-section{padding-top:64px;padding-bottom:24px;display:grid;gap:72px}.service-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:48px;align-items:center}.service-split:nth-child(even){grid-template-areas:'copy image'}.service-split:nth-child(odd){grid-template-areas:'image copy'}.service-split > .service-image{grid-area:image}.service-split > .service-copy{grid-area:copy}.service-image img{width:100%;aspect-ratio:4/3;height:auto;object-fit:cover;display:block;box-shadow:var(--shadow-md)}.service-copy h2{font-size:clamp(2rem,3vw,3rem);line-height:1.05;margin:0 0 6px;color:#071f49}.service-copy h3{font-size:18px;line-height:1.2;margin:0 0 16px;color:#4e9f9d;font-weight:800}.service-copy p{font-size:14px;line-height:1.65;color:#31425c;max-width:460px}.service-copy a{display:inline-block;margin-top:18px;font-size:12px;font-weight:800;color:#071f49;text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:2px}@media (max-width:900px){.service-hero,.service-hero-inner{min-height:420px}.service-section{gap:48px}.service-split{grid-template-columns:1fr;grid-template-areas:'image' 'copy' !important}}

/* Leistungen refinements v5 */
.service-copy{text-align:center;justify-self:center}
.service-copy h3{font-size:22px!important;line-height:1.25!important;margin:0 0 18px!important}
.service-copy p{font-size:18px!important;line-height:1.72!important;max-width:540px!important;margin:0 auto!important}
.service-copy a{position:relative;display:inline-block!important;margin-top:18px!important;font-size:12px!important;font-weight:800!important;color:#071f49!important;text-decoration:none!important;border-bottom:none!important;padding-bottom:4px!important}
.service-copy a::after{content:"";position:absolute;left:10%;bottom:0;width:80%;height:2px;background:color-mix(in srgb, #4e9f9d 80%, white 20%);transition:width .22s ease,left .22s ease,background-color .22s ease}
.service-copy a:hover::after,.service-copy a:focus-visible::after{left:0;width:100%;background:#4e9f9d}
.service-image{overflow:hidden}
.service-image img{transition:transform .35s ease;transform:scale(1.001)}
.service-image:hover img{transform:scale(1.06)}

.service-hero-inner{min-height:420px;padding-top:40px}
.service-split a{border-bottom:none!important;position:relative}
.service-split a::after{content:"";position:absolute;left:10%;bottom:0;width:80%;height:2px;background:color-mix(in srgb, #4e9f9d 80%, white 20%);transition:width .22s ease,left .22s ease,background-color .22s ease}
.service-split a:hover::after,.service-split a:focus-visible::after{left:0;width:100%;background:#4e9f9d}

.service-hero-shift{padding-top:40px}
.service-hero-shift{}

.service-hero-inner h1{font-size:clamp(2.6rem,5vw,4.4rem);line-height:1.04;margin:0 0 14px;max-width:540px}
.service-hero-inner p{font-size:16px;line-height:1.6;max-width:560px;margin:0 0 24px;color:rgba(255,255,255,.9)}

.service-hero{min-height:560px}
.service-hero-inner{min-height:560px}

.service-image img[src*="schoene-zaehne.jpg"]{object-position:center calc(50% + 100px);}
.service-image img[src*="gesunde-zaehne.jpg"]{object-position:center calc(50% + 50pt);}
.service-image img[src*="implantate.jpg"]{object-position:center calc(50% + 50pt);}

.service-page .service-copy h1,.service-page .service-copy h2{font-size:clamp(2rem,4vw,3.25rem);line-height:1.08}
.service-page .service-copy h3{font-size:clamp(1.25rem,1.8vw,1.75rem);line-height:1.15}
.service-page .service-copy p,.service-page .service-copy li{font-size:clamp(1rem,1.2vw,1.1rem);line-height:1.7}
.service-page .service-hero h1{font-size:clamp(2.6rem,5vw,4.6rem)}
.service-page .service-hero p{font-size:clamp(1rem,1.1vw,1.1rem)}

.hero-cta{width:auto;display:inline-flex;max-width:max-content;white-space:nowrap;}

.service-list,.leistungen-list{display:flex;flex-direction:column;gap:0}
.service-split,.leistungen-split{display:grid;grid-template-columns:1fr 1fr;gap:32px;align-items:center;padding:56px 0}
.service-split--alt,.leistungen-split--alt{background:#f4fbfa}
.service-split .service-image,.service-split .service-copy,.leistungen-split .service-image,.leistungen-split .service-copy{width:min(100% - 32px,1120px);margin:0 auto}
.service-copy,.leistungen-copy{text-align:left}
.service-copy h2,.leistungen-copy h2{margin-bottom:8px}
.service-copy h3,.leistungen-copy h3{margin-bottom:14px}
.service-copy p,.leistungen-copy p{max-width:52ch}
@media (max-width:900px){.service-split,.leistungen-split{grid-template-columns:1fr;gap:18px;padding:40px 0}.service-split .service-image,.service-split .service-copy,.leistungen-split .service-image,.leistungen-split .service-copy{width:min(100% - 24px,760px)}}

.service-page .service-list,.leistungen-page .leistungen-list,.service-list,.leistungen-list{max-width:none;width:100%}
.service-page .service-split,.leistungen-page .leistungen-split,.service-split,.leistungen-split{width:100%;max-width:none;grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:24px;row-gap:24px;padding:48px 0}
.service-page .service-split .service-image,.service-page .service-split .service-copy,.leistungen-page .leistungen-split .service-image,.leistungen-page .leistungen-split .service-copy,.service-split .service-image,.service-split .service-copy,.leistungen-split .service-image,.leistungen-split .service-copy{width:auto;max-width:none;margin:0}
.service-page .service-copy,.leistungen-page .leistungen-copy{padding-inline:24px}
.service-page .service-split--alt,.leistungen-page .leistungen-split--alt{background:#f4fbfa}
.service-page .service-split .service-image img,.service-page .service-split .service-copy p,.leistungen-page .leistungen-split .service-image img,.leistungen-page .leistungen-split .service-copy p{max-width:none}
@media (max-width:900px){.service-page .service-split,.leistungen-page .leistungen-split,.service-split,.leistungen-split{grid-template-columns:1fr;column-gap:0;row-gap:16px;padding:40px 0}.service-page .service-copy,.leistungen-page .leistungen-copy{padding-inline:16px}}

.service-page .service-list{max-width:1120px;margin:0 auto;padding-inline:24px}
.service-page .service-split{max-width:1120px;margin:0 auto;padding:52px 0;grid-template-columns:minmax(320px,1fr) minmax(320px,1fr);column-gap:28px;row-gap:20px;align-items:center}
.service-page .service-split .service-image,.service-page .service-split .service-copy{margin:0;max-width:none}
.service-page .service-copy{text-align:center}
.service-page .service-copy p{max-width:44ch;margin-inline:auto}
.service-page .service-split--alt{background:#f4fbfa}
.leistungen-page .leistungen-list{max-width:1120px;margin:0 auto;padding-inline:24px}
.leistungen-page .leistungen-split{max-width:1120px;margin:0 auto;padding:52px 0;grid-template-columns:minmax(320px,1fr) minmax(320px,1fr);column-gap:28px;row-gap:20px;align-items:center}
.leistungen-page .leistungen-split .leistungen-copy{text-align:center}
.leistungen-page .leistungen-split .leistungen-copy p{max-width:44ch;margin-inline:auto}
.leistungen-page .leistungen-split--alt{background:#f4fbfa}
@media (max-width:900px){
  .service-page .service-list,.leistungen-page .leistungen-list{max-width:100%;padding-inline:16px}
  .service-page .service-split,.leistungen-page .leistungen-split{grid-template-columns:1fr;row-gap:16px;padding:40px 0}
}

.leistungen-page .leistungen-copy,.leistungen-page .leistungen-copy h2,.leistungen-page .leistungen-copy h3,.leistungen-page .leistungen-copy p{text-align:center}
.leistungen-page .leistungen-copy p{margin-inline:auto;max-width:44ch}
.leistungen-page .leistungen-split--alt{background:#f4fbfa}
.leistungen-page .leistungen-split--tint{background:#f4fbfa}

/* Leistungen fixes */
.leistungen-page .leistungen-split,
.leistungen-page article.leistungen-split,
.leistungen-page .service-split,
.leistungen-page article.service-split{padding-block:48px !important; margin:0 auto !important; width:min(100%,1120px) !important;}
.leistungen-page .leistungen-copy,
.leistungen-page .leistungen-copy h2,
.leistungen-page .leistungen-copy h3,
.leistungen-page .leistungen-copy p,
.leistungen-page .service-copy,
.leistungen-page .service-copy h2,
.leistungen-page .service-copy h3,
.leistungen-page .service-copy p{text-align:center !important;}
.leistungen-page .leistungen-copy p,
.leistungen-page .service-copy p{margin-inline:auto !important; max-width:44ch !important;}
.leistungen-page .leistungen-split--alt,
.leistungen-page article.leistungen-split--alt,
.leistungen-page .leistungen-split--tint,
.leistungen-page article.leistungen-split--tint{background:#f4fbfa !important;}


.form-status {
  margin-bottom: 14px;
  padding: 12px 14px;
  border-radius: 12px;
  font-size: .96rem;
  line-height: 1.5;
  border: 1px solid transparent;
}

.form-status.is-success {
  background: rgba(46, 125, 50, 0.12);
  color: #1f5f2a;
  border-color: rgba(46, 125, 50, 0.22);
}

.form-status.is-error {
  background: rgba(183, 28, 28, 0.10);
  color: #8f1d1d;
  border-color: rgba(183, 28, 28, 0.20);
}



img[data-scroll-fade] {
  opacity: 0;
  transition: opacity .85s ease;
  will-change: opacity;
}

img[data-scroll-fade].is-visible {
  opacity: 1;
}

@media (prefers-reduced-motion: reduce) {
  img[data-scroll-fade] {
    opacity: 1;
    transform: none;
    transition: none;
  }
}

.topbar-sticky .mega-menu{position:relative;z-index:61;}

.about-portrait img[data-scroll-fade], .team-card img[data-scroll-fade], .memberships-flex img[data-scroll-fade]{opacity:0;transition:opacity .95s ease, transform .45s ease;}
.about-portrait img[data-scroll-fade].is-visible, .team-card img[data-scroll-fade].is-visible, .memberships-flex img[data-scroll-fade].is-visible{opacity:1;}
.membership-logo img{width:min(100%,180px);height:auto;max-height:180px;}
@media (max-width:900px){.membership-logo{min-height:140px}.membership-logo img{max-height:132px;width:min(100%,132px);}}
@media (max-width:640px){.membership-logo{min-height:110px}.membership-logo img{max-height:104px;width:min(100%,104px);}}

.site-header .doctor-strip{position:relative;z-index:1;}
.site-header .topbar-sticky .mega-menu{position:relative;z-index:81;}
.site-header > .doctor-strip{position:relative;z-index:1;}
.site-header > .topbar-sticky > .mega-menu{position:relative;z-index:81;}
.doctors-grid{grid-template-columns:repeat(4,minmax(0,1fr));}
.staff-grid{grid-template-columns:repeat(5,minmax(0,1fr));}
@media (max-width:1180px){.doctors-grid{grid-template-columns:repeat(3,minmax(0,1fr));}.staff-grid{grid-template-columns:repeat(4,minmax(0,1fr));}}
@media (max-width:860px){.doctors-grid{grid-template-columns:repeat(2,minmax(0,1fr));}.staff-grid{grid-template-columns:repeat(3,minmax(0,1fr));}}
@media (max-width:560px){.doctors-grid,.staff-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}
.site-header + .doctor-strip{position:relative;z-index:1;}
.about-marquee .marquee-card{overflow:hidden;border-radius:6px;}
.about-marquee .marquee-card img,.team-card-media img,.about-benefits-image img{transition:transform .45s ease;}
.team-card-media:hover img,.about-benefits-image:hover img{transform:scale(1.06);}
.intro h2,.services h2,.approach h2,.facts-list h2,.appointment-copy h2,.card-body h3,.icon-facts h3,.contact-person strong,.about-hero h1,.section-heading h2,.about-benefits-copy h2{color:#082656;}
.gradient-facts h2,.service-band h2,.reviews h2,.memberships-section h2{color:#fff;}
@media (min-width:641px) and (max-width:1024px){.menu-toggle{justify-items:center;align-items:center;padding:0;}.menu-toggle span{margin:0 auto;justify-self:center;}}


.page,.leistungen-page{background:#fff;}


/* homepage intro checklist text on white */
.intro .tick-list li,
.intro .tick-list a{color:#082656;}

/* keep about-us card zoom smooth and active across doctor/staff rows */
.doctor-card .team-card-media,
.staff-card .team-card-media{overflow:hidden;}
.doctor-card .team-card-media img,
.staff-card .team-card-media img{transition:transform .45s ease, opacity .95s ease;}
.doctor-card:hover .team-card-media img,
.staff-card:hover .team-card-media img{transform:scale(1.06);}


/* index: smooth zoom, no banner zoom, rounded intro image */
.thumb,
.fact-card,
.intro-side,
.service-image-wrap{overflow:hidden;}
.thumb img,
.fact-card img,
.intro-side img{transition:transform .45s ease;transform:scale(1.001);}
.thumb:hover img,
.fact-card:hover img,
.intro-side:hover img{transform:scale(1.06);}
.team-banner img{transition:none !important;transform:none !important;}
.team-banner:hover img{transform:none !important;}
.intro-side img,
.service-image-wrap img{border-radius:14px;}

/* service + leistungen: smooth zoom and rounded card images */
.service-image,
.leistungen-split .service-image,
.service-split .service-image{overflow:hidden;border-radius:14px;}
.service-image img,
.leistungen-split .service-image img,
.service-split .service-image img{display:block;transition:transform .45s ease;transform:scale(1.001);border-radius:14px;}
.service-image:hover img,
.leistungen-split .service-image:hover img,
.service-split .service-image:hover img{transform:scale(1.06);}


/* schoene-zaehne + gesunde-zaehne: clean image modules */
.page,
.gesunde-page,
.service-page.gesunde-page{background:#fff;}

.page-image,
.page-split .page-image,
.gesunde-page .service-image,
.gesunde-page .service-split .service-image{overflow:hidden;border-radius:14px;}

.page-image img,
.page-split .page-image img,
.gesunde-page .service-image img,
.gesunde-page .service-split .service-image img{
  display:block;
  width:100%;
  aspect-ratio:4/3;
  object-fit:cover;
  border-radius:14px;
  transition:transform .45s ease;
  transform:scale(1.001);
}

.page-image:hover img,
.page-split .page-image:hover img,
.gesunde-page .service-image:hover img,
.gesunde-page .service-split .service-image:hover img{
  transform:scale(1.06);
}


/* global smooth scroll-fade outside about-us special cases */
img[data-scroll-fade]{
  opacity:0;
  transform:translateY(18px);
  transition:opacity .85s ease, transform .85s ease;
  will-change:opacity, transform;
}
img[data-scroll-fade].is-visible{
  opacity:1;
  transform:translateY(0);
}
.about-portrait img[data-scroll-fade],
.team-card img[data-scroll-fade],
.memberships-flex img[data-scroll-fade],
.doctor-card .team-card-media img[data-scroll-fade],
.staff-card .team-card-media img[data-scroll-fade]{
  transform:scale(1.001);
}
.about-portrait img[data-scroll-fade].is-visible,
.team-card img[data-scroll-fade].is-visible,
.memberships-flex img[data-scroll-fade].is-visible,
.doctor-card .team-card-media img[data-scroll-fade].is-visible,
.staff-card .team-card-media img[data-scroll-fade].is-visible{
  transform:scale(1.001);
}

/* gesunde-zaehne: force real 4:3 landscape rendering */
.gesunde-page .service-image,
.gesunde-page .service-split .service-image{
  aspect-ratio:4/3;
  min-height:0;
}
.gesunde-page .service-image img,
.gesunde-page .service-split .service-image img{
  width:100% !important;
  height:auto !important;
  max-height:none !important;
  aspect-ratio:4/3 !important;
  object-fit:cover !important;
  object-position:center center !important;
  display:block;
}


/* smooth content-image fade-in across page modules */
.page-image img[data-scroll-fade],
.service-image img[data-scroll-fade],
.thumb img[data-scroll-fade],
.fact-card img[data-scroll-fade],
.intro-side img[data-scroll-fade],
.about-benefits-image img[data-scroll-fade]{
  opacity:0;
  transform:translateY(18px) scale(1.001);
  transition:opacity .85s ease, transform .85s ease;
  will-change:opacity, transform;
}
.page-image img[data-scroll-fade].is-visible,
.service-image img[data-scroll-fade].is-visible,
.thumb img[data-scroll-fade].is-visible,
.fact-card img[data-scroll-fade].is-visible,
.intro-side img[data-scroll-fade].is-visible,
.about-benefits-image img[data-scroll-fade].is-visible{
  opacity:1;
  transform:translateY(0) scale(1.001);
}
.hero-bg[data-scroll-fade],
.page-hero-media img[data-scroll-fade],
.service-hero-media img[data-scroll-fade],
.team-banner img[data-scroll-fade],
.about-cta-band img[data-scroll-fade]{
  opacity:1;
  transform:none;
  transition:none;
}


/* gesunde-zaehne: lock page-image wrappers to landscape like schoene-zaehne */
.gesunde-page .page-image,
.gesunde-page .page-split .page-image{
  position:relative;
  aspect-ratio:1.3/1;
  min-height:0;
  width:100%;
  overflow:hidden;
  border-radius:14px;
}
.gesunde-page .page-image img,
.gesunde-page .page-split .page-image img{
  position:absolute;
  inset:0;
  width:100% !important;
  height:100% !important;
  max-width:none;
  max-height:none;
  aspect-ratio:auto !important;
  object-fit:cover !important;
  object-position:center center !important;
  border-radius:14px;
}


/* neue-zaehne page */
.neue-page .page-hero-media img{object-position:center 35%;}
.neue-page .page-image,
.neue-page .page-split .page-image{overflow:hidden;border-radius:14px;min-width:0;}
.neue-page .page-image img,
.neue-page .page-split .page-image img{width:100%;aspect-ratio:1.3/1;object-fit:cover;display:block;border-radius:14px;transition:transform .45s ease;transform:scale(1.001);}
.neue-page .page-image:hover img,
.neue-page .page-split .page-image:hover img{transform:scale(1.06);}
.neue-page .faq-copy{text-align:left;}
.neue-page .faq-block{max-width:48ch;margin:0 auto;text-align:left;}
.neue-page .faq-block h3{margin:18px 0 8px;}


/* isolated neue-zaehne page styles only */
.neue-page {
  background: #ffffff;
}

.neue-page .page-list,
.neue-page .neue-page-list {
  display: flex;
  flex-direction: column;
  background: #ffffff;
}

.neue-page .page-hero {
  position: relative;
  min-height: 560px;
  display: grid;
  align-items: end;
  overflow: hidden;
  background: #ffffff;
}

.neue-page .page-hero-media {
  position: absolute;
  inset: 0;
}

.neue-page .page-hero-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 42%;
}

.neue-page .page-hero::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(1, 25, 54, .78) 0, rgba(1, 25, 54, .48) 35%, rgba(1, 25, 54, .12) 70%, rgba(1, 25, 54, .10) 100%);
}

.neue-page .page-hero-inner {
  position: relative;
  z-index: 1;
  color: #ffffff;
  padding: 96px 0 72px;
}

.neue-page .page-hero-inner h1 {
  font-size: clamp(2.6rem, 5vw, 4.4rem);
  line-height: 1.04;
  margin: 0 0 14px;
  max-width: 540px;
  color: #ffffff;
}

.neue-page .page-hero-inner h2 {
  font-size: clamp(1.15rem, 2vw, 1.55rem);
  line-height: 1.2;
  margin: 0 0 18px;
  color: #ffffff;
}

.neue-page .page-hero-inner p {
  font-size: 16px;
  line-height: 1.6;
  max-width: 560px;
  margin: 0 0 24px;
  color: rgba(255, 255, 255, .92);
}

.neue-page .hero-cta,
.neue-page .button-primary {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  padding: 12px 22px;
  background: #2f8f87;
  color: #ffffff;
  text-decoration: none;
  font-weight: 700;
  font-size: 16px;
  border-radius: 0;
}

.neue-page .page-split {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 48px;
  align-items: center;
  padding: 72px 0;
  background: #ffffff;
}

.neue-page .page-split--image-left {
  grid-template-areas: "image copy";
}

.neue-page .page-split--image-right {
  grid-template-areas: "copy image";
}

.neue-page .page-split--image-left .page-image,
.neue-page .page-split--image-right .page-image {
  grid-area: image;
}

.neue-page .page-split--image-left .page-copy,
.neue-page .page-split--image-right .page-copy {
  grid-area: copy;
}

.neue-page .page-split--alt {
  background: #eff8f7;
}

.neue-page .page-image img {
  width: 100%;
  aspect-ratio: 1.3 / 1;
  object-fit: cover;
  display: block;
  border-radius: 16px;
}

.neue-page .page-copy {
  color: #082656;
  text-align: center;
}

.neue-page .page-copy h2 {
  font-size: clamp(2rem, 4vw, 3rem);
  line-height: 1.05;
  margin: 0 0 10px;
  color: #082656;
}

.neue-page .page-copy h3 {
  font-size: clamp(1.15rem, 2vw, 1.55rem);
  line-height: 1.2;
  margin: 0 0 18px;
  color: #2f8f87;
}

.neue-page .page-copy p {
  font-size: 16px;
  line-height: 1.65;
  max-width: 48ch;
  margin: 0 auto 12px;
  color: #082656;
}

.neue-page .page-copy p:last-child {
  margin-bottom: 0;
}

.neue-page .benefits-list--nz {
  list-style: none;
  padding: 0;
  margin: 18px auto 0;
  max-width: 560px;
  display: flex;
  flex-direction: column;
  gap: 0;
}

.neue-page .benefits-list--nz li {
  display: grid;
  grid-template-columns: 42px 1fr;
  gap: 14px;
  align-items: center;
  padding: 14px 0;
  border-bottom: 1px solid #e7ebef;
  font-size: 14px;
  font-weight: 600;
  color: #082656;
  text-align: left;
}

.neue-page .benefits-list--nz img {
  width: 42px;
  height: 42px;
  object-fit: contain;
}

@media (max-width: 900px) {
  .neue-page .page-hero {
    min-height: 460px;
  }

  .neue-page .page-hero-inner {
    padding: 84px 0 56px;
  }

  .neue-page .page-split {
    grid-template-columns: 1fr;
    gap: 24px;
    padding: 48px 0;
  }

  .neue-page .page-split--image-right .page-copy,
  .neue-page .page-split--image-left .page-copy {
    order: 2;
  }

  .neue-page .page-split--image-right .page-image,
  .neue-page .page-split--image-left .page-image {
    order: 1;
  }
}


/* neue-zaehne scoped landscape wrapper fix */
.neue-page .page-image {
  aspect-ratio: 1.3 / 1;
  overflow: hidden;
  border-radius: 16px;
  background: #eef2f5;
}

.neue-page .page-image img {
  width: 100%;
  height: 100%;
  max-width: none;
  aspect-ratio: auto;
  object-fit: cover;
  object-position: center center;
  display: block;
  border-radius: 0;
}


/* neue-zaehne scoped image motion */
.neue-page .page-image img {
  transition: transform .45s ease;
  will-change: transform;
}

.neue-page .page-image:hover img,
.neue-page .page-image:focus-within img {
  transform: scale(1.06);
}


/* neue-zaehne scoped scroll fade on content images only */
.neue-page .page-image img[data-scroll-fade] {
  opacity: 0;
  transform: scale(.965);
  transition: opacity .55s ease, transform .55s ease;
  will-change: opacity, transform;
}

.neue-page .page-image img[data-scroll-fade].is-visible {
  opacity: 1;
  transform: scale(1);
}

@media (prefers-reduced-motion: reduce) {
  .neue-page .page-image img[data-scroll-fade] {
    opacity: 1;
    transform: none;
    transition: none;
  }
}


/* neue-zaehne mobile wrap fix */
@media (max-width: 900px) {
  .neue-page .page-split--image-left,
  .neue-page .page-split--image-right {
    display: flex;
    flex-direction: column;
  }

  .neue-page .page-split--image-left .page-image,
  .neue-page .page-split--image-right .page-image,
  .neue-page .page-split--image-left .page-copy,
  .neue-page .page-split--image-right .page-copy {
    width: 100%;
    max-width: 100%;
  }

  .neue-page .page-split--image-left .page-image,
  .neue-page .page-split--image-right .page-image {
    order: 1;
  }

  .neue-page .page-split--image-left .page-copy,
  .neue-page .page-split--image-right .page-copy {
    order: 2;
  }
}


/* global mobile mega-menu scroll fix */
@media (max-width: 900px) {
  .mega-menu.open,
  .mega-menu.is-hover-open {
    max-height: calc(100dvh - 140px);
    overflow-y: auto;
    overscroll-behavior: contain;
    -webkit-overflow-scrolling: touch;
  }
}
