/* Lab page styles */
.lab-hero { position: relative; padding: calc(var(--nav-height) + var(--space-10)) 0 var(--space-16); text-align: center; overflow: hidden; }
.lab-hero h1 { font-size: clamp(2rem, 5vw, 3.5rem); font-weight: 900; line-height: 1.15; margin: var(--space-4) 0 var(--space-5); }
.lab-hero p { font-size: var(--text-lg); color: var(--clr-text-2); max-width: 560px; margin: 0 auto; line-height: 1.7; }

/* Process */
.lab-process { display: grid; grid-template-columns: repeat(6, 1fr) repeat(5,auto); gap: 0; align-items: start; margin-bottom: var(--space-4); overflow-x: auto; }
.lab-process { display: flex; align-items: flex-start; gap: 0; margin-bottom: var(--space-4); overflow-x: auto; padding-bottom: var(--space-4); }
.process-step { flex: 1; min-width: 160px; padding: var(--space-5); border: 1px solid var(--clr-border); display: flex; flex-direction: column; gap: var(--space-3); }
.process-num { font-family: var(--font-mono); font-size: var(--text-2xl); font-weight: 800; background: var(--grad-primary); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; }
.process-step h3 { font-size: var(--text-sm); font-weight: 700; margin: 0; }
.process-step p { font-size: var(--text-xs); color: var(--clr-text-2); line-height: 1.6; margin: 0; }
.process-arrow { padding: var(--space-8) var(--space-2); color: var(--clr-accent); font-size: var(--text-xl); flex-shrink: 0; align-self: flex-start; padding-top: var(--space-10); }

/* Labs */
.labs-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: var(--space-5); margin-bottom: var(--space-16); }
.lab-card { padding: var(--space-6); border: 1px solid var(--clr-border); display: flex; flex-direction: column; gap: var(--space-4); }
.lab-card-header { display: flex; align-items: flex-start; justify-content: space-between; gap: var(--space-3); }
.lab-name { font-size: var(--text-base); font-weight: 700; }
.lab-specs { display: flex; flex-direction: column; gap: var(--space-2); }
.lab-spec { display: flex; justify-content: space-between; font-size: var(--text-xs); color: var(--clr-text-2); border-bottom: 1px solid rgba(255,255,255,0.03); padding: var(--space-1) 0; }
.lab-spec:last-child { border: none; }

/* Certifications */
.certifications-section { margin-bottom: var(--space-16); }
.certs-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: var(--space-4); margin-top: var(--space-8); }
.cert-card { padding: var(--space-5); border: 1px solid var(--clr-border-2); text-align: center; display: flex; flex-direction: column; gap: var(--space-3); align-items: center; }
.cert-badge { width: 48px; height: 48px; background: rgba(0,229,160,0.1); border: 1px solid rgba(0,229,160,0.2); border-radius: var(--radius-full); display: flex; align-items: center; justify-content: center; font-size: var(--text-lg); color: var(--clr-success); }
.cert-card h4 { font-size: var(--text-sm); font-weight: 700; margin: 0; }
.cert-card p { margin: 0; }

/* Batch lookup */
.batch-lookup { padding: var(--space-10); border: 1px solid var(--clr-border-2); text-align: center; margin-bottom: var(--space-16); }
.batch-lookup h2 { font-size: var(--text-2xl); font-weight: 800; margin-bottom: var(--space-4); }
.batch-search { display: flex; gap: var(--space-3); justify-content: center; flex-wrap: wrap; margin-top: var(--space-6); }

@media (max-width: 1024px) { .labs-grid { grid-template-columns: 1fr; } .certs-grid { grid-template-columns: repeat(2,1fr); } }
@media (max-width: 640px) { .certs-grid { grid-template-columns: 1fr; } }
