.brxpg{--brx-bg:#ebe8e0;--brx-ink:#3e5874;--brx-radius:0px;--brx-gap:12px;--brx-thumb-width:83px;--brx-thumb-height:100px;--brx-layout:column;display:flex;flex-direction:var(--brx-layout);gap:16px;min-width:0;width:100%;color:var(--brx-ink);container-type:inline-size}
.brxpg,.brxpg *{box-sizing:border-box}.brxpg [hidden]{display:none!important}.brxpg button{font:inherit;cursor:pointer;color:var(--brx-ink);margin:0;line-height:1;min-height:0;text-transform:none;letter-spacing:normal}.brxpg button:focus-visible,.brxpg-stage:focus-visible{outline:2px solid var(--brx-ink);outline-offset:3px}.brxpg button:disabled{opacity:.35;cursor:default}.brxpg-stage{position:relative;overflow:hidden;min-width:0;flex:0 0 auto;width:100%;height:var(--brx-height,620px);background:var(--brx-bg);border-radius:var(--brx-radius);touch-action:pan-y pinch-zoom}.brxpg-slide{width:100%;height:100%;animation:brxpg-reveal .6s ease-out both}.brxpg .brxpg-image{display:block;width:100%;height:100%;max-width:none;object-fit:contain;padding:var(--brx-padding,0px);border-radius:0}.brxpg-fit--cover .brxpg-image{object-fit:cover}.brxpg .brxpg-arrow{position:absolute;top:50%;transform:translateY(-50%);width:50px;height:50px;padding:0;border:1px solid #ffffffbf;border-radius:50%;background:#ffffffd9;box-shadow:0 4px 16px #172c441f;font-size:32px;display:grid;place-items:center;z-index:2}.brxpg .brxpg-arrow:hover{background:#fff}.brxpg-prev{left:22px}.brxpg-next{right:22px}.brxpg .brxpg-enlarge{position:absolute;right:18px;bottom:18px;width:44px;height:44px;background:#ffffffd9;border:0;border-radius:50%;font-size:25px;padding:0}.brxpg-counter{position:absolute;bottom:24px;left:24px;font-size:12px;letter-spacing:.12em;padding:4px 8px;background:#ffffffd9;border-radius:3px}.brxpg-thumbs{display:flex;flex:0 0 auto;gap:var(--brx-gap);overflow:auto;max-width:100%;min-width:0;scrollbar-width:thin;padding:0}.brxpg .brxpg-thumb{flex:0 0 var(--brx-thumb-width);width:var(--brx-thumb-width);height:var(--brx-thumb-ratio-height,var(--brx-thumb-height));padding:0;border:1px solid transparent;background:var(--brx-bg);border-radius:var(--brx-radius);overflow:hidden}.brxpg .brxpg-thumb[aria-pressed="true"]{border-color:var(--brx-ink)}.brxpg .brxpg-thumb img{display:block;width:100%;height:100%;object-fit:cover}.brxpg .brxpg-thumb:first-child img,.brxpg-fit--contain .brxpg-thumb img{object-fit:contain}.brxpg[data-layout="side"] .brxpg-thumbs{flex-direction:column;width:calc(var(--brx-thumb-width) + 4px);max-height:var(--brx-height,620px)}.brxpg[data-layout="side"] .brxpg-thumb{flex-basis:var(--brx-thumb-ratio-height,var(--brx-thumb-height))}
.brxpg--minimal{--brx-bg:#f7f7f7;--brx-ink:#222;--brx-thumb-width:72px;--brx-thumb-height:82px}.brxpg--minimal .brxpg-stage{border:1px solid #e8e8e8}.brxpg--minimal .brxpg-arrow{border-radius:0;box-shadow:none}.brxpg--editorial{--brx-bg:#f1ede7;--brx-ink:#292721;--brx-layout:row-reverse;--brx-thumb-width:70px;--brx-thumb-height:88px}.brxpg--soft{--brx-bg:#f5e9e6;--brx-ink:#704956;--brx-radius:22px;--brx-thumb-width:80px;--brx-thumb-height:90px}.brxpg--soft .brxpg-stage{box-shadow:0 12px 35px #7049560d}.brxpg--soft .brxpg-thumb{border-radius:12px}.brxpg-sr{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;clip-path:inset(50%);overflow:hidden;white-space:nowrap}
.brxpg .brxpg-lightbox{position:fixed;inset:0;margin:auto;width:min(1100px,94vw);height:90vh;height:90dvh;max-width:94vw;max-height:90dvh;padding:48px 12px 60px;border:0;border-radius:8px;background:#fff;color:var(--brx-ink);overflow:hidden}.brxpg-lightbox::backdrop{background:#17202bd9}.brxpg .brxpg-lightbox>img{width:100%;height:100%;object-fit:contain;display:block}.brxpg .brxpg-close{position:absolute;top:4px;right:8px;width:44px;height:44px;border:0;background:transparent;font-size:32px;padding:0}.brxpg-lightbox-nav{position:absolute;bottom:8px;left:0;right:0;display:flex;justify-content:center;gap:20px}.brxpg .brxpg-lightbox-nav button{width:44px;height:44px;background:var(--brx-bg);border:0;border-radius:50%;font-size:28px;padding:0}.brxpg-empty{padding:30px;border:1px dashed #aaa;font:14px/1.6 sans-serif}
@media(max-width:1100px){.brxpg-stage{height:var(--brx-height,540px)}.brxpg[data-layout="side"] .brxpg-thumbs{max-height:var(--brx-height,540px)}}
@media(max-width:760px){.brxpg{--brx-layout:column;--brx-thumb-width:83px;--brx-thumb-height:77px}.brxpg-stage{height:var(--brx-height,auto);aspect-ratio:1/1.15}.brxpg-slide{position:absolute;inset:0}.brxpg .brxpg-arrow{width:42px;height:42px}.brxpg-prev{left:14px}.brxpg-next{right:14px}.brxpg[data-layout="side"] .brxpg-thumbs{max-height:var(--brx-height,420px)}}
@keyframes brxpg-reveal{from{opacity:.2;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.brxpg-slide{animation:none}}

/* Equal, non-shrinking frames irrespective of attachment dimensions or theme image rules. */
.brxpg .brxpg-thumbs{align-items:flex-start}
.brxpg .brxpg-thumb{position:relative;min-width:var(--brx-thumb-width);max-width:var(--brx-thumb-width);min-height:var(--brx-thumb-ratio-height,var(--brx-thumb-height));max-height:var(--brx-thumb-ratio-height,var(--brx-thumb-height));box-sizing:border-box;flex-shrink:0;align-self:flex-start}
.brxpg .brxpg-thumb img,.brxpg .brxpg-thumb:first-child img,.brxpg-fit--contain .brxpg-thumb img{position:absolute;inset:0;display:block;width:100%;height:100%;min-width:0;min-height:0;max-width:none;max-height:none;margin:0;padding:0;object-fit:var(--brx-thumb-fit,contain);object-position:center;aspect-ratio:auto;border:0;border-radius:0}

/* Main image fitting is independent of the fixed thumbnail frames. */
.brxpg-fit--fill .brxpg-image{object-fit:fill}
.brxpg-fit--scale-down .brxpg-image{object-fit:scale-down}
.brxpg-fit--none .brxpg-image{object-fit:none;object-position:center}
.brxpg.brxpg-fit--natural .brxpg-stage{height:auto;aspect-ratio:auto;align-self:flex-start}
.brxpg.brxpg-fit--natural .brxpg-slide{position:relative;inset:auto;height:auto}
.brxpg.brxpg-fit--natural .brxpg-image{position:static;display:block;width:100%;height:auto;max-height:none;aspect-ratio:auto;object-fit:contain;padding:0}

/* Elementor icon fonts and SVGs inherit the independently configured state colour. */
.brxpg .brxpg-arrow,.brxpg .brxpg-enlarge,.brxpg .brxpg-close,.brxpg .brxpg-lightbox-nav button{display:grid;place-items:center;transition:color .2s,background-color .2s,border-color .2s,opacity .2s}
.brxpg button svg{display:block;width:var(--brx-icon-size,1em);height:var(--brx-icon-size,1em);fill:currentColor}
.brxpg button i{font-size:var(--brx-icon-size,inherit);color:inherit}
.brxpg button>span{pointer-events:none}
@media(prefers-reduced-motion:reduce){.brxpg button{transition:none}}

/* Keep icon alignment independent of font baselines and theme button layout. */
.brxpg .brxpg-arrow,.brxpg .brxpg-enlarge,.brxpg .brxpg-close,.brxpg .brxpg-lightbox-nav button{align-content:center;justify-content:center;line-height:1;padding:0}
.brxpg button .brxpg-icon{display:flex;align-items:center;justify-content:center;width:var(--brx-icon-size,1em);height:var(--brx-icon-size,1em);line-height:1;margin:0;padding:0;transform:translate(var(--brx-icon-x,0px),var(--brx-icon-y,0px));pointer-events:none}
.brxpg .brxpg-icon>svg{display:block;width:100%;height:100%;margin:0;padding:0;vertical-align:middle;flex:none}
.brxpg .brxpg-icon>i{display:flex;align-items:center;justify-content:center;width:100%;height:100%;line-height:1;margin:0;padding:0;font-size:inherit}
.brxpg .brxpg-icon>i::before{display:block;line-height:1}
.brxpg .brxpg-icon>svg.brxpg-built-in{fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}

/* Reference gallery defaults; Elementor controls can still override these values. */
.elementor-widget-branxon-product-gallery,.elementor-widget-branxon-product-gallery > .elementor-widget-container{min-width:0;max-width:100%}
.brxpg{max-width:100%}
.brxpg .brxpg-image{margin:0;border:0;max-height:none;mix-blend-mode:normal}

.brxpg .brxpg-thumb:first-child img{object-fit:var(--brx-thumb-fit,contain)}
.brxpg .brxpg-arrow{font-size:25px;transition:background .2s,transform .2s}
.brxpg .brxpg-arrow:hover{transform:translateY(-50%) scale(1.06)}
.brxpg .brxpg-arrow .brxpg-built-in{stroke-width:2}
.brxpg[data-layout="side"] .brxpg-stage{flex:1 1 auto;width:0}
@media(prefers-reduced-motion:reduce){.brxpg .brxpg-arrow{transition:none}.brxpg .brxpg-arrow:hover{transform:translateY(-50%)}}

/* Use the main frame to size the row; the scrolling rail must not determine it. */
.brxpg{display:grid;grid-template-columns:minmax(0,1fr);position:relative;align-items:start}
.brxpg .brxpg-stage{position:relative;width:100%;min-width:0;align-self:start;min-height:0}
.brxpg .brxpg-slide{position:absolute;inset:0;min-width:0;min-height:0}
.brxpg.brxpg-fit--natural .brxpg-slide{position:relative;inset:auto}
.brxpg .brxpg-thumbs{width:100%;overflow-x:auto;overflow-y:hidden;min-height:0}
.brxpg[data-layout="side"]{grid-template-columns:calc(var(--brx-thumb-width) + 18px) minmax(0,1fr)}
.brxpg[data-layout="side"] .brxpg-stage{grid-column:2;grid-row:1;width:100%;flex:none}
.brxpg[data-layout="side"] .brxpg-thumbs{position:absolute;left:0;top:0;bottom:0;width:calc(var(--brx-thumb-width) + 18px);height:auto;max-height:none;overflow-x:hidden;overflow-y:auto}
.brxpg[data-layout="bottom"] .brxpg-thumbs{position:relative;flex-direction:row;max-height:none}
.brxpg .brxpg-image{min-width:0;min-height:0;max-width:100%;box-sizing:border-box}
@media(max-width:767px){.brxpg .brxpg-stage{height:var(--brx-height,auto);aspect-ratio:1/1.15}}

/* Explicit placement prevents inherited grid ordering from moving the rail first. */
.brxpg > .brxpg-stage{grid-column:1;grid-row:1;order:0}
.brxpg > .brxpg-thumbs{grid-column:1;grid-row:2;order:1}
.brxpg[data-layout="side"] > .brxpg-thumbs{grid-column:1;grid-row:1}
@media(max-width:767px){
 .brxpg,.brxpg[data-layout="side"]{grid-template-columns:minmax(0,1fr);width:100%;max-width:100vw}
 .brxpg > .brxpg-stage,.brxpg[data-layout="side"] > .brxpg-stage{grid-column:1;grid-row:1;width:100%;max-width:100%;min-width:0}
 .brxpg > .brxpg-thumbs,.brxpg[data-layout="side"] > .brxpg-thumbs{grid-column:1;grid-row:2;position:relative;inset:auto;display:flex;flex-direction:row;width:100%;height:auto;max-height:none;overflow-x:auto;overflow-y:hidden}
 .brxpg[data-layout="side"] .brxpg-thumb{flex-basis:var(--brx-thumb-width)}
}

@media(max-width:767px){
 .brxpg{height:auto!important;grid-template-rows:max-content max-content;align-content:start}
 .elementor-widget-branxon-product-gallery > .elementor-widget-container{height:auto;min-height:0}
}
