/* DelCid Flooring Gallery v3.5 — responsive mosaic grid */
.dcsg-section{--dcsg-accent:#ef1025;--dcsg-text:#101828;--dcsg-muted:#667085;--dcsg-button-text:#fff;display:block!important;float:none!important;clear:both!important;box-sizing:border-box!important;width:100%!important;max-width:1280px!important;margin:0 auto 30px!important;padding:0 12px!important;color:var(--dcsg-text);font-family:inherit;position:relative!important}
.dcsg-section *{box-sizing:border-box}
.dcsg-header{display:block!important;float:none!important;width:100%!important;max-width:900px!important;margin:0 auto 26px!important;padding:4px 12px!important;text-align:center!important}
.dcsg-eyebrow{margin:0 0 8px!important;color:var(--dcsg-accent)!important;font-size:12px!important;font-weight:800!important;letter-spacing:.16em!important}
.dcsg-header h2{display:block!important;margin:0 0 10px!important;color:var(--dcsg-text)!important;font-size:clamp(28px,4vw,48px)!important;font-weight:800!important;line-height:1.12!important;letter-spacing:-.035em!important}
.dcsg-header>p:last-child{display:block!important;margin:0!important;color:var(--dcsg-muted)!important;font-size:clamp(15px,1.5vw,18px)!important;line-height:1.6!important}
.dcsg-section .dcsg-grid{display:grid!important;float:none!important;clear:both!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;grid-auto-rows:9px!important;grid-auto-flow:dense!important;align-items:stretch!important;justify-items:stretch!important;gap:9px!important;width:100%!important;max-width:100%!important;margin:0 auto!important;padding:0!important}
.dcsg-section .dcsg-tile{display:block!important;position:relative!important;float:none!important;align-self:stretch!important;justify-self:stretch!important;grid-column:span 1!important;grid-row:span 17!important;width:100%!important;min-width:0!important;max-width:100%!important;height:auto!important;min-height:0!important;aspect-ratio:auto!important;overflow:hidden!important;border:0!important;border-radius:5px!important;padding:0!important;margin:0!important;background:#f2f4f7!important;cursor:zoom-in!important}
.dcsg-section .dcsg-tile img{display:block!important;position:absolute!important;inset:0!important;width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;object-fit:cover!important;margin:0!important;padding:0!important;transition:transform .3s ease}
.dcsg-section .dcsg-tile:hover img{transform:scale(1.045)}
/* Mosaic pattern: varied tile sizes like the supplied reference */
.dcsg-section .dcsg-tile-1{grid-column:span 2!important;grid-row:span 30!important}
.dcsg-section .dcsg-tile-2{grid-row:span 17!important}
.dcsg-section .dcsg-tile-3{grid-row:span 12!important}
.dcsg-section .dcsg-tile-4{grid-row:span 14!important}
.dcsg-section .dcsg-tile-5{grid-column:span 2!important;grid-row:span 24!important}
.dcsg-section .dcsg-tile-6{grid-row:span 13!important}
.dcsg-section .dcsg-tile-7{grid-row:span 16!important}
.dcsg-section .dcsg-tile-8{grid-column:span 2!important;grid-row:span 23!important}
.dcsg-section .dcsg-tile-9{grid-row:span 14!important}
.dcsg-section .dcsg-tile-10{grid-row:span 12!important}
.dcsg-section .dcsg-tile-11{grid-row:span 17!important}
.dcsg-section .dcsg-tile-12{grid-column:span 2!important;grid-row:span 22!important}
.dcsg-zoom{position:absolute;right:10px;bottom:10px;width:35px;height:35px;border-radius:50%;display:grid;place-items:center;background:rgba(16,24,40,.82);color:#fff;font-size:24px;opacity:0;transition:opacity .2s}
.dcsg-tile:hover .dcsg-zoom,.dcsg-tile:focus .dcsg-zoom{opacity:1}
.dcsg-cta{display:flex!important;float:none!important;clear:both!important;justify-content:center!important;width:100%!important;margin:27px auto 0!important}
.dcsg-button{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:12px!important;min-height:48px!important;padding:13px 25px!important;border-radius:6px!important;background:var(--dcsg-accent)!important;color:var(--dcsg-button-text)!important;text-decoration:none!important;font-size:15px!important;font-weight:800!important;box-shadow:0 5px 13px rgba(239,16,37,.18);transition:transform .2s,filter .2s}
.dcsg-button:hover{color:var(--dcsg-button-text)!important;filter:brightness(.92);transform:translateY(-2px)}
.dcsg-empty{text-align:center;color:var(--dcsg-muted);padding:25px}
.dcsg-lightbox[hidden]{display:none!important}
.dcsg-lightbox{position:fixed!important;inset:0!important;z-index:999999!important;display:flex;align-items:center;justify-content:center;background:rgba(8,13,22,.96);padding:56px 68px}
.dcsg-close,.dcsg-nav{position:absolute;z-index:2;display:grid;place-items:center;border:0;background:rgba(255,255,255,.15);color:#fff;cursor:pointer}
.dcsg-close{top:15px;right:20px;width:44px;height:44px;border-radius:50%;font-size:32px;line-height:1}
.dcsg-nav{top:50%;transform:translateY(-50%);width:48px;height:58px;border-radius:8px;font-size:42px;line-height:1}
.dcsg-prev{left:14px}.dcsg-next{right:14px}
.dcsg-view{display:flex;flex-direction:column;gap:12px;width:min(1100px,100%);height:100%;min-height:0}
.dcsg-view-head{display:flex;justify-content:space-between;gap:12px;color:#fff;font-size:14px}
.dcsg-count{color:#d0d5dd}
.dcsg-full{display:block;width:100%;height:0;min-height:0;flex:1;object-fit:contain}
.dcsg-thumbs{display:flex;gap:8px;overflow-x:auto;padding:2px 1px 7px}
.dcsg-thumb{flex:0 0 78px;height:55px;padding:0;overflow:hidden;border:2px solid transparent;border-radius:4px;background:#222;cursor:pointer}
.dcsg-thumb.is-active{border-color:var(--dcsg-accent)}
.dcsg-thumb img{display:block;width:100%;height:100%;object-fit:cover}
body.dcsg-no-scroll{overflow:hidden}
@media(max-width:900px){
 .dcsg-section .dcsg-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;grid-auto-rows:8px!important;gap:8px!important}
 .dcsg-section .dcsg-tile-1,.dcsg-section .dcsg-tile-5,.dcsg-section .dcsg-tile-8,.dcsg-section .dcsg-tile-12{grid-column:span 2!important}
}
@media(max-width:600px){
 .dcsg-section{padding:0 8px!important}
 .dcsg-section .dcsg-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;grid-auto-rows:7px!important;gap:6px!important}
 .dcsg-section .dcsg-tile{grid-column:span 1!important;grid-row:span 17!important}
 .dcsg-section .dcsg-tile-1,.dcsg-section .dcsg-tile-5,.dcsg-section .dcsg-tile-8,.dcsg-section .dcsg-tile-12{grid-column:span 2!important;grid-row:span 22!important}
 .dcsg-section .dcsg-tile-3,.dcsg-section .dcsg-tile-6,.dcsg-section .dcsg-tile-10{grid-row:span 12!important}
 .dcsg-lightbox{padding:60px 42px 18px}.dcsg-nav{width:34px;height:46px;font-size:32px}.dcsg-prev{left:4px}.dcsg-next{right:4px}.dcsg-close{right:10px;top:10px}.dcsg-thumb{flex-basis:61px;height:45px}
}

/* v3.6: prominent full-size image viewer and clear close control */
.dcsg-section .dcsg-lightbox{
 position:fixed!important;inset:0!important;width:100vw!important;height:100vh!important;
 max-width:none!important;max-height:none!important;margin:0!important;
 padding:64px 76px 24px!important;display:flex!important;align-items:center!important;justify-content:center!important;
 background:rgba(0,0,0,.94)!important;z-index:2147483000!important;overflow:hidden!important;
}
.dcsg-section .dcsg-lightbox[hidden]{display:none!important}
.dcsg-section .dcsg-view{
 width:min(1200px,100%)!important;height:100%!important;max-height:100%!important;
 display:flex!important;flex-direction:column!important;align-items:stretch!important;
 gap:12px!important;min-height:0!important;margin:0 auto!important;
}
.dcsg-section .dcsg-view-head{flex:0 0 auto!important;color:#fff!important;font-size:14px!important}
.dcsg-section img.dcsg-full{
 display:block!important;position:static!important;inset:auto!important;
 width:100%!important;height:auto!important;min-height:0!important;max-height:calc(100vh - 180px)!important;
 flex:1 1 auto!important;object-fit:contain!important;object-position:center!important;
 margin:0 auto!important;padding:0!important;border:0!important;border-radius:3px!important;
}
.dcsg-section .dcsg-close{
 position:fixed!important;top:18px!important;right:22px!important;z-index:2147483001!important;
 display:grid!important;place-items:center!important;width:48px!important;height:48px!important;
 padding:0!important;border:2px solid rgba(255,255,255,.8)!important;border-radius:50%!important;
 background:#ef1025!important;color:#fff!important;font-family:Arial,sans-serif!important;
 font-size:34px!important;font-weight:400!important;line-height:1!important;cursor:pointer!important;
 box-shadow:0 4px 18px rgba(0,0,0,.35)!important;
}
.dcsg-section .dcsg-close:hover{background:#c90d1e!important;transform:scale(1.05)}
.dcsg-section .dcsg-nav{
 z-index:2147483001!important;background:rgba(255,255,255,.18)!important;color:#fff!important;
 width:48px!important;height:58px!important;border-radius:8px!important;font-size:42px!important;
}
.dcsg-section .dcsg-prev{left:16px!important}.dcsg-section .dcsg-next{right:16px!important}
.dcsg-section .dcsg-thumbs{flex:0 0 auto!important;max-height:68px!important}
@media(max-width:600px){
 .dcsg-section .dcsg-lightbox{padding:64px 38px 18px!important}
 .dcsg-section img.dcsg-full{max-height:calc(100vh - 165px)!important}
 .dcsg-section .dcsg-close{top:10px!important;right:10px!important;width:42px!important;height:42px!important;font-size:30px!important}
 .dcsg-section .dcsg-nav{width:30px!important;height:42px!important;font-size:30px!important}
 .dcsg-section .dcsg-prev{left:3px!important}.dcsg-section .dcsg-next{right:3px!important}
 .dcsg-section .dcsg-thumb{flex-basis:54px!important;height:42px!important}
}

/* v3.8: numbered pagination for the unlimited full gallery */
.dcsg-section .dcsg-tile[hidden]{display:none!important}
.dcsg-pagination{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;margin:28px auto 8px;width:100%}
.dcsg-pagination .dcsg-page{display:inline-flex;align-items:center;justify-content:center;min-width:42px;height:42px;padding:0 12px;border:1px solid #d0d5dd;border-radius:6px;background:#fff;color:var(--dcsg-text,#101828);font-size:15px;font-weight:700;cursor:pointer;transition:background .2s,color .2s,border-color .2s}
.dcsg-pagination .dcsg-page:hover,.dcsg-pagination .dcsg-page.is-active{background:var(--dcsg-accent,#ef1025);border-color:var(--dcsg-accent,#ef1025);color:#fff}
.dcsg-pagination .dcsg-page[aria-current="page"]{background:var(--dcsg-accent,#ef1025);border-color:var(--dcsg-accent,#ef1025);color:#fff}
.dcsg-pagination .dcsg-page:disabled{opacity:.45;cursor:not-allowed}
