@charset "UTF-8";
/* Ultimate Post Kit - Post Gallery
 * Section 1: scoped layout utilities (replaces the external framework)
 * Section 2: framework rules the widget relies on (ported)
 * Section 3: widget styles (ported)
 */
/* ============ 1. Scoped layout utilities ============ */
.upk-post-gallery-wrapper {
  --upk-pg-gap: 30px;
  --upk-pg-columns: 3;
  box-sizing: border-box;
}

.upk-post-gallery-wrapper *,
.upk-post-gallery-wrapper *::before,
.upk-post-gallery-wrapper *::after {
  box-sizing: border-box;
}

.upk-post-gallery-wrapper .upk-grid {
  display: flex;
  flex-wrap: wrap;
  margin: 0;
  padding: 0;
  list-style: none;
  margin-inline-start: calc(-1 * var(--upk-pg-gap));
}

.upk-post-gallery-wrapper .upk-grid > * {
  padding-inline-start: var(--upk-pg-gap);
}

.upk-post-gallery-wrapper .upk-grid-medium {
  --upk-pg-gap: 30px;
}

.upk-post-gallery-wrapper .upk-grid-small {
  --upk-pg-gap: 15px;
}

.upk-post-gallery-wrapper .upk-grid-collapse {
  --upk-pg-gap: 0px;
}

/* Column widths */
.upk-post-gallery-wrapper .upk-width-1-1 {
  inline-size: 100%;
}

.upk-post-gallery-wrapper .upk-width-1-2 {
  inline-size: 50%;
}

.upk-post-gallery-wrapper .upk-width-1-3 {
  inline-size: 33.3333%;
}

.upk-post-gallery-wrapper .upk-width-1-4 {
  inline-size: 25%;
}

.upk-post-gallery-wrapper .upk-width-1-5 {
  inline-size: 20%;
}

.upk-post-gallery-wrapper .upk-width-1-6 {
  inline-size: 16.6667%;
}

@media (min-width: 640px) {
  .upk-post-gallery-wrapper .upk-width-1-1\@s {
    inline-size: 100%;
  }
  .upk-post-gallery-wrapper .upk-width-1-2\@s {
    inline-size: 50%;
  }
  .upk-post-gallery-wrapper .upk-width-1-3\@s {
    inline-size: 33.3333%;
  }
  .upk-post-gallery-wrapper .upk-width-1-4\@s {
    inline-size: 25%;
  }
  .upk-post-gallery-wrapper .upk-width-1-5\@s {
    inline-size: 20%;
  }
  .upk-post-gallery-wrapper .upk-width-1-6\@s {
    inline-size: 16.6667%;
  }
}
@media (min-width: 960px) {
  .upk-post-gallery-wrapper .upk-width-1-1\@m {
    inline-size: 100%;
  }
  .upk-post-gallery-wrapper .upk-width-1-2\@m {
    inline-size: 50%;
  }
  .upk-post-gallery-wrapper .upk-width-1-3\@m {
    inline-size: 33.3333%;
  }
  .upk-post-gallery-wrapper .upk-width-1-4\@m {
    inline-size: 25%;
  }
  .upk-post-gallery-wrapper .upk-width-1-5\@m {
    inline-size: 20%;
  }
  .upk-post-gallery-wrapper .upk-width-1-6\@m {
    inline-size: 16.6667%;
  }
}
/* Elementor Columns control — higher specificity so it wins over utility classes */
.upk-post-gallery-wrapper .upk-post-gallery > .upk-gallery-item {
  inline-size: calc(100% / var(--upk-pg-columns, 3));
}

/* Visibility helpers */
@media (max-width: 959px) {
  .upk-post-gallery-wrapper .upk-visible\@m {
    display: none !important;
  }
}
@media (min-width: 960px) {
  .upk-post-gallery-wrapper .upk-hidden\@m {
    display: none !important;
  }
}
/* Position / spacing helpers */
.upk-post-gallery-wrapper .upk-position-relative {
  position: relative;
}

.upk-post-gallery-wrapper .upk-position-z-index {
  z-index: 1;
}

.upk-post-gallery-wrapper .upk-position-cover {
  position: absolute;
  inset: 0;
}

.upk-post-gallery-wrapper .upk-position-top-left {
  position: absolute;
  inset-block-start: 0;
  inset-inline-start: 0;
}

.upk-post-gallery-wrapper .upk-position-top-right {
  position: absolute;
  inset-block-start: 0;
  inset-inline-end: 0;
}

.upk-post-gallery-wrapper .upk-position-bottom {
  position: absolute;
  inset-block-end: 0;
  inset-inline-start: 0;
  inset-inline-end: 0;
}

.upk-post-gallery-wrapper .upk-padding-small {
  padding: 15px;
}

.upk-post-gallery-wrapper .upk-margin {
  margin-block-end: 20px;
}

.upk-post-gallery-wrapper * + .upk-margin {
  margin-block-start: 20px !important;
}

.upk-post-gallery-wrapper .upk-margin-right {
  margin-inline-end: 20px;
}

.upk-post-gallery-wrapper .upk-margin-remove {
  margin: 0 !important;
}

.upk-post-gallery-wrapper .upk-margin-remove-top {
  margin-block-start: 0 !important;
}

.upk-post-gallery-wrapper .upk-margin-remove-bottom {
  margin-block-end: 0 !important;
}

.upk-post-gallery-wrapper .upk-text-left {
  text-align: start;
}

.upk-post-gallery-wrapper .upk-flex-inline {
  display: inline-flex;
}

/* Hover reveal (the source used a framework "transition toggle") */
.upk-post-gallery-wrapper .upk-transition-toggle {
  position: relative;
}

.upk-post-gallery-wrapper .upk-transition-toggle:focus {
  outline: none;
}

/* Images */
.upk-post-gallery-wrapper .upk-gallery-thumbnail img {
  inline-size: 100%;
  block-size: 100%;
  object-fit: cover;
  vertical-align: top;
}

/* ============ 2. Framework rules (ported) ============ */
a.upk-link-text, .upk-link-text a, .upk-link-toggle .upk-link-text {
  color: inherit;
}

a.upk-link-text:hover, .upk-link-text a:hover, .upk-link-toggle:hover .upk-link-text {
  color: #999;
}

.upk-overlay {
  padding: 30px 30px;
}

.upk-overlay > :last-child {
  margin-bottom: 0;
}

.upk-overlay-default {
  --upk-inverse:dark;
  background: rgba(0, 0, 0, 0.5);
}

.upk-overlay-primary {
  --upk-inverse:light;
  background: rgba(34, 34, 34, 0.8);
}

.upk-sticky[class*=upk-animation-] {
  animation-duration: 0.2s;
}

.upk-sticky.upk-animation-reverse {
  animation-duration: 0.2s;
}

.upk-grid-medium, .upk-grid-column-medium {
  margin-left: -30px;
}

.upk-grid-medium > *, .upk-grid-column-medium > * {
  padding-left: 30px;
}

.upk-grid + .upk-grid-medium, .upk-grid + .upk-grid-row-medium, .upk-grid-medium > .upk-grid-margin, .upk-grid-row-medium > .upk-grid-margin, * + .upk-grid-margin-medium {
  margin-top: 30px;
}

.upk-grid-divider.upk-grid-medium, .upk-grid-divider.upk-grid-column-medium {
  margin-left: -60px;
}

.upk-grid-divider.upk-grid-medium > *, .upk-grid-divider.upk-grid-column-medium > * {
  padding-left: 60px;
}

.upk-grid-divider.upk-grid-medium > :not(.upk-first-column)::before, .upk-grid-divider.upk-grid-column-medium > :not(.upk-first-column)::before {
  left: 30px;
}

.upk-grid-divider.upk-grid-medium.upk-grid-stack > .upk-grid-margin, .upk-grid-divider.upk-grid-row-medium.upk-grid-stack > .upk-grid-margin {
  margin-top: 60px;
}

.upk-grid-divider.upk-grid-medium.upk-grid-stack > .upk-grid-margin::before {
  top: -30px;
  left: 60px;
}

.upk-pagination {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  margin-left: 0;
  padding: 0;
  list-style: none;
}

.upk-pagination > * {
  flex: none;
  padding-left: 0;
  position: relative;
}

.upk-pagination > * > * {
  display: flex;
  align-items: center;
  column-gap: 0.25em;
  padding: 5px 10px;
  color: #999;
}

.upk-pagination > * > :hover {
  color: #666;
  text-decoration: none;
}

.upk-pagination > .upk-active > * {
  color: #666;
}

.upk-pagination > .upk-disabled > * {
  color: #999;
}

[class*=upk-animation-] {
  animation: 0.5s ease-out both;
}

.upk-animation-fade {
  animation-name: upk-fade;
  animation-duration: 0.8s;
  animation-timing-function: linear;
}

.upk-animation-scale-up {
  animation-name: upk-fade, upk-scale-up;
}

.upk-animation-scale-down {
  animation-name: upk-fade, upk-scale-down;
}

.upk-animation-slide-top {
  animation-name: upk-fade, upk-slide-top;
}

.upk-animation-slide-bottom {
  animation-name: upk-fade, upk-slide-bottom;
}

.upk-animation-slide-left {
  animation-name: upk-fade, upk-slide-left;
}

.upk-animation-slide-right {
  animation-name: upk-fade, upk-slide-right;
}

.upk-animation-slide-top-small {
  animation-name: upk-fade, upk-slide-top-small;
}

.upk-animation-slide-bottom-small {
  animation-name: upk-fade, upk-slide-bottom-small;
}

.upk-animation-slide-left-small {
  animation-name: upk-fade, upk-slide-left-small;
}

.upk-animation-slide-right-small {
  animation-name: upk-fade, upk-slide-right-small;
}

.upk-animation-slide-top-medium {
  animation-name: upk-fade, upk-slide-top-medium;
}

.upk-animation-slide-bottom-medium {
  animation-name: upk-fade, upk-slide-bottom-medium;
}

.upk-animation-slide-left-medium {
  animation-name: upk-fade, upk-slide-left-medium;
}

.upk-animation-slide-right-medium {
  animation-name: upk-fade, upk-slide-right-medium;
}

.upk-animation-kenburns {
  animation-name: upk-kenburns;
  animation-duration: 15s;
}

.upk-animation-shake {
  animation-name: upk-shake;
}

.upk-animation-stroke {
  animation-name: upk-stroke;
  animation-duration: 2s;
  stroke-dasharray: var(--upk-animation-stroke);
}

.upk-animation-reverse {
  animation-direction: reverse;
  animation-timing-function: ease-in;
}

.upk-animation-fast {
  animation-duration: 0.1s;
}

.upk-animation-toggle:not(:hover):not(:focus) [class*=upk-animation-] {
  animation-name: none;
}

.upk-text-left {
  text-align: left !important;
}

.upk-flex-inline {
  display: inline-flex;
}

.upk-margin-right {
  margin-right: 20px !important;
}

.upk-margin-remove {
  margin: 0 !important;
}

.upk-margin-remove-top {
  margin-top: 0 !important;
}

.upk-margin-remove-bottom {
  margin-bottom: 0 !important;
}

.upk-margin-remove-left {
  margin-left: 0 !important;
}

.upk-margin-remove-right {
  margin-right: 0 !important;
}

.upk-margin-remove-vertical {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

.upk-margin-remove-adjacent + *, .upk-margin-remove-first-child > :first-child {
  margin-top: 0 !important;
}

.upk-margin-remove-last-child > :last-child {
  margin-bottom: 0 !important;
}

.upk-padding-small {
  padding: 15px;
}

[class*=upk-position-top], [class*=upk-position-bottom], [class*=upk-position-left], [class*=upk-position-right], [class*=upk-position-center] {
  position: absolute !important;
  max-width: calc(100% - var(--upk-position-margin-offset, 0px) * 2);
  box-sizing: border-box;
}

.upk-position-bottom {
  bottom: 0;
  left: 0;
  right: 0;
}

.upk-position-top-left {
  top: 0;
  left: 0;
}

.upk-position-top-right {
  top: 0;
  right: 0;
}

.upk-position-bottom-left {
  bottom: 0;
  left: 0;
}

.upk-position-bottom-right {
  bottom: 0;
  right: 0;
}

.upk-position-top-center, .upk-position-bottom-center, .upk-position-center-horizontal {
  left: calc(50% - var(--upk-position-margin-offset, 0px));
  --upk-position-translate-x:-50%;
  transform: translate(var(--upk-position-translate-x), 0);
  width: max-content;
}

.upk-position-bottom-center {
  bottom: 0;
}

.upk-position-cover {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
}

.upk-position-z-index {
  z-index: 1;
}

.upk-position-z-index-zero {
  z-index: 0;
}

.upk-position-z-index-negative {
  z-index: -1;
}

.upk-position-z-index-high {
  z-index: 990;
}

:where(.upk-transition-fade), :where([class*=upk-transition-scale]), :where([class*=upk-transition-slide]) {
  --upk-position-translate-x:0;
  --upk-position-translate-y:0;
}

.upk-transition-fade, [class*=upk-transition-scale], [class*=upk-transition-slide] {
  --upk-translate-x:0;
  --upk-translate-y:0;
  --upk-scale-x:1;
  --upk-scale-y:1;
  transform: translate(var(--upk-position-translate-x), var(--upk-position-translate-y)) translate(var(--upk-translate-x), var(--upk-translate-y)) scale(var(--upk-scale-x), var(--upk-scale-y));
  transition: 0.3s ease-out;
  transition-property: opacity, transform, filter;
  opacity: 0;
}

.upk-transition-toggle:hover .upk-transition-fade, .upk-transition-toggle:focus .upk-transition-fade, .upk-transition-toggle .upk-transition-fade:focus-within, .upk-transition-active.upk-active .upk-transition-fade {
  opacity: 1;
}

[class*=upk-transition-scale] {
  -webkit-backface-visibility: hidden;
}

.upk-transition-scale-up {
  --upk-scale-x:1;
  --upk-scale-y:1;
}

.upk-transition-scale-down {
  --upk-scale-x:1.03;
  --upk-scale-y:1.03;
}

.upk-transition-toggle:hover .upk-transition-scale-up, .upk-transition-toggle:focus .upk-transition-scale-up, .upk-transition-toggle .upk-transition-scale-up:focus-within, .upk-transition-active.upk-active .upk-transition-scale-up {
  --upk-scale-x:1.03;
  --upk-scale-y:1.03;
  opacity: 1;
}

.upk-transition-toggle:hover .upk-transition-scale-down, .upk-transition-toggle:focus .upk-transition-scale-down, .upk-transition-toggle .upk-transition-scale-down:focus-within, .upk-transition-active.upk-active .upk-transition-scale-down {
  --upk-scale-x:1;
  --upk-scale-y:1;
  opacity: 1;
}

.upk-transition-slide-top {
  --upk-translate-y:-100%;
}

.upk-transition-slide-bottom {
  --upk-translate-y:100%;
}

.upk-transition-slide-left {
  --upk-translate-x:-100%;
}

.upk-transition-slide-right {
  --upk-translate-x:100%;
}

.upk-transition-slide-top-small {
  --upk-translate-y:calc(-1 * 10px);
}

.upk-transition-slide-bottom-small {
  --upk-translate-y:10px;
}

.upk-transition-slide-left-small {
  --upk-translate-x:calc(-1 * 10px);
}

.upk-transition-slide-right-small {
  --upk-translate-x:10px;
}

.upk-transition-slide-top-medium {
  --upk-translate-y:calc(-1 * 50px);
}

.upk-transition-slide-bottom-medium {
  --upk-translate-y:50px;
}

.upk-transition-slide-left-medium {
  --upk-translate-x:calc(-1 * 50px);
}

.upk-transition-slide-right-medium {
  --upk-translate-x:50px;
}

.upk-transition-toggle:hover [class*=upk-transition-slide], .upk-transition-toggle:focus [class*=upk-transition-slide], .upk-transition-toggle [class*=upk-transition-slide]:focus-within, .upk-transition-active.upk-active [class*=upk-transition-slide] {
  --upk-translate-x:0;
  --upk-translate-y:0;
  opacity: 1;
}

/* upk-site.css ships an older, unscoped copy of these transition classes that
   uses a bare `transform` instead of the composed custom-property form, and it
   is enqueued after this file — so its `transform` wins on any page. Re-declare
   the composed values scoped to the widget so the overlay animation options
   behave the way Element Pack's do (scale 1.03, not 1.1) and slide effects keep
   the --upk-position-translate-* offsets that centre positioned overlays. */
.upk-post-gallery-wrapper .upk-transition-fade,
.upk-post-gallery-wrapper [class*=upk-transition-scale],
.upk-post-gallery-wrapper [class*=upk-transition-slide] {
  transform: translate(var(--upk-position-translate-x), var(--upk-position-translate-y)) translate(var(--upk-translate-x), var(--upk-translate-y)) scale(var(--upk-scale-x), var(--upk-scale-y));
}

.upk-post-gallery-wrapper .upk-transition-scale-up {
  --upk-scale-x:1;
  --upk-scale-y:1;
}

.upk-post-gallery-wrapper .upk-transition-scale-down {
  --upk-scale-x:1.03;
  --upk-scale-y:1.03;
}

.upk-post-gallery-wrapper .upk-transition-toggle:hover .upk-transition-scale-up,
.upk-post-gallery-wrapper .upk-transition-toggle:focus .upk-transition-scale-up,
.upk-post-gallery-wrapper .upk-transition-toggle .upk-transition-scale-up:focus-within,
.upk-post-gallery-wrapper .upk-transition-active.upk-active .upk-transition-scale-up {
  --upk-scale-x:1.03;
  --upk-scale-y:1.03;
  opacity: 1;
}

.upk-post-gallery-wrapper .upk-transition-toggle:hover .upk-transition-scale-down,
.upk-post-gallery-wrapper .upk-transition-toggle:focus .upk-transition-scale-down,
.upk-post-gallery-wrapper .upk-transition-toggle .upk-transition-scale-down:focus-within,
.upk-post-gallery-wrapper .upk-transition-active.upk-active .upk-transition-scale-down {
  --upk-scale-x:1;
  --upk-scale-y:1;
  opacity: 1;
}

.upk-post-gallery-wrapper .upk-transition-slide-top {
  --upk-translate-y:-100%;
}

.upk-post-gallery-wrapper .upk-transition-slide-bottom {
  --upk-translate-y:100%;
}

.upk-post-gallery-wrapper .upk-transition-slide-left {
  --upk-translate-x:-100%;
}

.upk-post-gallery-wrapper .upk-transition-slide-right {
  --upk-translate-x:100%;
}

.upk-post-gallery-wrapper .upk-transition-slide-top-small {
  --upk-translate-y:calc(-1 * 10px);
}

.upk-post-gallery-wrapper .upk-transition-slide-bottom-small {
  --upk-translate-y:10px;
}

.upk-post-gallery-wrapper .upk-transition-slide-left-small {
  --upk-translate-x:calc(-1 * 10px);
}

.upk-post-gallery-wrapper .upk-transition-slide-right-small {
  --upk-translate-x:10px;
}

.upk-post-gallery-wrapper .upk-transition-slide-top-medium {
  --upk-translate-y:calc(-1 * 50px);
}

.upk-post-gallery-wrapper .upk-transition-slide-bottom-medium {
  --upk-translate-y:50px;
}

.upk-post-gallery-wrapper .upk-transition-slide-left-medium {
  --upk-translate-x:calc(-1 * 50px);
}

.upk-post-gallery-wrapper .upk-transition-slide-right-medium {
  --upk-translate-x:50px;
}

.upk-post-gallery-wrapper .upk-transition-toggle:hover [class*=upk-transition-slide],
.upk-post-gallery-wrapper .upk-transition-toggle:focus [class*=upk-transition-slide],
.upk-post-gallery-wrapper .upk-transition-toggle [class*=upk-transition-slide]:focus-within,
.upk-post-gallery-wrapper .upk-transition-active.upk-active [class*=upk-transition-slide] {
  --upk-translate-x:0;
  --upk-translate-y:0;
  opacity: 1;
}

.upk-transition-opaque {
  opacity: 1;
}

.upk-transition-slow {
  transition-duration: 0.7s;
}

.upk-transition-disable, .upk-transition-disable * {
  transition: none !important;
}

.rtl .upk-position-top-center, .rtl .upk-position-bottom-center, .rtl .upk-position-center {
  right: calc(50% - var(--upk-position-margin-offset, 0px));
  left: auto;
}

.upk-form-stacked .upk-field-group.upk-margin-remove-bottom {
  line-height: 1;
}

.upk-custom-gallery .upk-overlay {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: stretch;
  text-align: center;
  z-index: 1;
  background-color: rgba(0, 0, 0, 0.5);
}

.skin-calm .upk-overlay {
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 5%, rgba(0, 0, 0, 0.31) 50%, rgba(0, 0, 0, 0.65) 100%);
  inset-block-end: -15px;
  padding-block-end: 45px;
}

.upk-skin-middle .upk-transition-slide-top, .upk-skin-middle .upk-overlay-gradient, .upk-skin-middle .upk-transition-slide-bottom {
  transition-property: opacity, visibility, transform, filter;
}

.upk-skin-middle .swiper-slide:not(.swiper-slide-active) .upk-transition-slide-top, .upk-skin-middle .swiper-slide:not(.swiper-slide-active) .upk-overlay-gradient, .upk-skin-middle .swiper-slide:not(.swiper-slide-active) .upk-transition-slide-bottom {
  visibility: hidden;
}

.upk-skin-middle .swiper-slide.swiper-slide-active .upk-transition-slide-top, .upk-skin-middle .swiper-slide.swiper-slide-active .upk-transition-slide-bottom {
  transform: translate(0);
  opacity: 1;
}

.upk-skin-middle .swiper-slide.swiper-slide-active .upk-overlay-gradient {
  opacity: 1;
}

.upk-text-on-always .upk-panel-slide-item [class*=upk-transition-slide] {
  opacity: 1;
  transform: translate(0, 0);
}

.upk-pagination-show-yes .upk-give-form-grid .give-page-numbers {
  display: block;
}

.upk-ep-advanced-image-gallery .upk-overlay {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: stretch;
  text-align: center;
  z-index: 1;
}

.upk-ep-advanced-image-gallery-item .upk-overlay-default {
  background: rgba(0, 0, 0, 0.4);
}

.upk-ep-custom-carousel-item .upk-overlay i {
  font-size: 24px;
}

.upk-ep-active-item--yes .swiper-slide.upk-transition-toggle.swiper-slide-active {
  opacity: 1 !important;
  transition: all 0.3s ease;
}

.upk-ep-active-item--yes .swiper-slide.upk-transition-toggle.swiper-slide-active > a > div::before, .upk-ep-active-item--yes .swiper-slide.upk-transition-toggle.swiper-slide-active > div::before {
  content: "";
  position: absolute;
  background: rgba(0, 0, 0, 0);
  block-size: 100%;
  inline-size: 100%;
  z-index: 0;
  inset: 0;
  transition: all 0.3s ease;
}

.upk-ep-fancy-card-climax .upk-checkbox.upk-position-bottom-left, .upk-ep-fancy-card-climax .upk-checkbox.upk-position-bottom-right {
  inset-block-start: unset;
}

.upk-ep-hover-box-skin-envelope .upk-ep-hover-box-description.upk-position-top .upk-ep-hover-box-icon-wrap, .upk-ep-hover-box-skin-envelope .upk-ep-hover-box-description.upk-position-bottom .upk-ep-hover-box-icon-wrap {
  inset-inline-end: -40px;
  inset-block-end: -40px;
}

.upk-ep-grid-filter {
  position: relative;
}

.upk-ep-grid-filter .upk-count, .upk-ep-grid-filter .upk-all-count {
  background: pink;
  border-radius: 500px;
  inline-size: 25px;
  line-height: 25px;
  color: #fff;
  position: absolute;
  font-size: 12px;
  inset-inline-start: -12px;
  inset-inline-end: -22px;
  text-align: center;
}

.upk-post-gallery .upk-overlay {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: stretch;
  text-align: center;
  background: rgba(0, 0, 0, 0.5);
}

.upk-post-gallery .upk-gallery-item-link.upk-link-icon {
  padding: 15px;
}

.upk-post-gallery .upk-gallery-item-link.upk-link-text {
  padding: 8px 20px;
}

.upk-post-gallery.upk-post-gallery-skin-trosia .upk-gallery-item.upk-transition-toggle .upk-gallery-item-title {
  color: #ffffff;
}

.upk-post-gallery.upk-post-gallery-skin-trosia .upk-gallery-item.upk-transition-toggle .upk-gallery-item-title:hover {
  color: #fff;
  opacity: 0.8;
}

.upk-post-gallery.upk-post-gallery-skin-trosia .upk-gallery-item.upk-transition-toggle .upk-gallery-item-tags {
  margin: 20px 0 0 20px;
}

.upk-scroll-image-container .upk-scroll-image-holder .upk-link-icon {
  transition: all 0.25s ease-out;
  display: flex;
  color: #666;
  position: relative;
}

.elementor-widget-upk-scroll-image.upk-link-icon-on-hover-yes .upk-scroll-image-holder .upk-scroll-image-lightbox-item {
  opacity: 0;
  transition: opacity 350ms cubic-bezier(0.24, 0.85, 0.58, 1);
}

.elementor-widget-upk-scroll-image.upk-link-icon-on-hover-yes .upk-scroll-image-holder:hover .upk-scroll-image-lightbox-item {
  opacity: 1;
}

.upk-single-post .upk-single-post-item .upk-overlay-primary {
  transition: all 0.25s ease-in-out;
  opacity: 0.5;
}

.upk-single-post .upk-single-post-item:hover .upk-overlay-primary {
  opacity: 1;
}

.upk-wc-carousel .upk-overlay-default {
  background: #fff;
}

.upk-wc-products.upk-wc-products-skin-table .upk-pagination > * {
  padding-inline-start: 10px;
}

.upk-remote-pagination .upk-pagination-wrapper {
  display: flex;
  gap: 8px;
}

/* ============ 3. Widget styles (ported) ============ */
.upk-post-gallery.upk-post-gallery-skin-fedara .upk-post-gallery-skin-fedara-desc {
  position: relative;
  background: #fff;
}

.upk-post-gallery.upk-post-gallery-skin-fedara .upk-gallery-item .upk-gallery-item-title {
  color: #707070;
}

.upk-post-gallery.upk-post-gallery-skin-fedara .upk-gallery-item .upk-gallery-item-title:hover {
  color: #444;
}

.upk-post-gallery.upk-post-gallery-skin-fedara .upk-post-gallery-skin-fedara-desc:after {
  content: "";
  position: absolute;
  inset-block-start: 0;
  block-size: 20px;
  inline-size: 20px;
  background: inherit;
  transform: translate(-50%, -50%) rotate(45deg);
}

.upk-post-gallery.upk-post-gallery-skin-fedara .upk-gallery-item-link {
  background-color: transparent;
  color: #c4c4c4;
  border-radius: 3px;
  border: 1px solid;
}

.upk-post-gallery-skin-fedara-style-right .upk-post-gallery-skin-fedara-desc:after {
  inset-inline-end: 8px;
}

.upk-post-gallery-skin-fedara-style-left .upk-post-gallery-skin-fedara-desc:after {
  inset-inline-start: 30px;
}

.upk-post-gallery-skin-fedara-style-center .upk-post-gallery-skin-fedara-desc:after {
  inset-inline-start: 50%;
}

.upk-post-gallery.upk-post-gallery-skin-abetis .upk-gallery-item-link {
  background-color: transparent;
  color: #ddd;
  border-radius: 500px;
  border: 1px solid;
}

.upk-post-gallery.upk-post-gallery-skin-abetis .upk-gallery-item-link:hover {
  border-color: #fff;
}

.upk-post-gallery .upk-post-gallery-inner {
  position: relative;
  border-radius: 10px;
  overflow: hidden;
  transform-style: preserve-3d;
}

.upk-post-gallery .upk-overlay {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: stretch;
  text-align: center;
  background: rgba(0, 0, 0, 0.5);
}

.upk-post-gallery .upk-gallery-item {
  transition-property: all;
  transition-timing-function: ease-in-out;
  margin: 0;
  text-align: center;
}

.upk-post-gallery .upk-gallery-item:hover {
  z-index: 5;
}

.upk-post-gallery .upk-gallery-item .upk-gallery-item-title {
  color: #d7d8df;
  text-transform: capitalize;
  transition: all 0.3s ease;
}
.upk-post-gallery .upk-gallery-item .upk-gallery-item-title a {
  color: inherit;
  text-decoration: none;
}

.upk-post-gallery .upk-gallery-item .upk-gallery-item-title:hover {
  color: #ffffff;
}

.upk-post-gallery-skin-trosia .upk-gallery-item-tag,
.upk-post-gallery-skin-default .upk-gallery-item-tag,
.upk-post-gallery-skin-trosia .upk-post-gallery-excerpt,
.upk-post-gallery-skin-default .upk-post-gallery-excerpt {
  color: #d7d8df;
}

.upk-post-gallery .upk-gallery-item .upk-gallery-content-inner {
  transform: translateZ(20px);
}

.upk-post-gallery .upk-gallery-item .upk-gallery-content-inner > *:not(:first-child) {
  margin-block-start: 20px;
}

.upk-post-gallery .upk-gallery-item .upk-gallery-item-tags {
  line-height: 1;
  margin-block-start: 5px;
}

.upk-post-gallery .upk-gallery-item .upk-gallery-item-tags .upk-gallery-item-tag {
  font-size: 13px;
}

.upk-post-gallery .upk-gallery-item .upk-gallery-item-tags span + span {
  margin-inline-start: 5px;
}

.upk-post-gallery .upk-gallery-item .upk-gallery-thumbnail {
  transform: translateZ(0);
  overflow: hidden;
}

.upk-post-gallery .upk-gallery-item .upk-gallery-thumbnail img {
  inline-size: 100%;
  object-fit: cover;
  vertical-align: bottom;
}

.upk-post-gallery.upk-post-gallery-skin-default .upk-gallery-item-link {
  background-color: #d7d8df;
  color: #444444;
  border-radius: 500px;
  font-size: 13px;
  transition: all 0.3s ease-in-out;
}

.upk-post-gallery.upk-post-gallery-skin-default .upk-gallery-item-link:hover {
  background: #ffffff;
}

.upk-post-gallery .upk-gallery-item-link {
  transition: all 0.25s ease-in-out;
  line-height: 1;
  box-sizing: border-box;
  vertical-align: middle;
  position: relative;
  display: inherit;
  inline-size: 100%;
  overflow: hidden;
}

.upk-post-gallery .upk-gallery-item-link.upk-link-icon {
  padding: 15px;
}

.upk-post-gallery .upk-gallery-item-link.upk-link-text {
  padding: 8px 20px;
}

.upk-post-gallery .upk-gallery-item-link span {
  font-size: 10px;
  font-weight: 700;
}

.upk-post-gallery .upk-gallery-item-link:not(:first-child) {
  margin-inline-start: 15px;
}

.upk-post-gallery-skin-trosia .upk-gallery-item-link {
  background-color: #d7d8df;
}

.upk-post-gallery.upk-post-gallery-skin-trosia .upk-gallery-item.upk-transition-toggle .upk-gallery-item-title {
  color: #ffffff;
}

.upk-post-gallery.upk-post-gallery-skin-trosia .upk-gallery-item.upk-transition-toggle .upk-gallery-item-title:hover {
  color: #fff;
  opacity: 0.8;
}

.upk-post-gallery.upk-post-gallery-skin-trosia .upk-gallery-item.upk-transition-toggle .upk-gallery-item-tags {
  margin: 20px 0 0 20px;
}

.upk-post-gallery-skin-trosia .upk-gallery-item-tags .upk-gallery-item-tag {
  background: #1e87f0;
  padding: 8px;
  color: #fff;
  box-sizing: border-box;
  display: inline-block;
  font-size: 10px;
  text-decoration: none;
  text-transform: uppercase;
  font-weight: 700;
}

.upk-post-gallery.upk-post-gallery-skin-trosia .upk-post-gallery-desc {
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.65) 70%);
  padding: 20px;
}

.upk-post-gallery.upk-post-gallery-skin-abetis .upk-gallery-item .upk-gallery-item-title {
  color: #444;
}

.upk-post-gallery.upk-post-gallery-skin-abetis .upk-gallery-item .upk-gallery-item-title:hover {
  color: #222;
}

@media (min-width: 1024px) {
  .filtr-container {
    transition: block-size 0.5s ease-out;
  }
}
/* ============ 4. Filter bar & dropdown (ported framework rules) ============ */
.upk-button {
  margin: 0;
  border: none;
  overflow: visible;
  font: inherit;
  color: inherit;
  text-transform: none;
  -webkit-appearance: none;
  border-radius: 0;
  display: inline-block;
  box-sizing: border-box;
  padding: 0 30px;
  vertical-align: middle;
  font-size: 16px;
  line-height: 40px;
  text-align: center;
  text-decoration: none;
  border-radius: 3px;
}

.upk-button:not(:disabled) {
  cursor: pointer;
}

.upk-button::-moz-focus-inner {
  border: 0;
  padding: 0;
}

.upk-button:hover {
  text-decoration: none;
}

.upk-button-default {
  background-color: #f8f8f8;
  color: #333;
}

.upk-button-default:hover {
  background-color: #ebebeb;
  color: #333;
}

.upk-button-default:active, .upk-button-default.upk-active {
  background-color: #dfdfdf;
  color: #333;
}

.upk-button-primary {
  background-color: #1e87f0;
  color: #fff;
}

.upk-button-primary:hover {
  background-color: #0f7ae5;
  color: #fff;
}

.upk-button-primary:active, .upk-button-primary.upk-active {
  background-color: #0e6dcd;
  color: #fff;
}

.upk-button-secondary {
  background-color: #222;
  color: #fff;
}

.upk-button-secondary:hover {
  background-color: #151515;
  color: #fff;
}

.upk-button-secondary:active, .upk-button-secondary.upk-active {
  background-color: #080808;
  color: #fff;
}

.upk-button-danger {
  background-color: #f0506e;
  color: #fff;
}

.upk-button-danger:hover {
  background-color: #ee395b;
  color: #fff;
}

.upk-button-danger:active, .upk-button-danger.upk-active {
  background-color: #ec2147;
  color: #fff;
}

.upk-button-default:disabled, .upk-button-primary:disabled, .upk-button-secondary:disabled, .upk-button-danger:disabled {
  background-color: #f8f8f8;
  color: #999;
}

.upk-button-small {
  padding: 0 15px;
  line-height: 30px;
  font-size: 0.875rem;
}

.upk-button-large {
  padding: 0 40px;
  line-height: 55px;
  font-size: 1.25rem;
}

.upk-button-text {
  padding: 0;
  line-height: 1.5;
  background: none;
  color: #333;
}

.upk-button-text:hover {
  color: #999;
}

.upk-button-text:disabled {
  color: #999;
}

.upk-button-link {
  padding: 0;
  line-height: 1.5;
  background: none;
  color: #333;
}

.upk-button-link:hover {
  color: #999;
  text-decoration: none;
}

.upk-button-link:disabled {
  color: #999;
  text-decoration: none;
}

.upk-button-group {
  display: inline-flex;
  vertical-align: middle;
  position: relative;
}

.upk-drop {
  display: none;
  position: absolute;
  z-index: 1020;
  --upk-position-offset:20px;
  --upk-position-viewport-offset:15px;
  box-sizing: border-box;
  width: 300px;
}

.upk-drop.upk-open {
  display: block;
}

.upk-drop-stack .upk-drop-grid > * {
  width: 100% !important;
}

.upk-drop-parent-icon {
  margin-left: 0.25em;
  transition: transform 0.3s ease-out;
}

.upk-nav, .upk-nav ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

.upk-nav li > a {
  display: flex;
  align-items: center;
  column-gap: 0.25em;
  text-decoration: none;
}

.upk-nav > li > a {
  padding: 5px 0;
}

.upk-nav-sub ul {
  padding-left: 15px;
}

.upk-nav-sub a {
  padding: 2px 0;
}

.upk-nav-parent-icon {
  margin-left: auto;
  transition: transform 0.3s ease-out;
}

.upk-nav > li.upk-open > a .upk-nav-parent-icon {
  transform: rotateX(180deg);
}

.upk-nav-header {
  padding: 5px 0;
  text-transform: uppercase;
  font-size: 0.875rem;
}

.upk-nav-header:not(:first-child) {
  margin-top: 20px;
}

.upk-nav .upk-nav-divider {
  margin: 5px 0;
}

.upk-nav-default {
  font-size: 16px;
  line-height: 1.5;
}

.upk-nav-default > li > a {
  color: #999;
}

.upk-nav-default > li > a:hover {
  color: #666;
}

.upk-nav-default > li.upk-active > a {
  color: #333;
}

.upk-nav-default .upk-nav-subtitle {
  font-size: 0.875rem;
}

.upk-nav-default .upk-nav-header {
  color: #333;
}

.upk-nav-default .upk-nav-divider {
  border-top: 1px solid rgba(214, 214, 214, 0.49);
}

.upk-nav-default .upk-nav-sub {
  font-size: 16px;
  line-height: 1.5;
}

.upk-nav-default .upk-nav-sub a {
  color: #999;
}

.upk-nav-default .upk-nav-sub a:hover {
  color: #666;
}

.upk-nav-default .upk-nav-sub li.upk-active > a {
  color: #333;
}

.upk-nav-primary {
  font-size: 1.5rem;
  line-height: 1.5;
}

.upk-nav-primary > li > a {
  color: #999;
}

.upk-nav-primary > li > a:hover {
  color: #666;
}

.upk-nav-primary > li.upk-active > a {
  color: #333;
}

.upk-nav-primary .upk-nav-subtitle {
  font-size: 1.25rem;
}

.upk-nav-primary .upk-nav-header {
  color: #333;
}

.upk-nav-primary .upk-nav-divider {
  border-top: 1px solid rgba(214, 214, 214, 0.49);
}

.upk-nav-primary .upk-nav-sub {
  font-size: 1.25rem;
  line-height: 1.5;
}

.upk-nav-primary .upk-nav-sub a {
  color: #999;
}

.upk-nav-primary .upk-nav-sub a:hover {
  color: #666;
}

.upk-nav-primary .upk-nav-sub li.upk-active > a {
  color: #333;
}

.upk-nav-secondary {
  font-size: 16px;
  line-height: 1.5;
}

.upk-nav-secondary > li > a {
  color: #333;
}

.upk-nav-secondary > li > a:hover {
  color: #333;
}

.upk-nav-secondary > li.upk-active > a {
  color: #333;
}

.upk-nav-secondary .upk-nav-subtitle {
  font-size: 0.875rem;
  color: #999;
}

.upk-nav-secondary > li > a:hover .upk-nav-subtitle {
  color: #666;
}

.upk-nav-secondary > li.upk-active > a .upk-nav-subtitle {
  color: #333;
}

.upk-nav-secondary .upk-nav-header {
  color: #333;
}

.upk-nav-secondary .upk-nav-divider {
  border-top: 1px solid rgba(214, 214, 214, 0.49);
}

.upk-nav-secondary .upk-nav-sub {
  font-size: 0.875rem;
  line-height: 1.5;
}

.upk-nav-secondary .upk-nav-sub a {
  color: #999;
}

.upk-nav-secondary .upk-nav-sub a:hover {
  color: #666;
}

.upk-nav-secondary .upk-nav-sub li.upk-active > a {
  color: #333;
}

.upk-nav-medium {
  font-size: 2.8875rem;
  line-height: 1;
}

.upk-nav-large {
  font-size: 3.4rem;
  line-height: 1;
}

.upk-nav-xlarge {
  font-size: 4rem;
  line-height: 1;
}

.upk-nav-center {
  text-align: center;
}

.upk-nav-center li > a {
  justify-content: center;
}

.upk-nav-center .upk-nav-sub, .upk-nav-center .upk-nav-sub ul {
  padding-left: 0;
}

.upk-nav-center .upk-nav-parent-icon {
  margin-left: 0.25em;
}

.upk-nav.upk-nav-divider > :not(.upk-nav-header, .upk-nav-divider) + :not(.upk-nav-header, .upk-nav-divider) {
  margin-top: 5px;
  padding-top: 5px;
  border-top: 1px solid rgba(214, 214, 214, 0.49);
}

.upk-dropdown {
  --upk-position-offset:10px;
  --upk-position-viewport-offset:15px;
  --upk-inverse:dark;
  width: auto;
  min-width: 200px;
  padding: 15px;
  background: #f8f8f8;
  color: #666;
}

.upk-dropdown > :last-child {
  margin-bottom: 0;
}

.upk-dropdown :focus-visible {
  outline-color: #333 !important;
}

.upk-dropdown-large {
  padding: 40px;
}

.upk-dropdown-dropbar {
  width: auto;
  background: transparent;
  padding: 15px 0 15px 0;
  --upk-position-viewport-offset:15px;
}

.upk-dropdown-dropbar-large {
  padding-top: 40px;
  padding-bottom: 40px;
}

.upk-dropdown-nav > li > a {
  color: #999;
}

.upk-dropdown-nav > li > a:hover, .upk-dropdown-nav > li.upk-active > a {
  color: #666;
}

.upk-dropdown-nav .upk-nav-subtitle {
  font-size: 0.875rem;
}

.upk-dropdown-nav .upk-nav-header {
  color: #333;
}

.upk-dropdown-nav .upk-nav-divider {
  border-top: 1px solid rgba(214, 214, 214, 0.49);
}

.upk-dropdown-nav .upk-nav-sub a {
  color: #999;
}

.upk-dropdown-nav .upk-nav-sub a:hover, .upk-dropdown-nav .upk-nav-sub li.upk-active > a {
  color: #666;
}

.upk-drop .upk-card p:empty {
  display: none;
}

.upk-drop .upk-card p:not(:first-child) {
  margin-top: 15px;
  margin-bottom: 0;
}

.upk-ep-grid-filter {
  position: relative;
}

.upk-ep-grid-filter .upk-count, .upk-ep-grid-filter .upk-all-count {
  background: pink;
  border-radius: 500px;
  inline-size: 25px;
  line-height: 25px;
  color: #fff;
  position: absolute;
  font-size: 12px;
  inset-inline-start: -12px;
  inset-inline-end: -22px;
  text-align: center;
}

.upk-post-list-header .upk-filter-list .upk-option {
  text-decoration: none;
  text-transform: capitalize;
  font-size: clamp(13px, 1.2vw, 14px);
  color: #2b2d42;
  font-weight: 600;
  transition: all 0.3s ease;
  display: inline-block;
}

.upk-post-list-header .upk-filter-list .upk-option:hover {
  color: #1e87f0;
}

.upk-post-list-header .upk-filter-list.upk-active .upk-option {
  color: #1e87f0;
}

/* The dropdown is opened by the widget's own script (no framework JS here) */
.upk-post-gallery-wrapper .upk-drop,
.upk-post-gallery-wrapper .upk-dropdown {
  display: none;
}

.upk-post-gallery-wrapper .upk-drop.upk-open,
.upk-post-gallery-wrapper .upk-dropdown.upk-open {
  display: block;
  position: absolute;
  z-index: 990;
  min-inline-size: 200px;
  padding: 15px;
  background: #f8f8f8;
  box-shadow: 0 5px 12px rgba(0, 0, 0, 0.15);
}

/* Desktop filter list sits on one row */
.upk-post-gallery-wrapper .upk-ep-grid-filters {
  margin: 0;
  padding: 0;
  list-style: none;
}

.upk-post-gallery-wrapper .upk-dropdown-nav {
  margin: 0;
  padding: 0;
  list-style: none;
}

.upk-post-gallery-wrapper .upk-option {
  cursor: pointer;
  text-decoration: none;
}

/* ============ 5. Filter bar look (ported) ============ */
.upk-ep-grid-filters-wrapper {
  margin-block-end: 30px;
}

.upk-ep-grid-filters-wrapper ul li {
  cursor: pointer;
  -webkit-transition: all 0.25s ease-in-out;
  transition: all 0.25s ease-in-out;
}

.upk-ep-grid-filters-wrapper .upk-ep-grid-filters {
  padding: 0;
  margin: 0;
}

.upk-ep-grid-filters-wrapper .upk-ep-grid-filters .upk-ep-grid-filter {
  display: inline-block;
  font-weight: 700;
  border-block-end: 2px solid transparent;
}

.upk-ep-grid-filters-wrapper .upk-ep-grid-filters .upk-ep-grid-filter.upk-active {
  border-block-end-color: #444;
}

.upk-ep-grid-filters-wrapper .upk-ep-grid-filters .upk-ep-grid-filter:not(:first-child) {
  margin-inline-start: 15px;
}

.upk-ep-grid-filters-wrapper .upk-ep-grid-filters .upk-ep-grid-filter:not(:last-child) {
  margin-inline-end: 15px;
}

.upk-ep-grid-filters-wrapper .upk-ep-grid-filters .upk-ep-grid-filter .upk-dropdown ul li.upk-ep-grid-filter {
  margin: 0;
}

.upk-ep-grid-filter a {
  color: #798184;
}

/* Element Pack leans on the framework's grid script to add a 10px top margin to
   every filter that wraps onto a new row. Without that script the rows collapse
   together, so the same gap is produced here with a pulled-up list instead. */
.upk-post-gallery-wrapper .upk-ep-grid-filters-wrapper {
  display: flow-root;
}

.upk-post-gallery-wrapper .upk-ep-grid-filters {
  margin-block-start: -10px;
}

.upk-post-gallery-wrapper .upk-ep-grid-filters > .upk-ep-grid-filter {
  margin-block-start: 10px;
}

.upk-post-gallery-wrapper .upk-ep-grid-filters .upk-dropdown ul li.upk-ep-grid-filter {
  margin-block-start: 0;
}