/* Parazar Work Galleries – front end */
.pzw{
	--pzw-gap:20px;
	--pzw-pad:0px;                     /* outer inset of the grid */
	--pzw-border:#d5d5d5;
	--pzw-placeholder:#f3f3f3;
	--pzw-bar:rgba(255,255,255,.33);
	--pzw-bar-active:#fff;
	--pzw-bar-h:11px;
	--pzw-bar-gap:7px;
	--pzw-bar-inset:10px;
	--pzw-filter-color:#3C2435;
	--pzw-filter-line:#31182A;
	width:100%;
}

/* A wrapping column flex parent mis-measures the tall grid in Chrome – keep it single-line. */
.e-con:has(> .elementor-widget-parazar-work-gallery),
.e-con-inner:has(> .elementor-widget-parazar-work-gallery){flex-wrap:nowrap!important}
.elementor-widget-parazar-work-gallery{width:100%}

/* ---------- Filters ---------- */
.pzw-filters-wrap{position:relative;margin:0 0 55px}
.pzw .pzw-filters{list-style:none;margin:0;padding:0;text-align:center;line-height:34px;overflow:hidden}
.pzw .pzw-filters li{display:inline-block;margin:0 30px 0 0;padding:0;list-style:none}
.pzw .pzw-filters button{
	-webkit-appearance:none;appearance:none;position:relative;display:block;margin:0;
	padding:0 10px!important;background:none!important;border:0!important;border-radius:0!important;box-shadow:none!important;
	font-family:HelveticaNeueLTStd,"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:18px;font-weight:400;
	line-height:34px;letter-spacing:.027px;text-transform:none;color:var(--pzw-filter-color);cursor:pointer;
}
.pzw .pzw-filters button:hover,.pzw .pzw-filters button:focus{background:none!important;color:var(--pzw-filter-color)}
.pzw .pzw-filters li.is-active button{line-height:31px}
.pzw .pzw-filters button::after{
	content:"";position:absolute;left:0;bottom:0;width:0;height:1px;z-index:9;
	background:var(--pzw-filter-line);transition:width 650ms;
}
.pzw .pzw-filters li.is-active button::after,.pzw .pzw-filters button:hover::after{width:100%}
.pzw .pzw-filters button:focus-visible{outline:1px dotted var(--pzw-filter-color);outline-offset:2px}

/* ---------- Grid (CSS Grid, dense packing – no JS layout) ---------- */
.pzw-grid{
	display:grid;
	grid-template-columns:repeat(2,minmax(0,1fr));
	grid-auto-flow:row dense;
	gap:var(--pzw-gap);
	padding:0 var(--pzw-pad);
	grid-auto-rows:auto;
	align-items:start;
}
/* Heights come from the block proportions, rows size themselves:
   small 673×326, square 673×672 (= 2 small rows + gap), big 1366×672. */
.pzw-item{position:relative;min-width:0;margin:0}
.pzw-small{aspect-ratio:673 / 326}
.pzw-medium{grid-row:span 2;aspect-ratio:673 / 672;align-self:stretch}
.pzw-big{grid-column:span 2;grid-row:span 2;aspect-ratio:1366 / 672}
.pzw-item[hidden]{display:none!important}
.pzw-item.pzw-anim{animation:pzw-in .45s ease both}
@keyframes pzw-in{from{opacity:0}to{opacity:1}}

/* ---------- Gallery ---------- */
.pzw-frame{
	position:relative;width:100%;height:100%;overflow:hidden;box-sizing:border-box;
	border:1px solid var(--pzw-border);background:var(--pzw-placeholder);
	touch-action:pan-y;-webkit-user-select:none;user-select:none;
}
.pzw-slides{position:absolute;inset:0}
.pzw-slide{position:absolute;inset:0;display:block;margin:0;opacity:0;transition:opacity .6s ease}
.pzw-slide.is-active{opacity:1;z-index:1}
.pzw .pzw-slide img{
	display:block;width:100%!important;height:100%!important;max-width:none!important;
	object-fit:cover;border:0;border-radius:0;box-shadow:none;-webkit-user-drag:none;
}
.pzw-js .pzw-slide img{opacity:0;transition:opacity .45s ease}
.pzw-js .pzw-slide img.is-loaded{opacity:1}

.pzw-bars{
	position:absolute;z-index:3;left:var(--pzw-bar-inset);right:var(--pzw-bar-inset);bottom:var(--pzw-bar-inset);
	display:flex;gap:var(--pzw-bar-gap);
}
.pzw .pzw-bars button{
	-webkit-appearance:none;appearance:none;position:relative;flex:1 1 0;min-width:0;height:var(--pzw-bar-h);
	margin:0;padding:0!important;border:0!important;border-radius:0!important;
	background:var(--pzw-bar)!important;box-shadow:0 0 7px 1px rgba(0,0,0,.15)!important;
	cursor:pointer;transition:background-color .3s;
}
.pzw .pzw-bars button::before{content:"";position:absolute;left:0;right:0;top:-8px;bottom:-6px} /* bigger tap area */
.pzw .pzw-bars button.is-active{background:var(--pzw-bar-active)!important}

.pzw-empty{text-align:center;padding:40px 0}

/* ---------- Tablet / small desktop ---------- */
@media (min-width:800px) and (max-width:1446px){
	.pzw{--pzw-gap:1.384vw}
}

/* ---------- Mobile ---------- */
@media (max-width:799px){
	.pzw{--pzw-gap:1.2vw;--pzw-pad:.6vw;--pzw-bar-h:5px;--pzw-bar-inset:3px}
	.pzw-filters-wrap{border:1px solid #43273B;margin-bottom:8vw;min-height:46px;box-sizing:border-box;cursor:pointer}
	.pzw-filters-wrap::before{
		content:"\25BE";position:absolute;top:23px;right:10px;font-size:31px;line-height:0;
		color:#43273B;pointer-events:none;transition:transform .2s;
	}
	.pzw-filters-wrap.is-open::before{transform:scale(-1)}
	.pzw .pzw-filters li{display:none;width:100%;margin:0;padding:6px;opacity:.5;box-sizing:border-box}
	.pzw .pzw-filters li.is-active{display:block;opacity:1}
	.pzw-filters-wrap.is-open .pzw-filters li{display:block}
	.pzw .pzw-filters li:hover{opacity:1}
	.pzw .pzw-filters button{width:100%;text-align:center}
	.pzw-filters-wrap:not(.is-open) .pzw-filters button{pointer-events:none}
	.pzw .pzw-filters button::after{display:none!important}
}

@media (prefers-reduced-motion:reduce){
	.pzw-slide,.pzw-js .pzw-slide img{transition:none}
	.pzw-item.pzw-anim{animation:none}
}
