/* === Reset / Grundstruktur === */
html, body {
margin: 0;
padding: 0;
max-width: 100%;
font-family: var(--font-base);
font-size: 16px;
color: var(--ci-primary);
background: #fff;
line-height: 1.6;
}

/* 💥 FIX: verhindert Error-Page Layout */
body#error-page {
max-width: 100% !important;
margin: 0 !important;
padding: 0 !important;
border: none !important;
background: #fff !important;
}

/* Bilder */
img {
max-width: 100%;
height: auto;
display: block;
object-fit: cover;
}

/* Überschriften */
h1, h2, h3, h4, h5, h6 {
margin: 0;
font-family: var(--font-heading);
font-weight: 700;
color: var(--ci-primary);
}

/* Absätze */
p {
margin: 0 0 15px;
font-size: 16px;
color: var(--ci-gray);
}

/* Links */
a {
text-decoration: none;
color: var(--ci-primary);
transition: var(--transition);
}
a:hover {
color: var(--ci-primary-dark);
}

/* Listen */
ul, ol {
margin: 0;
padding: 0;
list-style: none;
}

/* Formulare */
input, textarea, select {
width: 100%;
padding: 10px;
border-radius: var(--radius);
border: 1px solid rgba(0,0,0,0.1);
font-size: 16px;
background: #fff;
font-family: var(--font-base);
}

/* Sektionen */
section {
padding: var(--space-xl) 0;
background-size: cover;
background-repeat: no-repeat;
}

/* Container Fix (sehr wichtig für Layout) */
.container {
width: 100%;
max-width: 1320px;
margin: 0 auto;
padding: 0 20px;
box-sizing: border-box;
}

/* Buttons */
button {
cursor: pointer;
font-family: var(--font-base);
}

/* Scrollbar */
::-webkit-scrollbar {
width: 10px;
}
::-webkit-scrollbar-track {
background: #fff;
border-radius: 10px;
}
::-webkit-scrollbar-thumb {
background: var(--ci-accent);
border-radius: 10px;
}

/* Utility Klassen */
.c_head {
max-width: 550px;
margin: 0 auto;
text-align: center;
}

.c_heading {
font-size: 35px;
line-height: 1.3;
font-weight: 800;
}

.c_para {
font-size: 14px;
line-height: 1.6;
color: var(--ci-gray);
}
