:root { --ink:#16253c; --muted:#56667b; --paper:#f7f9fc; --blue:#0479b8; --blue-dark:#005b93; --line:#dce5ee; --white:#fff; --shadow:0 18px 44px rgba(16,44,72,.13); }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; color:var(--ink); background:var(--white); font:16px/1.65 Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; }
a { color:var(--blue-dark); text-decoration-thickness:1px; text-underline-offset:3px; }
a:hover { color:var(--blue); }
img { max-width:100%; height:auto; }
.skip-link { position:absolute; left:-999px; top:1rem; z-index:10; background:#fff; padding:.8rem 1rem; }
.skip-link:focus { left:1rem; }
.site-header { position:sticky; top:0; z-index:5; background:rgba(255,255,255,.96); border-bottom:1px solid rgba(220,229,238,.9); backdrop-filter:blur(14px); }
.header-inner, .container, .footer-grid { width:min(1160px, calc(100% - 2.5rem)); margin:auto; }
.header-inner { min-height:78px; display:flex; align-items:center; justify-content:space-between; gap:2rem; }
.brand img { display:block; width:168px; max-height:55px; }
.site-nav { display:flex; align-items:center; gap:1.35rem; }
.site-nav a { color:var(--ink); font-size:.92rem; font-weight:700; text-decoration:none; white-space:nowrap; }
.site-nav a:hover { color:var(--blue); }
.site-nav .nav-contact { color:#fff; background:var(--blue); border-radius:999px; padding:.62rem 1rem; }
.menu-toggle { display:none; border:0; background:none; color:var(--ink); font:inherit; font-weight:700; cursor:pointer; }
.menu-toggle span { display:inline-block; width:1.25rem; height:2px; margin-left:.45rem; vertical-align:middle; background:currentColor; box-shadow:0 5px currentColor,0 -5px currentColor; }
main > .image-content-block > img, main > .insolvenz-page__header-image > img { width:100%; max-height:400px; object-fit:cover; display:block; }
.text-content-block { padding:4.5rem 0; }
.text-content-block:nth-of-type(even), .testimonial-content-block, .testimonials-content-block { background:var(--paper); }
.text-content-block__content { width:min(900px, 100%); }
h1,h2,h3,h4 { color:var(--ink); line-height:1.16; letter-spacing:-.035em; }
h1 { margin:0 0 1.2rem; font-size:clamp(2.15rem,5vw,4rem); }
h2 { margin:0 0 1rem; font-size:clamp(1.6rem,3vw,2.45rem); }
h3 { font-size:1.22rem; }
h4 { font-size:1.14rem; }
p { margin:0 0 1rem; }
.cta, input.action { display:inline-block; padding:.8rem 1.15rem; border:0; border-radius:999px; background:var(--blue); color:#fff; font:inherit; font-weight:800; letter-spacing:.02em; text-decoration:none; cursor:pointer; }
.cta:hover, input.action:hover { color:#fff; background:var(--blue-dark); }
.image-content-block + .text-content-block { padding-top:4rem; }
.carousel-content-block { position:relative; overflow:hidden; background:#09243a; }
.carousel-content-block swiper { position:relative; display:block; min-height:clamp(440px, 52vw, 620px); }
.carousel-content-block swiper-slide { position:absolute; inset:0; display:block; opacity:0; pointer-events:none; transition:opacity .65s ease; }
.carousel-content-block swiper-slide.is-active { z-index:1; opacity:1; pointer-events:auto; }
.carousel-content-block__slide { position:relative; display:flex; align-items:end; min-height:clamp(440px, 52vw, 620px); color:#fff; text-decoration:none; isolation:isolate; }
.carousel-content-block__slide::after { content:""; position:absolute; inset:0; z-index:-1; background:linear-gradient(90deg,rgba(4,25,43,.83) 0%,rgba(4,25,43,.55) 40%,rgba(4,25,43,.13) 72%,rgba(4,25,43,.24)); }
.carousel-content-block__slide-image { position:absolute; inset:0; z-index:-2; width:100%; height:100%; max-width:none; object-fit:cover; }
.carousel-content-block__slide-content-wrapper { width:min(1160px, calc(100% - 2.5rem)); margin:0 auto; padding:4rem 0 5.1rem; }
.carousel-content-block__slide-content { width:min(610px, 100%); }
.carousel-content-block__slide h2 { margin:0 0 .9rem; color:#fff; font-size:clamp(2.2rem,4vw,4.1rem); text-transform:uppercase; }
.carousel-content-block__slide p { margin:0; color:#f3f8fb; font-size:clamp(1rem,1.5vw,1.18rem); }
.carousel-controls { position:absolute; z-index:2; right:max(1.25rem,calc((100% - 1160px)/2)); bottom:1.65rem; display:flex; align-items:center; gap:.5rem; }
.carousel-dot { width:.7rem; height:.7rem; padding:0; border:1px solid #fff; border-radius:999px; background:transparent; cursor:pointer; }
.carousel-dot.is-active { background:#fff; }
.carousel-arrow { border:1px solid rgba(255,255,255,.75); border-radius:999px; width:2.2rem; height:2.2rem; padding:0; background:rgba(11,37,58,.45); color:#fff; font-size:1.35rem; line-height:1; cursor:pointer; }
.carousel-arrow:hover { background:var(--blue); }
.testimonials-content-block swiper { display:block; position:relative; max-width:850px; }
.testimonials-content-block swiper-slide { display:none; }
.testimonials-content-block swiper-slide.is-active { display:block; }
.swiper-pagination, .swiper-button-prev, .swiper-button-next { display:none !important; }
.image-text-teaser-content-block, .image-text-content-block, .advantages-content-block, .testimonials-content-block { padding:4.5rem 0; }
.image-text-teaser-content-block .row, .image-text-content-block .row, .advantages-content-block .row, .testimonials-content-block .row, .text-content-block .row { display:flex; flex-wrap:wrap; gap:1.5rem; }
.col-md-4, .col-lg-3 { flex:1 1 220px; }
.col-md-6, .col-lg-6 { flex:1 1 min(100%,420px); }
.col-md-8 { flex:1 1 620px; }
.col-md-4.order-md-1 { flex:0 1 285px; }
.col-md-8.order-md-2 { min-width:0; }
.advantages-content-block .col-md-4, .advantages-content-block .col-lg-3 { background:#fff; border:1px solid var(--line); border-radius:14px; overflow:hidden; box-shadow:0 6px 16px rgba(18,45,70,.05); }
.advantages-content-block img { width:100%; aspect-ratio:1.55; object-fit:cover; }
.advantages-content-block h3, .advantages-content-block p { padding:0 1rem; }
.advantages-content-block h3 { margin-top:1rem; }
.advantages-content-block p { padding-bottom:1rem; }
.teasers-content-block { padding:4.5rem 0; background:var(--paper); }
.teasers-content-block .row { display:grid; grid-template-columns:repeat(3,1fr); gap:1.25rem; }
.teasers-content-block .col-12 { min-width:0; }
.teaser { height:100%; padding:1.55rem; border:1px solid var(--line); border-radius:14px; background:#fff; box-shadow:0 6px 16px rgba(18,45,70,.05); }
.teaser img { width:64px; height:64px; object-fit:contain; }
.teaser h3 { margin:1rem 0 .45rem; }
.i-can-bullet-points-content-block { padding:4.5rem 0; background:var(--paper); }
.i-can-bullet-points-content-block__content > h2 { max-width:740px; }
.i-can-bullet-points-content-block .row { display:grid; grid-template-columns:repeat(2,1fr); gap:1rem; }
.i-can-bullet-point { display:flex; align-items:center; min-height:100%; padding:1rem 1.15rem; border:1px solid var(--line); border-radius:12px; background:#fff; box-shadow:0 6px 16px rgba(18,45,70,.04); }
.i-can-bullet-point > div:first-child { flex:0 0 58px; margin-right:1rem; }
.i-can-bullet-point img { width:48px; height:48px; object-fit:contain; }
.i-can-bullet-point h3 { margin:0; }
.too-green-content-block { padding:4.5rem 0; color:#ecf8fc; background:linear-gradient(125deg,#005b93,#007ab7); }
.too-green-content-block .row { display:grid; grid-template-columns:repeat(2,1fr); gap:3.5rem; }
.too-green-content-block h3 { color:#fff; font-size:1.75rem; }
.too-green-content-block .cta { color:var(--blue-dark); background:#fff; }
.too-green-content-block .cta:hover { color:#fff; background:var(--ink); }
.testimonials-content-block blockquote { margin:0; padding:2rem; background:#fff; border-left:4px solid var(--blue); box-shadow:var(--shadow); font-size:1.2rem; }
.insolvenz-page__breadcrumbs { padding:2.2rem 0; color:#fff; background:linear-gradient(115deg,#004e7e,#0786c7); }
.insolvenz-page__breadcrumbs h1 { color:#fff; font-size:clamp(1.8rem,4vw,3rem); }
.insolvenz-page__breadcrumbs a { color:#dff3ff; }
.insolvenz-page__title { margin-top:4rem; }
.insolvenz-page__content { padding-bottom:4rem; }
.insolvenz-page__content h2, .insolvenz-page__content h3 { margin-top:2rem; }
.insolvenz-page__sidenav { position:sticky; top:100px; margin:4rem 0; padding:0; list-style:none; border:1px solid var(--line); border-radius:12px; overflow:hidden; background:#fff; }
.insolvenz-page__sidenav li { margin:0; border-bottom:1px solid var(--line); }
.insolvenz-page__sidenav li:last-child { border:0; }
.insolvenz-page__sidenav a { display:block; padding:.65rem .85rem; color:var(--ink); font-size:.9rem; text-decoration:none; }
.insolvenz-page__sidenav a:hover,.insolvenz-page__sidenav a.current { color:#fff; background:var(--blue); }
.insolvenz-page__sidenav ul { margin:0; padding-left:1rem; list-style:none; }
.userform .field { display:grid; gap:.35rem; margin:0 0 1rem; }
.userform label { font-weight:750; }
.userform input, .userform textarea, .userform select { width:100%; padding:.75rem; border:1px solid #b8c8d7; border-radius:7px; background:#fff; font:inherit; }
.userform textarea { resize:vertical; }
.site-footer { background:#102940; color:#dce9f3; padding:4rem 0 1.5rem; }
.footer-grid { display:grid; grid-template-columns:1.5fr 1.25fr 1fr .7fr; gap:2.2rem; }
.site-footer h2 { color:#fff; font-size:1.15rem; letter-spacing:0; }
.site-footer a,.site-footer span { display:block; color:#dce9f3; margin:.25rem 0; text-decoration:none; }
.site-footer a:hover { color:#fff; text-decoration:underline; }
.site-footer address { font-style:normal; margin-bottom:.8rem; }
.eyebrow { margin:0 0 .8rem; color:#74c9f1; font-size:.76rem; font-weight:850; letter-spacing:.12em; text-transform:uppercase; }
.footer-bottom { width:min(1160px,calc(100% - 2.5rem)); margin:3rem auto 0; padding-top:1.1rem; border-top:1px solid rgba(220,233,243,.2); font-size:.85rem; }
@media (max-width:850px) { .header-inner { min-height:68px; } .brand img { width:145px; } .menu-toggle { display:block; } .site-nav { position:absolute; top:100%; left:0; right:0; display:none; padding:1rem 1.25rem 1.3rem; flex-direction:column; align-items:stretch; gap:.2rem; background:#fff; border-bottom:1px solid var(--line); box-shadow:var(--shadow); } .site-nav.is-open { display:flex; } .site-nav a { padding:.75rem 0; } .site-nav .nav-contact { align-self:flex-start; padding:.65rem 1rem; } .carousel-content-block__slide-content-wrapper { padding-bottom:4.7rem; } .carousel-content-block__slide::after { background:linear-gradient(90deg,rgba(4,25,43,.86),rgba(4,25,43,.38)); } .teasers-content-block .row { grid-template-columns:1fr; } .i-can-bullet-points-content-block .row { grid-template-columns:1fr; } .too-green-content-block .row { grid-template-columns:1fr; gap:1.8rem; } .footer-grid { grid-template-columns:1fr 1fr; } .insolvenz-page__sidenav { position:static; margin:1.75rem 0; } .insolvenz-page__title { margin-top:1.5rem; } }
@media (max-width:560px) { .header-inner,.container,.footer-grid,.footer-bottom { width:min(100% - 1.5rem,1160px); } .text-content-block,.image-text-teaser-content-block,.image-text-content-block,.advantages-content-block,.testimonials-content-block { padding:3rem 0; } .footer-grid { grid-template-columns:1fr; gap:1.4rem; } }
