/* Artwork gets its own layout space; no negative offsets or footer masks. */
.service-cards.services-mosaic { grid-template-rows: repeat(2,auto); }
.services-mosaic .service-card:has(.service-caption)::after { content:none; }
.services-mosaic .service-design,.services-mosaic .service-consult { display:flex;flex-direction:column; }
.services-mosaic .service-design>p { margin-bottom:0; }
.services-mosaic .service-site { position:relative;inset:auto;width:calc(100% - 1rem);height:14rem;min-height:14rem;flex:none;margin:2rem .5rem 1.75rem;transform:rotate(-3deg); }
.services-mosaic .service-site>b { font-size:1.5rem;max-width:55%; }
.services-mosaic .service-caption { position:static;inset:auto;display:block;margin-top:auto;font-size:.6875rem; }
.services-mosaic .service-build,.services-mosaic .service-ai { display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);grid-template-rows:auto auto 1fr auto;column-gap:1.5rem;min-height:20rem;padding:1.5rem;align-items:start; }
.services-mosaic .service-build>.service-index,.services-mosaic .service-ai>.service-index { grid-column:1;grid-row:1; }
.services-mosaic .service-build>h3,.services-mosaic .service-ai>h3 { grid-column:1;grid-row:2;width:auto; }
.services-mosaic .service-build>p,.services-mosaic .service-ai>p { grid-column:1;grid-row:3;width:auto; }
.services-mosaic .service-build>.service-caption,.services-mosaic .service-ai>.service-caption { grid-column:1/-1;grid-row:4;margin-top:1.5rem;padding-right:2.5rem; }
.services-mosaic .service-code,.services-mosaic .service-chat { position:relative;inset:auto;grid-column:2;grid-row:1/4;align-self:center;width:calc(100% - .5rem);height:auto;min-height:12rem;margin:.5rem .25rem;transform:rotate(-3deg);padding:.875rem; }
.services-mosaic .service-code code { font-size:.5rem;overflow-wrap:anywhere; }
.services-mosaic .service-chat { min-height:14rem; }
.services-mosaic .service-chat>span { font-size:.4375rem;padding:.625rem .375rem; }
.services-mosaic .service-orb { left:52%;bottom:4.5rem; }
.services-mosaic .service-paper { position:relative;inset:auto;width:calc(100% - 1rem);height:auto;min-height:0;margin:2.5rem .5rem 1rem;padding:1.5rem 1rem;transform:rotate(-4deg);font-size:1.25rem;line-height:1.4; }
.services-mosaic .service-consult { min-height:0; }
.services-mosaic .consult-list { margin-bottom:0; }
@media(min-width:992px){.services-mosaic .service-design .service-site{margin-top:auto}.services-mosaic .service-design>p{margin-bottom:2rem}.services-mosaic .service-consult .service-paper{margin-top:auto}.services-mosaic .consult-list{margin-bottom:2.5rem}}
@media(max-width:1199.98px){.services-mosaic .service-build,.services-mosaic .service-ai{padding:1.25rem;column-gap:1rem;grid-template-columns:minmax(0,1fr) minmax(0,.9fr)}.services-mosaic .service-build>h3,.services-mosaic .service-ai>h3{font-size:1rem}.services-mosaic .service-build>p,.services-mosaic .service-ai>p{font-size:.8125rem}.services-mosaic .service-code,.services-mosaic .service-chat{padding:.625rem}.services-mosaic .service-paper{font-size:1.125rem}}
@media(max-width:991.98px){.service-cards.services-mosaic{grid-template-rows:auto auto auto}.services-mosaic .service-design,.services-mosaic .service-consult{min-height:0}.services-mosaic .service-build,.services-mosaic .service-ai{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr)}.services-mosaic .service-build>h3,.services-mosaic .service-ai>h3{font-size:1.375rem}.services-mosaic .service-build>p,.services-mosaic .service-ai>p{font-size:1rem}.services-mosaic .service-code code{font-size:.625rem}.services-mosaic .service-site{margin-top:2rem}.services-mosaic .service-paper{margin-top:2rem}}
@media(max-width:575.98px){.service-cards.services-mosaic{grid-template-rows:auto}.services-mosaic .service-build,.services-mosaic .service-ai{display:flex;flex-direction:column;min-height:0;padding:1.5rem}.services-mosaic .service-code,.services-mosaic .service-chat{width:80%;align-self:center;min-height:0;margin:2rem .5rem 1.5rem;padding:1rem}.services-mosaic .service-chat{min-height:14rem}.services-mosaic .service-site{width:calc(100% - 1rem);height:13rem;min-height:13rem;margin-bottom:1.5rem}.services-mosaic .service-site>b{font-size:1.375rem}.services-mosaic .service-build>.service-caption,.services-mosaic .service-ai>.service-caption{margin-top:1rem}.services-mosaic .service-paper{margin-bottom:1rem;font-size:1.375rem;padding:1.5rem 1rem}.services-mosaic .service-caption{font-size:.6875rem}.services-mosaic .service-orb{left:13%;bottom:10rem}}
