:root{
  --accent:#009bd8;
  --accent-dark:#007fb2;
  --accent-soft:#dff4fc;
  --bg:#f3f8fb;
  --panel:#ffffff;
  --text:#1b2c36;
  --muted:#5f6f79;
  --line:#d8e4ea;
  --shadow:0 16px 40px rgba(13,56,79,.10);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--text);background:linear-gradient(180deg,#f5fbfe,#eef5f8);line-height:1.6}
.container{max-width:1200px;margin:0 auto;padding:0 24px}
section{padding:78px 0}
.btn{display:inline-flex;align-items:center;justify-content:center;padding:14px 20px;border-radius:12px;text-decoration:none;font-weight:700;transition:.2s ease;border:0}
.btn-primary{background:var(--accent);color:#fff;box-shadow:var(--shadow)}
.btn-primary:hover{background:var(--accent-dark)}
.btn-secondary{background:#fff;color:var(--text);border:1px solid var(--line)}
.btn-secondary:hover{background:#f7fbfd}
.section-header{max-width:840px;margin-bottom:28px}.eyebrow{font-size:12px;letter-spacing:.24em;text-transform:uppercase;color:var(--accent-dark);font-weight:700}
h1,h2,h3{color:var(--text)}h2{font-size:40px;line-height:1.12;margin:12px 0 0}.section-copy{font-size:18px;color:#4d5e68;margin-top:16px}
.grid-2,.grid-3,.grid-4{display:grid;gap:18px}.grid-2{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-4{grid-template-columns:repeat(4,1fr)}
.card{background:var(--panel);border:1px solid var(--line);border-radius:20px;padding:22px;box-shadow:var(--shadow);height:100%}.card h3{margin:0 0 12px;font-size:24px;line-height:1.2}.card p{margin:0;color:#57666f}
.badge{display:inline-block;background:var(--accent-soft);color:var(--accent-dark);padding:6px 10px;border-radius:999px;font-size:12px;font-weight:700;margin-bottom:14px}
.split{display:grid;grid-template-columns:1.02fr .98fr;gap:24px;align-items:center}.checklist{padding-left:20px;margin:18px 0 0}.checklist li{margin:10px 0;color:#42535d}
.image-panel,.application-banner,.highlight,.cta-box,.contact-item{background:#fff;border:1px solid var(--line);box-shadow:var(--shadow)}.image-panel{border-radius:24px;padding:18px}.image-panel img,.application-banner img{width:100%;display:block;border-radius:18px}.application-banner{margin-top:24px;border-radius:24px;padding:18px}.highlight{background:linear-gradient(160deg,#ffffff,#eef8fd);border-color:#cae8f3;border-radius:22px;padding:28px}.cta-band{background:linear-gradient(135deg,#e9f8fe,#f7fbfd)}.cta-box{border-color:#cde8f2;border-radius:24px;padding:30px}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.contact-item{border-radius:18px;padding:20px}.footer-note{font-size:14px;color:var(--muted);margin-top:16px}
.page-hero{padding:90px 0;background:linear-gradient(135deg,#eaf7fc,#ffffff);border-bottom:1px solid var(--line)}.page-hero h1{font-size:48px;line-height:1.08;margin:12px 0 0;max-width:900px}.page-hero p{font-size:19px;color:#4d5e68;max-width:820px}
@media (max-width:760px){section{padding:56px 0}.grid-2,.grid-3,.grid-4,.split,.contact-grid{grid-template-columns:1fr}h2{font-size:32px}.page-hero h1{font-size:38px}}

.card-link{display:block;text-decoration:none;color:inherit}.card-link:hover{transform:translateY(-3px);border-color:var(--accent);box-shadow:0 20px 46px rgba(13,56,79,.16)}


.section-header.section-header-full{max-width:none;margin-bottom:18px}

/* Inhaltslinks nicht als violette Browser-Standardlinks anzeigen */
.card h3 a,
.card h3 a:visited,
.product-family-card h3 a,
.product-family-card h3 a:visited,
section a:not(.btn):not(.logo),
section a:not(.btn):not(.logo):visited {
  color: var(--text);
}

.card h3 a,
.product-family-card h3 a {
  text-decoration: none;
}

.card h3 a:hover,
.card h3 a:focus,
.product-family-card h3 a:hover,
.product-family-card h3 a:focus {
  color: var(--text);
  text-decoration: underline;
  text-underline-offset: 4px;
}

/* Linkfarben vereinheitlichen: normale Inhalts- und Kachellinks schwarz halten.
   Buttons, Logo und Footer bleiben aus Lesbarkeitsgruenden ausgenommen. */
main a:not(.btn):not(.logo),
main a:not(.btn):not(.logo):visited,
section a:not(.btn):not(.logo),
section a:not(.btn):not(.logo):visited,
.card a:not(.btn),
.card a:not(.btn):visited,
.hero-product,
.hero-product:visited,
.hero-product span,
.hero-product:visited span {
  color: var(--text);
}

main a:not(.btn):not(.logo):hover,
main a:not(.btn):not(.logo):focus,
section a:not(.btn):not(.logo):hover,
section a:not(.btn):not(.logo):focus,
.card a:not(.btn):hover,
.card a:not(.btn):focus,
.hero-product:hover,
.hero-product:focus,
.hero-product:hover span,
.hero-product:focus span {
  color: var(--text);
}

.hero-product {
  text-decoration: none;
}
