/* Native Gutenberg wrappers: source components still own their geometry. */
.wp-site-blocks{padding:0}.wp-site-blocks>*{margin-block:0}.ozm-main,.ozm-main>.wp-block-post-content{margin:0;padding:0;max-width:none}
.ozm-main .is-layout-flow>:first-child{margin-block-start:0}.ozm-main .is-layout-flow>:last-child{margin-block-end:0}
.ozm-main .wp-block-group{box-sizing:border-box}.ozm-main :where(.wp-block-heading){margin-block-start:0}
.ozm-main .wp-block-image{margin:0}.ozm-main .wp-block-image img{vertical-align:middle}
.ozm-main .wp-block-image.ozm-source-image:not(:has(figcaption)){display:contents}
.ozm-main .wp-block-video{margin:0}.ozm-main .wp-block-video video{max-width:100%;display:block}
.ozm-main .wp-block-buttons{gap:inherit}.ozm-main .wp-block-button{margin:0}
.ozm-main .wp-block-button:has(>.btn),.ozm-main .wp-block-button:has(>.linkarrow){display:contents}
.ozm-main .wp-block-button__link{font-family:inherit}
.ozm-main .wp-block-table{margin:0}.ozm-main .wp-block-table table{margin:0}
.ozm-site-header,.ozm-header-part{display:contents}.ozm-site-footer{margin:0}
.wp-block-post-content>:where(.alignfull){margin-left:0;margin-right:0;max-width:none;width:auto}
.wp-block-details>summary{cursor:pointer}.wp-block-details>summary:focus-visible{outline:2.5px solid var(--cyan);outline-offset:3px}
.wp-block-image figcaption{font-size:13px;color:var(--slate);line-height:1.5}
/* Current source's lists are intentionally compact; no core default indent. */
:where(.ozm-main,.ozm-site-header,.ozm-site-footer) :where(.wp-block-list){padding-inline-start:0}
.ozm-not-found{padding-top:64px;padding-bottom:64px;min-height:50vh}.ozm-not-found p{margin:24px 0}
/* Dynamic patient tabs use buttons and ARIA, retaining the reference geometry. */
.pi-tab[aria-selected="true"]{color:var(--blue-deep);background:var(--ice);border-color:var(--line);border-bottom-color:var(--ice)}
.pi-tablist button{font-family:inherit}.pi-panel:not([hidden]){display:block}.pi-panel[hidden],[hidden]{display:none!important}
/***** External services: deterministic initial state, never a silent network request. *****/
.ozm-embed-consent{position:relative;display:grid;place-items:center;width:100%;height:100%;min-height:240px;background:var(--ice);color:var(--blue-deep);text-align:center;overflow:hidden}
.ozm-embed-consent--video{aspect-ratio:16/9}.ozm-consent-copy{padding:24px;max-width:430px}.ozm-consent-copy p{font-size:14px;line-height:1.55;margin:0 0 16px}.ozm-consent-copy p:first-child{font-size:18px;font-weight:700}.ozm-consent-copy .btn{border:0;cursor:pointer;justify-content:center}
.ozm-embed-consent>iframe{display:block;width:100%;height:100%;min-height:240px;border:0}
.pi-embed>.ozm-embed-consent{position:absolute;inset:0}
#stmap{min-height:300px}.ozm-map-consent{height:100%;min-height:300px;display:grid;place-items:center;text-align:center;background:var(--ice)}
/* The reference map cards inherit the native button metrics, not body line-height. */
.map-list .map-item{font-size:13.333333px;line-height:normal}
.map-item .ozm-map-select{padding:0;font:inherit;color:inherit;border:0;background:transparent;display:block;text-align:left;cursor:pointer;width:100%}
.map-item .ozm-map-select h4{font:800 15.5px/1.06 'Bricolage Grotesque',sans-serif}
.map-item .ozm-map-select:focus-visible{outline:2.5px solid var(--cyan);outline-offset:3px}
.ozm-map-error{padding:24px;color:var(--blue-deep)}
/* Core Navigation output keeps WordPress keyboard and mobile behavior. */
nav.main .wp-block-navigation__container{gap:26px;flex-wrap:nowrap}
nav.main .wp-block-navigation-item__content{color:inherit;text-decoration:none}
nav.main .wp-block-navigation__submenu-container{border:1px solid var(--line);border-radius:14px;background:#fff;color:var(--ink);box-shadow:var(--shadow);padding:10px;min-width:250px;gap:2px}
nav.main .wp-block-navigation__submenu-container .wp-block-navigation-item__content{padding:11px 14px;color:var(--ink);font-size:14.5px;font-weight:500}
nav.main .wp-block-navigation__submenu-container .wp-block-navigation-item__content:hover{background:var(--mist);border-radius:9px}
nav.main .wp-block-navigation__responsive-container-open{color:#fff;border:1.5px solid rgba(255,255,255,.72);border-radius:999px;min-width:68px;min-height:44px;align-items:center;justify-content:center}
nav.main .wp-block-navigation__responsive-container-open svg{display:none}
nav.main .wp-block-navigation__responsive-container-open:after{content:'Menü';font:700 14px/1 Inter,sans-serif}
nav.main .wp-block-navigation__responsive-container.is-menu-open{background:var(--blue);color:white;padding:24px}
nav.main .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container{align-items:stretch;gap:10px}
nav.main .wp-block-navigation__responsive-container.is-menu-open ul{display:flex!important;flex-direction:column;align-items:stretch}
@media(min-width:981px){nav.main .wp-block-navigation__responsive-container-open:not(.always-shown){display:none!important}nav.main .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open){display:block!important}}
@media(max-width:980px){nav.main .wp-block-navigation__responsive-container-open:not(.always-shown){display:flex!important}nav.main .wp-block-navigation__responsive-container:not(.is-menu-open){display:none!important}}
@media(max-width:560px){.ozm-consent-copy{padding:18px}.ozm-consent-copy .btn{font-size:14px;padding:12px 18px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none}}
/* The safe importer emits the same consent behavior as a focused editor block. */
/* Match the inherited map selector so iframe styling cannot break the consent layout. */
.ozm-consent-embed,.cmap .ozm-consent-embed{display:flex;flex-direction:column;align-items:stretch;justify-content:center;width:100%;height:100%;min-height:240px;padding:20px;background:var(--ice);color:var(--blue-deep);text-align:center;gap:12px}
.ozm-embed-content{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;min-height:0;flex:1}
.ozm-consent-embed p{font-size:14px;line-height:1.55;max-width:430px;margin:0 auto}
.ozm-embed-content>p:first-child{font-size:18px;font-weight:700}
.ozm-consent-embed button{font-family:inherit;cursor:pointer;border:0;flex-shrink:0}
.ozm-consent-embed iframe{display:block;width:100%;height:100%;min-height:0;border:0;flex:1}
.ozm-consent-embed.is-active{padding:0;gap:0}
.ozm-consent-embed.is-active .ozm-embed-content{position:relative}
.ozm-consent-embed.is-active iframe{position:absolute;inset:0}
.ozm-consent-embed .ozm-embed-fallback{flex-shrink:0}
.ozm-consent-embed.is-active .ozm-embed-fallback{padding:8px 12px}
.pi-embed>.ozm-consent-embed{position:absolute;inset:0;min-height:0}
.pi-embed:has(>.ozm-consent-embed:not(.is-active)){min-height:260px}
.ozm-main .wp-block-video.ozm-source-video:not(:has(figcaption)){display:contents}

/* Preserve source overlay spacing despite core last-child flow resets. */
.ozm-main .sud-banner .sud-banner-title,.editor-styles-wrapper .sud-banner .sud-banner-title{margin-bottom:clamp(16px,2vw,24px)}
.ozm-main .pagehero .copy>.sub:last-child,.editor-styles-wrapper .pagehero .copy>.sub:last-child{margin-bottom:30px}
/* The source shows the agency credit on the homepage only. */
.ozm-public-site:not(.home):not(.ozm-reference-home) footer .site-credit{display:none}
.ozm-site-footer h6,.editor-styles-wrapper footer h6{margin-bottom:16px}
.ozm-main .sud-chapter:has(>.wol-banner) .sud-intro>h2.wp-block-heading,.editor-styles-wrapper .sud-chapter:has(>.wol-banner) .sud-intro>h2.wp-block-heading{font-size:24px;line-height:1.06;text-wrap:wrap}

/* Source BODY data-practice context, represented by a canonical WordPress body class. */
body.ozm-practice-buckau .sud-intro h2{margin:0;font-family:'Bricolage Grotesque',system-ui,sans-serif;font-size:clamp(23px,2.7vw,32px);line-height:1.18;letter-spacing:-.025em;color:var(--blue-deep);text-wrap:balance}

/* Accepted navigation emphasis remains valid after WordPress permalink rewriting. */
nav.main ul > li > a:is([href="stellenangebote.html"],.jobs-nav-link){font-weight:800}
nav.main ul > li > a:is([href="stellenangebote.html"],.jobs-nav-link)::after{right:0}
@media(max-width:640px){nav.main ul > li > a:is([href="stellenangebote.html"],.jobs-nav-link)::after{display:block;left:24px;right:24px;bottom:8px}}
