@font-face{font-family:'Inter';font-style:normal;font-weight:100 900;font-display:swap;src:url('assets/fonts/inter-latin.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:'Inter';font-style:normal;font-weight:100 900;font-display:swap;src:url('assets/fonts/inter-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,Arial,sans-serif;color:#111;background:#fff}.wrap{width:min(1160px,calc(100% - 48px));margin:auto}.header{height:148px;background:#fff;display:flex;align-items:center;position:relative;z-index:20}.header-inner{display:flex;align-items:center;justify-content:space-between}.logo img{width:185px;display:block}.header nav{display:flex;gap:42px;align-items:center}.header nav a{color:#151515;text-decoration:none;font-size:14px;padding:16px 2px;position:relative}.header nav a.active:after,.header nav a:hover:after{content:"";position:absolute;left:0;right:0;bottom:5px;height:2px;background:#0d4db8}.btn{background:#0d4db8;color:#fff!important;text-decoration:none;border:0;border-radius:5px;padding:16px 28px;font-weight:600;display:inline-block;cursor:pointer}.menu{display:none;background:none;border:0;font-size:25px}.hero{display:grid;grid-template-columns:1fr 58%;align-items:stretch;position:relative;overflow:hidden;background:#f4f8fc}
.hero-image{grid-column:2;grid-row:1;position:relative;overflow:hidden;background:#0a315f}
.hero-image img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.hero-image .photo-tint{position:absolute;inset:0;background:linear-gradient(160deg,rgba(10,49,95,.35),rgba(13,77,184,.1) 55%,rgba(13,77,184,0))}
.values-photo svg{position:absolute;inset:0;width:100%;height:100%;display:block}
.net-line{stroke:rgba(255,255,255,.32);stroke-width:1}
.net-node{fill:#eaf1ff}
.net-node.hub{fill:#fff}
.net-pulse{animation:netPulse 3.2s ease-in-out infinite}
.net-pulse:nth-child(odd){animation-delay:.6s}
.net-pulse:nth-child(3n){animation-delay:1.3s}
@keyframes netPulse{0%,100%{opacity:.55;transform:scale(1)}50%{opacity:1;transform:scale(1.35)}}
@media (prefers-reduced-motion:reduce){.net-pulse{animation:none}}
.hero .wrap.hero-grid{grid-column:1;grid-row:1;width:auto;max-width:none;margin:0;height:auto;display:flex;align-items:center;padding:64px 24px 64px max(24px,calc((100vw - 1160px)/2))}
.hero-grid{height:100%;display:grid;grid-template-columns:46% 54%;align-items:center;position:relative}.hero-copy{padding-top:2px}.hero h1{font-size:43px;line-height:1.05;margin:0 0 25px;font-weight:800;letter-spacing:-1.5px}.hero h1 span{color:#104eb3}.hero p{font-size:16px;line-height:1.65;color:#333;max-width:430px;margin:0 0 26px}.actions{display:flex;align-items:center;gap:38px}.link{color:#0d4db8;text-decoration:none;font-weight:600;font-size:14px}.link b{font-size:22px;margin-left:12px}.services{padding:36px 0 41px}.center-heading{text-align:center}.center-heading small,.values-copy small{color:#0d4db8;font-size:12px;font-weight:800}.center-heading h2{font-size:27px;margin:8px 0 9px}.center-heading i,.values-copy i{display:block;width:54px;height:2px;background:#0d4db8;margin:0 auto 26px}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:23px}.card{border:1px solid #e3e7ed;border-radius:7px;text-align:center;padding:25px 19px 23px;min-height:178px}.card .icon{font-size:42px;line-height:1;color:#0d4db8;margin-bottom:15px}.card h3{font-size:14px;margin:0 0 10px}.card p{font-size:12px;line-height:1.65;color:#333;margin:0}.values{background:linear-gradient(90deg,#f4f8fc 0 40%,#e6eef8 40% 72%,#0a315f 72%);min-height:324px}.values-grid{display:grid;grid-template-columns:40% 32% 28%;min-height:324px}.values-copy{padding:34px 34px 30px 0}.values-copy h2{font-size:27px;margin:8px 0 10px}.values-copy i{margin:0 0 18px}.values-copy p{font-size:13px;line-height:1.65;color:#333}.values-copy ul{list-style:none;padding:7px 0 0;margin:0}.values-copy li{font-size:13px;margin:12px 0;font-weight:500}.values-copy li:before{content:'✓';display:inline-grid;place-items:center;width:19px;height:19px;border-radius:50%;background:#0d4db8;color:#fff;margin-right:12px}.values-photo{position:relative;overflow:hidden;background:linear-gradient(160deg,#0a315f 0%,#0d4db8 55%,#3f7ef2 100%);min-width:0}.vision{background:#0a315f;color:#fff;padding:41px 22px}.vision>div{display:grid;grid-template-columns:45px 1fr;gap:11px;margin-bottom:24px}.vision span{font-size:35px}.vision p{font-size:12px;line-height:1.5;margin:0}.vision b{display:block;font-size:13px;margin-bottom:4px}.cta{background:linear-gradient(135deg,#0a4fbe,#003e9b);color:#fff;padding:38px 0;position:relative;overflow:hidden}.cta:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 85% 40%,rgba(255,255,255,.15),transparent 30%);pointer-events:none}.cta-grid{display:grid;grid-template-columns:1.25fr 1fr auto;gap:50px;align-items:center;position:relative;z-index:1}.cta h2{font-size:28px;margin:0}.cta p{font-size:13px;line-height:1.6}.btn.white{background:#fff;color:#0d4db8!important;padding:14px 29px}footer{background:#052348;color:#fff;padding:31px 0 0}.footer-grid{display:grid;grid-template-columns:1.25fr .8fr 1.1fr .8fr;gap:65px}.footer-brand img{width:160px;filter:brightness(1.2)}.footer-brand p{font-size:12px;line-height:1.65}.footer-grid h3{font-size:12px;margin:5px 0 17px}.footer-grid a,.footer-grid span,.footer-grid button{display:block;color:#fff;background:none;border:0;padding:0;text-decoration:none;font:inherit;font-size:12px;margin:0 0 12px;text-align:left;cursor:pointer}.bottom{border-top:1px solid rgba(255,255,255,.14);margin-top:24px;padding:18px 0;display:flex;justify-content:space-between;font-size:11px}.bottom div{display:flex;gap:28px}.bottom button{background:none;border:0;color:#fff;font-size:11px;cursor:pointer}.cookies{position:fixed;left:24px;right:24px;bottom:20px;background:#fff;box-shadow:0 18px 60px rgba(0,0,0,.22);border:1px solid #e1e6ec;border-radius:10px;padding:18px 22px;display:flex;align-items:center;justify-content:space-between;gap:25px;z-index:50}.cookies p{margin:5px 0 0;font-size:12px}.cookies>div:last-child{display:flex;gap:12px}.cookies button:not(.btn){border:1px solid #cfd7e3;background:#fff;padding:13px 18px;border-radius:5px;cursor:pointer}dialog{border:0;border-radius:10px;max-width:650px;padding:32px;box-shadow:0 20px 80px #0005}dialog::backdrop{background:#001a3a99}.close{position:absolute;right:14px;top:10px;border:0;background:none;font-size:28px;cursor:pointer}.note{background:#eef4fb;padding:12px}.reveal{opacity:0;transform:translateY(16px);transition:.65s ease}.reveal.visible{opacity:1;transform:none}@media(max-width:900px){.header{height:auto;padding:18px 0}.header nav{display:none;position:absolute;top:82px;left:0;right:0;background:#fff;padding:20px 24px;flex-direction:column;gap:6px;box-shadow:0 15px 30px #0002}.header nav.open{display:flex}.menu{display:block}.hero{grid-template-columns:1fr}.hero-image{grid-column:1;grid-row:2;order:2;height:290px}.hero .wrap.hero-grid{grid-column:1;grid-row:1;order:1;padding:40px 24px}.hero h1{font-size:38px}.cards{grid-template-columns:repeat(2,1fr)}.values{background:#f4f8fc}.values-grid{grid-template-columns:1fr 1fr}.vision{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr)}.cta-grid{grid-template-columns:1fr;gap:15px}.footer-grid{grid-template-columns:1fr 1fr}}@media(max-width:600px){.wrap{width:min(100% - 30px,1160px)}.logo img{width:145px}.hero h1{font-size:33px}.actions{align-items:flex-start;flex-direction:column;gap:18px}.cards{grid-template-columns:1fr}.values-grid{grid-template-columns:1fr}.values-photo{height:250px}.vision{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr}.bottom{flex-direction:column;gap:15px}.cookies{left:10px;right:10px;flex-direction:column;align-items:stretch}.cookies>div:last-child{justify-content:flex-end}}.skip-link{position:fixed;left:12px;top:-60px;background:#fff;color:#052348;padding:12px 16px;z-index:100;text-decoration:none}.skip-link:focus{top:12px}.eyebrow{font-size:11px!important;font-weight:800;letter-spacing:.16em;color:#0d4db8!important;margin-bottom:14px!important}.holdings{padding:72px 0;background:#fff}.holdings-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:22px;align-items:stretch}
.holdings-grid>div:first-child{grid-column:1/-1}
.holdings small,.contact small{color:#0d4db8;font-weight:800;font-size:12px}.holdings h2,.contact h2{font-size:34px;line-height:1.15;margin:10px 0 18px}.holdings p,.contact p{font-size:14px;line-height:1.7;color:#414b59}
.holding-card{position:relative;border:1px solid #dfe6ef;border-radius:12px;padding:0;background:#fff;box-shadow:0 16px 45px rgba(5,35,72,.07);overflow:hidden;display:flex;flex-direction:column}
.holding-photo{position:relative;aspect-ratio:16/10;overflow:hidden}
.holding-photo img{width:100%;height:100%;object-fit:cover;display:block}
.holding-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(160deg,rgba(10,49,95,.4),rgba(13,77,184,.12) 60%,rgba(13,77,184,0))}.holding-icon{display:inline-grid;place-items:center;width:38px;height:38px;border-radius:50%;background:#0d4db8;color:#fff;box-shadow:0 8px 18px rgba(5,35,72,.15);margin-bottom:14px}
.holding-icon svg{width:18px;height:18px;display:block}
.holding-body{padding:28px 24px 24px;flex:1}
.holding-card h3{margin:6px 0 10px}.contact{padding:72px 0;background:#f5f8fc}.contact-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:80px}.contact-copy address{font-style:normal;line-height:1.75;margin:22px 0}.contact-copy>a{color:#0d4db8;font-weight:700;text-decoration:none}.contact-form{background:#fff;padding:34px;border-radius:12px;box-shadow:0 18px 60px rgba(5,35,72,.09)}.contact-form label{display:block;font-size:12px;font-weight:700;margin-bottom:16px}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.contact-form input,.contact-form textarea{width:100%;border:1px solid #ccd7e5;border-radius:6px;padding:13px 14px;font:inherit;margin-top:7px;background:#fff}.contact-form input:focus,.contact-form textarea:focus{outline:2px solid #90b8f3;border-color:#0d4db8}.contact-form .check{display:flex;gap:10px;align-items:flex-start;font-weight:400;line-height:1.45}.contact-form .check input{width:auto;margin-top:3px}.contact-form .check button{border:0;background:none;color:#0d4db8;text-decoration:underline;padding:0;font:inherit;cursor:pointer}.form-note{font-size:11px!important;margin-bottom:0}.footer-grid{grid-template-columns:1.3fr .8fr 1fr .8fr}.footer-logo{width:220px}.footer-brand img{width:100%;height:auto;filter:none;display:block}.cookies[hidden]{display:none}.cookies.show{display:flex}dialog{max-height:86vh;overflow:auto}dialog h3{margin-top:24px;color:#063d93;font-size:16px}@media(max-width:1050px){.holdings-grid{grid-template-columns:1fr 1fr}.holdings-grid>div:first-child{grid-column:1/-1}}@media(max-width:900px){.holdings-grid{grid-template-columns:1fr 1fr}.holdings-grid>div:first-child{grid-column:1/-1}.contact-grid{grid-template-columns:1fr;gap:35px}.footer-grid{grid-template-columns:1fr 1fr}}@media(max-width:600px){.holdings{padding:50px 0}.holdings-grid{grid-template-columns:1fr}.holdings-grid>div:first-child{grid-column:auto}.field-row{grid-template-columns:1fr}.contact{padding:50px 0}.contact-form{padding:23px}.footer-grid{grid-template-columns:1fr}.footer-logo{width:170px}}

/* Kontakt ohne Formular und korrigierter Wertebereich */
.values-grid{overflow:hidden}
.values-copy,.values-photo,.vision{min-width:0}
.vision{position:relative;z-index:2}
.contact-grid-simple{grid-template-columns:.9fr 1.1fr;align-items:center}
.contact-details{background:#fff;padding:32px 36px;border-radius:12px;box-shadow:0 18px 60px rgba(5,35,72,.09);display:grid;grid-template-columns:1fr 1fr;gap:28px 36px}
.contact-detail{display:grid;grid-template-columns:42px 1fr;gap:14px;align-items:start}
.contact-icon{width:42px;height:42px;border-radius:50%;background:#eaf2ff;color:#0d4db8;display:grid;place-items:center;font-size:20px;font-weight:700}
.contact-detail b{display:block;margin-bottom:7px;font-size:14px}
.contact-detail address{font-style:normal;line-height:1.65;color:#414b59;font-size:14px}
.contact-detail a{color:#0d4db8;text-decoration:none;font-weight:700;font-size:14px}
.contact-mail{grid-column:1/-1;justify-self:start}
@media(max-width:900px){.contact-grid-simple{grid-template-columns:1fr}.contact-details{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.contact-details{grid-template-columns:1fr;padding:24px}.contact-mail{grid-column:auto;width:100%;text-align:center}}

/* Sprachumschaltung */
.header-actions{display:flex;align-items:center;gap:18px}
.language-switcher{display:flex;align-items:center;gap:7px;font-size:11px;font-weight:800;color:#8b96a5;white-space:nowrap}
.language-switcher button{border:0;background:transparent;padding:4px 1px;color:#6d7784;font:inherit;cursor:pointer;transition:color .2s ease}
.language-switcher button:hover,.language-switcher button.active{color:#0d4db8}
.vision p span{display:block}
@media(max-width:900px){.header-actions{margin-left:auto}.language-switcher{font-size:10px}.header-inner{gap:14px}}
@media(max-width:600px){.language-switcher{gap:5px}.header-actions{gap:8px}.menu{order:3}.header-inner{flex-wrap:nowrap}}

/* Fix: keep the icon large, but use readable body text in the mission/vision/value panel. */
.vision > div > span {
  font-size: 35px;
  line-height: 1;
}

.vision p > span {
  display: block;
  font-size: 12px;
  line-height: 1.55;
  font-weight: 400;
  overflow-wrap: anywhere;
  word-break: normal;
}

@media (max-width: 900px) {
  .vision {
    padding: 32px 24px;
    gap: 20px;
  }

  .vision > div {
    grid-template-columns: 38px minmax(0, 1fr);
    gap: 12px;
    margin-bottom: 0;
  }

  .vision > div > span {
    font-size: 29px;
  }

  .vision b {
    font-size: 13px;
  }

  .vision p > span {
    font-size: 13px;
    line-height: 1.55;
  }
}

@media (max-width: 600px) {
  .vision {
    padding: 28px 20px;
  }

  .vision > div {
    grid-template-columns: 34px minmax(0, 1fr);
    gap: 12px;
    margin-bottom: 26px;
  }

  .vision > div:last-child {
    margin-bottom: 0;
  }

  .vision > div > span {
    font-size: 26px;
  }

  .vision b {
    font-size: 14px;
    margin-bottom: 6px;
  }

  .vision p > span {
    font-size: 14px;
    line-height: 1.6;
  }
}
