.local-portfolio-gallery.is-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
.local-portfolio-item { display:block; }
.local-portfolio-item img { display:block; width:100%; border-radius:8px; }
.is-grid .local-portfolio-item img { aspect-ratio:1.58; object-fit:cover; }
.is-featured { max-width:420px; margin:auto; text-align:center; }
.is-featured img { width:100%; max-height:380px; object-fit:contain; }
.local-portfolio-view { margin-top:16px; border:0; border-radius:30px; background:#282828; color:white; padding:12px 24px; font:600 14px/1.4 Arial,sans-serif; cursor:pointer; }
.local-portfolio-view:hover { background:#a71936; }
.wonderplugin-gridgallery-item-button .wpp-btn-whiteborder-medium,
.local-portfolio-view { color:#fff !important; background:#282828; font-weight:600; }
.wonderplugin-gridgallery-item-button .wpp-btn-whiteborder-medium:hover,
.wonderplugin-gridgallery-item-button .wpp-btn-whiteborder-medium:focus-visible,
.local-portfolio-view:hover,
.local-portfolio-view:focus-visible { color:#fff !important; background:#a71936; }
.local-portfolio-dialog { width:min(1000px,calc(100vw - 32px)); max-height:calc(100dvh - 32px); padding:20px; border:0; border-radius:12px; background:#fff; }
.local-portfolio-dialog::backdrop { background:#000c; }
.local-portfolio-dialog img { display:block; max-width:100%; max-height:calc(100dvh - 170px); width:auto; margin:0 auto; object-fit:contain; }
.local-portfolio-toolbar { display:flex; align-items:center; justify-content:space-between; gap:16px; margin-bottom:12px; }
.local-portfolio-toolbar h2 { margin:0; font-size:20px; line-height:1.4; }
.local-portfolio-dialog button { background:#282828; color:#fff; border:0; border-radius:6px; padding:10px 16px; cursor:pointer; }
.local-portfolio-controls { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-top:16px; }
.local-portfolio-caption { text-align:center; margin:0; }
@media(max-width:767px) { .local-portfolio-gallery.is-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } .local-portfolio-dialog { padding:12px; } .local-portfolio-dialog button { padding:10px; } }
