/* Extra color tokens for this page — not in layout.css */
:root {
  --miss-bg: #f4f4f2;
  --miss-text: #555;
  --miss-border: #d8d7d2;
  --manual-bg: #eeeeed;
  --manual-text: #555;
  --manual-border: #d0ceca;
}

body {
  background: var(--off-white);
}

/* ── HERO ── */
.hero {
  background: var(--teal-light);
  border-bottom: 2px solid var(--teal-mid);
  padding: 3.5rem 2.5rem;
}
.hero-kicker {
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--teal);
  margin-bottom: 0.5rem;
}
.hero h1 {
  font-family: var(--serif);
  font-size: 2.5rem;
  font-weight: 600;
  color: var(--dark);
  line-height: 1.15;
  margin-bottom: 0.75rem;
}
.hero-sub {
  max-width: 780px;
  font-size: 0.95rem;
  color: var(--grey-700);
  line-height: 1.7;
}

/* ── PAGE BODY: sidebar + main ── */
.compare-body {
  padding: 2.5rem 2.5rem 3rem;
}
.compare-body--inner {
  /* max-width: 1080px; margin: 0 auto — from layout.css [class*="--inner"] */
  display: grid;
  grid-template-columns: 200px 1fr;
  gap: 2.5rem;
  align-items: start;
}

/* ── SIDEBAR ── */
.sidebar {
  position: sticky;
  top: 2rem;
}
.sb-section {
  margin-bottom: 1.5rem;
}
.sb-title {
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--grey-600);
  margin-bottom: 0.625rem;
}
.sb-link {
  display: block;
  font-size: 13px;
  color: var(--grey-700);
  text-decoration: none;
  padding: 5px 8px;
  border-radius: 6px;
  margin-bottom: 2px;
}
.sb-link:hover {
  background: var(--teal-light);
  color: var(--teal);
}
.sb-link.active {
  background: var(--teal-light);
  color: var(--teal);
  font-weight: 600;
}

/* ── SECTION BLOCKS ── */
.section-block {
  margin-bottom: 3.5rem;
}
.s-kicker {
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--teal);
  margin-bottom: 0.4rem;
}
.s-h {
  font-family: var(--serif);
  font-size: 1.75rem;
  font-weight: 600;
  color: var(--dark);
  margin-bottom: 0.5rem;
  scroll-margin-top: 40px;
}
.s-sub {
  font-size: 0.95rem;
  color: var(--grey-600);
  line-height: 1.7;
  max-width: 600px;
  margin-bottom: 1.5rem;
}

/* ── PILLS ── */
.pill {
  display: inline-flex;
  align-items: center;
  gap: 3px;
  font-size: 11px;
  font-weight: 600;
  padding: 3px 9px;
  border-radius: 100px;
  white-space: nowrap;
}
.p-yes {
  background: var(--pass-bg);
  color: var(--pass-text);
  border: 1px solid var(--pass-border);
}
.p-partial {
  background: var(--warn-bg);
  color: var(--warn-text);
  border: 1px solid var(--warn-border);
}
.p-no {
  background: var(--miss-bg);
  color: var(--miss-text);
  border: 1px solid var(--miss-border);
}
.p-manual {
  background: var(--manual-bg);
  color: var(--manual-text);
  border: 1px solid var(--manual-border);
}

/* ── FILTER BAR ── */
.fbar {
  display: flex;
  gap: 7px;
  margin-bottom: 1.25rem;
  align-items: center;
  flex-wrap: wrap;
}
.fl {
  font-size: 12px;
  color: var(--grey-600);
  font-weight: 500;
}
.fb {
  background: var(--white);
  border: 1.5px solid var(--grey-200);
  border-radius: 100px;
  padding: 4px 12px;
  font-size: 12px;
  font-weight: 600;
  font-family: var(--sans);
  cursor: pointer;
  color: var(--grey-700);
}
.fb:hover {
  border-color: var(--teal);
  color: var(--teal);
}
.fb.on {
  background: var(--teal);
  border-color: var(--teal);
  color: var(--white);
}

/* ── WCAG TECHNIQUE TABLE ── */
.exp-tbl {
  width: 100%;
  border: 1px solid var(--grey-200);
  border-radius: 12px;
  overflow: hidden;
  background: var(--white);
}
.eth {
  display: grid;
  grid-template-columns: 80px 1fr 150px 28px;
  background: var(--off-white);
  border-bottom: 1px solid var(--grey-200);
}
.eth-cell {
  padding: 9px 12px;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--grey-600);
}
.etr {
  border-bottom: 1px solid var(--grey-100);
}
.etr:last-child {
  border-bottom: none;
}
.etr.hidden {
  display: none;
}
.etb {
  display: grid;
  grid-template-columns: 80px 1fr 150px 28px;
  width: 100%;
  background: none;
  border: none;
  text-align: left;
  cursor: pointer;
  font-family: var(--sans);
  align-items: start;
}
.etb:hover {
  background: var(--off-white);
}
.ec {
  padding: 13px 12px;
  font-size: 13px;
  color: var(--dark);
  line-height: 1.5;
}
.ec:nth-of-type(3) {
  padding: 10px 12px;
}

.ec.id {
  font-family: monospace;
  font-size: 12px;
  color: var(--teal);
  font-weight: 600;
}
.edet a {
  display: inline-block;
  margin-top: 8px;
  color: var(--teal);
  font-size: 12px;
}
.ec.chev {
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--grey-500);
  font-size: 11px;
  transition: transform 0.2s;
  padding: 15px 13px 9px 8px;
}
.ec.chev.open {
  padding-top: 17px;
  transform: rotate(90deg);
}
.edet {
  display: none;
  background: var(--teal-light);
  border-top: 1px solid var(--teal-mid);
  padding: 12px 14px 14px 92px;
  font-size: 13px;
  color: var(--grey-700);
  line-height: 1.65;
}
.edet.open {
  display: block;
}

/* ── ADOBE COMPARISON TABLE ── */
.atbl {
  width: 100%;
  border-collapse: collapse;
  outline: 1px solid var(--grey-200);
  border-radius: 12px;
  overflow: hidden;
  background: var(--white);
}
.atbl th {
  background: var(--grey-100);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--grey-700);
  padding: 10px 14px;
  text-align: left;
  border-bottom: 1px solid var(--grey-200);
}
.atbl th:not(:first-child) {
  text-align: center;
}
.atbl td {
  padding: 9px 14px;
  border-bottom: 1px solid var(--grey-100);
  font-size: 13px;
  color: var(--dark);
}
.atbl td:not(:first-child) {
  text-align: center;
}
.atbl tr:last-child td {
  border-bottom: none;
}
.atbl td.ch {
  background: var(--off-white);
  font-size: 10px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: var(--grey-600);
  padding: 6px 14px;
}
.li-item {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 12px;
  color: var(--grey-700);
}

/* ── RESPONSIVE ── */
@media (max-width: 900px) {
  .compare-body--inner {
    grid-template-columns: 1fr;
  }
  .sidebar {
    position: static;
  }
}
@media (max-width: 720px) {
  .eth,
  .etb {
    grid-template-columns: 70px 1fr 130px 28px;
  }
}
