.software-hero .software-image-link{border-radius:0}.software-hero img{background:var(--soft)}
.software-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}
.software-card{margin:0;min-width:0;border:1px solid var(--line);border-radius:14px;overflow:hidden;background:white}
.software-image-link{display:block;position:relative;background:var(--soft);overflow:hidden;cursor:zoom-in}
.software-image-link img{width:100%;height:auto;aspect-ratio:10/7;object-fit:contain}
.software-image-link:focus-visible{outline-offset:-5px}.software-image-link:hover .software-zoom{background:var(--green)}
.software-zoom{position:absolute;right:12px;bottom:12px;display:inline-flex;align-items:center;gap:16px;padding:8px 14px;background:var(--ink);color:#fff;border-radius:6px;font-size:.8125rem;box-shadow:0 3px 10px #102e3820}
.software-zoom span{font-size:1.15rem}.software-card figcaption{padding:27px 30px 22px;border-top:1px solid var(--line)}
.software-index{display:block;margin-bottom:12px;color:var(--green);font-size:.8125rem;font-weight:600;letter-spacing:.08em}
.software-card h3{font-size:1.35rem;margin-bottom:12px}.software-card figcaption p{font-size:1rem;line-height:1.7}.software-card .text-link{margin-top:14px}.software-section>.section-note{margin-top:25px;max-width:95ch}
.handoff-showcase{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin:42px 0 34px}.handoff-shot{margin:0;min-width:0;overflow:hidden;border:1px solid var(--line);border-radius:12px;background:#fff}.handoff-shot figcaption{padding:22px 24px 24px;border-top:1px solid var(--line)}.handoff-shot h3{margin-bottom:10px;font-size:1.18rem}.handoff-shot figcaption p{font-size:.94rem;line-height:1.65}.handoff-shot .software-index{margin-bottom:9px}.handoff-shot .software-image-link img{aspect-ratio:10/7;object-fit:contain}
.software-lightbox{border:0;padding:0;background:#fff;color:var(--ink);border-radius:12px;width:min(1664px,calc(100vw - 48px));max-width:none;max-height:calc(100dvh - 40px);box-shadow:0 30px 90px #0005}
.software-lightbox::backdrop{background:#071b24d9}.software-lightbox-content{padding:22px}
.software-lightbox-header{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:18px}.software-lightbox-header .eyebrow{margin-bottom:8px;font-size:.75rem}.software-lightbox-header h2{font-size:1.2rem;letter-spacing:-.02em;line-height:1.5}
.software-close{border:1px solid var(--line);background:#fff;color:var(--ink);border-radius:7px;padding:8px 14px;display:inline-flex;align-items:center;gap:18px;white-space:nowrap;min-height:44px}.software-close:hover{background:var(--soft)}.software-close span{font-size:1.5rem;line-height:1}
.software-full-image{overflow:auto;border:1px solid var(--line);border-radius:5px;background:var(--soft)}.software-full-image img{width:100%;height:auto;min-width:960px;max-width:none}
.software-lightbox-footer{display:flex;align-items:center;justify-content:space-between;gap:12px 24px;flex-wrap:wrap;margin-top:12px}.software-lightbox-footer p{font-size:.8125rem}.software-lightbox-footer .text-link{font-size:.875rem}
body.software-image-open{overflow:hidden}
@media(max-width:980px){.handoff-showcase{grid-template-columns:1fr;gap:24px}.handoff-shot{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(240px,.75fr)}.handoff-shot figcaption{border-top:0;border-left:1px solid var(--line)}}
@media(max-width:700px){.software-grid{grid-template-columns:1fr;gap:24px}.software-card figcaption{padding:22px}.software-card h3{font-size:1.2rem}.handoff-showcase{margin-top:30px}.handoff-shot{display:block}.handoff-shot figcaption{padding:20px;border-top:1px solid var(--line);border-left:0}.software-lightbox{width:calc(100vw - 20px);max-height:calc(100dvh - 20px)}.software-lightbox-content{padding:14px}.software-lightbox-header{gap:12px;flex-wrap:wrap}.software-lightbox-header h2{font-size:1rem}.software-close{margin-left:auto}.software-zoom{right:8px;bottom:8px;padding:6px 10px;font-size:.75rem}}
@media print{.software-lightbox,.software-zoom{display:none}.software-grid{grid-template-columns:1fr 1fr}.software-card,.handoff-shot{break-inside:avoid}.software-card .text-link{display:none}.handoff-showcase{grid-template-columns:1fr 1fr}}
