/* Rheinvest — Responsive Breakpoints
 * Mobile-First: ≤768px, ≤480px
 * Prefix: plattf
 */

/* ============================================================
 * Tablet & kleiner (≤992px)
 * ============================================================ */
@media (max-width: 992px) {

    /* Hero */
    .plattf-hero-inner {
        grid-template-columns: 1fr;
        text-align: center;
    }

    .plattf-hero-text p {
        max-width: 100%;
        margin-left: auto;
        margin-right: auto;
    }

    .plattf-hero-actions {
        justify-content: center;
    }

    .plattf-hero-visual {
        order: -1;
    }

    .plattf-hero-counters {
        grid-template-columns: repeat(4, 1fr);
        max-width: 600px;
        margin: 0 auto;
    }

    /* Platform Grid: 2 Spalten */
    .plattf-platform-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    /* Comparison Cards: 2 Spalten */
    .plattf-comparison-cards {
        grid-template-columns: repeat(2, 1fr);
    }

    /* Footer Grid */
    .plattf-footer-grid {
        grid-template-columns: 1fr 1fr;
    }

    .plattf-footer-col:first-child {
        grid-column: 1 / -1;
    }

    /* Rating Bar — schmalere Labelspalte */
    .plattf-rating-bar {
        grid-template-columns: 140px 1fr 40px;
    }

    /* Review Stats */
    .plattf-review-stats {
        grid-template-columns: 1fr;
        text-align: center;
    }

    .plattf-review-avg {
        padding-bottom: 1.5rem;
        border-bottom: 1px solid var(--plattf-border);
    }
}

/* ============================================================
 * Mobile (≤768px)
 * ============================================================ */
@media (max-width: 768px) {

    /* Header: Navigation ausblenden, Burger anzeigen */
    .plattf-nav,
    .plattf-header-cta {
        display: none;
    }

    .plattf-burger {
        display: flex;
    }

    /* Mobile Menü */
    .nav-open .plattf-nav {
        display: flex;
        flex-direction: column;
        align-items: stretch;
        position: fixed;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background: var(--plattf-primary);
        z-index: 999;
        padding: 5rem 1.5rem 2rem;
        overflow-y: auto;
    }

    .nav-open .plattf-nav-list {
        flex-direction: column;
        align-items: stretch;
        gap: 0;
        width: 100%;
    }

    .nav-open .plattf-nav-list li a {
        font-size: 1.15rem;
        padding: 0.85rem 1rem;
        border-bottom: 1px solid rgba(255,255,255,0.08);
        border-radius: 0;
    }

    .nav-open .plattf-nav-list .sub-menu {
        position: static;
        opacity: 1;
        visibility: visible;
        transform: none;
        box-shadow: none;
        background: rgba(255,255,255,0.05);
        border: none;
        border-radius: 0;
        padding: 0;
    }

    .nav-open .plattf-nav-list .sub-menu a {
        color: rgba(255,255,255,0.75);
        padding-left: 2rem;
    }

    .nav-open .plattf-header-cta {
        display: none;
    }

    /* Hero */
    .plattf-hero {
        min-height: auto;
        padding: 7rem 0 4rem;
    }

    .plattf-hero-counters {
        grid-template-columns: repeat(2, 1fr);
    }

    /* Platform Grid: 1 Spalte */
    .plattf-platform-grid {
        grid-template-columns: 1fr;
    }

    /* Platform Card volle Breite */
    .plattf-platform-card {
        max-width: 480px;
        margin-left: auto;
        margin-right: auto;
        width: 100%;
    }

    /* Comparison */
    .plattf-comparison-cards {
        grid-template-columns: 1fr;
    }

    /* Reviews Grid */
    .plattf-reviews-grid {
        grid-template-columns: 1fr;
    }

    /* Pros/Cons: gestapelt */
    .plattf-proscons {
        grid-template-columns: 1fr;
    }

    /* Review Pros/Cons */
    .plattf-review-proscons {
        grid-template-columns: 1fr;
    }

    /* Form Row */
    .plattf-form-row {
        grid-template-columns: 1fr;
    }

    /* Rating Bar */
    .plattf-rating-bar {
        grid-template-columns: 1fr;
        grid-template-rows: auto;
        gap: 0.4rem;
    }

    .plattf-rb-label {
        font-weight: 600;
    }

    .plattf-rb-val {
        text-align: left;
        font-size: 0.95rem;
    }

    /* Footer */
    .plattf-footer-grid {
        grid-template-columns: 1fr;
    }

    .plattf-footer-bottom {
        flex-direction: column;
        text-align: center;
    }

    /* Stats Counter */
    .plattf-stats-counter {
        gap: 1.5rem;
    }

    /* Trust Bar */
    .plattf-trust-list {
        gap: 1rem;
    }

    /* Section padding */
    .plattf-section {
        padding: 2.5rem 0;
    }

    /* Metabox / Admin bleibt unverändert */

    /* Authors */
    .plattf-authors {
        flex-direction: column;
    }

    /* Quick Facts */
    .plattf-qf-row {
        grid-template-columns: 1fr;
    }

    .plattf-qf-label {
        border-right: none;
        border-bottom: 1px solid var(--plattf-border);
    }

    /* Review Stats */
    .plattf-review-stats {
        padding: 1.25rem;
    }

    /* CTA Banner */
    .plattf-cta-banner {
        padding: 2rem 1.25rem;
        border-radius: var(--plattf-radius-lg);
    }
}

/* ============================================================
 * Kleines Mobile (≤480px)
 * ============================================================ */
@media (max-width: 480px) {

    /* Typografie verkleinern */
    h1 { font-size: clamp(1.6rem, 6vw, 2.25rem); }
    h2 { font-size: clamp(1.3rem, 5vw, 1.75rem); }

    /* Hero Zähler: 2×2 */
    .plattf-hero-counters {
        grid-template-columns: 1fr 1fr;
    }

    /* Buttons kleiner */
    .plattf-btn {
        padding: 0.6rem 1.1rem;
        font-size: 0.9rem;
    }

    /* Container enger */
    .plattf-container {
        padding-left: 1rem;
        padding-right: 1rem;
    }

    /* Karten-Body */
    .plattf-card-body {
        padding: 1rem;
    }

    /* Stars Skala */
    .plattf-stars-scale--form .plattf-star-btn {
        width: 30px;
        height: 30px;
        font-size: 0.8rem;
    }

    /* Review-Formular */
    .plattf-review-form-wrap {
        padding: 1.25rem;
    }

    /* Review Karte */
    .plattf-review-card {
        padding: 1.1rem;
    }

    /* Footer legal */
    .plattf-footer-legal {
        flex-direction: column;
        gap: 0.5rem;
        align-items: center;
    }

    /* Akkordeon Q */
    .plattf-faq-q {
        font-size: 0.88rem;
    }

    /* Sterne Anzeige */
    .plattf-star-btn {
        width: 22px;
        height: 22px;
        font-size: 0.65rem;
    }

    /* Rating Score gross */
    .plattf-score--lg {
        min-width: 60px;
        height: 60px;
        font-size: 1.75rem;
    }
}

/* ============================================================
 * Print
 * ============================================================ */
@media print {
    .plattf-header,
    .plattf-footer,
    .plattf-review-form-wrap,
    .plattf-burger,
    .plattf-helpful-btn {
        display: none !important;
    }

    body {
        font-size: 12pt;
        color: #000;
    }

    .plattf-platform-card {
        break-inside: avoid;
        box-shadow: none;
        border: 1px solid #ccc;
    }
}
