/* Category listing page (/category/<name>) — self-contained design tokens,
   matching the rest of the site's "fresh palette" (see About.css / FAQ.css /
   Policy.css / Contact.css for the same tokens under their own page-scoped
   names). Tabs are built with plain buttons + JS visibility toggling (see
   ByCategory.php's own inline script) rather than the old page's per-tab
   AJAX page loads — all qualification data for the category is already on
   the page after one request, so switching tabs needs no network round
   trip. */
:root{
    --category-navy: #0B1F3A;
    --category-navy-2: #14315C;
    --category-navy-3: #1E4079;
    --category-coral: #D6363C;
    --category-coral-dark: #C22A30;
    --category-amber: #FFB020;
    --category-teal: #0B7A6D;
    --category-bg: #F5F7FB;
    --category-ink: #1A2333;
    --category-muted: #5B6478;
    --category-border: #E3E7F0;
    --category-heading-font: 'Zilla Slab', Georgia, serif;
    --category-body-font: 'Karla', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
}

.category-main{background:var(--category-bg);font-family:var(--category-body-font);color:var(--category-ink);}

/* Breadcrumb */
.category-crumb{background:#fff;border-bottom:1px solid var(--category-border);padding:12px 20px;}
.category-crumb-wrap{max-width:1120px;margin:0 auto;display:flex;align-items:center;gap:8px;font-size:0.85rem;color:var(--category-muted);flex-wrap:wrap;}
.category-crumb-wrap a{color:var(--category-navy-3);text-decoration:none;}
.category-crumb-wrap a:hover{text-decoration:underline;}

/* Hero */
.category-hero{background:linear-gradient(100deg, var(--category-navy) 0%, var(--category-navy-2) 55%, var(--category-navy-3) 100%);color:#fff;padding:48px 20px;text-align:center;}
.category-hero-eyebrow{display:inline-block;font-size:0.8rem;font-weight:700;letter-spacing:0.08em;text-transform:uppercase;color:var(--category-amber);margin-bottom:10px;}
.category-hero h1{font-family:var(--category-heading-font);font-size:clamp(1.8rem, 4vw, 2.5rem);font-weight:700;margin:0 0 12px;}
.category-hero p{max-width:680px;margin:0 auto;color:#D7DEEC;font-size:1.02rem;line-height:1.6;}

/* Layout */
.category-wrap{max-width:1120px;margin:0 auto;padding:36px 20px 56px;}

/* Level tabs */
.category-tabs{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:24px;}
.category-tab{display:inline-flex;align-items:center;gap:8px;background:#fff;color:var(--category-navy-3);font-weight:700;font-size:0.92rem;padding:11px 20px;border-radius:999px;border:1px solid var(--category-border);cursor:pointer;transition:background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease;}
.category-tab:hover{border-color:var(--category-navy-3);}
.category-tab-count{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;padding:0 6px;border-radius:999px;background:var(--category-bg);color:var(--category-navy-3);font-size:0.78rem;font-weight:700;}
.category-tab[aria-selected="true"]{background:var(--category-navy);color:#fff;border-color:var(--category-navy);}
.category-tab[aria-selected="true"] .category-tab-count{background:var(--category-coral);color:#fff;}

/* Course card grid */
.category-panel{display:none;}
.category-panel.is-active{display:block;}
.category-grid{display:grid;grid-template-columns:repeat(auto-fit, minmax(300px, 1fr));gap:20px;}

.category-card{background:#fff;border:1px solid var(--category-border);border-radius:14px;box-shadow:0 6px 18px rgba(11,31,58,0.06);overflow:hidden;display:flex;flex-direction:column;}
.category-card-head{background:var(--category-navy);color:#fff;padding:16px 20px;}
.category-card-head h3{font-family:var(--category-heading-font);font-size:1.05rem;font-weight:700;margin:0 0 4px;line-height:1.35;}
.category-card-accreditor{color:var(--category-amber);font-size:0.8rem;font-weight:600;letter-spacing:0.02em;}

.category-card-body{padding:16px 20px;flex:1;}
.category-card-label{font-size:0.78rem;font-weight:700;text-transform:uppercase;letter-spacing:0.04em;color:var(--category-muted);margin:0 0 6px;}
.category-card-desc{color:var(--category-ink);font-size:0.92rem;line-height:1.6;}
.category-card-desc p{margin:0 0 10px;}
.category-card-desc p:last-child{margin-bottom:0;}
.category-card-other{margin-top:12px;padding-top:12px;border-top:1px solid var(--category-border);color:var(--category-muted);font-size:0.85rem;line-height:1.55;}

.category-card-actions{display:flex;gap:10px;padding:14px 20px;border-top:1px solid var(--category-border);}
.category-card-btn{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-weight:700;font-size:0.85rem;padding:10px 14px;border-radius:999px;text-decoration:none;text-align:center;transition:background-color 0.2s ease, transform 0.2s ease;}
.category-card-btn-info{background:var(--category-bg);color:var(--category-navy-3);border:1px solid var(--category-border);}
.category-card-btn-info:hover{background:#EDF0F8;}
.category-card-btn-dates{background:var(--category-coral);color:#fff;}
.category-card-btn-dates:hover{background:var(--category-coral-dark);transform:translateY(-1px);}

.category-empty,.category-empty-page{background:#fff;border:1px solid var(--category-border);border-radius:14px;padding:36px;text-align:center;color:var(--category-muted);}
.category-empty-page{max-width:640px;margin:36px auto;}
.category-empty-page h1{font-family:var(--category-heading-font);color:var(--category-navy);font-size:1.5rem;margin:0 0 10px;}
.category-empty-page a{color:var(--category-navy-3);font-weight:700;}

@media (max-width: 560px){
    .category-tabs{gap:8px;}
    .category-tab{padding:9px 16px;font-size:0.86rem;}
    .category-card-actions{flex-direction:column;}
}
