body[data-catalogue-open] { overflow:hidden; }
.gms-catalogue-modal .possibilities-modal__panel { height:92svh; max-height:64rem; display:flex; flex-direction:column; overflow:hidden; padding:1.5rem 1.5rem 0; }
.gms-catalogue-heading { flex:none; padding-bottom:1rem; }
.gms-catalogue-heading h2 { margin:.4rem 0 0; font-size:clamp(1.5rem,3vw,2.5rem); text-transform:uppercase; }
.gms-catalogue-heading .possibilities-modal__close { position:relative; margin-bottom:0; }
.gms-catalogue-viewer { width:100%; flex:1; min-height:0; border:1px solid var(--line); border-radius:.75rem; background:#eee; overflow:auto; overscroll-behavior:contain; }
.gms-catalogue-viewer img { display:block; width:100%; height:auto; margin-bottom:.75rem; }
.gms-catalogue-footer { flex:none; display:flex; align-items:center; justify-content:space-between; gap:1rem; padding:1rem 0; }
.gms-catalogue-external { font-size:.8rem; text-decoration:underline; text-underline-offset:3px; }
.gms-catalogue-footer .btn { font-size:.75rem; padding:1rem 1.3rem; }
@media(max-width:47.99rem) {
 .gms-catalogue-modal .possibilities-modal__panel { height:94svh; max-height:94svh; padding:1rem 1rem 0; }
 .gms-catalogue-heading .eyebrow { font-size:.6rem; }
 .gms-catalogue-footer { flex-direction:column; padding:1rem 0 max(1rem,env(safe-area-inset-bottom)); gap:.75rem; }
 .gms-catalogue-footer .btn { width:100%; justify-content:center; }
}
