/* Höchste Priorität durch lange Selektoren */
body .page-wrapper .page-content {
    flex: 1 0 auto !important;
    padding-bottom: 150px !important;
    min-height: 100vh !important;
}

body .site-footer {
    flex-shrink: 0 !important;
    margin-top: auto !important;
    position: relative !important;
}
/* ===============================
   VOTING SECTION – NUKLEAR-OPTION
   =============================== */
.project-detail-page .voting-section,
.singleProject .voting-section,
.layout .voting-section {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    height: auto !important;
    min-height: 300px !important;
    overflow: visible !important;
    margin: 100px 0 !important;
    padding: 60px 40px !important;
    background: linear-gradient(135deg, #f0f8ff, #e6f7ff) !important;
    border: 8px solid #00E6E6 !important;
    border-radius: 24px !important;
    box-shadow: 0 10px 30px rgba(0, 230, 230, 0.2) !important;
    text-align: center !important;
    position: relative !important;
    z-index: 10 !important;
}

.project-detail-page .voting-section h3,
.singleProject .voting-section h3 {
    font-size: 3rem !important;
    color: #000 !important;
    margin-bottom: 40px !important;
}

/* Sterne groß und golden */
.project-detail-page .voting-section .project-stars,
.singleProject .voting-section .project-stars {
    font-size: 3.5rem !important;
    letter-spacing: 10px !important;
}

.project-detail-page .voting-section .star-input label,
.singleProject .voting-section .star-input label {
    font-size: 4rem !important;
}
/* ===============================
   FEEDBACK BEREICH – ENDGÜLTIG SICHTBAR
   =============================== */
.comments {
    margin-top: 100px !important;
    padding-top: 60px !important;
    border-top: 5px solid #00E6E6 !important;
    background: transparent !important;
}

.comments h3,
.comments h4 {
    font-size: 2.6rem !important;
    font-weight: 700 !important;
    color: #2d2d39 !important;
    text-transform: uppercase !important;
    text-align: center !important;
    margin-bottom: 40px !important;
}

/* Das eigentliche Formular */
.comments .form {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    max-width: 900px !important;
    margin: 60px auto !important;
    padding: 50px !important;
    background: #f8f9fa !important;
    border: 5px solid #00E6E6 !important;
    border-radius: 20px !important;
    box-shadow: 0 10px 30px rgba(0, 230, 230, 0.2) !important;
}

/* Formularfelder */
.comments .form__field {
    margin-bottom: 35px !important;
}

.comments .form__field label {
    display: block !important;
    font-size: 1.8rem !important;
    font-weight: 600 !important;
    color: #2d2d39 !important;
    margin-bottom: 15px !important;
}

.comments .form__field textarea {
    display: block !important;
    width: 100% !important;
    min-height: 250px !important;
    padding: 20px !important;
    font-size: 1.6rem !important;
    line-height: 1.6 !important;
    border: 3px solid #00E6E6 !important;
    border-radius: 12px !important;
    background: white !important;
    resize: vertical !important;
    box-sizing: border-box !important;
}

.comments .form__field textarea:focus {
    outline: none !important;
    border-color: #00cccc !important;
    box-shadow: 0 0 20px rgba(0, 230, 230, 0.4) !important;
}

/* Submit-Button */
.comments .form input[type="submit"] {
    display: block !important;
    margin: 30px auto 0 !important;
    padding: 18px 50px !important;
    font-size: 1.8rem !important;
    font-weight: 600 !important;
    background: #00E6E6 !important;
    color: white !important;
    border: none !important;
    border-radius: 12px !important;
    cursor: pointer !important;
    transition: all 0.3s ease !important;
}

.comments .form input[type="submit"]:hover {
    background: #00cccc !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 8px 20px rgba(0, 230, 230, 0.3) !important;
}

/* Bestehende Kommentare */
.comments .commentList {
    margin-top: 60px !important;
}

.comments .comment {
    background: white !important;
    padding: 30px !important;
    border-radius: 12px !important;
    box-shadow: 0 4px 15px rgba(0,0,0,0.05) !important;
    margin-bottom: 30px !important;
}

/* ===============================
   TABLET / MOBILE READABILITY
   Zielgruppe Ue 40: groessere, klarere Schrift auf kleinen Displays.
   Diese Schicht greift nur auf Tablet und Handy und laesst Desktop unberuehrt.
   =============================== */
@media (max-width: 1024px) {
    html {
        font-size: 62.5% !important;
        -webkit-text-size-adjust: 100%;
        text-size-adjust: 100%;
    }

    body {
        font-size: 1.9rem !important;
        line-height: 1.65 !important;
        color: #082f34 !important;
    }

    body p,
    body li,
    body a,
    body span,
    body strong,
    body label,
    body input,
    body select,
    body textarea,
    body button,
    body .btn,
    body .form-control {
        font-size: 1.85rem !important;
        line-height: 1.6 !important;
        letter-spacing: 0 !important;
    }

    body input:not([type="checkbox"]):not([type="radio"]),
    body select,
    body textarea,
    body .form-control {
        min-height: 5.2rem !important;
        padding: 1.25rem 1.45rem !important;
        font-weight: 700 !important;
        color: #082f34 !important;
    }

    body button,
    body .btn,
    body input[type="submit"],
    body .button,
    body .result-inputs-btn,
    body .result-reveal-btn,
    body .result-mini-item-cta,
    body .result-action-plan-entry-btn,
    body .projects-create,
    body .projects-button {
        min-height: 4.8rem !important;
        font-size: 1.75rem !important;
        line-height: 1.25 !important;
        font-weight: 900 !important;
    }

    body h1,
    body .result-title,
    body .projects-page h1,
    body .profile-directory-page h1 {
        font-size: 3.2rem !important;
        line-height: 1.18 !important;
        letter-spacing: 0 !important;
    }

    body h2,
    body .result-card-title,
    body .structured-plan-title,
    body .project-card__title {
        font-size: 2.35rem !important;
        line-height: 1.25 !important;
        letter-spacing: 0 !important;
    }

    body h3 {
        font-size: 2.1rem !important;
        line-height: 1.3 !important;
    }

    body small,
    body .help-text,
    body .micro-note,
    body .section-intro,
    body .result-card-sub,
    body .result-map-hint,
    body .result-subtitle,
    body .result-mini-item-meta,
    body .result-mini-item em,
    body .project-card__description,
    body .project-card__footer,
    body .projects-lead,
    body .structured-plan-copy,
    body .structured-plan-list,
    body .structured-plan-list li,
    body .structured-plan-snapshot-label,
    body .structured-plan-snapshot-value {
        font-size: 1.75rem !important;
        line-height: 1.68 !important;
        color: #183f43 !important;
        font-weight: 800 !important;
    }

    body .question-card label,
    body .snack-item,
    body .option-card,
    body .section-step,
    body .payment-note {
        font-size: 1.95rem !important;
        line-height: 1.55 !important;
        font-weight: 800 !important;
        color: #082f34 !important;
    }

    body .result-mini-item,
    body .result-background-item,
    body .result-snapshot-metric,
    body .project-card,
    body .profile-card,
    body .structured-plan-card,
    body .structured-plan-block {
        font-size: 1.8rem !important;
        line-height: 1.58 !important;
    }

    body .result-mini-item-title,
    body .result-mini-item strong,
    body .result-snapshot-metric span,
    body .result-snapshot-metric em,
    body .project-card__title a,
    body .project-tag {
        font-size: 1.75rem !important;
        line-height: 1.45 !important;
        letter-spacing: 0 !important;
    }

    body .result-mini-item strong,
    body .result-snapshot-metric strong,
    body .structured-plan-snapshot-value {
        font-weight: 900 !important;
        color: #062f33 !important;
    }

    body h1 span,
    body h2 span,
    body h3 span,
    body h4 span,
    body h5 span,
    body h6 span,
    body button span,
    body .btn span {
        font-size: inherit !important;
        line-height: inherit !important;
    }

    body .text-muted,
    body .muted,
    body [class*="muted"],
    body [class*="subtitle"],
    body [class*="caption"],
    body [class*="description"],
    body [class*="helper"],
    body [class*="hint"],
    body [class*="meta"] {
        color: #183f43 !important;
        font-weight: 800 !important;
    }

    body [style*="font-size: 12px"],
    body [style*="font-size:12px"],
    body [style*="font-size: 13px"],
    body [style*="font-size:13px"],
    body [style*="font-size: 14px"],
    body [style*="font-size:14px"],
    body [style*="font-size:.7"],
    body [style*="font-size: .7"],
    body [style*="font-size:.8"],
    body [style*="font-size: .8"],
    body [style*="font-size:0.7"],
    body [style*="font-size: 0.7"],
    body [style*="font-size:0.8"],
    body [style*="font-size: 0.8"] {
        font-size: 1.75rem !important;
        line-height: 1.65 !important;
        font-weight: 800 !important;
        color: #183f43 !important;
    }

    body .result-mini-item-copy,
    body .result-mini-item-right {
        min-width: 0 !important;
    }

    body .result-mini-item-action,
    body .result-mini-item {
        align-items: flex-start !important;
    }

    body .project-tag,
    body .plan-meta-badge,
    body .result-eyebrow {
        font-weight: 900 !important;
    }
}

@media (max-width: 640px) {
    html {
        font-size: 65% !important;
    }

    body {
        font-size: 2rem !important;
        line-height: 1.7 !important;
    }

    body p,
    body li,
    body a,
    body span,
    body strong,
    body label,
    body input,
    body select,
    body textarea,
    body button,
    body .btn,
    body .form-control {
        font-size: 1.95rem !important;
        line-height: 1.62 !important;
    }

    body h1,
    body .result-title,
    body .projects-page h1,
    body .profile-directory-page h1 {
        font-size: 3rem !important;
        line-height: 1.2 !important;
    }

    body h2,
    body .result-card-title,
    body .structured-plan-title,
    body .project-card__title {
        font-size: 2.25rem !important;
        line-height: 1.28 !important;
    }

    body small,
    body .help-text,
    body .micro-note,
    body .section-intro,
    body .result-card-sub,
    body .result-map-hint,
    body .result-subtitle,
    body .result-mini-item-meta,
    body .result-mini-item em,
    body .project-card__description,
    body .project-card__footer,
    body .projects-lead,
    body .structured-plan-copy,
    body .structured-plan-list,
    body .structured-plan-list li,
    body .structured-plan-snapshot-label,
    body .structured-plan-snapshot-value {
        font-size: 1.85rem !important;
        line-height: 1.72 !important;
    }

    body .result-mini-item-title,
    body .result-mini-item strong,
    body .result-snapshot-metric span,
    body .result-snapshot-metric em,
    body .project-card__title a,
    body .project-tag {
        font-size: 1.85rem !important;
        line-height: 1.5 !important;
    }

    body [style*="font-size: 12px"],
    body [style*="font-size:12px"],
    body [style*="font-size: 13px"],
    body [style*="font-size:13px"],
    body [style*="font-size: 14px"],
    body [style*="font-size:14px"],
    body [style*="font-size:.7"],
    body [style*="font-size: .7"],
    body [style*="font-size:.8"],
    body [style*="font-size: .8"],
    body [style*="font-size:0.7"],
    body [style*="font-size: 0.7"],
    body [style*="font-size:0.8"],
    body [style*="font-size: 0.8"] {
        font-size: 1.85rem !important;
        line-height: 1.72 !important;
    }
}

@media (min-width: 641px) and (max-width: 1366px) and (pointer: coarse),
       (min-width: 641px) and (max-width: 1366px) and (hover: none) {
    html {
        font-size: 65% !important;
        -webkit-text-size-adjust: 100%;
        text-size-adjust: 100%;
    }

    body {
        font-size: 2rem !important;
        line-height: 1.68 !important;
        color: #082f34 !important;
    }

    body p,
    body li,
    body a,
    body span,
    body strong,
    body label,
    body input,
    body select,
    body textarea,
    body button,
    body .btn,
    body .form-control {
        font-size: 1.95rem !important;
        line-height: 1.62 !important;
        letter-spacing: 0 !important;
    }

    body input:not([type="checkbox"]):not([type="radio"]),
    body select,
    body textarea,
    body .form-control {
        min-height: 5.4rem !important;
        padding: 1.3rem 1.55rem !important;
        font-weight: 800 !important;
        color: #082f34 !important;
    }

    body button,
    body .btn,
    body input[type="submit"],
    body .button,
    body .result-inputs-btn,
    body .result-reveal-btn,
    body .result-mini-item-cta,
    body .result-action-plan-entry-btn,
    body .projects-create,
    body .projects-button {
        min-height: 5rem !important;
        font-size: 1.85rem !important;
        line-height: 1.25 !important;
        font-weight: 900 !important;
    }

    body small,
    body .help-text,
    body .micro-note,
    body .section-intro,
    body .result-card-sub,
    body .result-map-hint,
    body .result-subtitle,
    body .result-mini-item-meta,
    body .result-mini-item em,
    body .project-card__description,
    body .project-card__footer,
    body .projects-lead,
    body .structured-plan-copy,
    body .structured-plan-list,
    body .structured-plan-list li,
    body .structured-plan-snapshot-label,
    body .structured-plan-snapshot-value {
        font-size: 1.85rem !important;
        line-height: 1.72 !important;
        color: #183f43 !important;
        font-weight: 800 !important;
    }

    body .question-card label,
    body .snack-item,
    body .option-card,
    body .section-step,
    body .payment-note {
        font-size: 2rem !important;
        line-height: 1.58 !important;
        font-weight: 850 !important;
        color: #082f34 !important;
    }

    body .result-mini-item-title,
    body .result-mini-item strong,
    body .result-snapshot-metric span,
    body .result-snapshot-metric em,
    body .project-card__title a,
    body .project-tag {
        font-size: 1.85rem !important;
        line-height: 1.5 !important;
        letter-spacing: 0 !important;
    }

    body h1 span,
    body h2 span,
    body h3 span,
    body h4 span,
    body h5 span,
    body h6 span,
    body button span,
    body .btn span {
        font-size: inherit !important;
        line-height: inherit !important;
    }
}









































































































































