/*
 * all.css — layout styles for all.html (complete collection page)
 * Scoped to .all-page so nothing leaks to other pages.
 *
 * Breakpoints:
 *   default  — mobile-first base (< 600px)
 *   ≥ 600px  — two-column card layout kicks in
 *   ≥ 960px  — full-width desktop, matches base site grid
 */

/* ── Override base CSS fixed widths for this page ────────────── */
/* bunnies2_remake.css hardcodes 960px on these — we undo that   */

.all-page .blended_grid {
    max-width: 960px;
    width: 100%;
    box-sizing: border-box;
    margin: 0 auto;
    padding: 0 12px;
}

.all-page .pageHeader {
    width: 100%;
    max-width: 100%;
    /* Scale height proportionally to the 960×576 source image (60% ratio) */
    height: calc(100vw * 0.6);
    max-height: 576px;
    background-size: contain;
    background-position: center bottom;
    background-repeat: no-repeat;
    float: none;
    box-sizing: border-box;
}

.all-page .pageContent {
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    padding: 0 0 40px 0;
    min-height: 0;
    float: none;
}

.all-page .pageFooter,
.all-page .pageFooterBottom {
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    float: none;
}

/* ── Era section headers ──────────────────────────────────────── */

.all-page .eraHeader {
    font-family: 'Open Sans', sans-serif;
    font-size: 12px;
    font-weight: normal;
    color: #999;
    text-transform: uppercase;
    letter-spacing: 0.12em;
    border-bottom: 2px solid #ccc;
    padding-bottom: 6px;
    margin: 36px 0 0 0;
}

/* ── Era section wrapper ──────────────────────────────────────── */

.all-page .era-section {
    margin-bottom: 10px;
}

/* ── Bunny card ───────────────────────────────────────────────── */

.all-page .bunny-card {
    display: flex;
    flex-direction: column;      /* mobile: stack vertically */
    align-items: flex-start;
    gap: 12px;
    padding: 20px 0;
    border-bottom: 1px dotted #ddd;
}

.all-page .bunny-card:last-child {
    border-bottom: none;
}

/* ── Main image ───────────────────────────────────────────────── */

.all-page .bunny-main-image {
    flex: 0 0 auto;
    width: 100%;                 /* mobile: full width */
    min-height: 0;
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
}

.all-page .bunny-main-image img {
    display: block;
    max-height: 260px;
    width: auto;
    max-width: 100%;
}

/* ── Info panel ───────────────────────────────────────────────── */

.all-page .bunny-info {
    flex: 1 1 auto;
    display: flex;
    flex-direction: column;
    gap: 8px;
    min-width: 0;
    width: 100%;
}

.all-page .bunny-title {
    font-family: 'Open Sans', sans-serif;
    font-size: 18px;
    color: #513F70;
    margin: 0;
    font-weight: normal;
}

.all-page .bunny-price {
    font-family: 'Open Sans', sans-serif;
    font-size: 14px;
    color: #888;
    margin: 0;
    font-weight: normal;
}

.all-page .bunny-desc {
    font-family: 'Open Sans', sans-serif;
    font-size: 13px;
    color: #666;
    line-height: 1.6em;
    margin: 0;
    max-width: 100%;
}

.all-page .bunny-meta {
    color: #aaa;
    font-style: italic;
}

/* ── Thumbnail strip ──────────────────────────────────────────── */

.all-page .bunny-thumbs {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 5px;
    align-items: flex-start;
    margin-top: 4px;
}

.all-page .bunny-thumbs img {
    display: block;
    height: 60px;                /* slightly smaller on mobile */
    width: auto;
    cursor: pointer;
    opacity: 0.85;
    border: 1px solid #ddd;
    transition: opacity 0.15s ease, border-color 0.15s ease;
    padding: 0;
    /* Prevent tap highlight flash on mobile */
    -webkit-tap-highlight-color: transparent;
}

.all-page .bunny-thumbs img:hover,
.all-page .bunny-thumbs img:active {
    opacity: 1;
    border-color: #513F70;
}

/* ── aboutText heading ────────────────────────────────────────── */

.all-page .aboutText h1 {
    font-size: 24px;
    padding: 12px 0 6px 0;
}

/* ═══════════════════════════════════════════════════════════════
   ≥ 600px — two-column card layout
════════════════════════════════════════════════════════════════ */

@media (min-width: 600px) {

    .all-page .blended_grid {
        padding: 0 16px;
    }

    .all-page .bunny-card {
        flex-direction: row;     /* side-by-side */
        gap: 20px;
        padding: 24px 0;
    }

    .all-page .bunny-main-image {
        width: 180px;
        min-height: 180px;
        flex-shrink: 0;
    }

    .all-page .bunny-main-image img {
        max-height: 300px;
        max-width: 180px;
    }

    .all-page .bunny-thumbs img {
        height: 68px;
    }

    .all-page .bunny-desc {
        max-width: 480px;
    }
}

/* ═══════════════════════════════════════════════════════════════
   ≥ 960px — full desktop
════════════════════════════════════════════════════════════════ */

@media (min-width: 960px) {

    .all-page .blended_grid {
        padding: 0;
    }

    .all-page .pageHeader {
        height: 576px;
        width: 960px;
        max-height: 576px;
    }

    .all-page .pageContent {
        width: 960px;
        padding: 0 0 40px 20px;
    }

    .all-page .bunny-main-image {
        width: 220px;
        min-height: 220px;
    }

    .all-page .bunny-main-image img {
        max-height: 300px;
        max-width: 220px;
    }

    .all-page .bunny-card {
        gap: 24px;
    }

    .all-page .bunny-thumbs img {
        height: 72px;
    }

    .all-page .bunny-desc {
        max-width: 520px;
    }
}
