.macbeth-product .workshop-hero-photo img { object-position: center; }
.macbeth-product p { margin-bottom: 18px; }
.macbeth-product h2 { margin-bottom: 24px; }
.macbeth-product h3 { margin-bottom: 14px; }
.macbeth-introduction { display: grid; grid-template-columns: 1fr 1fr; gap: 60px; }
.macbeth-act-row { display: grid; grid-template-columns: 80px 1fr; gap: 28px; padding: 34px 0; border-top: 1px solid #ddd8ce; }
.act-number { font-family: Georgia, serif; font-size: 64px; color: #192a88; line-height: 1; }
.macbeth-act-row small { color: #616571; }
.macbeth-product .purchase-note a, .macbeth-product details a { text-decoration: underline; }
.macbeth-preview-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 48px; }
.macbeth-preview-grid article { min-width: 0; display: flex; flex-direction: column; }
.macbeth-preview-grid article > a { margin-top: auto; }
.macbeth-preview-grid .screenshot-trigger { background: transparent; border: 0; box-shadow: none; }
.macbeth-preview-grid .screenshot-trigger:hover { box-shadow: none; }
.macbeth-preview-grid .screenshot-trigger:focus-visible { outline: 3px solid #192a88; outline-offset: 5px; }
@media(max-width: 700px) { .macbeth-preview-grid { grid-template-columns: 1fr; gap: 40px; } }
@media(max-width: 700px) { .macbeth-introduction { grid-template-columns: 1fr; gap: 18px; } .macbeth-act-row { grid-template-columns: 42px 1fr; gap: 18px; } .act-number { font-size: 44px; } }
