/* Valhalla Archive — Úprava #3 (2026-05-26)
   Card styles inherit from style.css:1462-1535 + homepage.css (base scope).
   This file only adds archive-specific chrome: hero, breadcrumbs, toolbar,
   pagination, empty state. */

.vp-archive {
    background: #0A0A0A;
    color: #f5f0e8;
    padding: 24px 24px 80px;
    max-width: 1320px;
    margin: 0 auto;
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
}

/* Breadcrumbs */
.vp-breadcrumbs {
    font-size: 13px;
    color: #888;
    margin-bottom: 32px;
    letter-spacing: .02em;
}
.vp-breadcrumbs a {
    color: #888;
    text-decoration: none;
    transition: color .2s ease;
}
.vp-breadcrumbs a:hover { color: #C9A055; }
.vp-breadcrumb-sep { margin: 0 8px; color: #1f1f1f; }
.vp-breadcrumb-current { color: #f5f0e8; }

/* Hero */
.vp-archive-hero {
    text-align: center;
    padding: 32px 0 56px;
    border-bottom: 1px solid #1f1f1f;
    margin-bottom: 40px;
}
.vp-archive-eyebrow {
    font-family: 'Inter', sans-serif;
    font-size: 12px;
    letter-spacing: .24em;
    text-transform: uppercase;
    color: #C9A055;
    margin: 0 0 16px;
    font-weight: 500;
}
.vp-archive-h1 {
    font-family: 'Fraunces', Georgia, serif;
    font-size: clamp(40px, 6vw, 64px);
    font-weight: 400;
    color: #f5f0e8;
    margin: 0 0 16px;
    line-height: 1.1;
    letter-spacing: -.01em;
}
/* Category description — moved below the product grid (2026-06-02)
   into a bordered "research context" card so it reads as structured
   content, not a raw text dump at the top of the page. */
.vp-archive-about {
    max-width: 880px;
    margin: 64px auto 8px;
    padding: clamp(24px, 4vw, 40px) clamp(20px, 4vw, 48px);
    border: 1px solid rgba(201, 160, 85, .22);
    border-radius: 12px;
    background:
        radial-gradient(620px 180px at 50% -40%, rgba(201, 160, 85, .08), transparent 70%),
        #0E0E0E;
}
.vp-archive-about-label {
    font-family: 'Inter', sans-serif;
    font-size: 12px;
    letter-spacing: .26em;
    text-transform: uppercase;
    color: #C9A055;
    font-weight: 500;
    text-align: center;
    margin: 0 0 4px;
}
.vp-archive-about-label::after {
    content: "";
    display: block;
    width: 44px;
    height: 2px;
    margin: 14px auto 4px;
    background: linear-gradient(90deg, transparent, #C9A055, transparent);
}
.vp-archive-about-body {
    color: #a59f90;
    font-size: 15px;
    line-height: 1.75;
}
.vp-archive-about-body p { margin: 0 0 16px; }
.vp-archive-about-body strong { color: #D8B663; font-weight: 600; }
.vp-archive-about-body a {
    color: #C9A055;
    text-decoration: underline;
    text-underline-offset: 2px;
    text-decoration-color: rgba(201, 160, 85, .4);
    transition: color .2s ease;
}
.vp-archive-about-body a:hover { color: #E8C766; }
/* Final paragraph = legal/RUO line → render as separated fine print */
.vp-archive-about-body p:last-child {
    margin: 22px 0 0;
    padding-top: 18px;
    border-top: 1px solid rgba(255, 255, 255, .07);
    font-size: 13px;
    line-height: 1.65;
    color: #726d61;
}

/* Toolbar */
.vp-archive-toolbar {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 16px;
    padding: 16px 0;
    border-bottom: 1px solid #1f1f1f;
    margin-bottom: 32px;
    flex-wrap: wrap;
}
.vp-archive-count {
    color: #888;
    font-size: 13px;
    letter-spacing: .02em;
}
.vp-archive-sort {
    display: flex;
    align-items: center;
    gap: 12px;
    margin: 0;
}
.vp-sort-label {
    color: #888;
    font-size: 13px;
    letter-spacing: .02em;
}
.vp-sort-select {
    background: #111;
    color: #f5f0e8;
    border: 1px solid #1f1f1f;
    padding: 10px 36px 10px 14px;
    font-family: 'Inter', sans-serif;
    font-size: 13px;
    border-radius: 0;
    cursor: pointer;
    appearance: none;
    -webkit-appearance: none;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath fill='%23C9A055' d='M0 0l5 6 5-6z'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 14px center;
    transition: border-color .2s ease;
}
.vp-sort-select:hover,
.vp-sort-select:focus {
    border-color: #C9A055;
    outline: none;
}

/* Archive name styling — content-product.php uses <h3> wrapped in <a>.
   Strip browser defaults so the heading matches the .vp-product-name CSS
   in style.css:1500-1507. */
.vp-archive .vp-product-card h3.vp-product-name {
    margin: 0 0 4px;
    line-height: 1.3;
}
.vp-archive .vp-product-card .vp-product-info > a {
    text-decoration: none;
}

/* Pagination */
.vp-pagination {
    margin-top: 56px;
    text-align: center;
}
.vp-pagination .page-numbers {
    display: inline-block;
    padding: 10px 16px;
    margin: 0 4px;
    color: #888;
    text-decoration: none;
    border: 1px solid #1f1f1f;
    font-size: 14px;
    transition: all .2s ease;
}
.vp-pagination .page-numbers:hover,
.vp-pagination .page-numbers.current {
    color: #0A0A0A;
    background: #C9A055;
    border-color: #C9A055;
}

/* Empty */
.vp-archive-empty {
    text-align: center;
    padding: 80px 24px;
    color: #888;
}
.vp-archive-empty p {
    margin: 0 0 24px;
    font-size: 16px;
}
.vp-btn-secondary {
    display: inline-block;
    padding: 12px 28px;
    border: 1px solid #C9A055;
    color: #C9A055;
    text-decoration: none;
    font-family: 'Inter', sans-serif;
    font-size: 13px;
    letter-spacing: .08em;
    text-transform: uppercase;
    transition: all .2s ease;
}
.vp-btn-secondary:hover {
    background: #C9A055;
    color: #0A0A0A;
}

/* Mobile */
@media (max-width: 768px) {
    .vp-archive { padding: 16px 16px 56px; }
    .vp-archive-hero { padding: 16px 0 32px; margin-bottom: 24px; }
    .vp-archive-toolbar { margin-bottom: 20px; }
    .vp-archive-about { margin: 44px auto 0; border-radius: 10px; }
    .vp-archive-about-body { font-size: 14px; line-height: 1.7; }
}
