@font-face{font-family:"Oswald Lokal";src:url("fonts/Oswald.ttf") format("truetype");font-style:normal;font-weight:200 700;font-display:swap}
@font-face{font-family:"Open Sans Lokal";src:url("fonts/OpenSans.ttf") format("truetype");font-style:normal;font-weight:300 800;font-display:swap}
.azimian-original{font-family:"Open Sans Lokal",Arial,sans-serif;color:#555}
.azimian-original a:not(.elementor-button){color:#687000}
.azimian-original a:not(.elementor-button):hover{color:#424241}
.azimian-original .elementor-heading-title{font-family:"Oswald Lokal",Arial,sans-serif;font-weight:400}
.azimian-original .elementor-text-editor,.azimian-original .elementor-widget-text-editor{font-family:"Open Sans Lokal",Arial,sans-serif}
.azimian-menu{display:flex;justify-content:flex-end;align-items:flex-end;flex-wrap:wrap;gap:0;font-family:"Oswald Lokal",Arial,sans-serif;font-size:17px;line-height:1.4}
.azimian-menu a{display:block;padding:13px 12px;text-decoration:none;color:#555!important;white-space:nowrap}
.azimian-menu a:hover,.azimian-menu a:focus-visible{background:#f5f5f5;color:#687000!important}
.azimian-header .elementor-widget-text-editor{margin:0}
.azimian-header .elementor-widget-image img{border-radius:0}
.azimian-footer a:not(.elementor-button){color:#d4df40}
.azimian-footer a:not(.elementor-button):hover{color:#fff}
.azimian-original a:focus-visible{outline:2px solid currentColor;outline-offset:3px}
@media(max-width:767px){.azimian-header .elementor-column{width:100%!important}.azimian-menu{justify-content:center;font-size:16px}.azimian-menu a{padding:10px}.azimian-header .elementor-widget-image{text-align:center}.azimian-hero .elementor-heading-title{font-size:28px}.azimian-info .elementor-column{width:100%!important}}

/* Header 1.4: native WordPress Menu widget, aligned to the bottom right. */
.azimian-header-v140>.elementor-container{max-width:1280px!important;align-items:stretch}
.azimian-header-v140 .azimian-nav-col>.elementor-widget-wrap{align-content:flex-end;justify-content:flex-end}
.azimian-header-v140 .elementor-widget-nav-menu{width:100%;margin-bottom:0}
.azimian-header-v140 .elementor-nav-menu--main .elementor-nav-menu{justify-content:flex-end}
.azimian-header-v140 .elementor-nav-menu--main .elementor-item{font-family:"Oswald Lokal",Arial,sans-serif;font-size:17px;font-weight:400;color:#555}
.azimian-header-v140 .elementor-nav-menu--main .elementor-item:hover,.azimian-header-v140 .elementor-nav-menu--main .elementor-item.elementor-item-active{color:#687000}
.azimian-header-v140 .elementor-nav-menu--dropdown .elementor-item{font-family:"Oswald Lokal",Arial,sans-serif;color:#555}
.azimian-scroll-top{position:fixed;right:24px;bottom:24px;z-index:9999;width:48px;height:48px;padding:0;display:flex;align-items:center;justify-content:center;background:transparent!important;border:2px solid #555;border-radius:50%;color:#555;box-shadow:0 0 0 1px rgba(255,255,255,.8);opacity:0;visibility:hidden;pointer-events:none;transform:translateY(8px);transition:opacity .2s,transform .2s,visibility .2s;cursor:pointer}
.azimian-scroll-top svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 0 1px #fff)}
.azimian-scroll-top.is-visible{opacity:1;visibility:visible;pointer-events:auto;transform:none}
.azimian-scroll-top:hover{background:transparent!important;color:#687000;border-color:#BBC613}
.azimian-scroll-top:focus-visible{outline:2px solid #BBC613;outline-offset:4px}
@media(max-width:767px){.azimian-header-v140 .azimian-nav-col>.elementor-widget-wrap{justify-content:flex-end}.azimian-header-v140 .elementor-menu-toggle{margin-left:auto}.azimian-scroll-top{right:18px;bottom:18px}}
@media(prefers-reduced-motion:reduce){.azimian-scroll-top{transition:none}}

.azimian-slider-v150,.azimian-slider-v150>.elementor-container{width:100%;max-width:none!important;padding:0!important}
.azimian-slider-v150 .elementor-column-gap-default>.elementor-column>.elementor-element-populated,.azimian-slider-v150>.elementor-container>.elementor-column>.elementor-widget-wrap{padding:0!important}
.azimian-slider-v150 .swiper-slide-contents{background:rgba(255,255,255,.84);padding:18px 28px;max-width:900px}
.azimian-slider-v150 .elementor-slide-heading{font-family:"Oswald Lokal",Arial,sans-serif;font-weight:400;color:#555;line-height:1.25}
.azimian-slider-v150 .elementor-slide-description:empty,.azimian-slider-v150 .elementor-slide-button:empty{display:none}
.azimian-team-portrait img{width:100%;height:430px;object-fit:cover;object-position:center 20%}
.azimian-doctors img{max-width:100%;height:auto}
.azimian-slider-v150 .azimian-slider-pause{position:absolute;right:20px;bottom:22px;z-index:20;background:rgba(255,255,255,.85);color:#424241;border:1px solid #424241;border-radius:0;padding:7px 12px;font:14px "Open Sans Lokal",Arial,sans-serif;cursor:pointer}
@media(max-width:767px){.azimian-team-portrait img{height:auto;max-height:520px;object-fit:contain}.azimian-slider-v150 .swiper-slide-contents{padding:15px;max-width:95%}.azimian-slider-v150 .azimian-slider-pause{right:12px;bottom:12px;font-size:12px}}

/* Subtle four-card booking layout. */
.azimian-booking-v160>.elementor-container{max-width:1280px;flex-wrap:wrap}
.azimian-booking-v160>.elementor-container>.elementor-column{width:25%}
.azimian-booking-v160 .azimian-booking-card>.elementor-widget-wrap{margin:8px;width:calc(100% - 16px);padding:24px 22px;border:1px solid #ECECEC;border-radius:4px;align-content:flex-start;display:flex;flex-direction:column}
.azimian-booking-v160 .elementor-widget-heading{min-height:65px;margin-bottom:8px}
.azimian-booking-v160 .elementor-heading-title{font-size:25px;font-weight:400;text-transform:none;line-height:1.3}
.azimian-booking-v160 .elementor-widget-text-editor{font-size:14px;line-height:1.5;margin-bottom:20px}
.azimian-booking-v160 .elementor-widget-button{margin-top:auto;margin-bottom:0}
.azimian-booking-v160 .elementor-button{font-size:14px;line-height:1.4;box-shadow:none}
.azimian-slider-v150 .swiper-slide-bg{background-position:center top!important}
@media(max-width:1024px){.azimian-booking-v160>.elementor-container>.elementor-column{width:50%!important}}
@media(max-width:767px){.azimian-booking-v160>.elementor-container>.elementor-column{width:100%!important}.azimian-booking-v160 .elementor-widget-heading{min-height:0}.azimian-booking-v160 .elementor-widget-text-editor{margin-bottom:16px}}

/* Larger header and service jump navigation. */
.azimian-header-v140 .elementor-nav-menu--main .elementor-item{font-size:20px}
.azimian-header-v140 .elementor-nav-menu--dropdown .elementor-item{font-size:18px}
.azimian-service-jump{display:flex;flex-wrap:wrap;gap:9px;margin:0;padding:0}
.azimian-service-jump a{display:inline-block;padding:9px 13px;background:#F5F5F5;border:1px solid #E6E6E6;border-radius:3px;font-family:"Open Sans Lokal",Arial,sans-serif;font-size:14px;line-height:1.5;text-decoration:none;color:#555!important}
.azimian-service-jump a:hover,.azimian-service-jump a:focus-visible{background:#EEF0D5;border-color:#BBC613;color:#424241!important}
[id^="azimian-leistung-"]{scroll-margin-top:45px}
@media(max-width:767px){.azimian-service-jump{gap:7px}.azimian-service-jump a{padding:8px 11px;font-size:13px}}

/* Spacious page rhythm; existing typefaces and colors are retained. */
.azimian-home-v180 .elementor-widget-image img{border-radius:14px}
.azimian-intro-v180 .elementor-widget-heading,.azimian-intro-v180 .elementor-widget-text-editor{max-width:900px;margin-left:auto;margin-right:auto}
.azimian-intro-v180 .elementor-widget-text-editor{margin-top:6px}
.azimian-contact-v180>.elementor-container{align-items:stretch;flex-wrap:wrap}
.azimian-contact-v180>.elementor-container>.elementor-column>.elementor-widget-wrap{margin:9px;width:calc(100% - 18px);border-radius:12px}
.azimian-header-v140 .azimian-header-booking-v180{width:100%;margin-bottom:12px}
.azimian-header-v140 .azimian-header-booking-v180 .elementor-button{padding:9px 16px}
@media(max-width:767px){.azimian-home-v180 .elementor-widget-image img{border-radius:10px}.azimian-header-v140 .azimian-header-booking-v180{margin-top:10px;margin-bottom:10px}.azimian-contact-v180>.elementor-container>.elementor-column{width:100%!important}}

/* Keep slider captions clear of faces in the upper part of the photographs. */
.azimian-slider-v150 .swiper-slide-inner{align-items:flex-end!important;padding-bottom:90px!important}
@media(max-width:767px){.azimian-slider-v150 .swiper-slide-inner{padding-bottom:70px!important}}

.azimian-header-v140 .azimian-header-booking-v180 .elementor-button{background-color:#BBC613;border-color:#BBC613;color:#424241}
.azimian-header-v140 .azimian-header-booking-v180 .elementor-button:hover,.azimian-header-v140 .azimian-header-booking-v180 .elementor-button:focus-visible{background-color:#424241;border-color:#424241;color:#FFFFFF}

/* Consolidated contact page and complete footer navigation. */
.azimian-footer-links-v240{list-style:none;padding:0;margin:0;display:grid;gap:7px}
.azimian-footer-links-v240 a{display:inline-block;line-height:1.6;padding:3px 0}
.azimian-arrival-v240>.elementor-container{max-width:1280px;align-items:stretch;flex-wrap:wrap}
.azimian-arrival-v240>.elementor-container>.elementor-column{width:33.333333%}
.azimian-arrival-v240 .elementor-widget-wrap{padding:18px}
.azimian-map-v240{margin:0;text-align:center}
.azimian-map-v240 img{display:block;max-width:100%;height:auto;margin:0 auto}
@media(max-width:767px){.azimian-arrival-v240>.elementor-container>.elementor-column{width:100%!important}.azimian-arrival-v240 .elementor-widget-wrap{padding:12px 0}}

/* Footer 2.5: logo and contact left, two link groups; fonts, colours and 1280 px width unchanged. */
.azimian-footer-v250>.elementor-container{flex-wrap:wrap}
.azimian-footer-logo-v250,.azimian-footer-logo-v250 .elementor-widget-container{line-height:0;text-align:left}
.azimian-footer-logo-v250 img{display:block;width:260px;max-width:100%;height:auto}
.azimian-footer-logo-v250 a:focus-visible{outline:2px solid #d4df40;outline-offset:4px}
@media(max-width:1024px){.azimian-footer-v250 .azimian-footer-contact-v250{width:100%!important;margin-bottom:16px}.azimian-footer-v250 .azimian-footer-nav-v250{width:50%!important}}
@media(max-width:767px){.azimian-footer-v250 .azimian-footer-nav-v250{width:100%!important}.azimian-footer-logo-v250 img{width:220px}}

/* Footer 2.5.1: phone and e-mail with icons under "Kontakt & Rechtliches". Icons take the link colour. */
.azimian-footer-contact-v251{list-style:none;padding:0;margin:0 0 14px;display:grid;gap:7px}
.azimian-footer-contact-v251 a{display:inline-flex;align-items:center;gap:10px;line-height:1.6;padding:3px 0;overflow-wrap:anywhere}
.azimian-footer-contact-v251 a::before{content:"";flex:0 0 18px;width:18px;height:18px;background-color:currentColor;-webkit-mask:center/contain no-repeat;mask:center/contain no-repeat}
.azimian-footer-contact-v251 .azimian-icon-phone::before{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72c.13.96.36 1.9.7 2.81a2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45c.91.34 1.85.57 2.81.7A2 2 0 0 1 22 16.92z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72c.13.96.36 1.9.7 2.81a2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45c.91.34 1.85.57 2.81.7A2 2 0 0 1 22 16.92z'/%3E%3C/svg%3E")}
.azimian-footer-contact-v251 .azimian-icon-mail::before{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='14' rx='2'/%3E%3Cpath d='m3 7 9 6 9-6'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='14' rx='2'/%3E%3Cpath d='m3 7 9 6 9-6'/%3E%3C/svg%3E")}
.azimian-sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* 2.5.2 Responsive corrections. Fonts and colours of the site are reused. */
/* Mobile menu: the active entry was dark grey on dark grey. */
.azimian-header-v140 .elementor-nav-menu--dropdown .elementor-item.elementor-item-active,.azimian-header-v140 .elementor-nav-menu--dropdown .elementor-item:hover,.azimian-header-v140 .elementor-nav-menu--dropdown .elementor-item:focus-visible{background-color:#F5F5F5!important;color:#687000!important}
/* Tablet: keep the five menu entries on one line; slider no taller than the screen. */
@media(min-width:768px) and (max-width:1024px){.azimian-header-v140 .elementor-nav-menu--main .elementor-item{font-size:17px;padding-left:7px!important;padding-right:7px!important}.azimian-slider-v150 .elementor-slides .swiper-slide{height:640px!important}}
/* Mobile header: appointment button and menu button share one row; larger touch target for the menu. */
@media(max-width:767px){
.azimian-header-v140 .azimian-nav-col>.elementor-widget-wrap{flex-wrap:nowrap!important;align-items:center!important;justify-content:space-between!important}
.azimian-header-v140 .azimian-header-booking-v180{width:auto!important;flex:1 1 auto;margin:0 12px 0 0!important}
.azimian-header-v140 .elementor-widget-nav-menu{width:auto!important;margin:0!important}
.azimian-header-v140 .elementor-menu-toggle{width:44px;height:44px;margin-left:0}
.azimian-services-v180>.elementor-container>.elementor-column:not(:last-child){margin-bottom:28px}
}
/* Long URLs and words in running text no longer widen the page on phones (privacy policy). */
.elementor-widget-text-editor{overflow-wrap:break-word}
.elementor-widget-text-editor a{overflow-wrap:anywhere}
/* Privacy policy: headings inside the text follow the site's heading font and sit below the H1 in size. */
[data-elementor-type="wp-page"] .elementor-widget-text-editor :is(h2,h3,h4,h5){font-family:"Oswald Lokal",Arial,sans-serif;font-weight:400;color:#424241;line-height:1.3;margin:1.5em 0 .5em}
[data-elementor-type="wp-page"] .elementor-widget-text-editor h2{font-size:26px}
[data-elementor-type="wp-page"] .elementor-widget-text-editor h3{font-size:21px}
[data-elementor-type="wp-page"] .elementor-widget-text-editor :is(h4,h5){font-size:18px}
@media(max-width:767px){[data-elementor-type="wp-page"] .elementor-widget-text-editor h2{font-size:22px}[data-elementor-type="wp-page"] .elementor-widget-text-editor h3{font-size:19px}}

/* 2.6.0 Booking button inside every slide instead of the header (same colours as before). */
.azimian-slider-v150 .swiper-slide-contents .elementor-slide-button{display:inline-block;margin-top:16px;padding:11px 20px;background-color:#BBC613!important;border:1px solid #BBC613!important;border-radius:3px;color:#424241!important;font-family:"Open Sans Lokal",Arial,sans-serif;font-size:15px;font-weight:600;line-height:1.3;text-decoration:none;transition:background-color .2s,color .2s,border-color .2s}
.azimian-slider-v150 .swiper-slide-contents .elementor-slide-button:hover,.azimian-slider-v150 .swiper-slide-contents .elementor-slide-button:focus-visible{background-color:#424241!important;border-color:#424241!important;color:#fff!important}
.azimian-slider-v150 .swiper-slide-contents .elementor-slide-button:focus-visible{outline:2px solid #424241;outline-offset:3px}
/* Desktop: slider at most as tall as the visible area below the header, so heading and button are on the first screen. */
@media(min-width:1025px){.azimian-slider-v150 .elementor-slides .swiper-slide{height:clamp(520px,calc(100vh - 180px),940px)!important}}
@media(max-width:767px){
.azimian-slider-v150 .swiper-slide-contents .elementor-slide-button{margin-top:12px;padding:9px 16px;font-size:14px}
/* Without the header button: logo and menu button share one row. */
.azimian-header-v140:not(:has(.elementor-widget-button))>.elementor-container{flex-wrap:nowrap!important;align-items:center!important;min-height:0!important}
.azimian-header-v140:not(:has(.elementor-widget-button)) .azimian-logo-col{width:auto!important;flex:1 1 auto;min-width:0}
.azimian-header-v140:not(:has(.elementor-widget-button)) .azimian-nav-col{width:auto!important;flex:0 0 auto}
}

/* Customer correction: only the four booking buttons, all viewport sizes. */
.elementor .azimian-booking-grey-v270 .elementor-button{background:#424241!important;border-color:#424241!important;color:#fff!important}
.elementor .azimian-booking-grey-v270 .elementor-button:hover,.elementor .azimian-booking-grey-v270 .elementor-button:focus-visible{background:#5a5a59!important;border-color:#5a5a59!important;color:#fff!important}
.elementor .azimian-booking-grey-v270 .elementor-button:focus-visible{outline:2px solid #424241;outline-offset:3px}
.azimian-room-photo-v270 img{max-width:100%;height:auto}

/* 2.7.1: neutral backgrounds for the four homepage booking cards, including mobile. */
body.home .azimian-booking-v160 .azimian-booking-card > .elementor-widget-wrap {
 background: #F1F1F1 !important;
 border-color: #E0E0E0 !important;
}

/* 2.7.2: portrait photos in the slider show their subject instead of the top edge
   (2380: escalator and practice sign in the Mercado, 2200: circle of shoes). */
/* 2.7.3: 2380 shows the overview (gallery, escalators) with the practice sign above the caption. */
.azimian-slider-v150 .elementor-repeater-item-a272380 .swiper-slide-bg{background-position:50% 52%!important}
@media(max-width:1024px){.azimian-slider-v150 .elementor-repeater-item-a272380 .swiper-slide-bg{background-position:50% 50%!important}}
@media(max-width:767px){.azimian-slider-v150 .elementor-repeater-item-a272380 .swiper-slide-bg{background-position:50% 95%!important}}
.azimian-slider-v150 .elementor-repeater-item-a272200 .swiper-slide-bg{background-position:50% 55%!important}

/* 2.8.0 Customer correction 11.11.: booking cards dark grey (like "Ihre Zahnarztpraxis im Mercado"),
   buttons light grey (like "Unsere Sprechzeiten"); all viewport sizes. */
body.home .azimian-booking-v160 .azimian-booking-card > .elementor-widget-wrap{background:#424241!important;border-color:#424241!important}
.azimian-booking-v160 .azimian-booking-card .elementor-heading-title,.azimian-booking-v160 .azimian-booking-card .elementor-widget-text-editor,.azimian-booking-v160 .azimian-booking-card .elementor-widget-text-editor p{color:#FFFFFF!important}
.elementor .azimian-booking-grey-v270 .elementor-button{background:#C1C2C3!important;border-color:#C1C2C3!important;color:#424241!important}
.elementor .azimian-booking-grey-v270 .elementor-button:hover,.elementor .azimian-booking-grey-v270 .elementor-button:focus-visible{background:#FFFFFF!important;border-color:#FFFFFF!important;color:#424241!important}
.elementor .azimian-booking-grey-v270 .elementor-button:focus-visible{outline:2px solid #FFFFFF;outline-offset:3px}
/* Homepage "Kontakt und Sprechzeiten": two columns, stacked on phones. */
.azimian-location-v280>.elementor-container{align-items:flex-start;flex-wrap:wrap}
.azimian-location-v280>.elementor-container>.elementor-column{width:50%}
.azimian-location-v280 .azimian-cancel-v280{margin-top:18px}
@media(max-width:767px){.azimian-location-v280>.elementor-container>.elementor-column{width:100%!important}.azimian-location-v280>.elementor-container>.elementor-column+.elementor-column{margin-top:24px}}

/* 2.8.1 Partner page: web and phone links in the brand green, bold and underlined so they stand out from the text. */
.azimian-original .elementor-element-000007c a:not(.elementor-button){color:#BBC613!important;font-weight:600;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
.azimian-original .elementor-element-000007c a:not(.elementor-button):hover,.azimian-original .elementor-element-000007c a:not(.elementor-button):focus-visible{color:#424241!important}

/* 2.8.2 Slider on phones: more compact caption sitting lower, so faces stay visible;
   the Mercado photo (a272380) gets its caption at the top so the "Zahnarzt" sign below stays free. */
@media(max-width:767px){
.azimian-slider-v150 .swiper-slide-contents{padding:12px 16px!important}
.azimian-slider-v150 .elementor-slide-heading{font-size:22px!important;line-height:1.2!important}
.azimian-slider-v150 .swiper-slide-contents .elementor-slide-button{margin-top:10px!important}
.azimian-slider-v150 .swiper-slide-inner{padding-bottom:52px!important}
.azimian-slider-v150 .elementor-repeater-item-a272380 .swiper-slide-inner{align-items:flex-start!important;padding-top:10px!important;padding-bottom:0!important}
}

/* 2.8.3 Desktop: on the team photo at the reception (a272217) the caption sits at the top
   in front of the ceiling, so it no longer covers faces. Tablet and phone keep the lower position. */
@media(min-width:1025px){.azimian-slider-v150 .elementor-repeater-item-a272217 .swiper-slide-inner{align-items:flex-start!important;padding-top:40px!important;padding-bottom:0!important}}
