/*
Theme Name: rosebelle
Author: getso.pl
Description: rosebelle WordPress theme.
Version: 1.0
Template: hello-elementor

This is the child theme for Hello Elementor theme.
*/

html,
body {
    overflow-x: hidden ;
}


.elementor-sub-item {
    font-size: 14px !important;
}

.eq-marquee{
    width:100%;
    overflow:hidden;
    background:#000;
    color:#fff;
    position:relative;
    padding:10px 0;
}

.eq-marquee-track{
    display:flex;
    align-items:center;
    width:max-content;
    gap: 50px;
    animation:eq-marquee 25s linear infinite;
}


.eq-marquee-item {
    display:flex;
    font-family: "avenir-lt-pro", Sans-serif;
    align-items:center;
    gap:61px;
    white-space:nowrap;
    font-size:28px;
    letter-spacing:.2em;
    font-weight:700;
}

.eq-marquee-item img {
    width:61px;
    height:32px;
    flex:0 0 61px;   /* zawsze 32px */
    display:block;
}

.eq-marquee-item span{
    display:block;
}

@keyframes eq-marquee{
    from{
        transform:translateX(0);
    }
    to{
        transform:translateX(-50%);
    }
}


.eq-box{
    position: relative;
    overflow: hidden;
}

.eq-title{
    position: absolute !important;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 2;
    margin: 0;
    width: 100%;
    text-align: center;

    /* żeby nie blokował hovera przycisku */
    pointer-events: none;
}


.eq-box{
    position: relative;
    overflow: hidden;
}

.eq-img{
    overflow: hidden;
}

.eq-img img{
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;

    transform: scale(1);
    transition: transform 1.2s cubic-bezier(.16, 1, .3, 1);
    will-change: transform;
}

.eq-box:hover .eq-img img{
    transform: scale(1.15) !important;
}


.eq-product-box .price {
	display: flex;
    flex-direction: row-reverse;
    justify-content: flex-end;
    /* gap: 20px; */
    align-items: flex-end !important;
}

.woocommerce ins,
.woocommerce ins span,
.woocommerce ins .woocommerce-Price-amount {
    text-decoration: none !important;
	color: #D00000;
	font-family: "Lexend", Sans-serif;
	font-weight: 400;
    /* margin-bottom: -3px; */
}

/* Kontener cen */
.woocommerce .price {
    display: flex;
    align-items: center;
    /* gap: 20px; */
}

.single-product .price del .woocommerce-Price-amount,
.single-product .price del {
	font-family: "avenir-lt-pro", Sans-serif !important;
	color: #000 !important;
	font-size: 24px !important;
	font-weight: 800 !important;
}


.single-product .price {
    margin: 0;
}
.archive .price,
.archive .price del, 
.archive .price del .woocommerce-Price-amount {
 color: #000 !important;
}


.woocommerce .price del {
    color: #000000 !important;
    font-size: 18px;
	opacity: 1;
    font-weight: 400;
    text-decoration: line-through;
    opacity: 1;
}

.woocommerce .price del .woocommerce-Price-amount {
    color: #000000 !important;
	opacity: 1;
	font-size: 18px;
	text-decoration: line-through;
}




.box {
    position:relative;
    overflow:hidden;
}

.box .bg-image{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    object-fit:cover;

    transform:scale(1);
    transition:transform .8s cubic-bezier(.22,.61,.36,1);

    z-index:0;
}

.box:hover .bg-image{
    transform:scale(1.12);
}

/* Overlay */

.box::after{
    content:"";
    position:absolute;
    inset:0;
    background:rgba(0,0,0,.25);
    transition:background .4s ease;
    pointer-events:none;
    z-index:1;
}

.box:hover::after{
    background:rgba(0,0,0,.15);
}

.box .bg-image,
.box .bg-image img{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
}

.box .bg-image img{
    object-fit:cover;
    transform:scale(1);
    transition:transform .8s cubic-bezier(.22,.61,.36,1);
}

.box:hover .bg-image img{
    transform:scale(1.12);
}


.word-reveal .word {
    display: inline-block;
    opacity: 0;
    transform: translateY(15px);
    filter: blur(4px);
    transition: opacity .5s ease,
                transform .5s ease,
                filter .5s ease;
}

.word-reveal .word.show {
    opacity: 1;
    transform: translateY(0);
    filter: blur(0);
}


.elementor-menu-cart__product .variation {
    display: flex !important;
    flex-direction: column !important;
}

.tc-value.variation-Bezpatnadedykacja {
    margin: 0 !important;
}

.elementor-nav-menu--dropdown a {
    padding-right: 24px !important;
}



.tm-extra-product-options ul.tmcp-ul-wrap.tm-variation-ul-image {
    display: ruby !important;
}

.tm-extra-product-options ul.tmcp-ul-wrap.tm-extra-product-options-variations{
    /* display:grid !important; */
    grid-template-columns:repeat(3, 1fr) !important;
    gap:12px !important;
    /* max-width:190px !important; */
    width:100% !important;
    margin:0 !important;
    padding:0 !important;
    list-style:none !important;
    margin-top: 13px !important;
}
/* .tm-extra-product-options ul.tmcp-ul-wrap.tm-extra-product-options-variations > li.tmcp-field-wrap,
.tm-extra-product-options ul.tmcp-ul-wrap.tm-extra-product-options-variations > li.tm-per-row{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    margin:0 !important;
    padding:0 !important;
    float:none !important;
    flex:none !important;
    display:block !important;
} */

/* Label "Kolor róży" nad próbkami zamiast obok */
.tm-extra-product-options .tc-container.cpf-type-variations .tc-element-inner-wrap > .tc-row{
    display:block !important;
}
.tm-extra-product-options .tc-container.cpf-type-variations .tc-epo-label.tc-left{
    width:100% !important;
    max-width:100% !important;
    text-align:left;
    margin-bottom:10px;
    display:block !important;
    max-width: 273px !important;
}
.tm-extra-product-options .tc-container.cpf-type-variations .tc-element-container{
    width:100% !important;
    max-width:100% !important;
}

.tc-epo-element-label-text {
    color: #000;
    font-family: "Lexend", Sans-serif;
    font-size: 16px;
    font-weight: 300 !important;
}


/* ---- Sekcja "Dodaj do zamówienia": dwa pola obok siebie ---- */
#tm-extra-product-options-fields.tm-extra-product-options-fields{
    display: flex !important;
    flex-wrap: wrap;
    flex-direction: column;
    gap: 30px !important;
    align-items: flex-start;
    justify-content: flex-start !important;
    /* margin-bottom: 55px !important; */
    margin-top: 30px !important;
}
/* pojedyncze pole EPO */
#tm-extra-product-options-fields > li.tm-extra-product-options-field{
    width:auto !important;
    max-width:none !important;
    flex:0 1 auto;
    margin:0 !important;
}

/* ---- Label NAD kontrolką (przełamanie poziomego tc-row) ---- */
#tm-extra-product-options-fields .tc-element-inner-wrap > .tc-row{
    display:block !important;
}
#tm-extra-product-options-fields .tc-epo-label.tc-left{
    width:100% !important;
    max-width:100% !important;
    display:block !important;
    text-align:left;
    margin-bottom:12px;
}
#tm-extra-product-options-fields .tc-element-container{
    width:100% !important;
    max-width:100% !important;
}

/* ---- Ramka wokół selecta "Bezpłatna dedykacja" ---- */
#tm-extra-product-options-fields .cpf-type-select .tc-epo-style,
#tm-extra-product-options-fields select.tmcp-select{
    border:1px solid #111 !important;
    padding:14px 18px !important;
    background:#fff !important;
    border-radius:0 !important;
    max-width: 443px;
}

#tm-extra-product-options-fields .tc-epo-style,
#tm-extra-product-options-fields select.tmcp-select{
    text-transform:uppercase;
    letter-spacing:2px;
}


.tc-first {
    display: none;
}


/* odstęp tylko między kolumną dedykacji a torebki */
#tm-extra-product-options-fields{
    gap:0 !important;
}
/* daj margines prawej kolumnie (przy row-reverse to wizualnie lewa) */
#tm-extra-product-options-fields > li.tm-extra-product-options-field:nth-child(2){
    margin-right:103px !important;
}


@media(max-width: 767px) {
    .eq-marquee-item {
        font-size: 20px !important;
    }

    .tm-extra-product-options .tc-container.cpf-type-variations .tc-epo-label.tc-left {
        max-width: 100% !important;
    }
}


.opis-kategorii {
    font-family: "Lexend", Sans-serif;
    font-size: 15px;
}

.opis-kategorii h1 {
    font-size: 30px;
}

.opis-kategorii h2 {
    font-size: 25px;
}


.eq-box:hover .eq-box-title-2 {
    background: #D00000;
}


.eq-img {
    position: relative;
    overflow: hidden;
}
.product .eq-img::after{
    display: none;;
}
.eq-img::after {
    content: "";
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.4); /* kolor i przezroczystość */
    pointer-events: none;
}