:focus-visible{outline:3px solid var(--gold);outline-offset:5px}section[id]{scroll-margin-top:95px}.skip-link{position:fixed;top:-100px;left:20px;z-index:100;background:#fff;padding:16px}.skip-link:focus{top:10px}.software-section{padding-top:8px;padding-bottom:60px}.software-section .kicker{margin-bottom:14px}.software-label{font-size:12px!important;letter-spacing:1px;text-transform:uppercase;margin-bottom:10px!important}.software-intro{max-width:720px;line-height:1.7!important;margin-top:14px!important}.software-empty{display:flex;align-items:center;gap:30px;padding:44px;background:linear-gradient(115deg,#fff,#f7f3ec);border:1px solid var(--border);border-radius:16px}.software-empty-mark{display:grid;place-items:center;width:90px;height:90px;flex:none;background:#fff;border:1px solid #e8dbcc;border-radius:24px;color:var(--gold);font-size:46px}.software-empty h3{font:400 28px/1.25 var(--serif);margin:14px 0 10px}.software-empty p{color:var(--muted);line-height:1.7;max-width:650px;margin:0}.software-page{min-height:calc(100vh - 145px);padding-top:62px;padding-bottom:72px}.software-page-heading{max-width:800px;margin-bottom:40px}.software-page h1{font-size:48px;letter-spacing:-1px;line-height:1.15}.software-page-heading p{color:var(--muted);line-height:1.7}.software-back{display:inline-block;margin-bottom:30px}.software-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.software-card{background:#fff;border:1px solid var(--border);border-radius:16px;overflow:hidden;display:flex;flex-direction:column;transition:transform .2s,box-shadow .2s}.software-card:hover{transform:translateY(-3px);box-shadow:0 12px 30px #14253d10}.software-cover{display:block;width:100%;height:210px;object-fit:cover;background:#f5f1eb}.software-card-body{padding:24px;display:flex;flex-direction:column;flex:1;gap:16px}.software-card h3{font:400 25px/1.2 var(--serif);margin:0}.software-card p{margin:0;color:var(--muted);line-height:1.65}.software-product-title{display:flex;align-items:center;gap:12px}.software-icon{width:44px;height:44px;object-fit:contain;border-radius:10px;background:#f7f3ec;flex:none}.software-badges,.software-actions,.software-filters{display:flex;flex-wrap:wrap;gap:9px}.software-badge{background:#f6f2ec;color:#745a3c;padding:7px 10px;border-radius:20px;font-size:11px}.software-status{font-size:12px;color:var(--muted)}.software-actions{margin-top:auto;padding-top:16px;border-top:1px solid var(--border);align-items:center}.software-actions a{font-size:13px;padding:11px 14px;border:1px solid #dfccb2;border-radius:22px;color:#835923}.software-features{padding-left:20px;margin:0;color:var(--muted);line-height:1.8;font-size:13px}.software-filters{margin-bottom:20px}.software-filters[hidden]{display:none}.software-filters button{padding:10px 21px;border:1px solid var(--border);border-radius:22px;background:white;color:var(--navy)}.software-filters button[aria-pressed=true]{background:var(--navy);color:white;border-color:var(--navy)}.software-count{color:var(--muted);font-size:13px}.software-detail-hero{padding:36px;background:white;border:1px solid var(--border);border-radius:16px}.software-detail-hero p{color:var(--muted);line-height:1.7}.software-detail-section{margin-top:36px;max-width:900px}.software-detail-section h2{font-size:30px}.software-detail-section p,.software-detail-section li{line-height:1.8;color:var(--muted);white-space:pre-line;overflow-wrap:anywhere}.software-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.software-gallery img{width:100%;height:280px;object-fit:contain;background:#f5f1eb;border:1px solid var(--border);border-radius:12px}.software-tech{display:grid;grid-template-columns:160px 1fr;gap:14px}.software-tech dt{font-weight:600}.software-tech dd{margin:0;color:var(--muted);overflow-wrap:anywhere}.software-attribution{margin-top:40px;color:var(--gold)}
@media(min-width:1101px){nav{gap:20px}.nav-wrap{gap:20px}.logo{width:200px}}
@media(max-width:1100px){.header{height:65px}.hamburger{display:block}nav{display:none;position:absolute;left:0;right:0;top:65px;padding:25px;background:#fff;flex-direction:column;align-items:flex-start;gap:22px;box-shadow:0 10px 18px #0002;max-height:calc(100dvh - 65px);overflow-y:auto}nav.show{display:flex}nav a.active{padding:0 0 8px}.nav-cta{display:none}.software-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.software-section .section-heading{flex-direction:column;gap:18px}.software-empty{padding:28px;gap:20px;align-items:flex-start;flex-direction:column}.software-empty h3{font-size:25px}.software-empty-mark{width:64px;height:64px;font-size:36px}.software-page{padding-top:36px}.software-page h1{font-size:36px}.software-grid,.software-gallery{grid-template-columns:1fr}.software-actions a{width:100%;text-align:center}.software-detail-hero{padding:24px}.software-tech{grid-template-columns:1fr;gap:8px}.software-tech dd{margin-bottom:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}.software-card:hover{transform:none}}

/* Keep supplied 4:3 product artwork fully visible. */
.software-cover{height:auto;aspect-ratio:4/3;object-fit:cover}.software-monogram{display:grid;place-items:center;color:var(--gold);font:600 17px var(--serif)}.software-preview{margin:0}.software-preview img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:contain;border:1px solid var(--border);border-radius:14px;background:#fff}.software-preview figcaption{margin-top:12px;color:var(--muted);font-size:12px;line-height:1.6}.software-card h3{overflow-wrap:anywhere}
.software-empty-mark .ui-icon{width:34px;height:34px}.software-monogram .ui-icon{width:25px;height:25px}.software-actions a{display:inline-flex;align-items:center;justify-content:center;gap:9px}.software-actions .ui-icon{width:17px;height:17px}.software-back>.ui-icon{margin-left:0;margin-right:7px}
