:root{--navy:#103e66;--orange:#ed6627;--muted:#dbe6f1;--pale:#f4f8fc}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:system-ui,-apple-system,'Segoe UI',Arial,sans-serif;color:#153d60;background:#f7f9fc}.skip{position:absolute;top:-80px;left:12px;background:white;padding:10px;z-index:5}.skip:focus{top:12px}.hero{background:linear-gradient(110deg,#fff 0%,#fff 32%,#f3f9fd 66%,#e5f3fc 100%);overflow:hidden}.hero-inner{max-width:1440px;height:335px;margin:auto;position:relative;display:flex;align-items:center;isolation:isolate}.brand{position:relative;z-index:3;width:45%;padding:20px 30px 20px 46px}.brand img{display:block;width:min(100%,470px);height:auto;object-fit:contain}.scene{position:absolute;right:-2px;top:0;height:100%;width:68%;background:url('scene.webp') right center/auto 100% no-repeat;pointer-events:none;-webkit-mask-image:linear-gradient(to right,transparent 0%,#000 23%,#000 76%,transparent 100%);mask-image:linear-gradient(to right,transparent 0%,#000 23%,#000 76%,transparent 100%)}.hero-inner::after{content:'';position:absolute;z-index:2;inset:auto 0 0; height:65px;pointer-events:none;background:linear-gradient(to bottom,transparent,rgba(255,255,255,.78))}.hero-curve{position:absolute;inset:auto 0 0;width:100%;height:96px;z-index:2;pointer-events:none;opacity:.8}.hero-curve path:first-child{fill:#d6eafa;fill-opacity:.45}.hero-curve path:last-child{fill:none;stroke:#ef793d;stroke-width:2.2;stroke-opacity:.65}.navigation{background:linear-gradient(90deg,#124b78,#10385f);border-bottom:4px solid var(--orange)}.nav-inner{max-width:1440px;margin:auto;padding:0 38px}.nav-links{display:flex;align-items:center;gap:0;min-height:66px}.nav-links a{color:#fff;text-decoration:none;font-size:16px;font-weight:600;padding:13px 24px;border-right:1px solid #ffffff30}.nav-links a:first-child{border-left:1px solid #ffffff30}.nav-links a:hover,.nav-links a:focus-visible{background:#ffffff17}.menu-toggle{display:none}.page{max-width:1440px;margin:28px auto 30px;padding:0 38px;display:grid;grid-template-columns:245px minmax(0,1fr);gap:22px}.panel,.main-content{background:white;border:1px solid #e0e9f2;border-radius:7px;box-shadow:0 5px 22px #0a33570a}.panel{padding:0 18px 24px;margin-bottom:18px}.panel-title,.tile-top{height:28px;background:linear-gradient(90deg,#214f7e,#16416b);margin:0 -18px 22px;border-radius:6px 6px 0 0}.line{height:12px;background:#dbe5f0;border-radius:3px;margin:14px 0;width:100%}.line.short{width:58%}.line.medium{width:77%}.block{height:100px;background:#e7eef6;border-radius:5px}.main-content{padding:22px;min-height:470px}.hero-placeholder{height:140px;background:linear-gradient(120deg,#edf4fa,#dfeaf4);border-radius:5px;margin-bottom:24px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:28px}.tile{border:1px solid #dbe5f0;border-radius:6px;padding:0 18px 18px}.tile-top{height:20px}.dot{height:44px;width:44px;border-radius:50%;background:#d9e5f1;margin:0 auto 18px}.footer{background:#123f6b;min-height:75px}.footer-inner{max-width:1440px;margin:auto;display:flex;gap:24px;padding:30px 38px}.footer-inner span{width:90px;height:9px;border-radius:8px;background:#ffffff28}@media(max-width:850px){.hero-inner{height:255px}.brand{width:53%;padding-left:22px}.scene{width:75%;opacity:.88}.page{padding:0 18px;grid-template-columns:190px minmax(0,1fr)}.nav-inner{padding:0 12px}.nav-links a{padding:14px 15px;font-size:14px}}@media(max-width:620px){.hero-inner{height:245px;align-items:flex-start}.brand{padding:24px 20px;width:76%}.brand img{max-width:320px}.scene{width:100%;height:100%;background-size:auto 205px;background-position:right bottom;opacity:.68;-webkit-mask-image:linear-gradient(to right,transparent 0%,#000 38%,#000 82%,transparent 100%);mask-image:linear-gradient(to right,transparent 0%,#000 38%,#000 82%,transparent 100%)}.hero-curve{height:55px;opacity:.55}.navigation{position:relative}.menu-toggle{display:flex;align-items:center;justify-content:space-between;width:100%;padding:17px 14px;color:white;background:none;border:0;font:600 16px system-ui;cursor:pointer}.nav-links{display:none;min-height:0;flex-direction:column;align-items:stretch;padding-bottom:8px}.nav-links.open{display:flex}.nav-links a,.nav-links a:first-child{border:0;border-top:1px solid #ffffff24}.page{display:block;margin-top:18px;padding:0 14px}.sidebar{display:none}.main-content{padding:14px}.hero-placeholder{height:100px}.cards{grid-template-columns:1fr;gap:12px}.footer-inner{padding:25px 18px}}

/* V13: Originalgrafik der bevorzugten Variante ohne eingebranntes Logo oder Menü. */
.hero{background:linear-gradient(105deg,#fff 0%,#fff 31%,#f2f8fd 68%,#d8edfc 100%)}
.hero-inner{max-width:1600px;height:340px}
.brand{width:44%;padding-left:clamp(24px,5vw,86px)}
.brand img{width:min(100%,490px)}
.scene{right:0;width:66%;height:100%;background-image:url('scene.webp');background-size:cover;background-position:center 47%;-webkit-mask-image:linear-gradient(to right,transparent 0%,#000 19%,#000 100%);mask-image:linear-gradient(to right,transparent 0%,#000 19%,#000 100%)}
.hero-inner::after{display:none}
.navigation{border-bottom:5px solid #f36b24}
.nav-links{min-height:65px}
.nav-links a{font-size:17px}
@media(max-width:850px){.hero-inner{height:270px}.brand{width:52%;padding-left:20px}.scene{width:73%;background-position:53% center}}
@media(max-width:620px){.hero-inner{height:235px}.brand{width:78%;padding:18px 15px}.brand img{max-width:270px}.scene{width:100%;background-size:auto 235px;background-position:67% center;opacity:.78;-webkit-mask-image:linear-gradient(to right,transparent 12%,#000 58%);mask-image:linear-gradient(to right,transparent 12%,#000 58%)}.nav-links a{font-size:16px}}

/* V14 – Szenengrafik vollflächig am tatsächlichen Viewportrand statt
   am 1600px breiten Inhaltscontainer. Kein rechter Rechteckabschluss. */
.hero{position:relative;isolation:isolate;background:linear-gradient(105deg,#fff 0%,#fff 30%,#f3f9fd 64%,#d9edfb 100%)}
.hero>.scene{position:absolute;z-index:0;inset:0 0 0 auto;width:min(1100px,72vw);height:100%;background-image:url('scene.webp');background-repeat:no-repeat;background-position:right center;background-size:cover;pointer-events:none;opacity:1;-webkit-mask-image:linear-gradient(to right,transparent 0%,#000 20%,#000 100%);mask-image:linear-gradient(to right,transparent 0%,#000 20%,#000 100%)}
.hero-inner{position:relative;z-index:1;pointer-events:none}
.brand{pointer-events:auto}
@media(max-width:850px){.hero>.scene{width:78vw;background-position:right center}}
@media(max-width:620px){.hero>.scene{width:100%;background-size:auto 235px;background-position:right center;opacity:.78;-webkit-mask-image:linear-gradient(to right,transparent 10%,#000 65%);mask-image:linear-gradient(to right,transparent 10%,#000 65%)}}

/* V16: Navigation aus V15, ohne die zusätzliche Welle. */
.nav-links a{font-size:18px;padding:15px 27px;line-height:1.25}
.nav-links{min-height:68px}
@media(max-width:850px){.nav-links a{font-size:15px;padding:14px 17px}}
@media(max-width:620px){.nav-links a{font-size:16px;padding:14px 16px}}


/* V17 – ausschließlich Tablet-/Smartphone-Optimierung. Desktop ab 901px unverändert. */
@media (min-width:621px) and (max-width:900px) {
  .hero-inner{height:275px}
  .brand{width:48%;padding-left:24px;padding-right:8px}
  .brand img{max-width:340px}
  .hero>.scene{width:74vw;background-position:57% center;background-size:cover;
    -webkit-mask-image:linear-gradient(to right,transparent 0%,#000 35%,#000 100%);
    mask-image:linear-gradient(to right,transparent 0%,#000 35%,#000 100%)}
  .nav-inner{padding:0 18px}
  .nav-links a{font-size:15px;padding:14px 16px}
  .page{grid-template-columns:190px minmax(0,1fr);padding:0 20px}
  .cards{gap:10px}
}
@media (max-width:620px) {
  .hero{background:#fff}
  .hero-inner{height:118px;align-items:center}
  .brand{width:100%;padding:14px 18px}
  .brand img{width:min(100%,310px);max-width:310px;height:auto}
  /* Die Szene steht unter dem Logo statt hinter dessen Schrift.
     Hintergrund ist die freigegebene V16-Szenendatei. */
  .hero>.scene{position:relative;inset:auto;width:100%;height:205px;
    background-image:url('scene.webp');background-size:auto 205px;
    background-position:right center;background-repeat:no-repeat;opacity:1;
    -webkit-mask-image:linear-gradient(to right,transparent 0%,#000 22%,#000 100%);
    mask-image:linear-gradient(to right,transparent 0%,#000 22%,#000 100%)}
  .hero{display:flex;flex-direction:column-reverse;background:linear-gradient(100deg,#fff 0%,#eff7fd 100%)}
  .hero-inner{order:2;width:100%}
  .hero>.scene{order:1}
  .navigation{border-bottom-width:4px}
  .nav-inner{padding:0 12px}
  .menu-toggle{min-height:58px;padding:13px 10px;font-size:17px;gap:16px}
  .menu-toggle:focus-visible,.nav-links a:focus-visible{outline:3px solid #ffb16f;outline-offset:-3px}
  .nav-links{padding:0 0 8px}
  .nav-links a{display:block;min-height:48px;padding:14px 12px;font-size:16px}
  .page{margin-top:18px;padding:0 14px}
  .main-content{padding:16px;min-height:0}
  .sidebar{display:none}
  .cards{grid-template-columns:1fr;gap:14px}
  .footer-inner{padding:22px 18px}
}
@media (max-width:370px){
  .hero-inner{height:102px}
  .brand img{max-width:270px}
  .hero>.scene{height:180px;background-size:auto 180px}
}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
/* V18 – zurückhaltend modernisierte Inhaltsflächen; Desktop-Header bleibt V16. */
.page{gap:26px;margin-top:34px}.panel,.main-content{border-color:#e5edf4;border-radius:12px;box-shadow:0 8px 26px rgba(16,62,102,.045)}
.panel{padding:18px;margin-bottom:20px}.panel-title{height:5px;margin:0 0 24px;border-radius:10px;background:#245780}.main-content{padding:30px}.hero-placeholder{border-radius:9px;background:linear-gradient(115deg,#edf5fb,#e3eef7)}.cards{gap:18px}.tile{border-color:#e5edf4;border-radius:10px;padding:20px;box-shadow:0 3px 15px #0a335706}.tile-top{height:5px;border-radius:8px;margin:-20px -20px 22px;background:#245780}.line{background:#dce7f1}
@media(max-width:850px){.page{gap:16px}.main-content{padding:20px}}
@media(max-width:620px){
  /* Mobile Reihenfolge: Logo, reduzierte Szene, Navigation. */
  .hero{display:flex;flex-direction:column;background:linear-gradient(100deg,#fff,#eff7fd)}
  .hero-inner{order:0;height:112px;flex:none;align-items:center}
  .hero>.scene{order:1;flex:none;height:190px;background-size:auto 190px;background-position:88% center;opacity:1;
    -webkit-mask-image:linear-gradient(to right,transparent 0%,#000 22%,#000 100%);
    mask-image:linear-gradient(to right,transparent 0%,#000 22%,#000 100%)}
  .brand{padding:13px 18px}.brand img{max-width:285px}
  .page{margin-top:18px;padding:0 14px}.main-content{padding:18px;border-radius:10px}
  .hero-placeholder{height:105px}.cards{gap:12px}.tile{padding:18px}.tile-top{margin:-18px -18px 20px}
}
@media(max-width:370px){.hero-inner{height:100px}.brand img{max-width:255px}.hero>.scene{height:170px;background-size:auto 170px}}

/* V18: echte Inhalte statt Platzhalter */
.nav-links{flex-wrap:wrap}.nav-links a{font-size:14px;padding:13px 14px}.sidebar .panel h2{font-size:1.05rem;color:#103e66;margin:0 0 12px}.sidebar .panel p{line-height:1.6;font-size:.94rem}.sidebar .panel a{color:#174f85;font-weight:600}.main-content{line-height:1.7;color:#253443}.main-content h1{color:#103e66;font-size:clamp(1.65rem,2.5vw,2.2rem);line-height:1.25;margin:0 0 18px}.main-content h2{color:#103e66;font-size:1.35rem;margin:30px 0 10px}.main-content p{margin:0 0 16px}.main-content .lead{font-size:1.1rem}.main-content a{color:#174f85}.topic-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:18px 0 26px}.topic{display:flex;flex-direction:column;gap:8px;min-width:0;padding:20px;background:#f7fafd;border:1px solid #dce5ee;border-radius:11px;color:#253443!important;text-decoration:none}.topic:hover,.topic:focus-visible{border-color:#789ab9;box-shadow:0 5px 16px #103e661a}.topic strong{color:#103e66}.topic p{margin:0}.topic>span:last-child{font-size:.87rem;color:#174f85;margin-top:auto}.symbol{display:grid;place-items:center;width:44px;height:44px;border-radius:9px;background:#e5eff7;color:#103e66;font-size:25px}.tags{grid-template-columns:repeat(3,minmax(0,1fr))}.action{display:inline-block;background:#103e66;color:white!important;text-decoration:none;border-radius:7px;padding:10px 16px;font-weight:600}.footer-inner{flex-wrap:wrap}.footer-inner a{color:#fff;text-decoration:none}.footer-inner a:hover{text-decoration:underline}@media(max-width:950px){.tags{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:620px){.topic-grid,.tags{grid-template-columns:1fr}.nav-links{flex-direction:column}.main-content h1{font-size:1.55rem}}

/* V18 typographic consistency: justified running text, never headings or controls */
html { -webkit-text-size-adjust: 100%; }
.main-content, .sidebar, .fh-contact { font-family: system-ui, -apple-system, "Segoe UI", Arial, sans-serif; }
.main-content p, .main-content li, .sidebar .panel p,
.fh-contact p, .fh-contact li {
  text-align: justify;
  text-justify: inter-word;
  hyphens: auto;
  -webkit-hyphens: auto;
  overflow-wrap: break-word;
}
.main-content h1, .main-content h2, .main-content h3,
.sidebar h2, .main-content .action, .main-content .topic,
.fh-contact h1, .fh-contact h2, .fh-contact label,
.fh-contact button { text-align: left; }
@media (max-width: 620px) {
  .main-content p, .main-content li, .sidebar .panel p,
  .fh-contact p, .fh-contact li {
    text-align: justify;
    hyphens: auto;
  }
}

/* SEO and editorial endcheck: justified prose with German hyphenation */
html[lang="de"] .main-content p,
html[lang="de"] .main-content li,
html[lang="de"] .sidebar .panel p,
html[lang="de"] .fh-contact p,
html[lang="de"] .fh-contact li {
  text-align: justify;
  text-justify: inter-word;
  hyphens: auto;
  -webkit-hyphens: auto;
  overflow-wrap: break-word;
}
html[lang="de"] .main-content h1,
html[lang="de"] .main-content h2,
html[lang="de"] .main-content h3,
html[lang="de"] .main-content .action,
html[lang="de"] .main-content .topic,
html[lang="de"] .fh-contact label,
html[lang="de"] .fh-contact button { text-align: left; }

/* V18 Schlussredaktion: main content first in document order; preserve sidebar on left */
@media (min-width: 621px) {
  .page > .main-content { grid-column: 2; grid-row: 1; min-width: 0; }
  .page > .sidebar { grid-column: 1; grid-row: 1; min-width: 0; }
}
