/* /portfolio/abrace — conhecimento → sistema → recorrência
   Sem grades decorativas. A composição usa massas, órbitas e cartões orgânicos. */
body[data-page="portfolio"] .case-story--abrace {
  --ab-ink: #152829;
  --ab-muted: #617071;
  --ab-teal: #00bfa9;
  --ab-teal-deep: #087a6e;
  --ab-soft: #edf8f5;
  --ab-cream: #fbf7ef;
  --ab-orange: #ff7e00;
  --ab-dark: #102425;
  background: #f8fbfa;
}
body[data-page="portfolio"] .case-story--abrace .case-editorial-hero {
  position: relative;
  overflow: clip;
  padding-block: clamp(116px,10vw,154px) clamp(82px,8vw,116px);
  background:
    radial-gradient(circle at 88% 18%, rgba(0,191,169,.14), transparent 25%),
    radial-gradient(circle at 66% 84%, rgba(255,126,0,.055), transparent 22%),
    #f3faf8;
}
body[data-page="portfolio"] .case-story--abrace .case-editorial-hero-shell {
  display: grid;
  grid-template-columns: minmax(0,1.04fr) minmax(360px,.76fr);
  gap: clamp(48px,7vw,104px);
  align-items: center;
}
body[data-page="portfolio"] .case-story--abrace .case-editorial-hero-copy h1 {
  max-width: 15ch;
  margin: 20px 0 0;
  color: var(--ab-ink);
  font-size: clamp(54px,6vw,88px);
  line-height: .94;
  letter-spacing: -.05em;
  text-wrap: balance;
}
body[data-page="portfolio"] .case-story--abrace .case-editorial-hero-lede {
  display: grid;
  gap: 7px;
  max-width: 60ch;
  margin-top: 30px;
}
body[data-page="portfolio"] .case-story--abrace .case-editorial-hero-lede p {
  margin: 0;
  color: var(--ab-muted);
  font-size: clamp(15px,1.08vw,18px);
  line-height: 1.58;
}
body[data-page="portfolio"] .case-story--abrace .case-editorial-hero-lede p:nth-child(2) {
  margin-block: 5px;
  color: var(--ab-ink);
  font: 500 clamp(22px,2vw,32px)/1.2 var(--font-display);
}
body[data-page="portfolio"] .case-story--abrace .case-editorial-hero-visual {
  width: min(100%,520px);
  margin-left: auto;
  padding: 14px;
  border-radius: 38px 38px 14px 38px;
  background: rgba(255,255,255,.68);
  box-shadow: 0 22px 70px rgba(20,38,39,.08);
}
body[data-page="portfolio"] .case-story--abrace .case-editorial-cover.asset-frame {
  width: 100%;
  aspect-ratio: 16/10;
  min-height: 0;
  overflow: hidden;
  border-radius: 26px 26px 9px 26px;
  background: #fff;
}
body[data-page="portfolio"] .case-story--abrace .case-editorial-cover.asset-frame img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
body[data-page="portfolio"] .case-story--abrace .case-editorial-hero-visual figcaption {
  width: min(350px,92%);
  margin: -24px 10px 0 auto;
  padding: 16px 18px;
  border-radius: 22px 8px 22px 22px;
  background: var(--ab-dark);
  box-shadow: 0 14px 30px rgba(16,36,37,.14);
}
body[data-page="portfolio"] .case-story--abrace .case-editorial-hero-visual figcaption span {
  display: block;
  color: #fff;
  font: 500 18px/1.25 var(--font-display);
}
body[data-page="portfolio"] .case-story--abrace .case-editorial-hero-visual figcaption small {
  display: block;
  margin-top: 6px;
  color: rgba(255,255,255,.64);
  font: 400 10px/1.45 var(--font-label);
}
body[data-page="portfolio"] .case-story--abrace .case-editorial-opening {
  position: relative;
  overflow: clip;
  padding-block: clamp(82px,8vw,120px);
  background: var(--ab-dark);
}
body[data-page="portfolio"] .case-story--abrace .case-editorial-opening::after {
  content: "";
  position: absolute;
  width: clamp(220px,26vw,390px);
  aspect-ratio: 1;
  right: clamp(-180px,-9vw,-80px);
  bottom: clamp(-210px,-12vw,-100px);
  border-radius: 50%;
  background: rgba(120,234,219,.07);
}
body[data-page="portfolio"] .case-story--abrace .case-editorial-opening-shell {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(150px,.2fr) minmax(0,.8fr);
  gap: clamp(36px,6vw,92px);
}
body[data-page="portfolio"] .case-story--abrace .case-editorial-opening .eyebrow {
  color: #78eadb;
}
body[data-page="portfolio"] .case-story--abrace .case-editorial-opening-copy h2 {
  max-width: 15ch;
  margin: 0;
  color: #fff;
  font-size: clamp(46px,5.3vw,76px);
  line-height: .96;
  letter-spacing: -.045em;
}
body[data-page="portfolio"] .case-story--abrace .case-editorial-opening-text {
  display: grid;
  gap: 8px;
  max-width: 60ch;
  margin-top: 28px;
}
body[data-page="portfolio"] .case-story--abrace .case-editorial-opening-text p {
  margin: 0;
  color: rgba(255,255,255,.68);
  font-size: clamp(15px,1.08vw,18px);
  line-height: 1.58;
}
body[data-page="portfolio"] .case-story--abrace .case-editorial-variables {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
  margin: 30px 0 0;
  padding: 0;
  list-style: none;
}
body[data-page="portfolio"] .case-story--abrace .case-editorial-variables li {
  padding: 9px 13px;
  border-radius: 999px;
  background: rgba(255,255,255,.07);
  color: #dffaf6;
  font: 650 10px/1.2 var(--font-label);
  letter-spacing: .035em;
}
body[data-page="portfolio"] .case-story--abrace .case-editorial-opening-closing {
  max-width: 42ch;
  margin: 38px 0 0;
  color: #78eadb;
  font: 500 clamp(25px,2.35vw,36px)/1.18 var(--font-display);
}

body[data-page="portfolio"] .case-story--abrace .abrace-case {
  overflow: clip;
  background:
    radial-gradient(circle at 96% 14%, rgba(0,191,169,.06), transparent 17%),
    radial-gradient(circle at 2% 48%, rgba(255,126,0,.04), transparent 15%),
    #f8fbfa;
}
body[data-page="portfolio"] .case-story--abrace .abrace-case > section {
  position: relative;
  padding-block: clamp(84px,8vw,128px);
}
body[data-page="portfolio"] .case-story--abrace .abrace-section-copy {
  max-width: 770px;
}
body[data-page="portfolio"] .case-story--abrace .abrace-section-copy h2 {
  max-width: 16ch;
  margin: 16px 0 0;
  color: var(--ab-ink);
  font-size: clamp(42px,4.8vw,70px);
  line-height: .97;
  letter-spacing: -.046em;
  text-wrap: balance;
}
body[data-page="portfolio"] .case-story--abrace .abrace-section-copy > div {
  display: grid;
  gap: 8px;
  max-width: 60ch;
  margin-top: 25px;
}
body[data-page="portfolio"] .case-story--abrace .abrace-section-copy p {
  margin: 0;
  color: var(--ab-muted);
  font-size: clamp(15px,1.04vw,18px);
  line-height: 1.58;
}
body[data-page="portfolio"] .case-story--abrace .abrace-section-closing {
  max-width: 48ch;
  margin: clamp(42px,5vw,70px) 0 0 auto;
  padding: 23px 27px;
  border-radius: 27px 9px 27px 27px;
  background: #e7f6f2;
  color: var(--ab-teal-deep);
  font: 500 clamp(22px,2.1vw,32px)/1.2 var(--font-display);
}

/* Contexto: crescer capacidade sem romper a restrição */
body[data-page="portfolio"] .case-story--abrace .abrace-context-shell,
body[data-page="portfolio"] .case-story--abrace .abrace-problem-shell,
body[data-page="portfolio"] .case-story--abrace .abrace-turning-shell,
body[data-page="portfolio"] .case-story--abrace .abrace-decision-shell,
body[data-page="portfolio"] .case-story--abrace .abrace-system-shell,
body[data-page="portfolio"] .case-story--abrace .abrace-failure-shell,
body[data-page="portfolio"] .case-story--abrace .abrace-lesson-shell {
  display: grid;
  grid-template-columns: minmax(280px,.78fr) minmax(0,1.22fr);
  gap: clamp(46px,7vw,108px);
  align-items: center;
}
body[data-page="portfolio"] .case-story--abrace .abrace-context .abrace-section-closing,
body[data-page="portfolio"] .case-story--abrace .abrace-problem .abrace-section-closing,
body[data-page="portfolio"] .case-story--abrace .abrace-turning .abrace-section-closing,
body[data-page="portfolio"] .case-story--abrace .abrace-decision .abrace-section-closing,
body[data-page="portfolio"] .case-story--abrace .abrace-system .abrace-section-closing,
body[data-page="portfolio"] .case-story--abrace .abrace-failure .abrace-section-closing,
body[data-page="portfolio"] .case-story--abrace .abrace-lesson .abrace-section-closing {
  grid-column: 1 / -1;
}
body[data-page="portfolio"] .case-story--abrace .abrace-capacity-orbit {
  position: relative;
  min-height: 430px;
  border-radius: 46px 46px 16px 46px;
  background: rgba(255,255,255,.78);
  box-shadow: 0 22px 64px rgba(20,38,39,.055);
}
body[data-page="portfolio"] .case-story--abrace .abrace-capacity-core,
body[data-page="portfolio"] .case-story--abrace .abrace-system-core {
  position: absolute;
  inset: 50% auto auto 50%;
  display: grid;
  place-items: center;
  width: 150px;
  aspect-ratio: 1;
  padding: 20px;
  transform: translate(-50%,-50%);
  border-radius: 50%;
  background: var(--ab-dark);
  box-shadow: 0 0 0 18px rgba(0,191,169,.08);
  text-align: center;
}
body[data-page="portfolio"] .case-story--abrace .abrace-capacity-core strong,
body[data-page="portfolio"] .case-story--abrace .abrace-system-core strong {
  color: #78eadb;
  font: 650 11px/1.2 var(--font-label);
  letter-spacing: .08em;
}
body[data-page="portfolio"] .case-story--abrace .abrace-capacity-core span,
body[data-page="portfolio"] .case-story--abrace .abrace-system-core span {
  max-width: 11ch;
  color: rgba(255,255,255,.58);
  font-size: 10px;
  line-height: 1.35;
}
body[data-page="portfolio"] .case-story--abrace .abrace-capacity-node {
  position: absolute;
  display: grid;
  place-items: center;
  width: 128px;
  min-height: 60px;
  padding: 12px;
  border-radius: 24px 24px 8px 24px;
  background: #edf8f5;
  color: var(--ab-ink);
  font: 650 10px/1.3 var(--font-label);
  text-align: center;
}
body[data-page="portfolio"] .case-story--abrace .abrace-capacity-node:nth-of-type(2) { left: 8%; top: 12%; }
body[data-page="portfolio"] .case-story--abrace .abrace-capacity-node:nth-of-type(3) { right: 8%; top: 12%; }
body[data-page="portfolio"] .case-story--abrace .abrace-capacity-node:nth-of-type(4) { left: 8%; bottom: 12%; }
body[data-page="portfolio"] .case-story--abrace .abrace-capacity-node:nth-of-type(5) { right: 8%; bottom: 12%; background: #fff0e4; }

/* Problema + sinais */
body[data-page="portfolio"] .case-story--abrace .abrace-problem {
  background: rgba(251,247,239,.56);
}
body[data-page="portfolio"] .case-story--abrace .abrace-signal-cloud,
body[data-page="portfolio"] .case-story--abrace .abrace-layer-bubbles {
  display: flex;
  flex-wrap: wrap;
  align-content: center;
  justify-content: center;
  gap: 12px;
  min-height: 320px;
  padding: 34px;
  border-radius: 42px 42px 14px 42px;
  background: #fff;
  box-shadow: 0 18px 50px rgba(20,38,39,.05);
}
body[data-page="portfolio"] .case-story--abrace .abrace-signal-cloud span,
body[data-page="portfolio"] .case-story--abrace .abrace-layer-bubbles span {
  padding: 14px 18px;
  border-radius: 999px;
  background: #edf8f5;
  color: var(--ab-ink);
  font: 650 12px/1.25 var(--font-label);
}
body[data-page="portfolio"] .case-story--abrace .abrace-signal-cloud span:nth-child(2n),
body[data-page="portfolio"] .case-story--abrace .abrace-layer-bubbles span:nth-child(3n) {
  transform: translateY(16px);
}
body[data-page="portfolio"] .case-story--abrace .abrace-signal-cloud .is-wide,
body[data-page="portfolio"] .case-story--abrace .abrace-layer-bubbles .is-accent {
  background: #fff0e4;
  color: #9b5008;
}

/* Financeiro: perguntas antes da oferta */
body[data-page="portfolio"] .case-story--abrace .abrace-finance {
  background: var(--ab-dark);
}
body[data-page="portfolio"] .case-story--abrace .abrace-finance-shell {
  display: grid;
  grid-template-columns: minmax(280px,.72fr) minmax(0,1.28fr);
  gap: clamp(46px,7vw,108px);
  align-items: start;
}
body[data-page="portfolio"] .case-story--abrace .abrace-finance .eyebrow { color: #78eadb; }
body[data-page="portfolio"] .case-story--abrace .abrace-finance .abrace-section-copy h2 { color: #fff; }
body[data-page="portfolio"] .case-story--abrace .abrace-finance .abrace-section-copy p { color: rgba(255,255,255,.65); }
body[data-page="portfolio"] .case-story--abrace .abrace-question-stack {
  display: grid;
  gap: 12px;
}
body[data-page="portfolio"] .case-story--abrace .abrace-question-stack article {
  display: grid;
  grid-template-columns: 38px 1fr;
  gap: 14px;
  align-items: center;
  padding: 18px 20px;
  border-radius: 24px 24px 8px 24px;
  background: rgba(255,255,255,.07);
}
body[data-page="portfolio"] .case-story--abrace .abrace-question-stack article:nth-child(even) {
  margin-left: 28px;
  border-radius: 24px 8px 24px 24px;
}
body[data-page="portfolio"] .case-story--abrace .abrace-question-stack span {
  color: #78eadb;
  font: 700 8px/1 var(--font-label);
}
body[data-page="portfolio"] .case-story--abrace .abrace-question-stack strong {
  color: #fff;
  font: 500 clamp(20px,2vw,29px)/1.1 var(--font-display);
}
body[data-page="portfolio"] .case-story--abrace .abrace-finance .abrace-section-closing {
  grid-column: 1 / -1;
  background: rgba(120,234,219,.09);
  color: #9ff4e8;
}

/* Virada: conhecimento como ativo */
body[data-page="portfolio"] .case-story--abrace .abrace-asset-field {
  position: relative;
  min-height: 470px;
  border-radius: 46px 46px 16px 46px;
  background: #fff;
  box-shadow: 0 20px 58px rgba(20,38,39,.055);
}
body[data-page="portfolio"] .case-story--abrace .abrace-asset-core {
  position: absolute;
  left: 50%;
  top: 50%;
  display: grid;
  place-items: center;
  width: 190px;
  aspect-ratio: 1;
  transform: translate(-50%,-50%);
  border-radius: 50%;
  background: #e7f6f2;
  text-align: center;
}
body[data-page="portfolio"] .case-story--abrace .abrace-asset-core small {
  color: var(--ab-teal-deep);
  font: 700 8px/1.2 var(--font-label);
  letter-spacing: .09em;
}
body[data-page="portfolio"] .case-story--abrace .abrace-asset-core strong {
  color: var(--ab-ink);
  font: 500 30px/1 var(--font-display);
}
body[data-page="portfolio"] .case-story--abrace .abrace-asset-field > span {
  position: absolute;
  padding: 11px 14px;
  border-radius: 999px;
  background: #f0f9f6;
  color: var(--ab-ink);
  font: 600 10px/1.2 var(--font-label);
}
body[data-page="portfolio"] .case-story--abrace .abrace-asset-field > span:nth-of-type(1) { left: 8%; top: 12%; }
body[data-page="portfolio"] .case-story--abrace .abrace-asset-field > span:nth-of-type(2) { right: 10%; top: 10%; }
body[data-page="portfolio"] .case-story--abrace .abrace-asset-field > span:nth-of-type(3) { left: 4%; top: 45%; }
body[data-page="portfolio"] .case-story--abrace .abrace-asset-field > span:nth-of-type(4) { right: 5%; top: 44%; }
body[data-page="portfolio"] .case-story--abrace .abrace-asset-field > span:nth-of-type(5) { left: 12%; bottom: 11%; }
body[data-page="portfolio"] .case-story--abrace .abrace-asset-field > span:nth-of-type(6) { right: 14%; bottom: 12%; }
body[data-page="portfolio"] .case-story--abrace .abrace-asset-field > span:nth-of-type(7) { left: 42%; bottom: 4%; background: #fff0e4; }

/* Decisão + sistema */
body[data-page="portfolio"] .case-story--abrace .abrace-decision {
  background: rgba(237,248,245,.52);
}
body[data-page="portfolio"] .case-story--abrace .abrace-system-orbit {
  position: relative;
  min-height: 590px;
  border-radius: 48px 48px 16px 48px;
  background: #fff;
  box-shadow: 0 20px 58px rgba(20,38,39,.055);
}
body[data-page="portfolio"] .case-story--abrace .abrace-system-orbit article {
  position: absolute;
  width: min(36%,220px);
  padding: 18px;
  border-radius: 24px 24px 8px 24px;
  background: #edf8f5;
}
body[data-page="portfolio"] .case-story--abrace .abrace-system-orbit article:nth-of-type(1) { left: 4%; top: 8%; }
body[data-page="portfolio"] .case-story--abrace .abrace-system-orbit article:nth-of-type(2) { right: 5%; top: 6%; }
body[data-page="portfolio"] .case-story--abrace .abrace-system-orbit article:nth-of-type(3) { left: 0; top: 43%; }
body[data-page="portfolio"] .case-story--abrace .abrace-system-orbit article:nth-of-type(4) { right: 0; top: 42%; background: #fff0e4; }
body[data-page="portfolio"] .case-story--abrace .abrace-system-orbit article:nth-of-type(5) { left: 11%; bottom: 7%; }
body[data-page="portfolio"] .case-story--abrace .abrace-system-orbit article:nth-of-type(6) { right: 10%; bottom: 7%; }
body[data-page="portfolio"] .case-story--abrace .abrace-system-orbit strong {
  color: var(--ab-ink);
  font: 650 10px/1.3 var(--font-label);
  letter-spacing: .06em;
}
body[data-page="portfolio"] .case-story--abrace .abrace-system-orbit p {
  margin: 8px 0 0;
  color: var(--ab-muted);
  font-size: 12px;
  line-height: 1.45;
}

/* Construção */
body[data-page="portfolio"] .case-story--abrace .abrace-construction {
  background: rgba(251,247,239,.55);
}
body[data-page="portfolio"] .case-story--abrace .abrace-construction-cards {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 18px;
  margin-top: 48px;
}
body[data-page="portfolio"] .case-story--abrace .abrace-construction-cards article {
  min-height: 250px;
  padding: 28px;
  border-radius: 32px 32px 10px 32px;
  background: #fff;
  box-shadow: 0 16px 42px rgba(20,38,39,.05);
}
body[data-page="portfolio"] .case-story--abrace .abrace-construction-cards article:nth-child(even) {
  transform: translateY(20px);
  border-radius: 32px 10px 32px 32px;
  background: #edf8f5;
}
body[data-page="portfolio"] .case-story--abrace .abrace-construction-cards article:last-child {
  grid-column: 1 / -1;
  width: min(720px,100%);
  margin-inline: auto;
  background: #fff0e4;
}
body[data-page="portfolio"] .case-story--abrace .abrace-construction-cards span {
  color: var(--ab-teal-deep);
  font: 700 9px/1.2 var(--font-label);
  letter-spacing: .09em;
}
body[data-page="portfolio"] .case-story--abrace .abrace-construction-cards strong {
  display: block;
  max-width: 18ch;
  margin-top: 42px;
  color: var(--ab-ink);
  font: 500 clamp(28px,3vw,44px)/1.05 var(--font-display);
}
body[data-page="portfolio"] .case-story--abrace .abrace-construction-cards p {
  max-width: 54ch;
  margin: 16px 0 0;
  color: var(--ab-muted);
  font-size: 14px;
  line-height: 1.55;
}

/* Placeholder de evidência visual */
body[data-page="portfolio"] .case-story--abrace .case-media-slot {
  position: relative;
  width: min(100%,980px);
  min-height: 360px;
  aspect-ratio: 8 / 5;
  margin: 52px auto 0;
  overflow: hidden;
  border-radius: 38px 38px 14px 38px;
  background: radial-gradient(circle at 82% 18%, rgba(0,191,169,.12), transparent 28%), #eef8f5;
  box-shadow: 0 18px 52px rgba(20,38,39,.055);
}
body[data-page="portfolio"] .case-story--abrace .case-media-slot > img {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  min-height: 0;
  height: 100%;
  object-fit: cover;
  opacity: 0;
  pointer-events: none;
  transition: opacity .22s ease;
}
body[data-page="portfolio"] .case-story--abrace .case-media-slot.is-loaded > img { opacity:1; }
body[data-page="portfolio"] .case-story--abrace .case-media-slot.is-loaded .case-media-placeholder { display:none; }
body[data-page="portfolio"] .case-story--abrace .case-media-placeholder {
  display: grid;
  align-content: center;
  min-height: 360px;
  padding: clamp(30px,5vw,58px);
}
body[data-page="portfolio"] .case-story--abrace .case-media-placeholder > small {
  color: var(--ab-teal-deep);
  font: 700 9px/1.2 var(--font-label);
  letter-spacing: .11em;
}
body[data-page="portfolio"] .case-story--abrace .case-media-placeholder > strong {
  max-width: 20ch;
  margin-top: 14px;
  color: var(--ab-ink);
  font: 500 clamp(30px,3.4vw,50px)/1.02 var(--font-display);
}
body[data-page="portfolio"] .case-story--abrace .case-media-placeholder > p {
  max-width: 58ch;
  margin: 18px 0 0;
  color: var(--ab-muted);
  font-size: 14px;
  line-height: 1.55;
}
body[data-page="portfolio"] .case-story--abrace .case-media-placeholder dl {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin: 28px 0 0;
}
body[data-page="portfolio"] .case-story--abrace .case-media-placeholder dl > div {
  min-width: 150px;
  padding: 12px 14px;
  border-radius: 18px 18px 7px 18px;
  background: rgba(255,255,255,.82);
}
body[data-page="portfolio"] .case-story--abrace .case-media-placeholder dt {
  color: var(--ab-teal-deep);
  font: 700 8px/1.2 var(--font-label);
  letter-spacing: .09em;
}
body[data-page="portfolio"] .case-story--abrace .case-media-placeholder dd {
  margin: 5px 0 0;
  color: var(--ab-ink);
  font: 600 11px/1.35 var(--font-label);
  overflow-wrap: anywhere;
}

/* Evidência */
body[data-page="portfolio"] .case-story--abrace .abrace-evidence {
  background: var(--ab-dark);
}
body[data-page="portfolio"] .case-story--abrace .abrace-evidence-shell {
  display: grid;
  grid-template-columns: minmax(280px,.72fr) minmax(0,1.28fr);
  gap: clamp(46px,7vw,108px);
  align-items: center;
}
body[data-page="portfolio"] .case-story--abrace .abrace-evidence .eyebrow { color:#78eadb; }
body[data-page="portfolio"] .case-story--abrace .abrace-evidence .abrace-section-copy h2 { color:#fff; }
body[data-page="portfolio"] .case-story--abrace .abrace-evidence .abrace-section-copy p { color:rgba(255,255,255,.64); }
body[data-page="portfolio"] .case-story--abrace .abrace-metrics {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 14px;
}
body[data-page="portfolio"] .case-story--abrace .abrace-metrics article {
  min-height: 170px;
  padding: 24px;
  border-radius: 28px 28px 9px 28px;
  background: rgba(255,255,255,.07);
}
body[data-page="portfolio"] .case-story--abrace .abrace-metrics article:nth-child(2),
body[data-page="portfolio"] .case-story--abrace .abrace-metrics article:nth-child(3) {
  transform: translateY(16px);
}
body[data-page="portfolio"] .case-story--abrace .abrace-metrics strong {
  display:block;
  color:#fff;
  font:500 clamp(46px,5vw,72px)/.9 var(--font-display);
}
body[data-page="portfolio"] .case-story--abrace .abrace-metrics span {
  display:block;
  margin-top:10px;
  color:#78eadb;
  font:650 10px/1.3 var(--font-label);
  letter-spacing:.06em;
  text-transform:uppercase;
}
body[data-page="portfolio"] .case-story--abrace .abrace-metrics > p {
  grid-column:1/-1;
  margin:20px 0 0;
  color:rgba(255,255,255,.58);
  font-size:13px;
}
body[data-page="portfolio"] .case-story--abrace .abrace-evidence .abrace-section-closing {
  grid-column:1/-1;
  background:rgba(120,234,219,.09);
  color:#9ff4e8;
}

/* Falha comercial */
body[data-page="portfolio"] .case-story--abrace .abrace-gap-flow {
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:10px;
  padding:34px;
  border-radius:42px 42px 14px 42px;
  background:#fff;
  box-shadow:0 18px 50px rgba(20,38,39,.05);
}
body[data-page="portfolio"] .case-story--abrace .abrace-gap-flow span {
  position:relative;
  padding:13px 17px;
  border-radius:999px;
  background:#edf8f5;
  color:var(--ab-ink);
  font:650 11px/1.2 var(--font-label);
}
body[data-page="portfolio"] .case-story--abrace .abrace-gap-flow span:not(:last-child)::after {
  content:"→";
  position:absolute;
  right:-14px;
  top:50%;
  transform:translateY(-50%);
  color:rgba(8,122,110,.45);
}
body[data-page="portfolio"] .case-story--abrace .abrace-gap-flow .is-end {
  background:#fff0e4;
}

/* Retrospectiva */
body[data-page="portfolio"] .case-story--abrace .abrace-hindsight {
  background:rgba(251,247,239,.58);
}
body[data-page="portfolio"] .case-story--abrace .abrace-hindsight-shell,
body[data-page="portfolio"] .case-story--abrace .abrace-recurrence-shell {
  display:grid;
  grid-template-columns:minmax(280px,.8fr) minmax(0,1.2fr);
  gap:30px clamp(48px,7vw,104px);
  align-items:start;
}
body[data-page="portfolio"] .case-story--abrace .abrace-hindsight-questions {
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}
body[data-page="portfolio"] .case-story--abrace .abrace-hindsight-questions span {
  display:grid;
  grid-template-columns:28px 1fr;
  gap:10px;
  align-items:center;
  width:calc(50% - 5px);
  padding:15px 16px;
  border-radius:22px 22px 8px 22px;
  background:#fff;
  box-shadow:0 12px 28px rgba(20,38,39,.045);
  color:var(--ab-ink);
  font-size:13px;
  line-height:1.4;
}
body[data-page="portfolio"] .case-story--abrace .abrace-hindsight-questions small {
  display:grid;
  place-items:center;
  width:26px;
  height:22px;
  border-radius:999px;
  background:rgba(0,191,169,.10);
  color:var(--ab-teal-deep);
  font:700 8px/1 var(--font-label);
}
body[data-page="portfolio"] .case-story--abrace .abrace-hindsight .abrace-section-closing,
body[data-page="portfolio"] .case-story--abrace .abrace-recurrence .abrace-section-closing {
  grid-column:1/-1;
}

/* Lição: cadeia sem virar diagrama rígido */
body[data-page="portfolio"] .case-story--abrace .abrace-chain {
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  align-items:center;
  gap:12px;
  min-height:300px;
  padding:34px;
  border-radius:44px 44px 14px 44px;
  background:var(--ab-dark);
}
body[data-page="portfolio"] .case-story--abrace .abrace-chain span {
  padding:15px 18px;
  border-radius:999px;
  background:rgba(255,255,255,.08);
  color:#fff;
  font:650 11px/1.2 var(--font-label);
}
body[data-page="portfolio"] .case-story--abrace .abrace-chain span:nth-child(even) {
  transform:translateY(18px);
  background:rgba(120,234,219,.10);
  color:#9ff4e8;
}
body[data-page="portfolio"] .case-story--abrace .abrace-chain .is-last {
  background:rgba(255,126,0,.14);
  color:#ffd2a8;
}

/* Recorrência */
body[data-page="portfolio"] .case-story--abrace .abrace-statements {
  display:grid;
  gap:12px;
}
body[data-page="portfolio"] .case-story--abrace .abrace-statements strong {
  display:block;
  padding:19px 22px;
  border-radius:26px 26px 9px 26px;
  background:#fff;
  box-shadow:0 13px 32px rgba(20,38,39,.045);
  color:var(--ab-ink);
  font:500 clamp(24px,2.4vw,36px)/1.1 var(--font-display);
}
body[data-page="portfolio"] .case-story--abrace .abrace-statements strong:nth-child(even) {
  margin-left:26px;
  background:#edf8f5;
  border-radius:26px 9px 26px 26px;
}
body[data-page="portfolio"] .case-story--abrace .case-closing-sequence {
  background:#fbfaf6;
}
body[data-page="portfolio"] .case-story--abrace .case-closing-destination-shell {
  background:var(--ab-dark);
}

@media (max-width:900px) {
  body[data-page="portfolio"] .case-story--abrace .case-editorial-hero-shell,
  body[data-page="portfolio"] .case-story--abrace .case-editorial-opening-shell,
  body[data-page="portfolio"] .case-story--abrace .abrace-context-shell,
  body[data-page="portfolio"] .case-story--abrace .abrace-problem-shell,
  body[data-page="portfolio"] .case-story--abrace .abrace-finance-shell,
  body[data-page="portfolio"] .case-story--abrace .abrace-turning-shell,
  body[data-page="portfolio"] .case-story--abrace .abrace-decision-shell,
  body[data-page="portfolio"] .case-story--abrace .abrace-system-shell,
  body[data-page="portfolio"] .case-story--abrace .abrace-evidence-shell,
  body[data-page="portfolio"] .case-story--abrace .abrace-failure-shell,
  body[data-page="portfolio"] .case-story--abrace .abrace-hindsight-shell,
  body[data-page="portfolio"] .case-story--abrace .abrace-lesson-shell,
  body[data-page="portfolio"] .case-story--abrace .abrace-recurrence-shell {
    grid-template-columns:1fr;
  }
  body[data-page="portfolio"] .case-story--abrace .abrace-context .abrace-section-closing,
  body[data-page="portfolio"] .case-story--abrace .abrace-problem .abrace-section-closing,
  body[data-page="portfolio"] .case-story--abrace .abrace-turning .abrace-section-closing,
  body[data-page="portfolio"] .case-story--abrace .abrace-decision .abrace-section-closing,
  body[data-page="portfolio"] .case-story--abrace .abrace-system .abrace-section-closing,
  body[data-page="portfolio"] .case-story--abrace .abrace-failure .abrace-section-closing,
  body[data-page="portfolio"] .case-story--abrace .abrace-lesson .abrace-section-closing {
    grid-column:1;
  }
  body[data-page="portfolio"] .case-story--abrace .case-editorial-hero-visual {
    width:min(100%,620px);
    margin:0 auto;
  }
}
@media (max-width:680px) {
  body[data-page="portfolio"] .case-story--abrace .case-editorial-hero {
    padding-block:104px 68px;
  }
  body[data-page="portfolio"] .case-story--abrace .case-editorial-hero-copy h1 {
    max-width:14ch;
    font-size:clamp(46px,12.8vw,64px);
  }
  body[data-page="portfolio"] .case-story--abrace .case-editorial-opening,
  body[data-page="portfolio"] .case-story--abrace .abrace-case > section {
    padding-block:70px;
  }
  body[data-page="portfolio"] .case-story--abrace .case-editorial-opening-copy h2,
  body[data-page="portfolio"] .case-story--abrace .abrace-section-copy h2 {
    font-size:clamp(40px,11.5vw,56px);
  }
  body[data-page="portfolio"] .case-story--abrace .abrace-capacity-orbit,
  body[data-page="portfolio"] .case-story--abrace .abrace-asset-field,
  body[data-page="portfolio"] .case-story--abrace .abrace-system-orbit {
    min-height:0;
    padding:24px 20px;
  }
  body[data-page="portfolio"] .case-story--abrace .abrace-capacity-core,
  body[data-page="portfolio"] .case-story--abrace .abrace-asset-core,
  body[data-page="portfolio"] .case-story--abrace .abrace-system-core {
    position:relative;
    inset:auto;
    margin:0 auto 28px;
    transform:none;
  }
  body[data-page="portfolio"] .case-story--abrace .abrace-capacity-node,
  body[data-page="portfolio"] .case-story--abrace .abrace-asset-field > span,
  body[data-page="portfolio"] .case-story--abrace .abrace-system-orbit article {
    position:static;
    display:block;
    width:100%;
    margin-top:10px;
  }
  body[data-page="portfolio"] .case-story--abrace .abrace-construction-cards,
  body[data-page="portfolio"] .case-story--abrace .abrace-metrics {
    grid-template-columns:1fr;
  }
  body[data-page="portfolio"] .case-story--abrace .abrace-construction-cards article,
  body[data-page="portfolio"] .case-story--abrace .abrace-construction-cards article:nth-child(even),
  body[data-page="portfolio"] .case-story--abrace .abrace-metrics article,
  body[data-page="portfolio"] .case-story--abrace .abrace-metrics article:nth-child(n) {
    grid-column:auto;
    width:100%;
    transform:none;
  }
  body[data-page="portfolio"] .case-story--abrace .abrace-hindsight-questions span {
    width:100%;
  }
  body[data-page="portfolio"] .case-story--abrace .abrace-question-stack article:nth-child(even),
  body[data-page="portfolio"] .case-story--abrace .abrace-statements strong:nth-child(even) {
    margin-left:0;
  }
  body[data-page="portfolio"] .case-story--abrace .case-media-slot,
  body[data-page="portfolio"] .case-story--abrace .case-media-slot > img,
  body[data-page="portfolio"] .case-story--abrace .case-media-placeholder {
    min-height:300px;
  }
  body[data-page="portfolio"] .case-story--abrace .case-media-placeholder {
    padding:26px 20px;
  }
}
