/* noDSB Portal – no trackers, remote fonts or dependencies */
:root{--nd-ink:#153044;--nd-petrol:#087e79;--nd-petrol-dark:#065d59;--nd-mist:#f2f7f7;--nd-muted:#4b6570;--nd-border:#d9e5e7;--nd-white:#fff;--nd-radius:16px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0}a{text-underline-offset:3px}a:hover{color:var(--nd-petrol-dark)}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid #e39c1b;outline-offset:4px}img{max-width:100%;height:auto}.wp-site-blocks{overflow:hidden}.nd-container{max-width:1200px;margin-inline:auto;padding-inline:clamp(20px,4vw,44px)}.nd-header{border-bottom:1px solid var(--nd-border);background:#fff}.nd-header-inner{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:96px}.nd-brand{display:flex;align-items:center;gap:12px;text-decoration:none!important;color:var(--nd-ink)}.nd-mark{width:53px;height:53px;flex:0 0 auto}.nd-brandname{display:block;font-size:30px;font-weight:800;letter-spacing:-1.3px;line-height:1}.nd-tagline{display:block;font-size:10px;font-weight:750;letter-spacing:1.5px;color:var(--nd-petrol);margin-top:7px}.nd-header .wp-block-navigation a{color:var(--nd-ink);text-decoration:none}.nd-header .wp-block-navigation a:hover{color:var(--nd-petrol)}.nd-hero{background:linear-gradient(125deg,#f2faf8 0%,#fff 68%);padding:clamp(65px,8vw,120px) 0 90px}.nd-hero-grid{display:grid;grid-template-columns:1.25fr .75fr;align-items:center;gap:clamp(30px,6vw,100px)}.nd-eyebrow{text-transform:uppercase;letter-spacing:2px;color:var(--nd-petrol);font-size:12px;font-weight:800;margin:0 0 20px}.nd-hero h1{font-size:clamp(40px,5.1vw,72px);letter-spacing:-2px;max-width:790px;margin:0 0 20px;line-height:1.07}.nd-hero h1 em{color:var(--nd-petrol);font-style:normal}.nd-lead{color:var(--nd-muted);font-size:clamp(17px,1.7vw,21px);line-height:1.65;max-width:720px}.nd-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}.nd-button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 21px;border-radius:9px;background:var(--nd-petrol);color:white!important;text-decoration:none;font-weight:700}.nd-button:hover{background:var(--nd-petrol-dark)}.nd-button-outline{background:white;color:var(--nd-petrol)!important;border:1px solid var(--nd-petrol)}.nd-hero-art{border-radius:30px;background:linear-gradient(145deg,#dff1ed,#edf8f7);display:flex;align-items:center;justify-content:center;min-height:320px;position:relative;box-shadow:0 24px 70px #0e5e5920}.nd-hero-art img{width:min(62%,250px);filter:drop-shadow(0 20px 15px #085f5b26)}.nd-art-label{position:absolute;bottom:24px;left:24px;right:24px;text-align:center;color:#326963;font-weight:750;letter-spacing:2px;font-size:12px}.nd-section{padding:90px 0}.nd-section-soft{background:var(--nd-mist)}.nd-section-head{max-width:800px;margin-bottom:35px}.nd-section h2{font-size:clamp(31px,3.2vw,44px);letter-spacing:-1px;margin:0 0 14px}.nd-section-desc{color:var(--nd-muted);font-size:18px;margin:0}.nd-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.nd-grid-3{grid-template-columns:repeat(3,1fr)}.nd-card{background:#fff;border:1px solid var(--nd-border);border-radius:var(--nd-radius);padding:27px;display:flex;flex-direction:column;gap:12px;box-shadow:0 8px 25px #10374d09}.nd-card-icon{font-size:23px;color:var(--nd-petrol);line-height:1}.nd-card h3{font-size:20px;line-height:1.28;margin:0}.nd-card p{color:var(--nd-muted);font-size:15px;line-height:1.65;margin:0;flex:1}.nd-card a{font-size:14px;font-weight:750;color:var(--nd-petrol)}.nd-library{background:#fff;border:1px solid var(--nd-border);border-radius:22px;padding:clamp(25px,4vw,50px);display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center}.nd-topic-list{display:flex;flex-wrap:wrap;gap:10px;padding:0;list-style:none}.nd-topic-list li a{display:block;padding:9px 15px;background:var(--nd-mist);border:1px solid var(--nd-border);border-radius:22px;color:var(--nd-ink);font-size:14px;text-decoration:none}.nd-topic-list li a:hover{border-color:var(--nd-petrol)}.nd-person{display:grid;grid-template-columns:2fr 1fr;gap:70px;align-items:center}.nd-avatar{background:linear-gradient(155deg,#d2eae6,#f4f9f8);height:280px;border-radius:22px;display:grid;place-items:center;color:var(--nd-petrol);text-align:center;padding:20px;font-weight:750}.nd-quote{border-left:4px solid var(--nd-petrol);padding-left:20px;color:var(--nd-muted);font-size:19px;font-weight:550}.nd-cta{background:#11625f;color:white;padding:75px 0}.nd-cta h2{color:white}.nd-cta p{color:#e1f2ed;max-width:680px}.nd-cta .nd-button{background:white;color:#075d59!important}.nd-footer{background:#153044;color:#d5e5eb;padding:45px 0}.nd-footer a{color:#e5f8f5}.nd-footer-inner{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}.nd-footer-links{display:flex;gap:18px;flex-wrap:wrap}.nd-footer small{color:#d5e5eb}.nd-content-header{background:var(--nd-mist);padding:65px 0}.nd-content-header h1{font-size:clamp(32px,4vw,54px);margin:0}.nd-content{padding-block:55px 95px}.nd-content p{line-height:1.75}.nd-post-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.nd-post-grid article{background:white;padding:24px;border-radius:15px;border:1px solid var(--nd-border)}.nd-post-grid h3{font-size:21px;margin:0 0 12px}.nd-post-grid .wp-block-post-excerpt{color:var(--nd-muted);font-size:15px}.nd-skip{position:absolute;top:-100px;left:10px;z-index:999;background:white;color:#153044;padding:12px}.nd-skip:focus{top:10px}.nd-notice{background:#e6f2ef;border-left:4px solid var(--nd-petrol);padding:18px 20px;border-radius:5px}.nd-footer p{margin:0}@media(max-width:1020px){.nd-grid{grid-template-columns:repeat(2,1fr)}.nd-hero-grid{grid-template-columns:1.4fr .6fr}.nd-hero-art{min-height:270px}}@media(max-width:750px){.nd-header-inner{min-height:78px}.nd-brandname{font-size:26px}.nd-mark{width:42px;height:42px}.nd-hero{padding:55px 0}.nd-hero-grid,.nd-library,.nd-person{grid-template-columns:1fr}.nd-hero-art{min-height:200px;max-height:240px}.nd-hero-art img{width:130px}.nd-section{padding:65px 0}.nd-grid,.nd-grid-3,.nd-post-grid{grid-template-columns:1fr}.nd-person{gap:25px}.nd-avatar{height:180px}.nd-footer-inner{align-items:flex-start;flex-direction:column}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* noDSB 1.1: editor-compatible brand and portable SVG assets */
.nd-brand .wp-block-site-title{margin:0;font-size:30px;font-weight:800;letter-spacing:-1.3px;line-height:1}
.nd-brand .wp-block-site-title a{color:var(--nd-ink);text-decoration:none}
.nd-brand .nd-tagline{font-size:10px;font-weight:750;letter-spacing:1.5px;color:var(--nd-petrol);margin:7px 0 0}
.nd-mark{display:inline-block;background:url('../images/nodsb-mark.svg') center/contain no-repeat}
.nd-hero-symbol{display:block;width:min(62%,250px);height:230px;background:url('../images/nodsb-mark.svg') center/contain no-repeat;filter:drop-shadow(0 20px 15px #085f5b26)}
.nd-header .wp-block-navigation__container{gap:clamp(10px,1.5vw,24px)}
.nd-content .wp-block-heading{scroll-margin-top:24px}
@media(max-width:750px){.nd-brand .wp-block-site-title{font-size:26px}.nd-hero-symbol{height:150px;width:150px}}

/* Version 1.2: make native Gutenberg groups reproduce the homepage sections */
.nd-hero .nd-hero-grid,.nd-grid,.nd-library,.nd-person,.nd-actions{display:grid}.nd-actions{display:flex}
.nd-card .wp-block-heading{margin:0}.nd-card .wp-block-paragraph{margin:0}
.nd-hero .nd-hero-grid>.wp-block-group,.nd-library>.wp-block-group,.nd-person>.wp-block-group{min-width:0}
.nd-section .nd-section-head>.wp-block-heading{margin:0 0 14px}
.nd-card>.wp-block-paragraph:last-child{margin-top:auto}
.nd-hero-art .nd-hero-symbol{height:230px}
.nd-cta .nd-eyebrow{color:#b5ebe0}
.nd-hero .wp-block-heading{line-height:1.07}
.nd-section .nd-grid{margin-top:30px}
.nd-section .nd-card{margin:0}

/* 1.3 – editable Gutenberg blocks and sections */
.nd-hero-art .nd-hero-symbol{margin:auto;background-repeat:no-repeat}.nd-hero-art .nd-art-label{position:absolute;bottom:24px;left:20px;right:20px;text-align:center;margin:0}.nd-cta .wp-block-button__link{background:#fff;color:#065d59;border-radius:9px;font-weight:700;padding:14px 25px}.nd-cta .wp-block-button__link:hover{background:#e3f4ef;color:#065d59}.nd-section + .wp-block-query.nd-container{margin-block:-20px 85px}.nd-section + .wp-block-query .wp-block-post-template{gap:20px}.nd-hero .nd-hero-symbol{flex-shrink:0}.block-editor-block-list__layout .nd-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.block-editor-block-list__layout .nd-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}@media(max-width:900px){.block-editor-block-list__layout .nd-grid,.block-editor-block-list__layout .nd-grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.block-editor-block-list__layout .nd-grid,.block-editor-block-list__layout .nd-grid-3{grid-template-columns:1fr}}

/* v1.5.0: Keep logo and main navigation aligned on desktop and move menu to mobile overlay on narrow layouts. */
@media (min-width: 1100px) {
  .nd-header-inner { flex-wrap: nowrap !important; }
  .nd-header .nd-navigation { margin-left: auto; min-width: 0; }
  .nd-header .wp-block-navigation__container { flex-wrap: nowrap !important; gap: clamp(9px, 1vw, 16px); }
  .nd-header .wp-block-navigation-item__label { white-space: nowrap; font-size: 13px; }
  .nd-brand { flex-shrink: 0; }
}
@media (max-width: 1099px) {
  .nd-header-inner { flex-wrap: nowrap !important; }
  .nd-header .wp-block-navigation__responsive-container-open:not(.always-shown) { display: flex; }
  .nd-header .wp-block-navigation__responsive-container:not(.is-menu-open) { display: none; }
}

/* 1.6.1: Hero-Schaltflächen optisch auf einer Achse halten.
   WordPress-Blockabstände und Standard-Absatzränder dürfen die Buttons
   nicht gegeneinander versetzen, auch nicht im Gutenberg-Editor. */
.nd-hero .nd-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px;
}
.nd-hero .nd-actions > p,
.nd-hero .nd-actions > .wp-block-paragraph {
  display: flex;
  align-items: center;
  margin: 0 !important;
  padding: 0;
}
.nd-hero .nd-actions > p + p {
  margin-block-start: 0 !important;
}
.nd-hero .nd-actions .nd-button {
  display: inline-flex;
  min-height: 48px;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  line-height: 1.35;
  text-align: center;
}

/* noDSB knowledge page 1.7.0: Gutenberg-native editorial components */
.nd-knowledge-kicker {font-weight:750;letter-spacing:.13em;text-transform:uppercase;color:#087e79;font-size:.79rem;margin-top:2rem}
.nd-knowledge-callout {border-left:5px solid #087e79;background:#eef6f4;padding:1.2rem 1.65rem;margin:2rem 0;border-radius:0 12px 12px 0}
.nd-knowledge-callout h3 {margin-top:0;color:#10283f}
.nd-knowledge-callout p:last-child {margin-bottom:0}
.nd-knowledge-image {border:2px dashed #83bab6;background:#f2f8f8;min-height:190px;border-radius:15px;padding:2.2rem 1.4rem;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;margin:2.2rem 0}
.nd-knowledge-image .nd-image-kicker {font-weight:750;color:#087e79;text-transform:uppercase;letter-spacing:.08em;margin:0 0 .4rem}
.nd-knowledge-image .nd-image-desc{font-size:1.05rem;color:#314e59;margin:0}
.nd-knowledge-image .nd-image-help {font-size:.8rem;color:#536d72;margin:.6rem 0 0}
.nd-knowledge-footnote {font-size:.88rem;color:#52636b;border-top:1px solid #dfe7e8;padding-top:1.2rem}
.nd-content .wp-block-post-content > h2 {scroll-margin-top:100px;margin-top:2.2rem;color:#10283f}
.nd-content .wp-block-post-content > h3 {color:#164c57;margin-top:1.3rem}
.nd-content .wp-block-post-content a {text-underline-offset:3px}
@media (max-width:600px){.nd-knowledge-image{padding:1.2rem;min-height:155px}.nd-knowledge-callout{padding:1rem}}

/* noDSB 1.7.1: editable, responsive knowledge illustrations */
.nd-knowledge-illustration{margin:2rem auto 2.5rem;max-width:860px}
.nd-knowledge-illustration img{display:block;width:100%;height:auto;border-radius:16px}
@media(max-width:700px){.nd-knowledge-illustration{margin:1.4rem auto 2rem}.nd-knowledge-illustration img{border-radius:10px}}

/* Über mich – Gutenberg-Seite 1.7.7 */

      .nodsb-about-page{line-height:1.75}
      .nodsb-about-page .nodsb-about-hero{margin:1.8rem 0 2.5rem;gap:2.2rem}
      .nodsb-about-page .nodsb-about-portrait img{border-radius:12px;width:100%;height:auto;display:block}
      .nodsb-about-page h2{margin-top:2.5rem}
      .nodsb-about-page .nodsb-about-quote{border-inline-start:4px solid currentColor;padding:1rem 1.5rem;margin:2rem 0;background:rgba(130,130,130,.07)}
      .nodsb-about-page .nodsb-about-quote p{font-size:1.23em;font-weight:600}
      .nodsb-about-page .nodsb-about-logos{align-items:center;gap:1.5rem;margin:1.5rem 0 2.5rem}
      .nodsb-about-page .nodsb-about-logo img{height:165px;width:100%;object-fit:contain}
      .nodsb-about-page .nodsb-about-logos .wp-block-column p{text-align:center;font-size:.82em;line-height:1.4}
      @media(max-width:781px){.nodsb-about-page .nodsb-about-portrait img{max-width:420px}.nodsb-about-page .nodsb-about-logo img{height:140px}}


/* 1.7.9 – original portrait in first homepage hero, including existing Gutenberg content */
body.home .nd-hero-art .nd-hero-symbol,
body.home .nd-hero .nd-hero-art .nd-hero-symbol {
  display:block; width:min(78%, 310px); height:clamp(260px,33vw,390px);
  border-radius:20px;
  background-image:url('../about/miro-berbig-portraet.jpg');
  background-repeat:no-repeat; background-position:center 28%; background-size:cover;
  box-shadow:0 15px 35px rgba(10,55,57,.18); filter:none; margin:24px auto 44px;
}
body.home .nd-hero-art {min-height:410px;}
@media(max-width:750px){body.home .nd-hero-art {min-height:310px;max-height:none;}
body.home .nd-hero-art .nd-hero-symbol{width:min(74%,230px);height:280px;margin:16px auto 40px;}}

/* 1.7.10 – Gutenberg native columns, stable text and replaceable portrait */
.nd-hero .nd-hero-columns {display:flex;align-items:center;gap:clamp(24px,4vw,56px);flex-wrap:nowrap}
.nd-hero .nd-hero-columns>.wp-block-column {min-width:0;box-sizing:border-box}
.nd-hero .nd-hero-columns>.nd-hero-copy {flex:0 1 60%;max-width:60%}
.nd-hero .nd-hero-columns>.nd-hero-visual {flex:0 1 40%;max-width:40%}
.nd-hero .nd-hero-columns .nd-hero-art {min-height:0;padding:16px;display:block}
.nd-hero .nd-home-portrait {margin:0 auto}
.nd-hero .nd-home-portrait img {display:block;width:100%;height:auto;max-height:460px;object-fit:cover;object-position:center 25%;border-radius:18px;box-shadow:0 12px 28px rgba(10,55,57,.14)}
.nd-hero .nd-hero-columns .nd-art-label {position:static;margin:12px 0 0;text-align:center}
@media(max-width:781px){.nd-hero .nd-hero-columns {flex-direction:column;align-items:stretch}.nd-hero .nd-hero-columns>.nd-hero-copy,.nd-hero .nd-hero-columns>.nd-hero-visual {flex-basis:auto!important;max-width:100%;width:100%}.nd-hero .nd-home-portrait img{max-height:390px;object-fit:contain}}

/* NoDSB 1.7.12: services editorial layout */
.nd-services-page{line-height:1.7}
.nd-services-page>h2{color:#10283f;margin:2.7rem 0 1rem;scroll-margin-top:110px}
.nd-services-page .nd-service-columns{gap:clamp(22px,3.5vw,48px);align-items:flex-start;margin:1.1rem 0 3rem}
.nd-services-page .nd-service-columns>.wp-block-column{min-width:0}
.nd-services-page .nd-service-image-slot{box-sizing:border-box;border:2px dashed #86b9b5;background:#f2f8f8;min-height:250px;border-radius:15px;padding:1.8rem 1.2rem;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}
.nd-services-page .nd-service-image-slot p{margin:.35rem 0;color:#36545b}
.nd-services-page .nd-service-image-slot p:first-child{color:#087e79}
.nd-services-page .nd-service-image-slot em{font-size:.78rem;color:#536d72}
.nd-services-page .nd-service-columns img{border-radius:15px;height:auto;max-width:100%}
@media(max-width:781px){.nd-services-page .nd-service-columns{flex-direction:column}.nd-services-page .nd-service-columns>.wp-block-column{flex-basis:auto!important;width:100%}.nd-services-page .nd-service-image-slot{min-height:180px}}

/* 1.7.13: Gutenberg image placeholders, exact 4:3 framing */
.nd-services-page .nd-service-image-4x3 {margin:0;width:100%;aspect-ratio:4/3;overflow:hidden;border-radius:15px;background:#f1f8f8;box-shadow:0 7px 22px rgba(15,69,72,.09)}
.nd-services-page .nd-service-image-4x3 img {display:block;width:100%;height:100%;aspect-ratio:4/3;object-fit:cover;border-radius:15px}
@media(max-width:781px){.nd-services-page .nd-service-image-4x3{width:100%}}

/* 1.7.14 privacy resources page */
.nd-privacy-page .nd-privacy-columns{margin:1.2rem 0 2.4rem;align-items:flex-start;gap:2rem}.nd-privacy-page .nd-privacy-columns .wp-block-column{min-width:0}.nd-privacy-page .nd-service-image-4x3{aspect-ratio:4/3;overflow:hidden;border-radius:14px;margin:0}.nd-privacy-page .nd-service-image-4x3 img{display:block;width:100%;height:100%;object-fit:cover}@media(max-width:780px){.nd-privacy-page .nd-privacy-columns{display:block}.nd-privacy-page .nd-privacy-columns .wp-block-column{width:100%;flex-basis:auto!important}.nd-privacy-page .nd-service-image-4x3{max-width:520px;margin:1rem 0 0}}

/* NoDSB 1.7.15: editorial directory with replaceable 4:3 previews */
.nd-help-page .nd-help-entry{border:1px solid #dce6e5;border-radius:16px;padding:clamp(16px,2.5vw,30px);margin:20px 0 26px;background:#fff}
.nd-help-page .nd-help-columns{align-items:center;gap:clamp(18px,3vw,40px)}
.nd-help-page .nd-help-preview-4x3{margin:0;aspect-ratio:4/3;overflow:hidden;border-radius:12px;background:#eef3f3}
.nd-help-page .nd-help-preview-4x3 img{width:100%;height:100%;aspect-ratio:4/3;object-fit:cover;display:block}
@media(max-width:781px){.nd-help-page .nd-help-columns{gap:15px}}

/* NoDSB 1.7.16 – Website examination tools */
.nd-tools-entry{padding:1.35rem 1.55rem;margin:1.4rem 0;border:1px solid #d9e6e5;border-radius:16px;background:#f9fcfb}
.nd-tools-entry h3{margin-top:0}.nd-tools-columns{gap:clamp(1rem,3vw,2.2rem);align-items:flex-start}
.nd-tools-preview-4x3{width:100%;margin:0}.nd-tools-preview-4x3 img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:12px;display:block}
@media(max-width:781px){.nd-tools-entry{padding:1.1rem}.nd-tools-columns{display:block}.nd-tools-columns>.wp-block-column{flex-basis:100%!important}.nd-tools-preview-4x3{margin-top:1rem}}

/* 1.7.18 Passwords, password safes and passkeys */
.nd-password-page .nd-password-columns{gap:clamp(1.1rem,3vw,2.3rem);align-items:flex-start;margin:1.15rem 0 2.35rem}
.nd-password-page .nd-password-preview-4x3{margin:0;width:100%;aspect-ratio:4/3;overflow:hidden;border-radius:15px;background:#ecf5f4}
.nd-password-page .nd-password-preview-4x3 img{width:100%;height:100%;display:block;object-fit:cover;aspect-ratio:4/3}
.nd-password-page .nd-password-table{overflow-x:auto}.nd-password-page .nd-password-table table{min-width:650px}
@media(max-width:781px){.nd-password-page .nd-password-columns{display:block}.nd-password-page .nd-password-columns>.wp-block-column{flex-basis:100%!important;width:100%}.nd-password-page .nd-password-preview-4x3{margin:1rem 0;max-width:520px}}

/* NoDSB 1.7.20: Featured-image previews for Aktuelles and archives */
.nd-content .wp-block-query .wp-block-post-template{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:24px;list-style:none;padding:0;margin:1.5rem 0}
.nd-content .wp-block-query .wp-block-post-template>li{margin:0;min-width:0}
.nd-content .wp-block-query .nd-card{height:100%;overflow:hidden}
.nd-news-featured-image{margin:0 0 12px;width:100%;aspect-ratio:4/3;overflow:hidden;border-radius:12px;background:#edf5f4}
.nd-news-featured-image img{display:block;width:100%;height:100%;object-fit:cover;aspect-ratio:4/3}
.nd-content .wp-block-query .nd-card .wp-block-post-title{line-height:1.3;margin:0}
.nd-content .wp-block-query .nd-card .wp-block-post-date{font-size:.85rem;color:#587477}
@media(max-width:700px){.nd-content .wp-block-query .wp-block-post-template{grid-template-columns:1fr}}
