.case-studies { padding-top: 50px; padding-bottom: 112px; }
.case-study { display: grid; grid-template-columns: 175px minmax(0, 1fr); gap: clamp(25px, 5vw, 72px); padding: 58px 0; border-bottom: 1px solid var(--line); }
.case-study-index { display: flex; flex-direction: column; align-items: flex-start; gap: 28px; }
.case-study-number { color: var(--accent); font: 800 76px/.9 var(--sans); letter-spacing: -.07em; }
.case-study-content { max-width: 790px; }
.case-study-content h2 { margin: 11px 0 21px; font: 700 clamp(29px, 4vw, 47px)/1.13 var(--sans); letter-spacing: -.035em; }
.case-study-content > p { max-width: 750px; color: #4e4e4e; font: 400 15px/1.85 var(--sans); }
.source-link { display: inline-block; margin-left: 4px; color: var(--accent); border-bottom: 1px solid var(--accent); font-size: .88em; font-weight: 600; }
.source-link:hover { color: #073e46; border-color: #073e46; }
.case-learning { margin: 31px 0 19px; padding: 26px 29px; background: var(--accent-surface); border-left: 3px solid var(--accent); }
.case-learning .eyebrow { color: var(--accent); }
.case-learning h3 { margin: 12px 0 9px; color: #111; font: 700 22px/1.25 var(--sans); }
.case-learning p { max-width: 690px; margin: 0; color: #555; font: 400 14px/1.8 var(--sans); }
.case-caveat { color: #737373 !important; font-size: 12px !important; }

.reflection-list { padding-top: 42px; padding-bottom: 108px; }
.reflection-column { display: grid; grid-template-columns: 175px minmax(0, 1fr); gap: clamp(25px, 5vw, 72px); padding: 52px 0 59px; border-bottom: 1px solid var(--line); }
.reflection-column:first-child { border-top: 1px solid var(--line); }
.reflection-index { display: flex; flex-direction: column; align-items: flex-start; gap: 12px; padding-top: 7px; }
.reflection-index > span:last-child { color: var(--accent); font: 500 11px/1.5 var(--mono); letter-spacing: .08em; text-transform: uppercase; }
.reflection-copy { max-width: 790px; }
.reflection-copy h2 { max-width: 740px; margin: 0 0 20px; color: #111; font: 700 clamp(29px, 4vw, 46px)/1.14 var(--sans); letter-spacing: -.035em; }
.reflection-copy p { max-width: 740px; color: #4b4b4b; font: 400 16px/1.9 var(--sans); }
.reflection-signature { display: inline-block; margin-top: 13px; color: #777; font: 500 9px/1.5 var(--mono); letter-spacing: .09em; text-transform: uppercase; }

.editorial-hub { padding: 112px 0; background: #f4f4f4; }
.editorial-hub-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
.editorial-hub-card { display: flex; min-height: 250px; flex-direction: column; align-items: flex-start; padding: 27px; color: #111; background: #fff; border: 1px solid #dedede; transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease; }
.editorial-hub-card:hover { transform: translateY(-3px); border-color: #999; box-shadow: 0 12px 28px rgba(0,0,0,.06); }
.editorial-hub-card .hub-kicker { color: var(--accent); font: 500 9px/1.4 var(--mono); letter-spacing: .1em; text-transform: uppercase; }
.editorial-hub-card h3 { margin: 29px 0 8px; font: 700 25px/1.15 var(--sans); }
.editorial-hub-card p { margin: 0; color: #555; font: 400 13px/1.7 var(--sans); }
.editorial-hub-card .hub-link { margin-top: auto; padding-top: 20px; color: var(--accent); font: 700 10px/1.4 var(--sans); letter-spacing: .07em; text-transform: uppercase; }
.editorial-invitation { padding: 70px 0; background: #f4f4f4; border-top: 1px solid #e4e4e4; }
.editorial-invitation-inner { display: flex; align-items: center; justify-content: space-between; gap: 28px; }
.editorial-invitation h2 { max-width: 610px; margin: 10px 0 0; color: #111; font: 700 clamp(28px, 3.5vw, 42px)/1.15 var(--sans); letter-spacing: -.03em; }

@media (max-width: 820px) {
  .case-study, .reflection-column { grid-template-columns: 115px minmax(0, 1fr); gap: 25px; }
  .case-study-number { font-size: 58px; }
  .editorial-hub, .case-studies, .reflection-list { padding-top: 78px; padding-bottom: 82px; }
  .editorial-hub-grid { grid-template-columns: 1fr; }
  .editorial-hub-card { min-height: 205px; }
}

@media (max-width: 530px) {
  .case-study, .reflection-column { grid-template-columns: 1fr; gap: 17px; padding: 37px 0 43px; }
  .case-study-index { flex-direction: row; align-items: center; justify-content: space-between; gap: 12px; }
  .case-study-number { font-size: 42px; }
  .case-learning { padding: 21px; }
  .case-learning h3 { font-size: 19px; }
  .reflection-index { flex-direction: row; align-items: center; gap: 15px; }
  .reflection-copy p { font-size: 15px; }
  .editorial-hub, .case-studies, .reflection-list { padding-top: 58px; padding-bottom: 66px; }
  .editorial-invitation { padding: 55px 0; }
  .editorial-invitation-inner { align-items: flex-start; flex-direction: column; }
}

/* Affordance de leitura integral: títulos e CTAs permanecem claros no teclado e no pointer. */
.article-card h2 a,
.case-study-content h2 a,
.reflection-copy h2 a {
  text-decoration: underline;
  text-decoration-color: transparent;
  text-decoration-thickness: 2px;
  text-underline-offset: 5px;
  transition: color .2s ease, text-decoration-color .2s ease;
}
.article-card h2 a:hover,
.article-card h2 a:focus-visible,
.case-study-content h2 a:hover,
.case-study-content h2 a:focus-visible,
.reflection-copy h2 a:hover,
.reflection-copy h2 a:focus-visible {
  color: var(--blue);
  text-decoration-color: currentColor;
}
.article-card h2 a:focus-visible,
.case-study-content h2 a:focus-visible,
.reflection-copy h2 a:focus-visible,
.reading-cta:focus-visible {
  outline: 3px solid rgba(43,113,142,.32);
  outline-offset: 5px;
}
.reading-cta {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  align-self: flex-start;
  margin-top: 18px;
  padding-bottom: 5px;
  color: var(--blue);
  border-bottom: 1px solid currentColor;
  font: 800 10px/1.4 var(--sans);
  letter-spacing: .07em;
  text-transform: uppercase;
  transition: color .2s ease, border-color .2s ease, transform .2s ease;
}
.reading-cta:hover {
  color: var(--ink);
  transform: translateX(3px);
}
.case-study-content .reading-cta { margin-top: 10px; }
.reflection-copy .reading-cta { margin-top: 7px; }
.article-sources {
  margin-top: 58px;
  padding-top: 28px;
  border-top: 1px solid var(--line);
}
.article-sources h2 { margin-top: 0; }
.article-sources ol { padding-left: 22px; }
.article-sources li { margin: 12px 0; color: #536a77; font-size: 14px; line-height: 1.75; }
.article-sources li a { color: var(--blue); text-decoration: underline; text-underline-offset: 3px; }
.article-sources li a:hover, .article-sources li a:focus-visible { color: var(--ink); }
.source-marker a { color: var(--blue); text-decoration: underline; text-underline-offset: 2px; }
.article-note { color: #667983 !important; font-size: 13px !important; line-height: 1.7 !important; }
.aside-links-label { display: block; padding: 16px 0 9px; color: var(--blue); font: 500 10px/1.3 var(--mono); letter-spacing: .1em; text-transform: uppercase; }

.article-body h3 {
  margin: 34px 0 11px;
  color: var(--ink);
  font: 700 23px/1.25 var(--sans);
  letter-spacing: -.02em;
}
