.opg-gallery{--opg-blue:#1459a8;--opg-ink:#20364b;--opg-muted:#617183;max-width:100%;font-family:inherit;color:var(--opg-ink);line-height:1.5}
.opg-gallery *{box-sizing:border-box}
.opg-gallery a{text-decoration:none}
.opg-gallery .opg-heading{position:relative;background:linear-gradient(115deg,#fff1d8,#fffaf0 52%,#eaf4eb);padding:35px 30px 30px;border-radius:22px;border:1px solid #efdfc6;margin:0 0 24px}
.opg-gallery .opg-eyebrow{display:inline-block;border-radius:99px;border:1px solid #f3d4a8;background:#fff;color:#9b601f;font-size:11px;font-weight:800;letter-spacing:.07em;padding:5px 11px;margin-bottom:12px}
.opg-gallery h1{font-size:clamp(27px,3vw,39px);color:#1d3856;line-height:1.18;letter-spacing:-.025em;margin:0 0 9px}
.opg-gallery .opg-heading p{color:#41556d;margin:0 0 22px;font-size:15px;max-width:690px;line-height:1.7}
.opg-gallery .opg-downloads{display:flex;flex-wrap:wrap;gap:10px}
.opg-gallery .opg-downloads a{padding:9px 14px;background:#fff;color:#184e87;border:1px solid #d8e5ed;border-radius:11px;font-weight:800;font-size:12px;transition:transform .15s,border-color .15s}
.opg-gallery .opg-downloads a:first-child{background:#175ca8;border-color:#175ca8;color:#fff}
.opg-gallery .opg-downloads a:hover{border-color:#175ca8;transform:translateY(-1px)}
.opg-gallery .opg-tools{border:1px solid #e4ebf4;border-radius:18px;background:#f7fafd;padding:19px 21px;margin:0 0 23px}
.opg-gallery .opg-label{font-size:12px;letter-spacing:.015em;color:#43596d;font-weight:800;margin:0 0 9px}
.opg-gallery .opg-chips{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 15px}
.opg-gallery .opg-chips button{font-family:inherit;font-size:13px;font-weight:750;background:#fff;color:#34516d;border:1px solid #d6e1ec;padding:8px 14px;border-radius:99px;cursor:pointer;min-height:37px}
.opg-gallery .opg-chips button[aria-pressed="true"]{background:#1657a5;color:#fff;border-color:#1657a5;box-shadow:0 3px 8px #1762a722}
.opg-gallery .opg-chips button:focus-visible,.opg-gallery .opg-actions a:focus-visible,.opg-gallery .opg-downloads a:focus-visible{outline:3px solid #f1a929;outline-offset:2px}
.opg-gallery .opg-filters{display:flex;flex-wrap:wrap;gap:9px;align-items:center}
.opg-gallery .opg-filters select,.opg-gallery .opg-filters input{appearance:auto;font-family:inherit;min-width:190px;max-width:100%;background:#fff;border:1px solid #d9e5ed;border-radius:10px;color:#334f65;min-height:42px;padding:9px 12px;font-size:13px}
.opg-gallery .opg-filters input{flex:1;min-width:180px}
.opg-gallery .opg-count{margin:12px 0 0;font-size:12px;color:#5f6e80}
.opg-gallery .opg-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}
.opg-gallery .opg-card{min-width:0;background:#fff;border:1px solid #e3e8ee;border-radius:17px;box-shadow:0 3px 12px #20364b0a;overflow:hidden;transition:transform .18s,box-shadow .18s}
.opg-gallery .opg-card:hover{box-shadow:0 9px 22px #20364b19;transform:translateY(-2px)}
.opg-gallery .opg-card[hidden]{display:none!important}
.opg-gallery .opg-image-link{display:block;background:#fbfcfe;padding:14px 14px 7px;text-align:center}
.opg-gallery .opg-image-link img{width:100%;height:220px;object-fit:contain;display:block;background:#fff;border-radius:7px;border:1px solid #f1f1f1}
.opg-gallery .opg-card-body{padding:12px 14px 16px}
.opg-gallery .opg-card-meta{display:flex;justify-content:space-between;gap:6px;color:#627386;font-size:11px;margin-bottom:7px}
.opg-gallery .opg-card-meta span:last-child{background:#edf3f8;border-radius:9px;padding:3px 7px;white-space:nowrap}
.opg-gallery .opg-card h2{font-size:17px;font-weight:800;color:#243a53;line-height:1.35;margin:0 0 13px;min-height:46px}
.opg-gallery .opg-actions{display:flex;flex-wrap:wrap;gap:7px}
.opg-gallery .opg-actions a{font-size:11px;line-height:1.35;font-weight:800;padding:8px 9px;border:1px solid #d9e6f3;border-radius:8px;color:#1557a3;background:#f6faff}
.opg-gallery .opg-actions a:last-child{background:#1359ab;color:#fff;border-color:#1359ab}
.opg-gallery .opg-actions a:hover{text-decoration:underline}
.opg-gallery .opg-empty{border:1px dashed #d8e3ef;background:#f8fbff;padding:25px;border-radius:15px;text-align:center;color:#627286}
.opg-gallery .opg-empty[hidden]{display:none!important}
.opg-gallery .opg-note{margin:22px 0 10px;color:#69798a;font-size:12px;line-height:1.7}
@media(max-width:900px){.opg-gallery .opg-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:530px){.opg-gallery .opg-grid{grid-template-columns:1fr 1fr;gap:10px}.opg-gallery .opg-heading{padding:24px 19px}.opg-gallery .opg-tools{padding:15px}.opg-gallery .opg-image-link{padding:7px}.opg-gallery .opg-image-link img{height:165px}.opg-gallery .opg-card-body{padding:10px}.opg-gallery .opg-card h2{font-size:14px;min-height:38px}.opg-gallery .opg-actions a{font-size:10px;padding:7px}.opg-gallery .opg-card-meta{font-size:10px}.opg-gallery .opg-filters select,.opg-gallery .opg-filters input{width:100%}}
@media(max-width:360px){.opg-gallery .opg-grid{grid-template-columns:1fr}.opg-gallery .opg-image-link img{height:240px}}
@media(prefers-reduced-motion:reduce){.opg-gallery *{transition:none!important}}

.opg-gallery .opg-collections{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 16px}
.opg-gallery .opg-collections button{font-family:inherit;font-size:13px;font-weight:800;background:#fff;color:#34516d;border:1px solid #d6e1ec;padding:9px 14px;border-radius:30px;cursor:pointer}
.opg-gallery .opg-collections button[aria-pressed="true"]{background:#1459a8;color:#fff;border-color:#1459a8}
.opg-gallery .opg-collections button:focus-visible{outline:3px solid #f1a929;outline-offset:2px}
