/* ============================================================
   Certifications Page Styles
   ============================================================ */

/* 1. Hero — dark with background image */
.cert-hero {
	position: relative;
	background: var(--nb-ink) var(--hero-bg, none) center/cover no-repeat;
	min-height: 65vh;
	display: flex;
	align-items: center;
	padding: 0;
}
.cert-hero::before {
	content: '';
	position: absolute;
	inset: 0;
	background: linear-gradient(105deg, rgba(17,18,20,.93) 50%, rgba(17,18,20,.6));
}
.cert-hero__inner {
	position: relative;
	z-index: 1;
	display: grid;
	grid-template-columns: 1fr 380px;
	gap: 64px;
	align-items: center;
	padding: 120px 0 80px;
}
.cert-hero__inner > .breadcrumb { grid-column: 1 / -1; margin-bottom: -20px; }
.cert-hero__text h1 { font-size: clamp(2rem,4vw,3rem); margin: 12px 0 18px; line-height: 1.15; color: #fff; }
.cert-hero__text p { font-size: 1.05rem; color: rgba(255,255,255,.82); max-width: 560px; margin-bottom: 28px; }
.cert-hero__ctas { display: flex; gap: 14px; flex-wrap: wrap; }
.cert-hero .eyebrow { color: var(--nb-yellow); }
.cert-hero .breadcrumb { color: #fff; }

.cert-hero__trust { display: flex; flex-direction: column; gap: 14px; }
.cert-trust-item { display: flex; align-items: center; gap: 16px; background: rgba(255,255,255,.1); backdrop-filter: blur(6px); border-radius: 14px; padding: 16px 18px; border: 1px solid rgba(255,255,255,.15); }
.cert-trust-item strong { display: block; font-size: .95rem; color: #fff; }
.cert-trust-item span { font-size: .83rem; color: rgba(255,255,255,.75); }
.cert-trust-item .icon-3d { background: rgba(255,198,39,.2); flex-shrink: 0; }
@media (max-width: 860px) { .cert-hero__inner { grid-template-columns: 1fr; gap: 40px; padding: 100px 0 60px; } .cert-hero { min-height: auto; } }

/* 2. Stats */
.cert-stats { padding: 56px 0; }
.cert-stats__grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 24px; }
.cert-stat-card { background: #fff; border: 2px solid #f0f0f0; border-radius: 20px; padding: 32px 20px; text-align: center; }
.cert-stat-card strong { display: block; font-size: 2.6rem; font-weight: 900; color: var(--nb-yellow); line-height: 1; margin-bottom: 10px; }
.cert-stat-card span { font-size: .9rem; color: var(--nb-muted); line-height: 1.5; }
@media (max-width: 760px) { .cert-stats__grid { grid-template-columns: repeat(2,1fr); } }

/* 3. License section */
.cert-license__grid { display: grid; grid-template-columns: 1fr 420px; gap: 56px; align-items: center; }
.cert-license__card { }
.license-display { background: #fff9e6; border: 3px solid var(--nb-yellow); border-radius: 20px; padding: 28px; display: flex; gap: 20px; align-items: center; margin-bottom: 16px; }
.license-display__seal { width: 70px; height: 70px; background: var(--nb-yellow); border-radius: 50%; display: flex; align-items: center; justify-content: center; flex-shrink: 0; }
.license-display__seal svg { width: 36px; height: 36px; color: var(--nb-ink); }
.license-display__detail strong { display: block; font-size: 1.05rem; margin-bottom: 4px; }
.license-display__detail span { display: block; font-size: 1rem; font-weight: 700; color: var(--nb-yellow); margin-bottom: 4px; }
.license-display__detail small { font-size: .82rem; color: var(--nb-muted); }
.license-display__verify { background: #fff; border: 1px solid #e8e8e8; border-radius: 14px; padding: 18px; font-size: .88rem; color: var(--nb-muted); }
@media (max-width: 860px) { .cert-license__grid { grid-template-columns: 1fr; } }

/* 4. Cert cards grid */
.cert-cards-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 24px; margin-top: 40px; }
.cert-card { background: #fff; border: 2px solid #f0f0f0; border-radius: 20px; overflow: hidden; display: flex; flex-direction: column; transition: border-color .2s, transform .2s; }
.cert-card:hover { border-color: var(--nb-yellow); transform: translateY(-4px); }
.cert-card__badge { padding: 24px; background: #f8f9fa; display: flex; align-items: center; justify-content: center; border-bottom: 1px solid #f0f0f0; }
.cert-card__badge img { max-height: 72px; object-fit: contain; }
.cert-card__icon { padding: 24px; background: #fff9e6; display: flex; align-items: center; justify-content: center; border-bottom: 1px solid #f0f0f0; }
.cert-card__icon svg { width: 40px; height: 40px; color: var(--nb-yellow); }
.cert-card__body { padding: 20px 20px 24px; flex: 1; display: flex; flex-direction: column; gap: 6px; }
.cert-card__body h3 { font-size: 1rem; margin: 0 0 6px; }
.cert-card__org { font-size: .82rem; font-weight: 600; color: var(--nb-yellow); display: block; }
.cert-card__num { font-size: .8rem; color: var(--nb-muted); display: block; }
.cert-card__body p { font-size: .87rem; color: var(--nb-muted); margin: 4px 0 0; }
.cert-card__body small { font-size: .78rem; color: var(--nb-muted); }
@media (max-width: 860px) { .cert-cards-grid { grid-template-columns: repeat(2,1fr); } }
@media (max-width: 480px) { .cert-cards-grid { grid-template-columns: 1fr; } }

/* 5. Badge wall (shared from areas.css) */
.badge-wall { display: flex; flex-wrap: wrap; justify-content: center; gap: 28px; align-items: center; margin-top: 36px; }
.badge-wall--compact { gap: 20px; }
.badge-item { display: flex; flex-direction: column; align-items: center; gap: 8px; }
.badge-item img { max-height: 72px; max-width: 120px; object-fit: contain; }
.badge-item--sm img { max-height: 52px; max-width: 90px; }
.badge-item__name { font-size: .78rem; color: var(--nb-muted); text-align: center; max-width: 100px; }
