.elementor-6905 .elementor-element.elementor-element-5c5978d{margin:020px 0px calc(var(--kit-widget-spacing, 0px) + -20px) 0px;}.elementor-6905 .elementor-element.elementor-element-da36ad8{--display:flex;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-6905 .elementor-element.elementor-element-682cfd1{text-align:center;}.elementor-6905 .elementor-element.elementor-element-682cfd1 .elementor-heading-title{font-family:"Roboto", Sans-serif;font-size:24px;font-weight:700;text-transform:uppercase;color:#444444;}.elementor-6905 .elementor-element.elementor-element-8f6d8d8 .ftc-tab-products .product{margin-bottom:20px;}.elementor-6905 .elementor-element.elementor-element-8f6d8d8 .tab-title, .elementor-6905 .elementor-element.elementor-element-8f6d8d8 .tab-title:before, .elementor-6905 .elementor-element.elementor-element-8f6d8d8 .tab-title:after, .elementor-6905 .elementor-element.elementor-element-8f6d8d8 .tab-content, .elementor-6905 .elementor-element.elementor-element-8f6d8d8 .tabs-content-wrapper, .elementor-6905 .elementor-element.elementor-element-8f6d8d8 .tabs-content-wrapper:before{border-width:0px;}.elementor-6905 .elementor-element.elementor-element-8f6d8d8 .tab-title.active, .elementor-6905 .elementor-element.elementor-element-8f6d8d8 .tab-title:before, .elementor-6905 .elementor-element.elementor-element-8f6d8d8 .tab-title:after, .elementor-6905 .elementor-element.elementor-element-8f6d8d8 .tab-content, .elementor-6905 .elementor-element.elementor-element-8f6d8d8 .tabs-content-wrapper, .elementor-6905 .elementor-element.elementor-element-8f6d8d8 .tabs-content-wrapper:before{border-color:#999999;}.elementor-6905 .elementor-element.elementor-element-8f6d8d8 .tabs-wrapper .tab-title{border:0px solid;}.elementor-6905 .elementor-element.elementor-element-8f6d8d8 .tab-title{color:#000000;font-family:"DM Sans", Sans-serif;font-size:15px;font-weight:400;text-transform:uppercase;}.elementor-6905 .elementor-element.elementor-element-4115712{text-align:center;}.elementor-6905 .elementor-element.elementor-element-4115712 .elementor-heading-title{font-size:55px;font-weight:800;color:#FFFFFF;}.elementor-6905 .elementor-element.elementor-element-ac6b4e3{margin-top:0px;margin-bottom:0px;}.elementor-6905 .elementor-element.elementor-element-fdcc223{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--align-items:stretch;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--margin-top:047px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-6905 .elementor-element.elementor-element-58b5a0a{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-6905 .elementor-element.elementor-element-92901bf .ftc-image-content {top:50px;}.elementor-6905 .elementor-element.elementor-element-92901bf .ftc-element-image .ftc-image-content {border-width:0px;}.elementor-6905 .elementor-element.elementor-element-92901bf .ftc-element-image .ftc-image-content{border-color:#fff;border-style:solid;}.elementor-6905 .elementor-element.elementor-element-92901bf .elementor-image img{filter:brightness( 100% ) contrast( 100% ) saturate( 100% ) blur( 0px ) hue-rotate( 0deg );box-shadow:0px 0px 0px 0px rgba(0,0,0,0.5);}.elementor-6905 .elementor-element.elementor-element-c4a5722{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-6905 .elementor-element.elementor-element-3cb823a{margin-top:20px;margin-bottom:20px;}.elementor-6905 .elementor-element.elementor-element-e28da19{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-6905 .elementor-element.elementor-element-7533a9f .ftc-image-content {top:50px;}.elementor-6905 .elementor-element.elementor-element-7533a9f .ftc-element-image .ftc-image-content {border-width:0px;}.elementor-6905 .elementor-element.elementor-element-7533a9f .ftc-element-image .ftc-image-content{border-color:#fff;border-style:solid;}.elementor-6905 .elementor-element.elementor-element-7533a9f .elementor-image img{filter:brightness( 100% ) contrast( 100% ) saturate( 100% ) blur( 0px ) hue-rotate( 0deg );box-shadow:0px 0px 0px 0px rgba(0,0,0,0.5);}.elementor-6905 .elementor-element.elementor-element-f92351d{--spacer-size:20px;}.elementor-6905 .elementor-element.elementor-element-fa579b8{--spacer-size:50px;}.elementor-6905 .elementor-element.elementor-element-c68f4fb{--display:flex;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}@media(max-width:767px){.elementor-6905 .elementor-element.elementor-element-3cb823a{margin-top:0px;margin-bottom:30px;}}@media(min-width:768px){.elementor-6905 .elementor-element.elementor-element-58b5a0a{--width:50%;}.elementor-6905 .elementor-element.elementor-element-c4a5722{--width:50%;}.elementor-6905 .elementor-element.elementor-element-7be1b82{width:50%;}.elementor-6905 .elementor-element.elementor-element-2f64939{width:50%;}.elementor-6905 .elementor-element.elementor-element-e28da19{--width:50%;}}@media(max-width:1024px) and (min-width:768px){.elementor-6905 .elementor-element.elementor-element-58b5a0a{--width:50%;}.elementor-6905 .elementor-element.elementor-element-c4a5722{--width:50%;}.elementor-6905 .elementor-element.elementor-element-7be1b82{width:50%;}.elementor-6905 .elementor-element.elementor-element-2f64939{width:50%;}.elementor-6905 .elementor-element.elementor-element-e28da19{--width:50%;}}/* Start custom CSS for ftc-products-sliders, class: .elementor-element-b1f72f4 *//* =========================================================
   GIFTPORIA
   FTC PRODUCT SLIDER — CLEAN PREMIUM ECOMMERCE GRID
   =========================================================

   DESIGN PRINCIPLES
   -----------------
   • Equal product columns
   • Natural image proportions
   • No image stretching
   • No visible product-card borders
   • Generous breathing room
   • Same typography for product name + price
   • Native theme lazy-loading retained
   • No competing skeleton animation
   • Subtle desktop hover only
   • Mobile-first presentation

   ========================================================= */


/* =========================================================
   1. PRODUCT CARD
   ========================================================= */

.ftc_products_slider .ftc-product {

    width: 100% !important;

    height: 100% !important;

    margin: 0 !important;

    /*
     * Creates breathing room between neighbouring products
     * without changing Swiper's calculated slide width.
     */
    padding: 0 10px !important;

    box-sizing: border-box !important;

    display: flex !important;

    flex-direction: column !important;

    align-items: center !important;

    background: transparent !important;

    border: none !important;

    border-radius: 0 !important;

    box-shadow: none !important;

    text-align: center !important;
}


/* =========================================================
   2. PRODUCT IMAGE STAGE
   =========================================================
   
   The stage is equal.
   
   The IMAGE itself is NOT forced to fill the stage.
   ========================================================= */

.ftc_products_slider .ftc-product .images {

    position: relative !important;

    width: 100% !important;

    /*
     * Keeps every product's image area aligned.
     */
    aspect-ratio: 1 / 1 !important;

    height: auto !important;

    margin: 0 0 13px !important;

    padding: 0 !important;

    overflow: hidden !important;

    background: transparent !important;

    box-sizing: border-box !important;
}


/* =========================================================
   3. PRODUCT IMAGE LINK
   ========================================================= */

.ftc_products_slider .ftc-product .images > a {

    position: absolute !important;

    inset: 0 !important;

    width: 100% !important;

    height: 100% !important;

    display: flex !important;

    align-items: center !important;

    justify-content: center !important;

    margin: 0 !important;

    padding: 0 !important;

    background: transparent !important;

    overflow: hidden !important;
}


/* =========================================================
   4. IMAGE LAYERS
   ========================================================= */

.ftc_products_slider .ftc-product .cover_image,
.ftc_products_slider .ftc-product .hover_image {

    position: absolute !important;

    inset: 0 !important;

    width: 100% !important;

    height: 100% !important;

    display: flex !important;

    align-items: center !important;

    justify-content: center !important;

    overflow: hidden !important;
}


/* =========================================================
   5. ACTUAL PRODUCT IMAGE
   =========================================================
   
   IMPORTANT:
   
   We are NOT using:
   
       width: 100%;
       height: 100%;
   
   on the actual image.
   
   That was causing the visual stretching/filling effect.
   ========================================================= */

.ftc_products_slider .ftc-product .images img {

    display: block !important;

    /*
     * Preserve the original image proportions.
     */
    width: auto !important;

    height: auto !important;

    /*
     * Never allow the image to escape the image stage.
     */
    max-width: 100% !important;

    max-height: 100% !important;

    /*
     * Keep the actual product completely intact.
     */
    object-fit: contain !important;

    object-position: center center !important;

    margin: 0 auto !important;

    padding: 0 !important;

    border: none !important;

    border-radius: 0 !important;

    box-shadow: none !important;

    transform: none !important;
}


/* =========================================================
   6. COVER IMAGE
   ========================================================= */

.ftc_products_slider .ftc-product .cover_image {

    opacity: 1 !important;

    z-index: 1 !important;

    visibility: visible !important;
}


/* =========================================================
   7. HOVER IMAGE
   =========================================================
   
   Desktop only.
   
   It simply fades between product views.
   No zoom.
   No scale.
   No competing animation.
   ========================================================= */

.ftc_products_slider .ftc-product .hover_image {

    opacity: 0 !important;

    visibility: hidden !important;

    z-index: 2 !important;

    transition:
        opacity 180ms ease,
        visibility 180ms ease !important;
}


/* =========================================================
   8. DESKTOP HOVER
   ========================================================= */

@media (hover: hover) and (pointer: fine) {

    .ftc_products_slider .ftc-product:hover
    .hover_image {

        opacity: 1 !important;

        visibility: visible !important;
    }

}


/* =========================================================
   9. CRITICAL:
      DON'T SHOW HOVER EFFECT WHILE IMAGE IS LOADING
   =========================================================
   
   This prevents the native/theme loading state from fighting
   with the product hover image.
   ========================================================= */

.ftc_products_slider .ftc-product
.images.lazy-loading
.hover_image {

    opacity: 0 !important;

    visibility: hidden !important;

    transition: none !important;
}


/* =========================================================
   10. NO HOVER EFFECT ON MOBILE
   =========================================================
   
   Touch screens don't have true hover.
   ========================================================= */

@media (hover: none) {

    .ftc_products_slider .ftc-product
    .hover_image {

        display: none !important;

        opacity: 0 !important;

        visibility: hidden !important;
    }

}


/* =========================================================
   11. PRODUCT INFORMATION
   ========================================================= */

.ftc_products_slider .ftc-product
.item-description {

    width: 100% !important;

    margin: 0 !important;

    padding: 0 !important;

    display: flex !important;

    flex-direction: column !important;

    align-items: center !important;

    justify-content: flex-start !important;

    text-align: center !important;

    flex: 1 1 auto !important;

    box-sizing: border-box !important;
}


/* =========================================================
   12. PRODUCT NAME
   =========================================================
   
   SAME FONT FAMILY AS PRICE.
   
   Trebuchet MS is preferred.
   Helvetica Neue / Helvetica / Arial are fallbacks.
   ========================================================= */

.ftc_products_slider .ftc-product
.item-description
.product-name {

    width: 100% !important;

    /*
     * Enough room for two lines,
     * but considerably tighter than before.
     */
    min-height: 2.35em !important;

    height: 2.35em !important;

    margin: 0 !important;

    padding: 0 !important;

    display: flex !important;

    align-items: flex-start !important;

    justify-content: center !important;

    text-align: center !important;

    font-family:
        "Trebuchet MS",
        "Helvetica Neue",
        Helvetica,
        Arial,
        sans-serif !important;

    font-size: clamp(
        13px,
        1.25vw,
        16px
    ) !important;

    line-height: 1.18 !important;

    font-weight: 600 !important;

    letter-spacing: 0.01em !important;

    color: #444444 !important;

    text-transform: uppercase !important;

    overflow: hidden !important;

    box-sizing: border-box !important;
}


/* =========================================================
   13. PRODUCT NAME LINK
   ========================================================= */

.ftc_products_slider .ftc-product
.item-description
.product-name a {

    width: 100% !important;

    max-width: 100% !important;

    display: -webkit-box !important;

    overflow: hidden !important;

    text-overflow: ellipsis !important;

    -webkit-line-clamp: 2 !important;

    -webkit-box-orient: vertical !important;

    font-family:
        "Trebuchet MS",
        "Helvetica Neue",
        Helvetica,
        Arial,
        sans-serif !important;

    font-size: inherit !important;

    line-height: inherit !important;

    font-weight: inherit !important;

    letter-spacing: inherit !important;

    color: inherit !important;

    text-decoration: none !important;
}


/* =========================================================
   14. PRICE
   =========================================================
   
   SAME FONT FAMILY.
   
   Close to the product name.
   ========================================================= */

.ftc_products_slider .ftc-product
.item-description
> .price {

    width: 100% !important;

    min-height: 1.25em !important;

    height: auto !important;

    margin: 2px 0 0 !important;

    padding: 0 !important;

    display: flex !important;

    align-items: center !important;

    justify-content: center !important;

    text-align: center !important;

    font-family:
        "Trebuchet MS",
        "Helvetica Neue",
        Helvetica,
        Arial,
        sans-serif !important;

    font-size: clamp(
        14px,
        1.35vw,
        18px
    ) !important;

    line-height: 1.25 !important;

    font-weight: 700 !important;

    letter-spacing: 0.01em !important;

    color: #E74C3C !important;
}


/* =========================================================
   15. PRICE AMOUNT
   ========================================================= */

.ftc_products_slider .ftc-product
.item-description
.price .amount {

    display: inline-flex !important;

    align-items: center !important;

    justify-content: center !important;

    font-family:
        "Trebuchet MS",
        "Helvetica Neue",
        Helvetica,
        Arial,
        sans-serif !important;

    font-size: inherit !important;

    line-height: inherit !important;

    font-weight: inherit !important;

    color: inherit !important;
}


/* =========================================================
   16. SALE PRICE
   ========================================================= */

.ftc_products_slider .ftc-product
.item-description
.price ins {

    font-family:
        "Trebuchet MS",
        "Helvetica Neue",
        Helvetica,
        Arial,
        sans-serif !important;

    font-weight: 700 !important;

    text-decoration: none !important;

    color: #E74C3C !important;
}


/* =========================================================
   17. OLD / REGULAR PRICE
   ========================================================= */

.ftc_products_slider .ftc-product
.item-description
.price del {

    font-family:
        "Trebuchet MS",
        "Helvetica Neue",
        Helvetica,
        Arial,
        sans-serif !important;

    opacity: 0.55 !important;
}


/* =========================================================
   18. REMOVE EMPTY RATING SPACE
   ========================================================= */

.ftc_products_slider .ftc-product
.star-rating.no-rating {

    display: none !important;
}


/* =========================================================
   19. REMOVE UNNECESSARY META SPACE
   ========================================================= */

.ftc_products_slider .ftc-product
.item-description
.meta_info {

    display: none !important;
}


/* =========================================================
   20. PRODUCT ACTIONS
   =========================================================
   
   Don't let quick-view/add-to-cart animations interfere
   with the clean product presentation.
   ========================================================= */

.ftc_products_slider .ftc-product
.group-button-product {

    opacity: 0 !important;

    pointer-events: none !important;

    transition: opacity 180ms ease !important;
}


@media (hover: hover) and (pointer: fine) {

    .ftc_products_slider .ftc-product:hover
    .group-button-product {

        opacity: 1 !important;

        pointer-events: auto !important;
    }

}


/* =========================================================
   21. MOBILE PRODUCT SPACING
   ========================================================= */

@media (max-width: 767px) {

    .ftc_products_slider .ftc-product {

        padding-left: 7px !important;

        padding-right: 7px !important;
    }


    .ftc_products_slider .ftc-product
    .images {

        margin-bottom: 10px !important;
    }


    .ftc_products_slider .ftc-product
    .item-description
    .product-name {

        min-height: 2.3em !important;

        height: 2.3em !important;

        font-size: 14px !important;

        line-height: 1.16 !important;

        font-weight: 600 !important;
    }


    .ftc_products_slider .ftc-product
    .item-description
    > .price {

        margin-top: 1px !important;

        font-size: 16px !important;

        line-height: 1.25 !important;
    }

}


/* =========================================================
   22. SMALL PHONES
   ========================================================= */

@media (max-width: 380px) {

    .ftc_products_slider .ftc-product {

        padding-left: 5px !important;

        padding-right: 5px !important;
    }


    .ftc_products_slider .ftc-product
    .item-description
    .product-name {

        min-height: 2.25em !important;

        height: 2.25em !important;

        font-size: 13px !important;

        line-height: 1.15 !important;
    }


    .ftc_products_slider .ftc-product
    .item-description
    > .price {

        font-size: 15px !important;
    }

}


/* =========================================================
   23. TABLET
   ========================================================= */

@media (min-width: 768px) and (max-width: 1024px) {

    .ftc_products_slider .ftc-product {

        padding-left: 8px !important;

        padding-right: 8px !important;
    }


    .ftc_products_slider .ftc-product
    .item-description
    .product-name {

        font-size: 15px !important;

        line-height: 1.18 !important;
    }


    .ftc_products_slider .ftc-product
    .item-description
    > .price {

        font-size: 17px !important;
    }

}


/* =========================================================
   24. DESKTOP
   ========================================================= */

@media (min-width: 1025px) {

    .ftc_products_slider .ftc-product {

        padding-left: 10px !important;

        padding-right: 10px !important;
    }


    .ftc_products_slider .ftc-product
    .item-description
    .product-name {

        font-size: 16px !important;

        line-height: 1.2 !important;
    }


    .ftc_products_slider .ftc-product
    .item-description
    > .price {

        font-size: 18px !important;
    }

}


/* =========================================================
   25. LARGE DESKTOP
   ========================================================= */

@media (min-width: 1400px) {

    .ftc_products_slider .ftc-product
    .item-description
    .product-name {

        font-size: 17px !important;
    }


    .ftc_products_slider .ftc-product
    .item-description
    > .price {

        font-size: 19px !important;
    }

}


/* =========================================================
   26. IMPORTANT:
       DO NOT CREATE ANOTHER LOADING ANIMATION
   =========================================================
   
   Your theme already has:
   
       .images.lazy-loading
   
   We intentionally DO NOT add a ::before skeleton here.
   
   This prevents:
   
       lazy animation
            +
       hover animation
            +
       image transition
   
   from competing visually.
   ========================================================= */


/* =========================================================
   27. SWIPER
   =========================================================
   
   Don't override Swiper's calculated slide widths.
   ========================================================= */

.ftc_products_slider .swiper-slide {

    box-sizing: border-box !important;
}


/* =========================================================
   28. ACCESSIBILITY
   ========================================================= */

.ftc_products_slider .ftc-product
a:focus-visible {

    outline: 2px solid #E74C3C !important;

    outline-offset: 3px !important;
}


/* =========================================================
   29. REDUCE MOTION
   ========================================================= */

@media (prefers-reduced-motion: reduce) {

    .ftc_products_slider .ftc-product
    .hover_image {

        transition: none !important;
    }

    .ftc_products_slider .ftc-product
    .group-button-product {

        transition: none !important;
    }

}

/* =========================================================
   GIFTPORIA: PRODUCT TYPOGRAPHY (final, fluid)
   Capitalize Each Word, quiet name, bold price
   ========================================================= */

.ftc_products_slider {
  /* Change the font once, here */
  --gp-font: system-ui, -apple-system, "Segoe UI", Roboto,
             "Helvetica Neue", Arial, "Noto Sans", sans-serif;

  /* Name: 14px on small phones up to 17px on large screens */
  --gp-name-size:  clamp(0.875rem, 0.8rem + 0.35vw, 1.0625rem);
  /* Price: 16px on small phones up to 20px on large screens */
  --gp-price-size: clamp(1rem, 0.92rem + 0.4vw, 1.25rem);
  --gp-name-lh: 1.35;
}

/* ---------- PRODUCT NAME ---------- */
.ftc_products_slider .ftc-product .item-description .product-name {
  display: block !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 2px !important;

  font-family: var(--gp-font) !important;
  font-size: var(--gp-name-size) !important;
  line-height: var(--gp-name-lh) !important;
  font-weight: 500 !important;
  letter-spacing: 0 !important;
  color: #2b2b2b !important;
  text-align: center !important;
  text-transform: capitalize !important;

  /* Always reserves exactly two lines, so prices align */
  height: calc(var(--gp-name-lh) * 2em) !important;
  min-height: 0 !important;
  overflow: hidden !important;

  text-wrap: balance;
  overflow-wrap: anywhere;
  hyphens: auto;
}

.ftc_products_slider .ftc-product .item-description .product-name a {
  display: block !important;
  width: 100% !important;
  max-height: calc(var(--gp-name-lh) * 2em) !important;
  overflow: hidden !important;

  font: inherit !important;
  letter-spacing: inherit !important;
  color: inherit !important;
  text-decoration: none !important;
  text-align: center !important;
  text-transform: capitalize !important;
  -webkit-line-clamp: unset !important;
}

.ftc_products_slider .ftc-product .item-description .product-name a::first-letter {
  text-transform: none !important;
}

@media (hover: hover) and (pointer: fine) {
  .ftc_products_slider .ftc-product .item-description .product-name a:hover {
    color: #E74C3C !important;
  }
}

/* ---------- PRICE ---------- */
.ftc_products_slider .ftc-product .item-description > .price {
  margin: 6px 0 0 !important;
  padding: 0 !important;
  display: flex !important;
  flex-wrap: wrap;
  align-items: baseline !important;
  justify-content: center !important;
  column-gap: 0.45em;

  font-family: var(--gp-font) !important;
  font-size: var(--gp-price-size) !important;
  line-height: 1.2 !important;
  font-weight: 700 !important;
  letter-spacing: 0 !important;
  font-variant-numeric: tabular-nums lining-nums;
  color: #E74C3C !important;
}

.ftc_products_slider .ftc-product .item-description .price .amount,
.ftc_products_slider .ftc-product .item-description .price ins {
  font: inherit !important;
  color: inherit !important;
  text-decoration: none !important;
}

/* Old price when on sale: smaller, grey, struck through */
.ftc_products_slider .ftc-product .item-description .price del {
  font-family: var(--gp-font) !important;
  font-size: 0.8em !important;
  font-weight: 400 !important;
  color: #8a8a8a !important;
  opacity: 1 !important;
}

/* Currency symbol slightly lighter so the number leads */
.ftc_products_slider .ftc-product .price .woocommerce-Price-currencySymbol {
  font-weight: 400;
  margin-right: 0.04em;
}

/* Small phones: tighten the name a little */
@media (max-width: 380px) {
  .ftc_products_slider { --gp-name-lh: 1.3; }
}
/* =========================================================
   END GIFTPORIA PRODUCT SYSTEM
   ========================================================= *//* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-da36ad8 *//* =========================================================
   GIFTPORIA: ABOUT SECTION, TWO EQUAL COLUMNS
   Outer da36ad8 | Row 7b73447 | Text col d879ea5
   Paragraph a157b96 | Button a20c483 | Image col f13aea9
   ========================================================= */

/* ---------- Outer boxed container: let the row go wide ---------- */
[data-id="da36ad8"] {
  padding: 0 !important;
}
[data-id="da36ad8"] > .e-con-inner {
  width: 100% !important;
  max-width: 1400px !important;
  margin: 0 auto !important;
  padding: 0 !important;
}

/* ---------- Row: two equal columns ---------- */
[data-id="7b73447"] {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  align-items: stretch !important;
  gap: 0 !important;
  width: 100% !important;
  padding: 0 !important;
  overflow: hidden;
}

/* ---------- Text column ---------- */
[data-id="d879ea5"] {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 28px !important;
  width: 100% !important;
  min-width: 0;
  padding: clamp(40px, 6vw, 90px) clamp(20px, 5vw, 70px) !important;
  background: #fafafa !important;
  text-align: center !important;
  box-sizing: border-box !important;
}

/* Readable width for everything inside */
[data-id="d879ea5"] > * {
  max-width: 480px;
  width: 100%;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* ---------- Heading (the widget you add) ---------- */
[data-id="d879ea5"] > h1,
[data-id="d879ea5"] > h2,
[data-id="d879ea5"] > h3,
[data-id="d879ea5"] > h4,
[data-id="d879ea5"] .e-heading-base {
  margin: 0 !important;
  font-size: clamp(1.25rem, 1.1rem + 0.7vw, 1.75rem) !important;
  font-weight: 600 !important;
  letter-spacing: 0.18em !important;
  text-transform: uppercase !important;
  line-height: 1.2 !important;
  color: #2f2f2f !important;
  text-align: center !important;
}

/* Short red accent line under the heading */
[data-id="d879ea5"] > h1::after,
[data-id="d879ea5"] > h2::after,
[data-id="d879ea5"] > h3::after,
[data-id="d879ea5"] > h4::after,
[data-id="d879ea5"] .e-heading-base::after {
  content: "";
  display: block;
  width: 56px;
  height: 2px;
  margin: 18px auto 0;
  background: #E74C3C;
}

/* ---------- Paragraph ---------- */
[data-id="a157b96"] {
  margin: 0 !important;
  font-size: clamp(0.9375rem, 0.88rem + 0.3vw, 1.125rem) !important;
  line-height: 1.9 !important;
  letter-spacing: 0.02em !important;
  color: #4a4a4a !important;
  text-align: center !important;
  text-wrap: balance;
}

/* ---------- Button ---------- */
[data-id="a20c483"] {
  display: inline-block !important;
  width: auto !important;
  margin: 6px auto 0 !important;
  padding: 15px 40px !important;
  background: #111 !important;
  color: #fff !important;
  border: 0 !important;
  border-radius: 0 !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  letter-spacing: 0.16em !important;
  text-transform: uppercase !important;
  cursor: pointer;
  transition: background 0.25s ease, transform 0.25s ease;
}
[data-id="a20c483"]:hover {
  background: #E74C3C !important;
  transform: translateY(-2px);
}
[data-id="a20c483"]:focus-visible {
  outline: 2px solid #E74C3C;
  outline-offset: 3px;
}

/* ---------- Empty grid: hide ---------- */
[data-id="4bed062"]:empty {
  display: none !important;
}

/* ---------- Image column ---------- */
[data-id="f13aea9"] {
  position: relative;
  width: 100% !important;
  min-width: 0;
  min-height: 100%;
  padding: 0 !important;
  margin: 0 !important;
  overflow: hidden;
  display: block !important;
}

/* Image fills the column; crops instead of stretching */
[data-id="9c00c06"] {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  object-fit: cover !important;
  object-position: center !important;
  display: block !important;
  border-radius: 0 !important;
}

/* ---------- Tablet and mobile: stack, image first ---------- */
@media (max-width: 900px) {
  [data-id="7b73447"] {
    grid-template-columns: 1fr !important;
  }
  [data-id="f13aea9"] {
    order: -1;                 /* image above text; remove this line to put it below */
    min-height: 0;
    aspect-ratio: 4 / 3;
  }
  [data-id="d879ea5"] {
    gap: 22px !important;
  }
}

@media (max-width: 767px) {
  [data-id="f13aea9"] { aspect-ratio: 1 / 1; }
  [data-id="a20c483"] { padding: 14px 32px !important; }
}

@media (min-width: 901px) {
  /* Keeps the image column at least as tall as the text needs */
  [data-id="7b73447"] { min-height: 560px; }
}/* End custom CSS */
/* Start custom CSS for ftc-products-tabs, class: .elementor-element-8f6d8d8 *//* =========================================================
   GIFTPORIA: PRODUCT TABS TYPOGRAPHY (centered, fluid)
   Matches the product slider: Capitalize Each Word,
   quiet name, bold price
   ========================================================= */

.ftc-product-tabs {
  --gp-font: system-ui, -apple-system, "Segoe UI", Roboto,
             "Helvetica Neue", Arial, "Noto Sans", sans-serif;
  --gp-name-size:  clamp(0.875rem, 0.8rem + 0.35vw, 1.0625rem);
  --gp-price-size: clamp(1rem, 0.92rem + 0.4vw, 1.25rem);
  --gp-name-lh: 1.35;
}

/* ---------- CENTER THE INFO AREA ---------- */
.ftc-product-tabs .ftc-product .item-description {
  width: 100% !important;
  align-items: center !important;
  text-align: center !important;
}

/* ---------- PRODUCT NAME ---------- */
.ftc-product-tabs .ftc-product .item-description .product-name {
  display: block !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 2px !important;

  font-family: var(--gp-font) !important;
  font-size: var(--gp-name-size) !important;
  line-height: var(--gp-name-lh) !important;
  font-weight: 500 !important;
  letter-spacing: 0 !important;
  color: #2b2b2b !important;
  text-align: center !important;
  text-transform: capitalize !important;

  /* Reserves exactly two lines so prices align across cards */
  height: calc(var(--gp-name-lh) * 2em) !important;
  min-height: 0 !important;
  max-height: calc(var(--gp-name-lh) * 2em) !important;
  overflow: hidden !important;

  /* Cancels the old -webkit-box clamp that caused left alignment */
  -webkit-line-clamp: unset !important;
  line-clamp: unset !important;

  text-wrap: balance;
  overflow-wrap: anywhere;
  hyphens: auto;
}

.ftc-product-tabs .ftc-product .item-description .product-name a {
  display: block !important;
  width: 100% !important;
  max-height: calc(var(--gp-name-lh) * 2em) !important;
  overflow: hidden !important;

  font: inherit !important;
  letter-spacing: inherit !important;
  color: inherit !important;
  text-decoration: none !important;
  text-align: center !important;
  text-transform: capitalize !important;
}

@media (hover: hover) and (pointer: fine) {
  .ftc-product-tabs .ftc-product .item-description .product-name a:hover {
    color: #E74C3C !important;
  }
}

/* ---------- PRICE ---------- */
.ftc-product-tabs .ftc-product .item-description .price {
  width: 100% !important;
  margin: 6px 0 0 !important;
  padding: 0 !important;
  min-height: 0 !important;

  display: flex !important;
  flex-wrap: wrap;
  align-items: baseline !important;
  justify-content: center !important;
  column-gap: 0.45em;
  text-align: center !important;

  font-family: var(--gp-font) !important;
  font-size: var(--gp-price-size) !important;
  line-height: 1.2 !important;
  font-weight: 700 !important;
  letter-spacing: 0 !important;
  font-variant-numeric: tabular-nums lining-nums;
  color: #E74C3C !important;
}

.ftc-product-tabs .ftc-product .item-description .price .amount,
.ftc-product-tabs .ftc-product .item-description .price bdi,
.ftc-product-tabs .ftc-product .item-description .price ins {
  font: inherit !important;
  color: inherit !important;
  text-decoration: none !important;
}

/* Old price when on sale */
.ftc-product-tabs .ftc-product .item-description .price del {
  margin-right: 0 !important;
  font-family: var(--gp-font) !important;
  font-size: 0.8em !important;
  font-weight: 400 !important;
  color: #8a8a8a !important;
  opacity: 1 !important;
}

.ftc-product-tabs .ftc-product .price .woocommerce-Price-currencySymbol {
  font-weight: 600;
  margin-right: 0.04em;
}

/* Keep any leftover meta/rating rows centered too */
.ftc-product-tabs .ftc-product .item-description .meta_info,
.ftc-product-tabs .ftc-product .item-description .star-rating {
  margin-left: auto !important;
  margin-right: auto !important;
  text-align: center !important;
}

/* Small phones */
@media (max-width: 380px) {
  .ftc-product-tabs { --gp-name-lh: 1.3; }
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-4115712 */h1.elementor-heading-title,
h2.elementor-heading-title {
    font-family: "Trebuchet MS", "Helvetica Neue", Arial, sans-serif !important;
}/* End custom CSS */
/* Start custom CSS for ftc_single_image, class: .elementor-element-92901bf *//* Giftporia banner headings */
.ftc-banner-content .text_banner .size1,
.ftc-banner-content .text_banner .size2 {
    font-family: "Trebuchet MS", "Helvetica Neue", Arial, sans-serif !important;
}
/* Make the image wrapper the positioning reference */
.ftc-element-image figure.wp-caption {
  position: relative;
  margin: 0;
}

/* Overlay covers the whole image and centers everything inside it */
.ftc-element-image .ftc-image-content,
.ftc-element-image .ftc-image-content.style_1,
.ftc-element-image .ftc-image-content.style_2,
.ftc-element-image .ftc-image-content.style_3 {
  position: absolute !important;
  top: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 100% !important;
  transform: none !important;
  margin: 0 !important;
  padding: 20px !important;
  display: flex !important;
  align-items: center !important;      /* vertical centre */
  justify-content: center !important;  /* horizontal centre */
  text-align: center !important;
  box-sizing: border-box;
}

/* Inner wrappers: remove any theme offsets and centre their content */
.ftc-element-image .ftc-image-caption,
.ftc-element-image .ftc-banner-content,
.ftc-element-image .text_banner {
  position: static !important;
  float: none !important;
  width: 100% !important;
  max-width: 560px;
  margin: 0 auto !important;
  padding: 0 !important;
  left: auto !important;
  right: auto !important;
  text-align: center !important;
  display: flex;
  flex-direction: column;
  align-items: center;
}

/* Text lines */
.ftc-element-image .text_banner p {
  margin-left: auto !important;
  margin-right: auto !important;
  text-align: center !important;
}

/* Description paragraph: comfortable reading width */
.ftc-element-image .text_banner p.size3 {
  max-width: 480px;
}

/* Button */
.ftc-element-image .text_banner a.btn {
  display: inline-block !important;
  float: none !important;
  margin: 15px auto 0 !important;
  text-align: center;
}

/* Mobile: tighter spacing so text fits inside the image */
@media (max-width: 767px) {
  .ftc-element-image .ftc-image-content {
    padding: 12px !important;
  }
  .ftc-element-image .text_banner p.size3 {
    font-size: 13px;
    line-height: 1.5;
    max-width: 100%;
  }
  .ftc-element-image .text_banner p.size1 {
    font-size: 16px;
  }
  .ftc-element-image .text_banner p.size2 {
    font-size: 24px;
    line-height: 1.2;
  }
  .ftc-element-image .text_banner a.btn {
    margin-top: 10px !important;
    padding: 8px 18px;
  }
}/* End custom CSS */
/* Start custom CSS for ftc_single_image, class: .elementor-element-7533a9f *//* Giftporia banner headings */
.ftc-banner-content .text_banner .size1,
.ftc-banner-content .text_banner .size2 {
    font-family: "Trebuchet MS", "Helvetica Neue", Arial, sans-serif !important;
}
/* Make the image wrapper the positioning reference */
.ftc-element-image figure.wp-caption {
  position: relative;
  margin: 0;
}

/* Overlay covers the whole image and centers everything inside it */
.ftc-element-image .ftc-image-content,
.ftc-element-image .ftc-image-content.style_1,
.ftc-element-image .ftc-image-content.style_2,
.ftc-element-image .ftc-image-content.style_3 {
  position: absolute !important;
  top: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 100% !important;
  transform: none !important;
  margin: 0 !important;
  padding: 20px !important;
  display: flex !important;
  align-items: center !important;      /* vertical centre */
  justify-content: center !important;  /* horizontal centre */
  text-align: center !important;
  box-sizing: border-box;
}

/* Inner wrappers: remove any theme offsets and centre their content */
.ftc-element-image .ftc-image-caption,
.ftc-element-image .ftc-banner-content,
.ftc-element-image .text_banner {
  position: static !important;
  float: none !important;
  width: 100% !important;
  max-width: 560px;
  margin: 0 auto !important;
  padding: 0 !important;
  left: auto !important;
  right: auto !important;
  text-align: center !important;
  display: flex;
  flex-direction: column;
  align-items: center;
}

/* Text lines */
.ftc-element-image .text_banner p {
  margin-left: auto !important;
  margin-right: auto !important;
  text-align: center !important;
}

/* Description paragraph: comfortable reading width */
.ftc-element-image .text_banner p.size3 {
  max-width: 480px;
}

/* Button */
.ftc-element-image .text_banner a.btn {
  display: inline-block !important;
  float: none !important;
  margin: 15px auto 0 !important;
  text-align: center;
}

/* Mobile: tighter spacing so text fits inside the image */
@media (max-width: 767px) {
  .ftc-element-image .ftc-image-content {
    padding: 12px !important;
  }
  .ftc-element-image .text_banner p.size3 {
    font-size: 13px;
    line-height: 1.5;
    max-width: 100%;
  }
  .ftc-element-image .text_banner p.size1 {
    font-size: 16px;
  }
  .ftc-element-image .text_banner p.size2 {
    font-size: 24px;
    line-height: 1.2;
  }
  .ftc-element-image .text_banner a.btn {
    margin-top: 10px !important;
    padding: 8px 18px;
  }
}/* End custom CSS */
/* Start custom CSS for ftc-testimonial, class: .elementor-element-6801478 *//* =========================================================
   GIFTPORIA: TESTIMONIALS (works on every page)
   Targets the widget class, not a page-specific ID
   ========================================================= */

/* ---------- Optional background overlay ----------
   Add the CSS class  gp-testi-section  to the section
   container that holds the testimonials (Advanced > CSS Classes) */
.gp-testi-section {
  position: relative !important;
  isolation: isolate;
  background-color: #fbf3ee;
  background-size: cover;
  background-position: center;
  padding-top: clamp(40px, 6vw, 80px) !important;
  padding-bottom: clamp(40px, 6vw, 80px) !important;
}
.gp-testi-section::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  background: linear-gradient(180deg,
              rgba(255, 249, 245, 0.90) 0%,
              rgba(250, 236, 229, 0.85) 100%);
}
.gp-testi-section > * {
  position: relative;
  z-index: 1;
}

/* ---------- Slider wrapper ---------- */
.elementor-widget-ftc-testimonial .ftc-element-testimonial {
  --gp-font: system-ui, -apple-system, "Segoe UI", Roboto,
             "Helvetica Neue", Arial, "Noto Sans", sans-serif;
  padding: 14px 0 76px !important;
  position: relative;
  font-family: var(--gp-font);
}
.elementor-widget-ftc-testimonial .title-testi-slider:empty,
.elementor-widget-ftc-testimonial .title-testi-slider h2:empty {
  display: none !important;
}

/* ---------- Cards ---------- */
.elementor-widget-ftc-testimonial .ftc-element-testimonial .testimonial-content {
  height: auto !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  text-align: center !important;
  box-sizing: border-box !important;
  padding: 36px 28px 32px !important;
  background: #fff !important;
  border: 0 !important;
  border-top: 3px solid #E74C3C !important;
  border-radius: 14px !important;
  box-shadow: 0 10px 30px rgba(60, 30, 20, 0.08) !important;
}

/* Avatar (hidden space removed when there is no photo) */
.elementor-widget-ftc-testimonial .avatar-image {
  margin: 0 0 16px !important;
}
.elementor-widget-ftc-testimonial .avatar-image:empty,
.elementor-widget-ftc-testimonial .avatar-image:not(:has(img)) {
  display: none !important;
}
.elementor-widget-ftc-testimonial .avatar-image img {
  width: 84px !important;
  height: 84px !important;
  object-fit: cover;
  border-radius: 50% !important;
  border: 3px solid #fff !important;
  box-shadow: 0 0 0 1px rgba(231, 76, 60, 0.35);
}

/* Name */
.elementor-widget-ftc-testimonial .testimonial-content .name {
  margin: 0 0 4px !important;
  font-family: var(--gp-font) !important;
  font-size: clamp(0.95rem, 0.9rem + 0.2vw, 1.0625rem) !important;
  font-weight: 700 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  line-height: 1.3 !important;
  color: #2b2b2b !important;
}
.elementor-widget-ftc-testimonial .testimonial-content .name a {
  color: inherit !important;
  text-decoration: none !important;
}

/* Role / byline */
.elementor-widget-ftc-testimonial .testimonial-content .byline {
  margin: 0 0 18px !important;
  font-family: var(--gp-font) !important;
  font-size: 12.5px !important;
  font-weight: 600 !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
  color: #E74C3C !important;
}

/* Testimonial text */
.elementor-widget-ftc-testimonial .testimonial-content .infomation {
  font-family: var(--gp-font) !important;
  font-size: clamp(0.9375rem, 0.9rem + 0.2vw, 1.0625rem) !important;
  line-height: 1.8 !important;
  font-style: italic;
  color: #555 !important;
  text-wrap: pretty;
}
.elementor-widget-ftc-testimonial .testimonial-content .infomation::before {
  content: "\201C";
  display: block;
  margin-bottom: 8px;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 54px;
  font-style: normal;
  line-height: 0.6;
  color: rgba(231, 76, 60, 0.4);
}

/* ---------- Pagination bullets ---------- */
.elementor-widget-ftc-testimonial .swiper-pagination {
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 28px !important;
  width: 100% !important;
  text-align: center !important;
}
.elementor-widget-ftc-testimonial .swiper-pagination-bullet {
  width: 8px !important;
  height: 8px !important;
  margin: 0 5px !important;
  border-radius: 999px !important;
  background: rgba(231, 76, 60, 0.3) !important;
  opacity: 1 !important;
  transition: width 0.25s ease, background 0.25s ease;
}
.elementor-widget-ftc-testimonial .swiper-pagination-bullet-active {
  width: 24px !important;
  background: #E74C3C !important;
}

/* ---------- Navigation arrows: thin, circular ---------- */
.elementor-widget-ftc-testimonial .navigation-slider {
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 12px !important;
  top: auto !important;
  height: 40px;
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 170px;
  pointer-events: none;
  z-index: 5;
}
.elementor-widget-ftc-testimonial .navigation-slider .nav-prev,
.elementor-widget-ftc-testimonial .navigation-slider .nav-next {
  position: relative !important;
  top: auto !important;
  left: auto !important;
  right: auto !important;
  bottom: auto !important;
  width: 40px !important;
  height: 40px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 1px solid rgba(47, 47, 47, 0.25) !important;
  border-radius: 50% !important;
  background: transparent !important;
  box-shadow: none !important;
  font-size: 0 !important;
  line-height: 0 !important;
  color: transparent !important;
  cursor: pointer;
  pointer-events: auto;
  transform: none !important;
  transition: background 0.25s ease, border-color 0.25s ease;
}
.elementor-widget-ftc-testimonial .navigation-slider .nav-prev { order: 1; }
.elementor-widget-ftc-testimonial .navigation-slider .nav-next { order: 2; }

.elementor-widget-ftc-testimonial .navigation-slider .nav-prev::before,
.elementor-widget-ftc-testimonial .navigation-slider .nav-next::before {
  display: none !important;
}
.elementor-widget-ftc-testimonial .navigation-slider .nav-prev::after,
.elementor-widget-ftc-testimonial .navigation-slider .nav-next::after {
  content: "" !important;
  position: absolute !important;
  top: 50% !important;
  left: 50% !important;
  width: 9px !important;
  height: 9px !important;
  border-top: 1.5px solid #2f2f2f !important;
  border-right: 1.5px solid #2f2f2f !important;
  background: none !important;
  font-family: inherit !important;
  transition: border-color 0.25s ease;
}
.elementor-widget-ftc-testimonial .navigation-slider .nav-next::after {
  transform: translate(-65%, -50%) rotate(45deg) !important;
}
.elementor-widget-ftc-testimonial .navigation-slider .nav-prev::after {
  transform: translate(-35%, -50%) rotate(-135deg) !important;
}
.elementor-widget-ftc-testimonial .navigation-slider .nav-prev:hover,
.elementor-widget-ftc-testimonial .navigation-slider .nav-next:hover {
  background: #E74C3C !important;
  border-color: #E74C3C !important;
}
.elementor-widget-ftc-testimonial .navigation-slider .nav-prev:hover::after,
.elementor-widget-ftc-testimonial .navigation-slider .nav-next:hover::after {
  border-color: #fff !important;
}
.elementor-widget-ftc-testimonial .navigation-slider .nav-prev:focus-visible,
.elementor-widget-ftc-testimonial .navigation-slider .nav-next:focus-visible {
  outline: 2px solid #E74C3C;
  outline-offset: 3px;
}

/* ---------- Mobile ---------- */
@media (max-width: 767px) {
  .elementor-widget-ftc-testimonial .testimonial-content {
    padding: 30px 22px 26px !important;
  }
  .elementor-widget-ftc-testimonial .navigation-slider { gap: 150px; }
  .elementor-widget-ftc-testimonial .navigation-slider .nav-prev,
  .elementor-widget-ftc-testimonial .navigation-slider .nav-next {
    width: 36px !important;
    height: 36px !important;
  }
}/* End custom CSS */