/* ════════════════════════════════════════════
   A3 Digital Tools — Category Page Styles
   Replaces old cat-hero styles completely.
════════════════════════════════════════════ */

/* ── CATEGORY HERO ── */
.cat-hero {
    background: var(--white);
    border-bottom: 2px solid var(--gray-100);
    padding: var(--sp-10) 0 var(--sp-12);
}

.cat-hero .breadcrumb {
    margin-bottom: var(--sp-6);
}

.cat-hero__body {
    display: flex;
    align-items: flex-start;
    gap: var(--sp-8);
}

.cat-hero__icon {
    width: 88px;
    height: 88px;
    border-radius: var(--radius-xl);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 44px;
    flex-shrink: 0;
    /* Subtle box shadow so it lifts off the white bg */
    box-shadow: 0 4px 16px rgba(0,0,0,0.06);
}

.cat-hero__content { flex: 1; }

.cat-hero__eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: var(--text-xs);
    font-weight: var(--fw-bold);
    text-transform: uppercase;
    letter-spacing: 0.1em;
    margin-bottom: var(--sp-3);
}

.cat-hero__title {
    font-size: clamp(28px, 4vw, 44px);
    font-weight: var(--fw-black);
    color: var(--gray-900);
    line-height: var(--lh-tight);
    letter-spacing: -0.025em;
    margin-bottom: var(--sp-4);
}

.cat-hero__desc {
    font-size: var(--text-md);
    color: var(--gray-500);
    line-height: var(--lh-normal);
    max-width: 620px;
    margin-bottom: var(--sp-6);
}

.cat-hero__badges {
    display: flex;
    flex-wrap: wrap;
    gap: var(--sp-2);
    align-items: center;
}

.cat-hero__badge {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    font-size: var(--text-xs);
    font-weight: var(--fw-semi);
    color: var(--gray-600);
    background: var(--gray-100);
    border: 1px solid var(--gray-200);
    padding: 5px 12px;
    border-radius: var(--radius-full);
}

.cat-hero__badge strong {
    color: var(--blue);
    font-weight: var(--fw-bold);
}

/* ── TOOLS SECTION ── */
.cat-tools-section {
    background: var(--gray-50);
    padding: var(--sp-12) 0;
}

.cat-tools-header {
    margin-bottom: var(--sp-6);
}

.cat-tools-count {
    font-size: var(--text-md);
    font-weight: var(--fw-semi);
    color: var(--gray-500);
}

/* ── OTHER CATEGORIES ── */
.cat-other-section {
    background: var(--white);
    padding: var(--sp-16) 0 var(--sp-12);
    border-top: 2px solid var(--gray-100);
}

.cat-other-title {
    font-size: var(--text-2xl);
    font-weight: var(--fw-xbold);
    color: var(--gray-900);
    margin-bottom: var(--sp-8);
}

.cat-other-grid {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 14px;
}

.cat-other-card {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    padding: var(--sp-5) var(--sp-4);
    background: var(--white);
    border: 1.5px solid var(--gray-200);
    border-radius: var(--radius-lg);
    text-decoration: none;
    transition: var(--transition);
    gap: var(--sp-2);
}

.cat-other-card:hover {
    border-color: var(--blue-mid);
    box-shadow: var(--shadow-sm);
    transform: translateY(-2px);
}

.cat-other-card__icon {
    width: 52px;
    height: 52px;
    border-radius: var(--radius-md);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 24px;
    margin-bottom: var(--sp-1);
}

.cat-other-card__name {
    font-size: var(--text-sm);
    font-weight: var(--fw-bold);
    color: var(--gray-800);
    line-height: var(--lh-snug);
}

.cat-other-card__count {
    font-size: var(--text-xs);
    color: var(--gray-400);
    font-weight: var(--fw-semi);
}

/* ── RESPONSIVE ── */
@media (max-width: 1024px) {
    .cat-other-grid { grid-template-columns: repeat(4, 1fr); }
}

@media (max-width: 768px) {
    .cat-hero__body { flex-direction: column; gap: var(--sp-5); }
    .cat-hero__icon { width: 64px; height: 64px; font-size: 32px; }
    .cat-hero__title { font-size: 28px; }
    .cat-other-grid { grid-template-columns: repeat(3, 1fr); }
    .cat-tools-section { padding: var(--sp-8) 0; }
    .cat-other-section { padding: var(--sp-10) 0; }
}

@media (max-width: 480px) {
    .cat-other-grid { grid-template-columns: repeat(2, 1fr); }
    .cat-hero__badges { gap: var(--sp-1); }
}
