.index .crumbs {
    margin-right: 0
}

.it_wr {
    width: 100%;
    gap: 8px;
    display: flex;
    flex-flow: row nowrap;
    align-items: flex-start;
}

.price_bt.inquire {
    height: 40px;
    right: 0;
    display: flex;
    font-size: var(--rem20) !important;
    justify-content: center;
    align-items: center;
    color: var(--black);
    position: relative;

    a:before {
        color: var(--hover-hazelblue);
    }

    span {
        font-size: inherit;
    }
}

.sb {
    display: block;
    width: 100%;
    position: relative;

    img {
        min-width: 100%;
        width: auto;
        height: auto;
        object-fit: scale-down;

    }

    .fldv {
        position: absolute;
        bottom: .3em;
        left: .3em;
        display: flex;
        gap: .3em;
        justify-content: flex-start;

        img {
            min-width: 60px;
            height: 60px;
            object-fit: scale-down;
            border-radius: .3em;
            background: none;
            border: 1px solid grey;
        }
    }
}

.itb {
    display: flex;
    flex-flow: column nowrap;
    align-items: center;
    gap: 8px;
    justify-content: center;


    .vue-main-image-wrapper {
        width: 100%;
        display: block;
        position: relative;
        aspect-ratio: 1 / 1;
        border-radius: var(--rem5);
        background: var(--white);
    }

}

#price {
    flex: 1 1 40%;
    color: var(--darkblue);
    font-weight: bold;
    background: var(--bannCol);
    padding: .2em .5em;
    border-radius: var(--rem5);

}

.discount {
    color: var(--black) !important;
    letter-spacing: 0.1em;
    width: auto;
    padding: .5em;
    text-align: center;
    font-size: 0.8em;
    background: var(--bannCol);
    border-radius: 5px;
    margin-top: 16px;

    &.red {
        margin: 0;
    }

    &:last-of-type {
        margin-bottom: 0;
    }
}

.item_big {
    flex: 1 0 50%;
    display: flex;
    flex-flow: column;
    width: auto;
    max-width: 50%;
    min-width: 350px;
    position: relative;
    gap: 8px;
    align-self: flex-start;

    img {
        background-color: var(--white);
        border-radius: var(--rem5);
        transform: translateZ(0);
        opacity: 1;

    }

    .discount-img {
        right: 10px;
        left: inherit
    }

    & > img, & > .sb > img {
        border: none
    }

    img.opaque {
        opacity: 0;
        filter: alpha(opacity=1);
    }


    .anchors {

        height: 22px;
        display: flex;
        flex-flow: row nowrap;
        justify-content: space-between;
        align-items: center;

        [class^="icon-"]:before {
            font-size: 1.3em;
            text-decoration: none;
        }
    }
}

.item_info {
    position: relative;
    display: flex;
    flex-flow: column wrap;
    justify-content: flex-start;
    flex: 1 .2 40%;

    min-width: 350px;
    gap: 1em;
    align-items: center;


    .item_name {
        padding: 0;
        position: relative;
        display: flex;
        flex-direction: column;
        width: 100%;

        & > div {
            display: flex;

            flex-flow: row;
            align-items: center;
            justify-content: space-between;

            i {
                flex: 1 1 3em;
            }

            h1 {
                flex: 0 1 calc(100% - 2em);
                padding-right: .6em;
                line-height: 1.3em;
                min-height: 5em;
                margin-bottom: 0;

            }

        }


        .codice {
            padding: 5px 5px;
            text-transform: lowercase;
            background: #f5dc66;
            color: var(--black);
            display: flex;
            gap: .3em;
            justify-content: center;

            * {
                flex: 0 1 min-content
            }


        }
    }


    .red, .orange {
        color: var(--orange);
    }

    .rub {
        border-bottom: 3px solid var(--white);
        color: var(--white);
        line-height: 5px;
        font-size: 0.9em;
        margin-left: 0.5em;
    }

    .yelg {
        color: var(--yellowgreen) !important;
    }

    a:not(.buy_bt):hover {
        color: var(--yellow);
    }

    .before-price {
        margin: 0 auto;
        border-radius: var(--rem5);
        background: var(--bannCol);
        color: var(--black);
        padding: .5em 1em;
        flex: 1 1 40%;
        text-align: center;
    }

    .ex-price {
        font-size: var(--rem20);
    }

    .wr_it_b {
        position: static;
        display: flex;
        margin: 0 auto 10px;
        width: 280px;
        align-items: stretch;
        flex-direction: row;


        justify-content: space-between;

        .minus, .plus {
            border-left: none;
            border-right: none
        }

        /* fixed icon colour / size */

        .icon-up-open:before,
        .icon-down-open:before {
            color: var(--darkblue);
            font-size: var(--rem6);
        }
    }
}

.item_info.mobile {
    display: none;
}

.colors {
    padding: 0;
    min-width: 280px;
    max-width: 276px;
    max-height: 320px;
    display: flex;
    flex-direction: column;
    gap: 6px;
    background: linear-gradient(135deg, #ffffff 0%, #f8f9fa 100%);
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06), 0 1px 3px rgba(0, 0, 0, 0.04);
    overflow-y: auto;
    overflow-x: hidden;

    &::-webkit-scrollbar {
        width: 6px;
    }

    &::-webkit-scrollbar-track {
        background: rgba(0, 0, 0, 0.05);
        border-radius: 10px;
    }

    &::-webkit-scrollbar-thumb {
        background: linear-gradient(180deg, var(--yellowgreen) 0%, #85b532 100%);
        border-radius: 10px;
        transition: background 0.3s ease;

        &:hover {
            background: linear-gradient(180deg, #85b532 0%, var(--yellowgreen) 100%);
        }
    }
}

.color-option {
    display: flex;
    align-items: center;
    gap: 12px;
    cursor: pointer;
    font-size: var(--rem11);
    color: var(--black);
    padding: 10px 12px;
    border-radius: 8px;
    transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
    position: relative;
    background: transparent;

    &:hover {
        background: linear-gradient(90deg, rgba(154, 205, 50, 0.08) 0%, rgba(154, 205, 50, 0.12) 100%);
        transform: translateX(2px);
    }

    &:active {
        transform: scale(0.98);
    }

    input[type="radio"] {
        appearance: none;
        width: 22px;
        height: 22px;
        border: 2.5px solid #d1d5db;
        border-radius: 50%;
        cursor: pointer;
        position: relative;
        transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);
        flex-shrink: 0;
        background: white;

        &:hover {
            border-color: var(--yellowgreen);
            box-shadow: 0 0 0 4px rgba(154, 205, 50, 0.1);
        }

        &:checked {
            border-color: var(--yellowgreen);
            background: linear-gradient(135deg, var(--yellowgreen) 0%, #85b532 100%);
            box-shadow: 0 0 0 4px rgba(154, 205, 50, 0.15), 0 2px 4px rgba(0, 0, 0, 0.1);

            &::after {
                content: '✓';
                position: absolute;
                top: 50%;
                left: 50%;
                transform: translate(-50%, -50%) scale(1);
                color: white;
                font-size: 13px;
                font-weight: 700;
                animation: checkmark-pop 0.3s cubic-bezier(0.68, -0.55, 0.27, 1.55);
            }
        }
    }

    span {
        cursor: pointer;
        flex: 1;
        word-wrap: break-word;
        overflow-wrap: break-word;
        hyphens: auto;
        line-height: 1.4;
        font-weight: 500;
    }
}

.tabs {
    width: 100%;

    .tabsheaders {
        display: flex;
        flex-flow: row wrap;

        [class^="icon-"]:before {
            font-size: 1.1em;
            text-decoration: none;
        }

        .descr {
            padding: 5px 15px 5px;
            color: var(--white);
            line-height: 3.5em;
            text-align: center;
            border: 1px solid var(--grey);
            border-bottom: 1px solid var(--grey);
            margin: 0 3px -1px;
            cursor: pointer;
            background: transparent;

            &:first-of-type {
                margin-left: 0
            }

            &:last-of-type {
                line-height: 3em;
            }

            &.lb-act {
                background: var(--darkgrey);
                border: 1px solid var(--grey);
                border-bottom: 1px solid var(--darkgrey);
                z-index: 3;
            }
        }
    }

    .tabs_cont {
        background: var(--darkgrey);
        position: relative;
        z-index: 2;

        & > div {
            padding: 1.5em 1.5em 1.5em 1.5em;
            letter-spacing: 0.1em;
            color: var(--white);
            text-align: justify;
            border: 1px solid var(--grey);
            position: absolute;
            top: 0;
            opacity: 0;
            transition: opacity .5s ease-in-out;

            & > ul {
                padding-top: 0;
            }

            &:not(.tabs_active) {
                display: none;
            }
        }

        & > .tabs_active {
            position: relative;
            left: 0;
            color: var(--white);
            opacity: 1;
            overflow: hidden;

            a, a:visited, a:hover {
                text-decoration: none;
                color: var(--yellowgreen);
            }

        }

        #tab_c4 {
            .msg {
                margin-top: 2em
            }

            .not-logged-in {
                padding: 2em;
                text-align: center;

                p {
                    font-size: 1.1em;
                    line-height: 1.6;
                }

                .yel {
                    cursor: pointer;
                    color: var(--yellowgreen);
                    text-decoration: underline;

                    &:hover {
                        color: var(--hover-hazelblue);
                    }
                }
            }

            span.yel {
                cursor: pointer
            }

            .post {
                padding: 2em;
                display: flex;
                flex-flow: column;
                justify-content: space-between;

                .name {
                    color: var(--hover-hazelblue)
                }

                .date {
                    color: var(--yellowgreen);
                    font-size: var(--rem8)
                }
            }


            .userName {
                height: 20px;
                display: flex;
                justify-content: space-between;
                border-bottom: 1px dotted var(--grey);
            }
        }
    }

    input:not([type="text"]) {
        position: absolute;
        left: -9999px;
    }
}

.bonactions {
    display: flex;
    flex-flow: row wrap;
    gap: 1em;
    margin-bottom: 1em;

    span:not(.disabled span) {
        border-bottom: 1px dotted var(--hover-hazelblue);
        cursor: pointer
    }
}

.promowr {
    display: flex;
    flex-flow: column;
    flex: .5 1 auto;
    gap: 8px;


    .promo {
        border-radius: var(--borderrad);
        cursor: inherit;
        font-size: 14px;
        background: white;
        display: flex;
        padding: 10px;
        color: black;

        i:before {
            font-size: inherit;
        }

        &:first-of-type {
            padding: 0;
            height: 52px;
            background: transparent;
        }
    }
}

.propertyTable {
    display: flex;
    flex-flow: column;
    width: 100%;
    gap: 4px;
    font-size: var(--rem11);
    box-sizing: border-box;

    dl {
        margin: 0;
        padding: 0;

        &:nth-of-type(odd) {
            background-color: var(--darkgrey);

            dt span {
                background: var(--darkgrey);
            }
        }

        dt span {
            position: absolute;
            padding-right: 0.1em;
            z-index: 2;
            background-image: var(--bg2);
        }
    }
}

.descr_body {
    padding: 15px 10px 15px 10px;
    background-color: var(--darkgrey);
    color: var(--white);
    text-align: left;
    border-radius: var(--borderrad);
    width: 100%;

    p {
        overflow: hidden;
        margin: 0
    }

    span {
        clear: left;
        display: block;
        margin-bottom: 10px;
    }

    a:visited, a:active, a {
        color: var(--yellowgreen);
        text-decoration: none;
    }

    [class^="icon-"]:before {
        font-size: var(--rem14);
        padding-bottom: 0.5em;
        padding-top: 0.8em;
    }
}

.propertyTable + .descr_body {
    margin-bottom: 0
}

ul li strong, .descr_body.yel {
    color: var(--yellow);
}

.descr.count {
    display: flex;
    padding: 0.3em;
    justify-content: space-between;

    dd {
        color: var(--white);
        margin-left: auto;
        flex: 1 1 50%;

        a {
            flex: 1 1 50%;
            color: var(--yellowgreen);
        }
    }

    dt {
        flex: 1 1 50%;
        position: relative;

        &:before {
            border-bottom: 0.1em dotted var(--grey);
            bottom: 0.23em;
            content: "";
            display: inline-block;
            left: 0;
            position: absolute;
            z-index: 1;
            width: 100%;
        }
    }
}

.subs {
    input[type=text] {
        z-index: 2;
        border-radius: 0.5em;
        padding: 0.05em 1em 0;
    }

    input[type=button] {
        flex: 1 0 10%;
        margin: 0;
        padding: 0.05em 1em 0.2em;
        border-radius: 0.5em;
        box-shadow: none;
        cursor: pointer;
    }

    dt:before {
        bottom: 0
    }
}

.pdf {
    display: inline-block;
    height: 24px;
    width: 27px;
    line-height: 34px;
    float: left;
    margin-right: 10px;
    vertical-align: middle;

    &:before {
        font-family: 'fontello';
        content: '\f1c1';
        color: var(--red);
    }

    + a, + a:hover, + a:active {
        display: inline-block;
        text-decoration: none;
        border-bottom: 1px dashed;
        padding-top: 6px;
        color: var(--white);
    }
}

.rate_item {
    display: flex;
    padding: 0;
    gap: 10px;
    margin: 10px 0;
    flex-direction: column;
    flex-wrap: nowrap;
    align-content: center;
    width: 100%;
    align-items: center;

    .agit {
        position: relative;
        margin: 0 0 0 0;
        display: inline-block;
        color: var(--white);
    }

    .ratings_stars {
        background: url('/images/stars_3.png?111222') no-repeat;
        float: left;
        height: 26px;
        width: 32px;
    }

    .ratings_over {
        background-position: 0 -28px;
    }


    .total_votes {
        margin: 0;
        text-align: center;
    }

    .ratings_vote {
        background: url('/images/stars_3.png?111222') no-repeat 0 -56px;
    }
}

@keyframes checkmark-pop {
    0% {
        transform: translate(-50%, -50%) scale(0);
        opacity: 0;
    }
    50% {
        transform: translate(-50%, -50%) scale(1.2);
    }
    100% {
        transform: translate(-50%, -50%) scale(1);
        opacity: 1;
    }
}
