.bc-kontur-tool{margin:2rem 0;padding:clamp(1rem,3vw,2rem);--bc-kontur-surface:#e9f0dc;background:var(--bc-kontur-surface);border:1px solid #d5dfc8;border-radius:1.25rem;min-width:0;overflow-wrap:anywhere}.bc-kontur-tool h2{margin:.5rem 0 1rem!important;background:none!important;border:0!important;padding:0!important;font-size:clamp(1.5rem,3vw,2rem)}.bc-kontur-tool .button{max-width:100%;white-space:normal;text-align:center}.bc-kontur-tool iframe{display:block;width:100%;max-width:100%;border:0;background:#fff;border-radius:.75rem}.bc-kontur-tool [data-kontur-stage]:not([hidden]){margin-top:1.25rem}.bc-kontur-fallback{font-size:.95rem;margin-bottom:0}.bc-kontur-tool [hidden]{display:none!important}@media(max-width:480px){.bc-kontur-tool .button{width:100%}.bc-kontur-tool{padding:1rem}}

.bc-kontur-tool .skb-order-form,.bc-kontur-tool #KonturWidgetOrderForm{min-width:0!important;width:100%!important;max-width:100%!important}.bc-kontur-tool .skb-order-form *{box-sizing:border-box!important}.bc-kontur-tool .skb-order-form__row,.bc-kontur-tool .skb-order-form__group,.bc-kontur-tool .skb-order-form__label-wrap,.bc-kontur-tool .skb-order-form__input-wrap{min-width:0!important;max-width:100%!important}.bc-kontur-tool .skb-order-form input:not([type=radio]):not([type=checkbox]),.bc-kontur-tool .skb-order-form select,.bc-kontur-tool .skb-order-form textarea{min-width:0!important;max-width:100%!important;width:100%!important}

/* Native modal on narrow viewports: no page navigation or background CTA overlap. */
.bc-kontur-modal{position:fixed;inset:0;width:100%;max-width:none;height:100vh;height:100dvh;max-height:none;margin:0;padding:0;border:0;border-radius:0;background:#fff;overflow:hidden;box-sizing:border-box}
.bc-kontur-modal[open]{display:flex;flex-direction:column}
.bc-kontur-modal::backdrop{background:rgba(20,50,40,.5)}
.bc-kontur-modal-header{display:flex;align-items:center;gap:12px;flex-shrink:0;padding:0 8px 0 16px;padding-top:env(safe-area-inset-top);background:transparent;border:0}
.bc-kontur-modal .bc-kontur-modal-title{flex:1;min-width:0;margin:0!important;padding:0!important;font-size:1.125rem!important;line-height:1.35;overflow-wrap:normal}
.bc-kontur-modal-close{display:grid;place-items:center;flex:0 0 44px;width:44px;height:44px;padding:0;box-sizing:border-box;border:1px solid #c5d0bb;border-radius:50%;background:#fff;color:#153e31;cursor:pointer}
.bc-kontur-modal-close:focus-visible{outline:3px solid #1b6349;outline-offset:2px}
.bc-kontur-modal-body{min-height:0;flex:1;overflow:auto;overscroll-behavior:contain;padding:0 8px max(16px,env(safe-area-inset-bottom));scrollbar-gutter:stable}
.bc-kontur-modal [data-kontur-stage]:not([hidden]){margin:0}
.bc-kontur-modal .bc-kontur-fallback{padding:0 8px;line-height:1.5}
@media(max-width:640px){.bc-kontur-tool .skb-order-form input:not([type=radio]):not([type=checkbox]),.bc-kontur-tool .skb-order-form select,.bc-kontur-tool .skb-order-form textarea{font-size:16px!important;min-height:44px}.bc-kontur-tool .skb-order-form button{min-height:44px;max-width:100%;white-space:normal}.bc-kontur-modal iframe{border-radius:0}}

/* show() keeps the very same dialog and browsing context inline on desktop. */
.bc-kontur-modal.bc-kontur-inline[open]{display:block;position:static;inset:auto;width:100%;height:auto;max-height:none;margin:1.25rem 0 0;background:transparent;overflow:visible}
.bc-kontur-inline .bc-kontur-modal-header{display:none}
.bc-kontur-inline .bc-kontur-modal-body{overflow:visible;padding:0;scrollbar-gutter:auto}

/* The certificate iframe already displays its heading; keep only the close control above it. */
[data-kontur-widget="certificate"] .bc-kontur-modal-header{justify-content:flex-end;padding:0 8px;padding-top:env(safe-area-inset-top);background:transparent;border:0}
[data-kontur-widget="certificate"] .bc-kontur-modal-title{position:absolute;width:1px;height:1px;padding:0!important;overflow:hidden;clip-path:inset(50%);white-space:nowrap}

[data-kontur-widget="certificate"] .bc-kontur-modal-body{padding-top:0}

/* Compact searches are visible in the document, including without JavaScript. */
.bc-kontur-search [data-kontur-stage]:not([hidden]){margin-top:.5rem}
@media(max-width:640px){.bc-kontur-search{padding-inline:8px}}

/* Tool cards have their own compact reading hierarchy, independent of article H2 styles. */
.bc-kontur-tool:not(dialog){margin-block:1.5rem}
.bc-kontur-tool .bc-kontur-tool-intro h2{margin:0 0 .5rem!important;font-size:clamp(1.125rem,3vw,1.5rem)!important;line-height:1.3;letter-spacing:-.015em}
.bc-kontur-tool .bc-kontur-description{margin:0;font-size:1rem;line-height:1.5}
.bc-kontur-tool .bc-kontur-tool-intro .button{margin-top:.75rem;font-size:1rem}
.bc-kontur-tool .bc-kontur-fallback{margin:.5rem 0 0;font-size:.875rem;line-height:1.5;color:#58675e}
.bc-kontur-tool .bc-kontur-fallback a{text-decoration:underline;text-underline-offset:3px}

/* Intrinsic wrapping keeps compact searches balanced in both articles and hubs. */
.bc-kontur-search{display:flex;flex-wrap:wrap;gap:.5rem 24px;align-items:center}
.bc-kontur-search .bc-kontur-tool-intro{flex:1 1 240px;min-width:0}
.bc-kontur-search [data-kontur-stage]:not([hidden]){flex:1.4 1 300px;min-width:0;max-width:374px;margin:0 auto}
.bc-kontur-search .bc-kontur-fallback{flex:1 0 100%;margin:0}
.bc-kontur-search iframe{background:transparent;border-radius:0}
.bc-kontur-inline [data-kontur-stage]:not([hidden]),.bc-kontur-inline .bc-kontur-fallback{max-width:720px;margin-inline:auto}
[data-kontur-widget="order-diadoc"] .bc-kontur-inline [data-kontur-stage],
[data-kontur-widget="order-diadoc"] .bc-kontur-inline .bc-kontur-fallback{max-width:640px}
[data-kontur-widget="order-diadoc"] .bc-kontur-inline [data-kontur-stage]{padding-inline:4px}
@media(min-width:700px){
 .bc-kontur-tool:not(.bc-kontur-search):not(dialog) .bc-kontur-tool-intro{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem 24px}
 .bc-kontur-tool:not(.bc-kontur-search):not(dialog) .bc-kontur-tool-intro h2{flex:1 0 100%;margin:0!important}
 .bc-kontur-tool:not(.bc-kontur-search):not(dialog) .bc-kontur-description{flex:1 1 320px;min-width:0}
 .bc-kontur-tool:not(.bc-kontur-search):not(dialog) .bc-kontur-tool-intro .button{flex:0 1 auto;margin-top:0}
}

/* In an open certificate flow the provider already supplies the visible heading. */
[data-kontur-widget="certificate"].bc-kontur-expanded-inline .bc-kontur-tool-intro{position:relative;display:flex;justify-content:flex-end}
[data-kontur-widget="certificate"].bc-kontur-expanded-inline .bc-kontur-tool-intro h2{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;margin:0!important}
[data-kontur-widget="certificate"].bc-kontur-expanded-inline .bc-kontur-description{display:none}
[data-kontur-widget="certificate"] .bc-kontur-inline iframe{background:transparent}
[data-kontur-widget="certificate"].bc-kontur-expanded-inline .bc-kontur-inline[open]{margin-top:.25rem}
.bc-kontur-expanded-inline .bc-kontur-tool-intro [data-kontur-open]{width:auto;min-height:44px;padding:0;border-radius:0;background:transparent;color:#173e32;font-size:1rem;line-height:1.5;text-decoration:underline;text-underline-offset:3px;box-shadow:none;flex:0 1 auto}
.bc-kontur-expanded-inline .bc-kontur-tool-intro [data-kontur-open]::after{display:none;animation:none}

/* One native dialog, styled as a centered lightbox on larger screens. */
@media(min-width:641px){
 .bc-kontur-modal{--bc-kontur-space:clamp(0px,calc((min(760px,100dvh - 24px) - var(--bc-kontur-content-height,760px) - 68px) / 4),12px);inset:50% auto auto 50%;transform:translate(-50%,-50%);width:min(860px,calc(100% - 48px));height:min(760px,calc(100dvh - 24px));max-height:calc(100dvh - 24px);margin:0;border-radius:20px;box-shadow:0 24px 90px #0005}
 .bc-kontur-modal-header{padding:var(--bc-kontur-space) 20px}
 [data-kontur-widget="certificate"] .bc-kontur-modal-header{padding:var(--bc-kontur-space) 20px}
 .bc-kontur-modal [data-kontur-stage]:not([hidden]){max-width:760px;margin-inline:auto}
 [data-kontur-widget="order-diadoc"] .bc-kontur-modal [data-kontur-stage]{max-width:720px;padding-inline:4px}
 .bc-kontur-modal .bc-kontur-modal-body{padding-top:var(--bc-kontur-space);padding-bottom:4px}
 .bc-kontur-modal .skb-order-form__row{margin-bottom:12px}
 .bc-kontur-modal .skb-order-form__group{margin-bottom:16px}
 .bc-kontur-modal .skb-order-form__label{font-size:16px;line-height:1.4}
 .bc-kontur-modal .skb-order-form__row_marketing-consent label{font-size:14px;line-height:1.5}
 .bc-kontur-modal .skb-order-form__row_marketing-consent span{font-size:inherit;line-height:inherit}
 .bc-kontur-modal .skb-order-form .button{font-size:16px;line-height:24px;padding:10px 18px;min-height:44px}
 .bc-kontur-modal .bc-kontur-fallback{max-width:760px;margin:4px auto 0;font-size:12px;line-height:16px}
}
section.bc-kontur-tool.bc-kontur-entry{background:transparent;border:0;border-radius:0;padding:0;margin:0}
section.bc-kontur-tool.bc-kontur-entry .bc-kontur-tool-intro{display:flex;flex-wrap:wrap;align-items:center;gap:0 18px}
section.bc-kontur-tool.bc-kontur-entry .bc-kontur-description{flex:1 1 220px;font-size:1rem;line-height:1.5}
.bc-kontur-entry [data-kontur-open]{min-height:44px;max-width:100%;font-size:1rem;text-decoration:underline;text-underline-offset:3px}
.bc-service-offer>section.bc-kontur-entry{width:100%;margin-top:12px;padding-top:12px;border-top:1px solid #d5dfc8}
.bc-kontur-early{max-width:850px;margin:0 auto 24px;padding:16px 20px;border:1px solid #d5dfc8;border-radius:18px;background:#e9f0dc}
@media(min-width:700px){.bc-showcase-review .bc-service-offer>section.bc-kontur-entry{grid-column:1/-1;grid-row:4}}

.bc-kontur-modal-close svg{display:block;width:22px;height:22px;pointer-events:none}
