:root {
    --primary-bg: #F9F7F2; /* Warme Creme- und Weißtöne */
    --accent-gold: #D4AF37; /* Gold als Markensignatur */
    --text-main: #333333; /* Bronze/Anthrazit für Navigation und Fließtext */
    --text-light: #666666;
    --white: #FFFFFF;
    --blue-green: #2F4F4F; /* Gedecktes Blaugrün für funktionale Akzente */
    --font-family: 'Playfair Display', serif;
    --font-family-sans: 'Inter', sans-serif;
}

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {
    background-color: var(--primary-bg);
    color: var(--text-main);
    font-family: var(--font-family-sans);
    line-height: 1.6;
    overflow-x: hidden;
}

h1, h2, h3 {
    font-family: var(--font-family);
    font-weight: 400;
    margin-bottom: 1.5rem;
    color: var(--blue-green);
}

p {
    margin-bottom: 1rem;
    font-size: 1.1rem;
}

a {
    text-decoration: none;
    color: inherit;
    transition: 0.3s;
}

.container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 2rem;
}

header {
    background-color: var(--white);
    padding: 1.5rem 0;
    position: sticky;
    top: 0;
    z-index: 1000;
    box-shadow: 0 2px 10px rgba(0,0,0,0.05);
}

nav {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.logo {
    font-family: var(--font-family);
    font-size: 1.8rem;
    font-weight: 700;
    color: var(--blue-green);
}

.nav-links {
    display: flex;
    gap: 2rem;
}

.nav-links a:hover {
    color: var(--accent-gold);
}

.hero {
    padding: 6rem 0;
    display: flex;
    align-items: center;
    gap: 4rem;
}

.hero-content {
    flex: 1;
}

.hero-image {
    flex: 1;
}

.hero-image img {
    width: 100%;
    border-radius: 8px;
    box-shadow: 0 20px 40px rgba(0,0,0,0.1);
}

.btn {
    display: inline-block;
    padding: 1rem 2.5rem;
    background-color: var(--accent-gold);
    color: var(--white);
    border-radius: 4px;
    font-weight: 600;
    margin-top: 1.5rem;
    transition: 0.3s;
}

.btn:hover {
    background-color: #b8962e;
    transform: translateY(-2px);
}

.btn-secondary {
    background-color: transparent;
    color: var(--blue-green);
    border: 1px solid var(--blue-green);
    margin-left: 1rem;
}

.section {
    padding: 5rem 0;
}

.section-title {
    text-align: center;
    margin-bottom: 3rem;
}

.grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 2rem;
}

.card {
    background-color: var(--white);
    padding: 2.5rem;
    border-radius: 8px;
    box-shadow: 0 10px 30px rgba(0,0,0,0.03);
    transition: 0.3s;
}

.card:hover {
    transform: translateY(-5px);
}

.footer {
    background-color: var(--blue-green);
    color: var(--white);
    padding: 4rem 0 2rem;
    margin-top: 5rem;
}

.footer-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 3rem;
    margin-bottom: 3rem;
}

.footer-bottom {
    border-top: 1px solid rgba(255,255,255,0.1);
    padding-top: 2rem;
    text-align: center;
    font-size: 0.9rem;
    color: rgba(255,255,255,0.6);
}

.faq-item {
    margin-bottom: 1.5rem;
    border-bottom: 1px solid #ddd;
    padding-bottom: 1rem;
}

.faq-question {
    font-weight: 600;
    cursor: pointer;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.faq-answer {
    margin-top: 1rem;
    display: none;
}

@media (max-width: 768px) {
    .hero {
        flex-direction: column;
        padding: 3rem 0;
    }
    .nav-links {
        display: none;
    }
    .btn-secondary {
        margin-left: 0;
        margin-top: 1rem;
    }
}


/* Lifearch Version 1.0 additions */
.brand-logo-image { display:block; width:190px; max-height:70px; object-fit:contain; object-position:left center; }
.report-download { background:var(--white); border-top:1px solid rgba(47,79,79,.08); border-bottom:1px solid rgba(47,79,79,.08); }
.report-download-inner { display:flex; align-items:center; justify-content:space-between; gap:4rem; }
.report-copy { max-width:760px; }
.report-copy .eyebrow { text-transform:uppercase; letter-spacing:.16em; font-size:.8rem; font-weight:700; color:var(--accent-gold); margin-bottom:.6rem; }
.report-copy h2 { font-size:2.7rem; margin-bottom:.25rem; }
.report-copy h3 { font-size:1.5rem; margin-bottom:1.25rem; }
.report-mark { width:210px; height:210px; border:1px solid var(--accent-gold); display:flex; flex-direction:column; justify-content:center; align-items:center; flex:0 0 auto; }
.report-mark span { font-family:var(--font-family); font-size:5rem; line-height:1; color:var(--accent-gold); }
.report-mark small { text-transform:uppercase; letter-spacing:.12em; margin-top:.6rem; }
.legal-content { max-width:900px; margin:0 auto; background:var(--white); padding:3rem; border-radius:8px; box-shadow:0 10px 30px rgba(0,0,0,.03); }
.legal-content h1 { font-size:2.5rem; }
.legal-content h2 { margin-top:2.4rem; font-size:1.65rem; }
.legal-content h3 { margin-top:1.8rem; font-size:1.3rem; }
.legal-content p, .legal-content li { font-size:1rem; }
.legal-content ul { margin:0 0 1.5rem 1.5rem; }
.legal-table-wrap { overflow-x:auto; margin:1.5rem 0; }
.legal-table { border-collapse:collapse; width:100%; }
.legal-table th,.legal-table td { border:1px solid #ddd; padding:.75rem; vertical-align:top; text-align:left; }
@media (max-width:768px){ .brand-logo-image{width:155px;max-height:58px}.report-download-inner{flex-direction:column;align-items:flex-start;gap:2rem}.report-mark{width:160px;height:160px}.legal-content{padding:1.5rem}.report-copy h2{font-size:2.1rem} }
