:root { color-scheme: light; font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; color: #102636; background: #fff; }
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; background: #fff; color: #102636; }
a { color: inherit; }
.partner-wrap { width: min(1180px, calc(100% - 48px)); margin: 0 auto; }
.partner-header { position: sticky; z-index: 100; top: 0; height: 72px; border-bottom: 1px solid rgba(255,255,255,.24); background: rgba(38,184,230,.96); backdrop-filter: blur(14px); }
.partner-header > nav { display: flex; align-items: center; justify-content: space-between; width: min(1200px, calc(100% - 48px)); height: 100%; margin: 0 auto; }
.partner-logo img { display: block; width: auto; height: 38px; filter: brightness(0) invert(1); }
.partner-navigation { display: flex; align-items: center; gap: 26px; }
.partner-navigation a { position: relative; color: rgba(255,255,255,.94); font-size: 13px; font-weight: 550; text-decoration: none; }
.partner-navigation a::after { position: absolute; right: 0; bottom: -9px; left: 0; height: 1px; background: #fff; content: ""; transform: scaleX(0); transition: transform 150ms ease; }
.partner-navigation a:hover::after, .partner-navigation a.is-current::after { transform: scaleX(1); }
.partner-actions { display: flex; align-items: center; gap: 8px; }
.partner-actions a { display:inline-flex; align-items:center; gap:7px; color:rgba(255,255,255,.95); padding:8px 5px; font-size:11px; font-weight:650; letter-spacing:.02em; text-decoration:none; transition:opacity 150ms ease; }
.partner-actions a:hover { opacity:.76; }
.partner-actions svg { width:17px; height:17px; flex:0 0 auto; }
.partner-mobile-nav { display: none; position: relative; }
.partner-mobile-nav summary { display: grid; place-items: center; width: 40px; height: 40px; border: 1px solid rgba(255,255,255,.5); border-radius: 7px; color: #fff; cursor: pointer; list-style: none; }
.partner-mobile-nav summary::-webkit-details-marker { display: none; }
.partner-mobile-nav > div { position: absolute; top: 48px; right: 0; display: grid; width: min(300px, calc(100vw - 28px)); border: 1px solid #e5ecef; background: #fff; box-shadow: 0 18px 40px rgba(8,40,57,.15); padding: 8px; }
.partner-mobile-nav a { padding: 13px 12px; border-bottom: 1px solid #eef2f4; color: #1a3443; font-size: 14px; text-decoration: none; }
.partner-mobile-nav a:last-child { border-bottom: 0; color: #0789b4; font-weight: 700; }
.partner-hero { border-bottom: 1px solid #eaf0f2; background: linear-gradient(180deg, #f7fcfe, #fff); padding: 96px 0 88px; }
.partner-hero__grid { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(330px, .75fr); align-items: center; gap: 88px; }
.partner-eyebrow { display: block; margin-bottom: 14px; color: #078fbd; font-size: 10px; font-weight: 800; letter-spacing: .2em; text-transform: uppercase; }
.partner-hero h1 { max-width: 790px; margin: 0; font-size: clamp(48px, 6vw, 76px); font-weight: 650; line-height: .98; letter-spacing: -.06em; }
.partner-hero__grid > div > p { max-width: 710px; margin: 28px 0 0; color: #5d7180; font-size: 18px; line-height: 1.75; }
.partner-hero__actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 36px; }
.partner-button { display: inline-flex; align-items: center; justify-content: center; min-height: 48px; border: 1px solid #d7e2e7; border-radius: 8px; background: #fff; color: #183343; padding: 0 20px; font-size: 13px; font-weight: 700; text-decoration: none; }
.partner-button.is-primary { border-color: #079bc9; background: #079bc9; color: #fff; }
.partner-hero__facts { border-top: 1px solid #ccdbe2; }
.partner-hero__media { height: 230px; margin: 0 0 10px; overflow: hidden; background: #dce8ed; }
.partner-hero__media img { display: block; width: 100%; height: 100%; object-fit: cover; }
.partner-hero__facts > div { display: grid; grid-template-columns: 32px 1fr; column-gap: 14px; border-bottom: 1px solid #dbe6ea; padding: 20px 0; }
.partner-hero__facts span { grid-row: 1 / 3; color: #079bc9; font-size: 11px; font-weight: 800; }
.partner-hero__facts strong { font-size: 16px; }
.partner-hero__facts p { margin: 5px 0 0; color: #697d8b; font-size: 13px; line-height: 1.5; }
.partner-section { padding: 88px 0; }
.partner-section.is-soft { background: #f5f9fa; }
.partner-section__heading { display: grid; grid-template-columns: minmax(250px,.7fr) minmax(0,1.3fr); align-items: end; gap: 70px; margin-bottom: 44px; }
.partner-section__heading .partner-eyebrow { align-self: start; }
.partner-section__heading h2 { margin: 0; font-size: clamp(34px,4vw,52px); line-height: 1.05; letter-spacing: -.05em; }
.partner-section__heading > p { grid-column: 2; margin: -48px 0 0; color: #647785; font-size: 15px; line-height: 1.65; }
.partner-services { display: grid; grid-template-columns: repeat(3,1fr); border-top: 1px solid #dbe5e9; border-left: 1px solid #dbe5e9; }
.partner-services article { min-height: 230px; border-right: 1px solid #dbe5e9; border-bottom: 1px solid #dbe5e9; padding: 26px; }
.partner-services article > span { color: #079bc9; font-size: 10px; font-weight: 800; }
.partner-services h3 { margin: 38px 0 10px; font-size: 21px; letter-spacing: -.025em; }
.partner-services p { margin: 0; color: #667987; font-size: 14px; line-height: 1.65; }
.partner-photo-row { display: grid; grid-template-columns: 1.25fr .75fr .75fr; gap: 12px; margin-top: 38px; }
.partner-photo-row figure { position: relative; height: 280px; margin: 0; overflow: hidden; background: #dce8ed; }
.partner-photo-row img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform 500ms ease; }
.partner-photo-row figure:hover img { transform: scale(1.025); }
.partner-photo-row figcaption { position: absolute; right: 0; bottom: 0; left: 0; background: linear-gradient(0deg,rgba(5,30,46,.78),transparent); color:#fff; padding:42px 20px 18px; font-size:12px; font-weight:750; letter-spacing:.09em; text-transform:uppercase; }
.partner-process ol { display: grid; grid-template-columns: repeat(4,1fr); margin: 0; padding: 0; border-top: 1px solid #d4e1e6; border-left: 1px solid #d4e1e6; list-style: none; }
.partner-process li { min-height: 250px; border-right: 1px solid #d4e1e6; border-bottom: 1px solid #d4e1e6; padding: 24px; }
.partner-process li > span { display: block; color: #079bc9; font-size: 28px; font-weight: 400; }
.partner-process li div { margin-top: 50px; }
.partner-process li strong { font-size: 17px; }
.partner-process li p { margin: 9px 0 0; color: #687c89; font-size: 13px; line-height: 1.6; }
.partner-standards { display: grid; grid-template-columns: minmax(0,1fr) minmax(420px,.9fr); gap: 80px; }
.partner-standards .partner-section__heading { display: block; margin: 0; }
.partner-checks { border-top: 1px solid #dbe5e9; }
.partner-checks p { display: grid; grid-template-columns: 24px 1fr; gap: 10px; margin: 0; border-bottom: 1px solid #dbe5e9; padding: 16px 0; color: #354e5d; font-size: 14px; }
.partner-checks span { color: #079bc9; font-weight: 800; }
.partner-cta { background: #102f42; color: #fff; padding: 68px 0; }
.partner-cta .partner-wrap { display: flex; align-items: center; justify-content: space-between; gap: 50px; }
.partner-cta .partner-eyebrow { color: #64cdea; }
.partner-cta h2 { max-width: 720px; margin: 0; font-size: clamp(34px,4vw,50px); line-height: 1.05; letter-spacing: -.045em; }
.partner-cta p { margin: 15px 0 0; color: #bed0d9; }
.partner-button.is-light { flex: 0 0 auto; border-color: #fff; background: #fff; color: #102f42; }
.partner-footer { background: #091f2c; color: #d6e1e6; padding: 44px 0; }
.partner-footer .partner-wrap { display: flex; align-items: flex-end; justify-content: space-between; gap: 30px; }
.partner-footer img { width: 130px; filter: brightness(0) invert(1); }
.partner-footer p { max-width: 430px; margin: 13px 0 0; color: #8fa6b2; font-size: 13px; }
.partner-footer nav { display: flex; flex-wrap: wrap; gap: 20px; }
.partner-footer nav a { color: #bdcdd5; font-size: 12px; text-decoration: none; }
/* Helle AQORA-Farbwelt ohne dunkelblaue Flächen. */
body { color:#263238; }
.partner-hero h1,.partner-section__heading h2,.partner-services h3,.partner-process li strong,.partner-checks strong { color:#1f2b31; }
.partner-photo-row figcaption { background:linear-gradient(0deg,rgba(8,157,199,.78),rgba(38,184,230,.08)); }
.partner-cta { border-top:1px solid #c6e3ec; border-bottom:1px solid #c6e3ec; background:#eaf8fc; color:#1f3945; }
.partner-cta .partner-eyebrow { color:#078fbd; }
.partner-cta p { color:#587482; }
.partner-button.is-light { border-color:#26b8e6; background:#fff; color:#0788b4; }
.partner-button.is-light:hover { background:#dff5fb; }
.partner-footer { border-top:1px solid #cfe3ea; background:#f6fbfc; color:#324a56; }
.partner-footer img { filter:brightness(0) saturate(100%) invert(56%) sepia(79%) saturate(1440%) hue-rotate(153deg) brightness(92%); }
.partner-footer p { color:#718792; }
.partner-footer nav a { color:#506b78; }
.partner-footer nav a:hover { color:#0788b4; }
@media (max-width: 1050px) { .partner-navigation, .partner-actions { display: none; } .partner-mobile-nav { display: block; } .partner-hero__grid { grid-template-columns: 1fr; gap: 55px; } .partner-services { grid-template-columns: repeat(2,1fr); } .partner-process ol { grid-template-columns: repeat(2,1fr); } .partner-photo-row { grid-template-columns: 1fr 1fr; } .partner-photo-row figure:first-child { grid-column: 1 / -1; } }
@media (max-width: 700px) { .partner-wrap, .partner-header > nav { width: min(100% - 32px,1180px); } .partner-header { height: 66px; } .partner-logo img { height: 35px; } .partner-hero { padding: 66px 0 62px; } .partner-hero h1 { font-size: 45px; } .partner-hero__grid > div > p { font-size: 16px; } .partner-section { padding: 62px 0; } .partner-section__heading { display: block; margin-bottom: 30px; } .partner-section__heading h2 { font-size: 35px; } .partner-section__heading > p { margin: 16px 0 0; } .partner-services, .partner-process ol, .partner-photo-row { grid-template-columns: 1fr; } .partner-photo-row figure:first-child { grid-column: auto; } .partner-photo-row figure { height: 240px; } .partner-services article, .partner-process li { min-height: 190px; } .partner-standards { grid-template-columns: 1fr; gap: 34px; } .partner-cta .partner-wrap, .partner-footer .partner-wrap { align-items: flex-start; flex-direction: column; } }
