/* PATCH-RENEW-01F: additions to the unchanged 01D foundation. */
main[data-ac-renewal="01d"][data-ac-patch="01f"] :is(.ac-f-case-grid,.ac-f-role-grid,.ac-f-request-grid,.ac-f-channel-grid) { display:grid; gap:28px; }
main[data-ac-renewal="01d"][data-ac-patch="01f"] :is(.ac-f-case-grid,.ac-f-request-grid) { grid-template-columns:repeat(2,minmax(0,1fr)); }
main[data-ac-renewal="01d"][data-ac-patch="01f"] :is(.ac-f-role-grid,.ac-f-channel-grid) { grid-template-columns:repeat(3,minmax(0,1fr)); }
main[data-ac-renewal="01d"][data-ac-patch="01f"] :is(.ac-f-case-grid,.ac-f-role-grid,.ac-f-request-grid,.ac-f-channel-grid) > * { min-width:0; }
main[data-ac-renewal="01d"][data-ac-patch="01f"] .ac-r-card.ac-f-case { padding:0; overflow:visible; }
main[data-ac-renewal="01d"][data-ac-patch="01f"] .ac-f-case-media { display:block; width:100%; min-width:0; margin:0; padding:0; border-bottom:2px solid var(--ac-ink,#171717); background:var(--ac-ink,#171717); }
main[data-ac-renewal="01d"][data-ac-patch="01f"] .ac-f-case-media img { display:block; width:100%; max-width:100%; height:auto; object-fit:contain; }
main[data-ac-renewal="01d"][data-ac-patch="01f"] .ac-f-case-media figcaption { padding:10px 16px; background:var(--ac-paper,#f5f3ec); color:var(--ac-ink,#171717); font-size:12px; line-height:1.8; }
main[data-ac-renewal="01d"][data-ac-patch="01f"] .ac-f-case-label { display:grid; align-content:center; justify-items:center; gap:12px; min-height:220px; padding:28px; border-bottom:2px solid var(--ac-ink,#171717); background:var(--ac-cobalt-soft,#e5eaff); color:var(--ac-ink,#171717); font-size:clamp(28px,3.2vw,42px); font-weight:800; line-height:1.35; letter-spacing:-.04em; text-align:center; word-break:keep-all; overflow-wrap:anywhere; }
main[data-ac-renewal="01d"][data-ac-patch="01f"] .ac-f-case-label :is(p,span,small) { margin:0; font-size:13px; font-weight:600; line-height:1.8; letter-spacing:.04em; }
main[data-ac-renewal="01d"][data-ac-patch="01f"] .ac-f-case-label strong { font-size:inherit; font-weight:800; line-height:1.35; letter-spacing:-.04em; }
main[data-ac-renewal="01d"][data-ac-patch="01f"] .ac-f-case-body { display:flex; flex:1; flex-direction:column; min-width:0; padding:28px; }
main[data-ac-renewal="01d"][data-ac-patch="01f"] .ac-f-case-body h3 { margin:12px 0 0; color:var(--ac-ink,#171717); font-size:26px; font-weight:800; line-height:1.45; letter-spacing:-.04em; }
main[data-ac-renewal="01d"][data-ac-patch="01f"] .ac-f-case-body > p:not(.ac-r-eyebrow) { margin-top:12px; color:var(--ac-muted,#51514c); font-size:14px; font-weight:400; line-height:1.95; }
main[data-ac-renewal="01d"][data-ac-patch="01f"] .ac-f-case-facts { display:grid; grid-template-columns:88px minmax(0,1fr); gap:10px 14px; margin:18px 0 24px; }
main[data-ac-renewal="01d"][data-ac-patch="01f"] .ac-f-case-facts > div { display:grid; grid-column:1/-1; grid-template-columns:88px minmax(0,1fr); gap:14px; }
main[data-ac-renewal="01d"][data-ac-patch="01f"] .ac-f-case-facts dt { margin:0; color:var(--ac-ink,#171717); font-size:13px; font-weight:750; line-height:1.85; }
main[data-ac-renewal="01d"][data-ac-patch="01f"] .ac-f-case-facts dd { margin:0; color:var(--ac-muted,#51514c); font-size:14px; font-weight:400; line-height:1.85; }
main[data-ac-renewal="01d"][data-ac-patch="01f"] .ac-f-case-body > .ac-r-link { display:flex; align-items:center; justify-content:space-between; gap:14px; min-height:44px; margin-top:auto; padding-top:18px; border-top:1px solid var(--ac-ink,#171717); color:var(--ac-ink,#171717); font-size:14px; font-weight:700; line-height:1.8; }
main[data-ac-renewal="01d"][data-ac-patch="01f"] .ac-f-case-body > p + .ac-r-link { margin-top:24px; }

/* Minimal Portfolio CTA fallback if the shared game component stylesheet is unavailable.
   :where keeps the normal component rules authoritative. */
:where(main[data-ac-renewal="01d"][data-ac-patch="01f"] .ac-f-case-grid > .ac-renewal-game-card > .ac-renewal-game-image) {
  display:block;
  width:100%;
  max-width:100%;
  height:auto;
  object-fit:contain;
}
:where(main[data-ac-renewal="01d"][data-ac-patch="01f"] .ac-f-case-grid > .ac-renewal-game-card .ac-renewal-game-cta) {
  box-sizing:border-box;
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:44px;
  margin-top:18px;
  padding:12px 16px;
  text-align:center;
}

main[data-ac-renewal="01d"][data-ac-patch="01f"] .ac-f-checklist { margin:18px 0 0; padding-left:1.35em; list-style:disc; color:var(--ac-ink,#171717); font-size:14px; font-weight:400; line-height:1.95; }
main[data-ac-renewal="01d"][data-ac-patch="01f"] .ac-f-checklist li + li { margin-top:8px; }
main[data-ac-renewal="01d"][data-ac-patch="01f"] .ac-f-checklist strong { font-weight:750; }
main[data-ac-renewal="01d"][data-ac-patch="01f"] .ac-f-request-grid .ac-r-card > .ac-r-button { margin-top:24px; }
main[data-ac-renewal="01d"][data-ac-patch="01f"] .ac-f-channel-grid .ac-r-card > .ac-r-link { margin-top:24px; }
main[data-ac-renewal="01d"][data-ac-patch="01f"] .ac-f-process-three { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:28px; padding:0; list-style:none; }
main[data-ac-renewal="01d"][data-ac-patch="01f"] .ac-f-facts { display:grid; grid-template-columns:160px minmax(0,1fr); column-gap:20px; margin:0; padding:0; }
main[data-ac-renewal="01d"][data-ac-patch="01f"] .ac-f-facts > div { display:grid; grid-column:1/-1; grid-template-columns:160px minmax(0,1fr); gap:20px; }
main[data-ac-renewal="01d"][data-ac-patch="01f"] .ac-f-facts :is(dt,dd) { min-width:0; margin:0; padding:16px 0; border-top:1px solid var(--ac-ink,#171717); line-height:1.85; word-break:keep-all; overflow-wrap:anywhere; }
main[data-ac-renewal="01d"][data-ac-patch="01f"] .ac-f-facts dt { color:var(--ac-ink,#171717); font-size:13px; font-weight:750; }
main[data-ac-renewal="01d"][data-ac-patch="01f"] .ac-f-facts dd { color:var(--ac-ink,#171717); font-size:16px; font-weight:400; }
main[data-ac-renewal="01d"][data-ac-patch="01f"] .ac-f-facts a { display:inline-flex; align-items:center; min-height:44px; max-width:100%; color:var(--ac-cobalt,#234bdf); font-size:15px; font-weight:650; text-decoration:underline; text-underline-offset:4px; }
main[data-ac-renewal="01d"][data-ac-patch="01f"] .ac-f-office { display:block; }
main[data-ac-renewal="01d"][data-ac-patch="01f"] .ac-f-office > .ac-r-grid-two { grid-template-columns:minmax(0,1.15fr) minmax(0,1fr); align-items:start; gap:36px; }
main[data-ac-renewal="01d"][data-ac-patch="01f"] .ac-f-office > * { min-width:0; }
main[data-ac-renewal="01d"][data-ac-patch="01f"] .ac-f-office > div > p + p { margin-top:12px; }
main[data-ac-renewal="01d"][data-ac-patch="01f"] .ac-f-office .ac-r-buttons { margin-top:24px; }

@media (max-width:1050px) {
  main[data-ac-renewal="01d"][data-ac-patch="01f"] .ac-f-case-body { padding:24px; }
  main[data-ac-renewal="01d"][data-ac-patch="01f"] .ac-f-case-label { min-height:200px; padding:24px; }
}
@media (max-width:850px) {
  main[data-ac-renewal="01d"][data-ac-patch="01f"] :is(.ac-f-role-grid,.ac-f-channel-grid) { grid-template-columns:repeat(2,minmax(0,1fr)); }
  main[data-ac-renewal="01d"][data-ac-patch="01f"] .ac-f-process-three { grid-template-columns:repeat(2,minmax(0,1fr)); }
  main[data-ac-renewal="01d"][data-ac-patch="01f"] .ac-f-office > .ac-r-grid-two { grid-template-columns:1fr; gap:28px; }
}
@media (max-width:600px) {
  main[data-ac-renewal="01d"][data-ac-patch="01f"] :is(.ac-f-case-grid,.ac-f-role-grid,.ac-f-request-grid,.ac-f-channel-grid,.ac-f-process-three,.ac-r-process) { grid-template-columns:1fr; gap:24px; }
  main[data-ac-renewal="01d"][data-ac-patch="01f"] .ac-f-case-body { padding:22px; }
  main[data-ac-renewal="01d"][data-ac-patch="01f"] .ac-f-case-body h3 { font-size:24px; }
  main[data-ac-renewal="01d"][data-ac-patch="01f"] .ac-f-case-label { min-height:170px; padding:22px; font-size:30px; }
  main[data-ac-renewal="01d"][data-ac-patch="01f"] .ac-f-case-facts,
  main[data-ac-renewal="01d"][data-ac-patch="01f"] .ac-f-case-facts > div { grid-template-columns:70px minmax(0,1fr); column-gap:12px; }
  main[data-ac-renewal="01d"][data-ac-patch="01f"] .ac-f-facts,
  main[data-ac-renewal="01d"][data-ac-patch="01f"] .ac-f-facts > div { grid-template-columns:80px minmax(0,1fr); column-gap:14px; }
  main[data-ac-renewal="01d"][data-ac-patch="01f"] .ac-f-facts dd { font-size:15px; }
}
@media print {
  main[data-ac-renewal="01d"][data-ac-patch="01f"] :is(.ac-f-case-grid,.ac-f-role-grid,.ac-f-request-grid,.ac-f-channel-grid,.ac-f-process-three,.ac-f-office) { grid-template-columns:1fr; gap:20px; }
  main[data-ac-renewal="01d"][data-ac-patch="01f"] .ac-f-office > .ac-r-grid-two { grid-template-columns:1fr; gap:20px; }
  main[data-ac-renewal="01d"][data-ac-patch="01f"] .ac-f-case { box-shadow:none; break-inside:avoid; }
  main[data-ac-renewal="01d"][data-ac-patch="01f"] .ac-f-case-label { min-height:0; padding:20px; background:#fff; color:#000; }
  main[data-ac-renewal="01d"][data-ac-patch="01f"] .ac-f-facts a { color:#000; }
}
