/* Hero stays in the introduction. Examples form a separate final-page mosaic. */
.launch-offering>.service-gallery.service-examples{width:100%;max-width:none;margin:40px 0 0;color:var(--ink,#20384d)}
.service-gallery [hidden]{display:none!important}
.service-gallery .service-gallery-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;width:100%;margin-top:18px}
.service-gallery [data-gallery-index]{position:relative;display:block;min-width:0;width:100%;aspect-ratio:4/3;overflow:hidden;margin:0;padding:10px;border:1px solid #cedae2;border-radius:4px;background-color:#edf1f4;background-image:linear-gradient(rgba(102,130,149,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(102,130,149,.08) 1px,transparent 1px);background-size:20px 20px;cursor:zoom-in;transition:border-color .15s ease,box-shadow .15s ease}
.service-gallery [data-gallery-index]>img{display:block;width:100%;height:100%;max-width:none;object-fit:contain;object-position:center;margin:0;border:0}
.service-gallery [data-gallery-index]:hover{border-color:#6c8aa3;box-shadow:0 3px 12px #20384d14}
.service-gallery-enlarge{position:absolute;right:7px;bottom:7px;display:grid;place-items:center;width:28px;height:28px;border:1px solid #cedae2;border-radius:3px;background:#fffffff0;color:#204070;font-size:20px;line-height:1}
.service-gallery-dialog{box-sizing:border-box;width:min(1100px,94vw);max-width:94vw;max-height:92dvh;padding:42px 18px 14px;border:1px solid #cad6df;border-radius:8px;background:#fff;color:#20384d;overflow:auto}
.service-gallery-dialog::backdrop{background:#122434bf}
.service-gallery-dialog figure{display:flex;flex-direction:column;align-items:center;margin:0}
.service-gallery-dialog [data-gallery-image]{display:block;width:100%;height:min(65dvh,740px);object-fit:contain;background:#f4f6f8}
.service-gallery-dialog figcaption{margin:10px 0 0;font-size:14px;line-height:1.4;text-align:center}
.service-gallery-close{position:absolute;right:10px;top:6px;width:34px;height:34px;padding:0;border:0;background:transparent;color:#20384d;font-size:28px;cursor:pointer}
.service-gallery-dialog-controls{display:flex;align-items:center;justify-content:center;gap:18px;margin-top:12px}
.service-gallery-dialog-controls button{width:42px;height:38px;padding:0;border:1px solid #becdd9;border-radius:4px;background:#edf3f7;color:#204070;font-size:25px;cursor:pointer}
.service-gallery-dialog-controls button:disabled{opacity:.35;cursor:default}
.service-gallery [data-gallery-count]{font-size:13px;font-weight:600;font-variant-numeric:tabular-nums}
.service-gallery button:focus-visible{outline:3px solid #c48b19;outline-offset:3px}
@media(max-width:700px){.service-gallery .service-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.service-gallery [data-gallery-index]{padding:5px}.launch-offering>.service-gallery.service-examples{margin-top:28px}.service-gallery-dialog{padding:42px 10px 12px}.service-gallery-dialog [data-gallery-image]{height:60dvh}}
@media(prefers-reduced-motion:reduce){.service-gallery *{scroll-behavior:auto!important;transition:none!important}}
/* Full-frame service photography fills the frame; technical illustrations retain containment. */
.launch-offering .service-hero.service-photo-full-frame{padding:0;overflow:hidden;background:none}
.launch-offering .service-hero.service-photo-full-frame img{width:100%;height:auto;aspect-ratio:3/2;max-height:none;object-fit:cover;object-position:center}
.service-gallery [data-gallery-index].service-photo-full-frame{padding:0;background:#e9eef2}
.service-gallery [data-gallery-index].service-photo-full-frame>img{object-fit:cover;object-position:center}
