/*
Theme Name:        collavest
Theme URI:         https://collavest.com
Description:       Child Theme für collavest — Investoren-Pooling-Plattform. Basiert auf Twenty Twenty-Four. Alle Schriften werden lokal ausgeliefert (DSGVO-konform).
Version:           1.0.1
Author:            VALUEversitas UG (haftungsbeschraenkt)
Author URI:        https://valueversitas.com
Template:          twentytwentyfour
Text Domain:       collavest
Requires at least: 6.4
Requires PHP:      8.0
License:           Proprietary

FARBPALETTE (abgeleitet aus Logo und Präsentationen)
=====================================================
Primär-Dunkelgrau:  #3c3c3c  — Logofarbe "collavest" Haupttext
Akzent-Dunkelrot:   #963232  — Logo-Highlight auf "ll", CTAs
Akzent-Hover:       #b84444  — Hover-Zustand
Hintergrund:        #f8f8f6  — Warmes Off-White
Dunkel:             #1a1a2e  — Header-Banner, Footer
*/

/* ══════════════════════════════════════════════════════════════════════════════
   INTER — LOKAL GEHOSTET (DSGVO-KONFORM)
   Keine externen Verbindungen zu Google oder anderen Drittservern.
   Schriftdateien liegen in /assets/fonts/ des Themes.
   Lizenz: SIL Open Font License 1.1 (https://scripts.sil.org/OFL)
   Quelle: https://rsms.me/inter/
   ══════════════════════════════════════════════════════════════════════════════ */

@font-face {
    font-family: 'Inter';
    font-style:  normal;
    font-weight: 300;
    font-display: swap;
    src: url('assets/fonts/inter-300.woff2') format('woff2');
}

@font-face {
    font-family: 'Inter';
    font-style:  normal;
    font-weight: 400;
    font-display: swap;
    src: url('assets/fonts/inter-400.woff2') format('woff2');
}

@font-face {
    font-family: 'Inter';
    font-style:  normal;
    font-weight: 500;
    font-display: swap;
    src: url('assets/fonts/inter-500.woff2') format('woff2');
}

@font-face {
    font-family: 'Inter';
    font-style:  normal;
    font-weight: 600;
    font-display: swap;
    src: url('assets/fonts/inter-600.woff2') format('woff2');
}

@font-face {
    font-family: 'Inter';
    font-style:  normal;
    font-weight: 700;
    font-display: swap;
    src: url('assets/fonts/inter-700.woff2') format('woff2');
}

@font-face {
    font-family: 'Inter';
    font-style:  normal;
    font-weight: 800;
    font-display: swap;
    src: url('assets/fonts/inter-800.woff2') format('woff2');
}

/* ── CSS Custom Properties ───────────────────────────────────────────────── */
:root {
    --cv-primary:        #3c3c3c;
    --cv-accent:         #963232;
    --cv-accent-hover:   #b84444;
    --cv-accent-light:   #f5ecec;
    --cv-accent-border:  #d4a0a0;
    --cv-bg:             #f8f8f6;
    --cv-bg-card:        #ffffff;
    --cv-bg-dark:        #1a1a2e;
    --cv-bg-section:     #f0f0ec;
    --cv-text:           #3c3c3c;
    --cv-text-muted:     #6e6e6e;
    --cv-text-light:     #b4b4b4;
    --cv-border:         #e8e8e4;
    --cv-success:        #2d6a4f;
    --cv-success-bg:     #eaf4f0;
    --cv-warning:        #c96a1a;
    --cv-warning-bg:     #fdf3e8;
    --cv-radius:         10px;
    --cv-radius-sm:      6px;
    --cv-radius-lg:      16px;
    --cv-shadow:         0 2px 12px rgba(60,60,60,.08);
    --cv-shadow-hover:   0 6px 24px rgba(60,60,60,.14);
    --cv-font:           'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    /* WordPress Theme-Variablen überschreiben */
    --wp--preset--color--base:          #f8f8f6;
    --wp--preset--color--contrast:      #3c3c3c;
    --wp--preset--color--primary:       #963232;
    --wp--preset--color--secondary:     #6e6e6e;
    --wp--preset--font-family--body:    'Inter', -apple-system, sans-serif;
    --wp--preset--font-family--heading: 'Inter', -apple-system, sans-serif;
}

/* ── Basis ────────────────────────────────────────────────────────────────── */
body {
    font-family: var(--cv-font) !important;
    background-color: var(--cv-bg) !important;
    color: var(--cv-text) !important;
}

/* ── Logo ─────────────────────────────────────────────────────────────────── */
.site-logo img,
.wp-block-site-logo img,
.custom-logo,
.collavest-logo {
    max-height: 40px !important;
    width: auto !important;
    display: block !important;
}

/* Fallback-Logo via CSS wenn kein Bild gesetzt */
.site-title a,
.wp-block-site-title a {
    font-family: var(--cv-font) !important;
    font-size: 1.5rem !important;
    font-weight: 800 !important;
    color: var(--cv-primary) !important;
    text-decoration: none !important;
    letter-spacing: -0.04em !important;
}

/* ── Header & Navigation ──────────────────────────────────────────────────── */
.wp-block-template-part[class*="header"],
header.wp-block-template-part,
.site-header {
    background-color: var(--cv-bg-card) !important;
    border-bottom: 1px solid var(--cv-border) !important;
    box-shadow: 0 1px 8px rgba(60,60,60,.06) !important;
}

.wp-block-navigation a,
.wp-block-navigation__container a {
    font-family: var(--cv-font) !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    color: var(--cv-text) !important;
    text-decoration: none !important;
    padding: 6px 14px !important;
    border-radius: var(--cv-radius-sm) !important;
    transition: background .15s, color .15s !important;
}

.wp-block-navigation a:hover { color: var(--cv-accent) !important; background: var(--cv-accent-light) !important; }
.wp-block-navigation .current-menu-item > a { color: var(--cv-accent) !important; font-weight: 600 !important; }

/* ── Typografie ───────────────────────────────────────────────────────────── */
h1, h2, h3, h4, h5, h6, .wp-block-heading {
    font-family: var(--cv-font) !important;
    color: var(--cv-primary) !important;
    letter-spacing: -0.02em !important;
    line-height: 1.2 !important;
}

h1 { font-size: clamp(2rem, 4vw, 3rem) !important; font-weight: 800 !important; }
h2 { font-size: clamp(1.5rem, 3vw, 2.25rem) !important; font-weight: 700 !important; }
h3 { font-size: clamp(1.125rem, 2vw, 1.5rem) !important; font-weight: 600 !important; }

p {
    font-family: var(--cv-font) !important;
    font-size: 16px !important;
    line-height: 1.75 !important;
    color: var(--cv-text) !important;
}

/* ── Buttons ──────────────────────────────────────────────────────────────── */
.wp-block-button__link {
    font-family: var(--cv-font) !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    border-radius: var(--cv-radius) !important;
    padding: 12px 28px !important;
    transition: all .2s !important;
}

.wp-block-button:not(.is-style-outline) .wp-block-button__link {
    background: var(--cv-accent) !important;
    color: #fff !important;
    border: 2px solid var(--cv-accent) !important;
}

.wp-block-button:not(.is-style-outline) .wp-block-button__link:hover {
    background: var(--cv-accent-hover) !important;
    border-color: var(--cv-accent-hover) !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 4px 16px rgba(150,50,50,.25) !important;
}

.wp-block-button.is-style-outline .wp-block-button__link {
    background: transparent !important;
    color: var(--cv-accent) !important;
    border: 2px solid var(--cv-accent) !important;
}

.wp-block-button.is-style-outline .wp-block-button__link:hover {
    background: var(--cv-accent-light) !important;
}

/* ── Feature-Karten ───────────────────────────────────────────────────────── */
.cv-feature-card {
    background: var(--cv-bg-card) !important;
    border: 1px solid var(--cv-border) !important;
    border-radius: var(--cv-radius-lg) !important;
    padding: 2rem !important;
    transition: all .25s !important;
    box-shadow: var(--cv-shadow) !important;
}

.cv-feature-card:hover {
    border-color: var(--cv-accent-border) !important;
    box-shadow: var(--cv-shadow-hover) !important;
    transform: translateY(-3px) !important;
}

/* ── collavest Plugin-Formulare ───────────────────────────────────────────── */
.cv-auth-box .cv-auth-logo h1 {
    font-family: var(--cv-font) !important;
    font-size: 2.5rem !important;
    font-weight: 800 !important;
    color: var(--cv-primary) !important;
    letter-spacing: -0.04em !important;
}

/* ── Footer ───────────────────────────────────────────────────────────────── */
.wp-block-template-part[class*="footer"],
footer.wp-block-template-part {
    background: var(--cv-bg-dark) !important;
    color: #b4b4b4 !important;
}

footer a { color: #d4d4d4 !important; text-decoration: none !important; }
footer a:hover { color: var(--cv-accent-hover) !important; }

/* ── WordPress Blocks ─────────────────────────────────────────────────────── */
.wp-block-cover__inner-container h1,
.wp-block-cover__inner-container h2 { color: #fff !important; }
.wp-block-separator { border-color: var(--cv-border) !important; opacity: 1 !important; }
.wp-block-quote { border-left: 4px solid var(--cv-accent) !important; padding-left: 1.5rem !important; }

/* ── Responsive ───────────────────────────────────────────────────────────── */
@media (max-width: 768px) {
    h1 { font-size: 2rem !important; }
    h2 { font-size: 1.5rem !important; }
}

/* ── Utilities ────────────────────────────────────────────────────────────── */
.cv-text-accent { color: var(--cv-accent) !important; }
.cv-text-muted  { color: var(--cv-text-muted) !important; }
.cv-bg-light    { background: var(--cv-bg-section) !important; }
.cv-bg-dark     { background: var(--cv-bg-dark) !important; color: #fff !important; }
