/* Styling for the programmatic /company/{slug} pages (gen-company-pages.mjs). */
.co-main { max-width: 920px; margin: 0 auto; padding: var(--space-6) var(--space-5) var(--space-9); }

.co-hero { background: var(--ink); color: var(--paper); border-radius: var(--radius-card); padding: 30px 30px 26px; margin-bottom: var(--space-5); }
.co-eyebrow { font-family: var(--font-mono, monospace); font-size: 11px; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; color: var(--acid); margin: 0 0 10px; }
.co-h1 { font-family: var(--font-sans); font-weight: 800; font-size: clamp(1.8rem, 4vw, 2.6rem); letter-spacing: -.03em; margin: 0 0 4px; }
.co-h1 em { font-family: var(--font-display, "Instrument Serif", serif); font-style: italic; font-weight: 400; color: var(--acid); }
.co-sub { color: rgba(244,239,230,.7); margin: 0 0 22px; font-size: .98rem; }
.co-stats { display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px; border-top: 1px solid rgba(244,239,230,.12); padding-top: 20px; }
@media (max-width: 620px) { .co-stats { grid-template-columns: repeat(2, 1fr); } }
.co-stat b { display: block; font-family: var(--font-sans); font-weight: 800; font-size: 1.9rem; letter-spacing: -.03em; color: var(--acid); line-height: 1; }
.co-stat span { display: block; margin-top: 6px; font-family: var(--font-mono, monospace); font-size: 9.5px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: rgba(244,239,230,.55); }

.co-verdict { margin: var(--space-4) 0 var(--space-5); padding: 16px 20px; border: 1.5px solid var(--ink); border-left-width: 4px; border-radius: var(--radius-card-inner, 10px); background: rgba(14,14,12,.02); }
.co-verdict b { font-weight: 700; }
.co-verdict .why { display: block; margin-top: 6px; font-size: .88rem; color: rgba(14,14,12,.6); }

.co-jobs-h { font-family: var(--font-sans); font-weight: 800; font-size: 1.3rem; letter-spacing: -.02em; margin: 0 0 12px; }
.co-job { display: flex; align-items: baseline; gap: 14px; padding: 13px 4px; border-bottom: 1px solid rgba(14,14,12,.1); text-decoration: none; color: var(--ink); }
.co-job:hover { background: rgba(212,255,61,.08); }
.co-job .t { font-weight: 600; flex: 1; }
.co-job .loc { font-size: .85rem; color: rgba(14,14,12,.55); white-space: nowrap; }
.co-job .age { font-family: var(--font-mono, monospace); font-size: 10px; color: rgba(14,14,12,.45); white-space: nowrap; }

.co-cap { margin: var(--space-6) 0 0; padding: 26px; background: var(--acid); border-radius: var(--radius-card); text-align: center; }
.co-cap h2 { font-family: var(--font-sans); font-weight: 800; font-size: 1.3rem; letter-spacing: -.02em; margin: 0 0 6px; color: var(--ink); }
.co-cap p { margin: 0 0 16px; color: rgba(14,14,12,.7); font-size: .95rem; }
.co-cap a { display: inline-flex; align-items: center; gap: 8px; padding: 12px 24px; border-radius: 999px; background: var(--ink); color: var(--paper); text-decoration: none; font-weight: 700; }
.co-related { margin-top: var(--space-6); font-size: .9rem; color: rgba(14,14,12,.6); }
.co-related a { color: var(--ink); font-weight: 600; }

/* Email-capture form (the retention bridge) on the .co-cap block */
.co-cap-form { display: flex; gap: 8px; justify-content: center; flex-wrap: wrap; max-width: 460px; margin: 0 auto; }
.co-cap-form input { flex: 1; min-width: 200px; padding: 12px 16px; border: 1.5px solid var(--ink); border-radius: 999px; font: inherit; font-size: .95rem; background: var(--paper); color: var(--ink); }
.co-cap-form input:focus { outline: none; border-color: var(--ink); box-shadow: 0 0 0 3px rgba(14,14,12,.15); }
.co-cap-form button { padding: 12px 22px; border-radius: 999px; background: var(--ink); color: var(--paper); border: none; font-weight: 700; cursor: pointer; white-space: nowrap; }
.co-cap-form button:disabled { opacity: .55; cursor: default; }
.co-cap-msg { flex-basis: 100%; margin-top: 8px; font-size: .85rem; color: rgba(14,14,12,.8); font-weight: 600; min-height: 1em; }
