
/* alpus-aprs-frontend */
.alpus-aprs-wrapper{position:relative;margin-bottom:20px;padding:2em;border-radius:3px}@media (max-width:1024px){.alpus-aprs-wrapper{padding:1.5em}.alpus-aprs-wrapper .alpus-aprs-content{font-size:max(0.9em,14px)}}@media (max-width:576px){.alpus-aprs-wrapper{padding:1.2em}.alpus-aprs-wrapper .alpus-aprs-content{font-size:max(0.8em,13px)}}.alpus-aprs-wrapper.loading .alpus-aprs-content{display:none}.alpus-aprs-wrapper.hide{display:none}.alpus-aprs-wrapper .alpus-aprs-title{margin-bottom:1em;font-weight:500}.alpus-aprs-wrapper .alpus-aprs-content{width:100%}.alpus-aprs-wrapper .alpus-aprs-content span{display:block}.alpus-aprs-wrapper .loading-overlay{position:relative;width:100%;height:10px;background-color:#e1e1e1;overflow:hidden;z-index:1}.alpus-aprs-wrapper .loader{position:absolute;width:20%;height:100%;background-color:#3498db;animation:alpus_spin 2s linear infinite}@keyframes alpus_spin{0%{left:-20%}to{left:100%}}.alpus-aprs-wrapper .alpus-aprs-error-msg{display:none;padding:10px;font-size:12px;background-color:#a94442;color:#fff;border-radius:3px}.alpus-aprs-wrapper .alpus-aprs-error-msg.show{display:block}.alpus-aprs-wrapper .alpus-aprs-cons-label,.alpus-aprs-wrapper .alpus-aprs-pros-label,.alpus-aprs-wrapper .alpus-aprs-summary-label{font-weight:500;font-size:14px;color:#222529}.alpus-aprs-wrapper .alpus-aprs-sp-tags{display:flex;align-items:center;flex-wrap:wrap;margin:10px 0;padding-left:0}.alpus-aprs-wrapper .alpus-aprs-sp-tags .alpus-aprs-sp-tag{display:flex;align-items:center;margin-right:10px;margin-bottom:10px;padding:6px 8px;border-radius:3px;background-color:#caeed4;color:#222529;font-weight:600}.alpus-aprs-wrapper .alpus-aprs-sp-tags .alpus-aprs-sp-tag:before{content:"";display:block;width:16px;height:16px;margin-right:5px;background:url("/wp-content/plugins/alpus-aprs/assets/images/check.png");background-repeat:no-repeat;background-size:cover}.alpus-aprs-shop-filters-wrapper{display:flex;align-items:flex-start;margin-bottom:30px}.alpus-aprs-shop-filters-wrapper .alpus-aprs-shop-filters{flex:1}.alpus-aprs-shop-filters-wrapper .alpus-aprs-shop-filters-clear{margin-top:10px;line-height:1;color:#000;text-decoration:underline}.alpus-aprs-shop-filters{display:flex;align-items:center;flex-wrap:wrap;margin:0;padding:0;list-style:none}.alpus-aprs-shop-filters .alpus-aprs-shop-filter{display:flex;align-items:center;margin-right:15px;margin-bottom:15px;padding:6px 10px;border-radius:3px;background-color:#f2f3f5;color:#222529;font-weight:600;cursor:pointer;transition:background-color 0.3s}.alpus-aprs-shop-filters .alpus-aprs-shop-filter.active,.alpus-aprs-shop-filters .alpus-aprs-shop-filter:hover{background-color:#caeed4}.alpus-aprs-shop-filters .alpus-aprs-shop-filter>a{color:inherit;text-decoration:none}.alpus-aprs-shop-filters .alpus-aprs-shop-filter.active{background-color:#caeed4}.alpus-aprs-shop-filters .alpus-aprs-shop-filter.active:before{content:"";display:block;width:16px;height:16px;margin-right:5px;background:url("/wp-content/plugins/alpus-aprs/assets/images/check.png");background-repeat:no-repeat;background-size:cover}.woocommerce-product-rating{cursor:pointer}.alpus-aprs-review-wrapper{position:relative;z-index:10}.alpus-aprs-review-wrapper .alpus-aprs-summary-result{margin-top:7px;padding:10px;color:#fff}.alpus-aprs-review-wrapper .alpus-aprs-summary-result:before{content:"";position:absolute;display:block;left:50%;top:-7px;transform:translateX(-50%);border-bottom:7px solid rgba(34,37,41,0.8666666667);border-left:7px solid transparent;border-right:7px solid transparent}.alpus-aprs-review-wrapper .alpus-aprs-summary-result:after{content:"";display:block;position:absolute;top:-7px;left:0;width:100%;height:7px;background-color:transparent}.alpus-aprs-review-wrapper .alpus-aprs-product-tags{display:flex;align-items:center;justify-content:flex-start;flex-wrap:wrap}.alpus-aprs-review-wrapper .alpus-aprs-product-tags .alpus-aprs-product-tag{display:inline-flex;align-items:center;margin-right:5px;margin-bottom:5px;padding:4px 6px;border-radius:3px;background-color:#caeed4;color:#008164;font-weight:600;font-size:10px}.alpus-aprs-review-wrapper .alpus-aprs-product-summary-wrapper{text-align:left}.alpus-aprs-review-wrapper .alpus-aprs-product-summary-wrapper h6,.alpus-aprs-review-wrapper .alpus-aprs-product-summary-wrapper p{font-size:11px;color:#fff}.alpus-aprs-review-wrapper .alpus-aprs-product-summary-wrapper h6{font-size:12px;margin:5px 0}.alpus-aprs-review-wrapper .alpus-aprs-product-summary-wrapper p{margin-bottom:0}.alpus-aprs-summary-result{position:absolute;opacity:0;top:-99999px;left:50%;transform:translateX(-50%);width:90%;transition:opacity 0.3s;z-index:999;border-radius:3px;background-color:rgba(34,37,41,0.8666666667)}.alpus-aprs-summary-result .alpus-aprs-scroll-wrapper{overflow-y:auto;max-height:200px}.alpus-aprs-summary-result .alpus-aprs-scroll-wrapper::-webkit-scrollbar{width:5px;border-radius:3px}.alpus-aprs-summary-result .alpus-aprs-scroll-wrapper::-webkit-scrollbar-track{background:transparent}.alpus-aprs-summary-result .alpus-aprs-scroll-wrapper::-webkit-scrollbar-thumb{background:#666}.alpus-aprs-summary-result .alpus-aprs-scroll-wrapper::-webkit-scrollbar-thumb:hover{background:#555}.alpus-aprs-review-wrapper:hover .alpus-aprs-summary-result{opacity:1;top:100%}

/* c63-mobile-layout */
/* Both photos share one stable frame, including while the theme fades on hover. */
.elementor-143 .elementor-element-9e242c5 {
  animation: none !important;
  transform: none !important;
  visibility: visible !important;
  opacity: 1 !important;
}
ul.products li.product .product-image .inner {
  position: relative;
  width: 100%;
  aspect-ratio: 2 / 3;
  overflow: hidden;
  background: #f3f3f3;
}
ul.products li.product .product-image .inner > img {
  position: absolute !important;
  inset: 0;
  margin: 0 !important;
  width: 100% !important;
  height: 100% !important;
  aspect-ratio: auto;
  object-fit: cover !important;
  object-position: center;
  display: block;
}
/* Model photos have empty studio space at the sides; crop that space, not the print. */
ul.products li.product_cat-t-shirts .product-image .inner > img,
ul.products li.product_cat-t-shirts-womens .product-image .inner > img {
  object-fit: cover !important;
}
/* Use a close front view on hover, matching the model frame without shrinking. */
ul.products li.product_cat-t-shirts .product-image .inner > img.hover-image,
ul.products li.product_cat-t-shirts-womens .product-image .inner > img.hover-image {
  object-fit: cover !important;
}
ul.products li.product .product-image:hover .inner > .hover-image {
  transform: none;
}
/* New gift and non-tee cards use one branded preview; gently enlarge that same
   image on desktop hover instead of swapping to a plain supplier photograph. */
@media (hover: hover) and (pointer: fine) {
  ul.products li.product:not(.product_cat-t-shirts):not(.product_cat-t-shirts-womens) .product-image .inner > img:not(.hover-image) {
    transition: transform 240ms ease;
  }
  ul.products li.product:not(.product_cat-t-shirts):not(.product_cat-t-shirts-womens) .product-image:hover .inner > img:not(.hover-image) {
    transform: scale(1.045);
  }
}
@media (max-width: 767px) {
  /* Porto's desktop masonry heights crop the full-width mobile banners. */
  .elementor-143 .elementor-element-c100ba6 > .elementor-container {
    display: flex !important;
    flex-direction: column;
    flex-wrap: nowrap !important;
    height: auto !important;
  }
  .elementor-143 .elementor-element-c100ba6 > .elementor-container > .porto-grid-item {
    position: relative !important;
    transform: none !important;
    animation: none !important;
    visibility: visible !important;
    opacity: 1 !important;
    inset: auto !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    margin-bottom: 10px;
  }
  .elementor-143 .elementor-element-c100ba6 .grid-col-sizer { display: none !important; }
  .elementor-143 .elementor-element-c100ba6 .porto-ibanner {
    height: auto !important;
    min-height: 280px;
  }
  .elementor-143 .elementor-element-c100ba6 .porto-ibanner-img {
    width: 100%;
    height: auto !important;
    min-height: 280px;
    object-fit: contain !important;
  }
  .elementor-143 .elementor-element-c100ba6 .porto-ibanner > .elementor-column {
    height: 100% !important;
  }
  .woocommerce div.product .woocommerce-product-gallery img {
    object-fit: contain;
  }
}
@media (max-width: 767px) {
  /* Keep both models in the panoramic shop banner, above the mobile text. */
  .shop7_category_banner {
    background-size: auto 200px !important;
    background-position: 70% top !important;
    background-repeat: no-repeat !important;
    padding: 220px 0 24px !important;
  }
  .shop7_category_banner .container,
  .shop7_category_banner .porto-u-heading { text-align: center !important; }
  .shop7_category_banner .porto-u-main-heading h3 { font-size: 1.75em !important; }
  .shop7_category_banner .porto-u-sub-heading { font-size: 3.5em !important; }
}

