@font-face {
    font-family: 'inter-regular';
    src: url('../fonts/inter/Inter-Regular.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'inter-light';
    src: url('../fonts/inter/Inter-Light.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'inter-medium';
    src: url('../fonts/inter/Inter-Medium.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'inter-semibold';
    src: url('../fonts/inter/Inter-Semi-Bold.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
}

:root {
    --color-primary: #000000;
    --color-secondary: #C70007;
    --color-light-gray: #F4F4F4;
    --color-gray: #D9D9D9;
    --color-white: #fff;

    --text-normal: 16px;
    --text-small: 14px;
    --text-big: 18px;
    --text-module-title: 28px;
    --text-page-title: 20px;

    --radius-default: 15px;
    --radius-round: 100px;
    --radius-default-button: 50px;
    --radius-button-15: 15px;
    --radius-button-6: 6px;

    --item-spacing: 16px;
    --row-spacing: 120px;

    --font-light: 'inter-light', sans-serif;
    --font-regular: 'inter-regular', sans-serif;
    --font-medium: 'inter-medium', sans-serif;
    --font-bold: 'inter-semibold', sans-serif;
}

/* SOF General */

body {
    font-family: var(--font-regular) !important;
}

.c--font-light {
    font-family: var(--font-light) !important;
}

h1, 
h2,
h3,
b,
strong,
.info-block-title,
.product-thumb :is(.name, .price),
.page-title,
table thead td,
.td-name,
.section-title {
    font-family: var(--font-medium) !important;
}

.breadcrumbs::before {
    border-radius: var(--radius-default);
}

/* EOF General */

/* SOF Header */

.desktop-main-menu-wrapper.menu-top {
    height: 100% !important;

    & > .main-menu {
        height: 100% !important;
    }

    & .c--trigger-menu-btn {
        height: 100%;

        & a {
            height: 50px !important;
        }
    }
}

.mid-bar .main-menu .main-menu-item a {
    gap: 20px;

    &::before {
        content: url('/catalog/view/theme/journal3/svg/menu.svg');
        visibility: visible;
        margin-right: 20px;
    }
}

.mid-bar .main-menu .main-menu-item a:hover::before {
    content: url('/catalog/view/theme/journal3/svg/menu-white.svg');
    visibility: visible;
}

.menu-item.c--account-btn > a::before {
    content: url('/catalog/view/theme/journal3/svg/user.svg');
    visibility: visible;
}

.desktop-cart-wrapper {
    & #cart-total .cart-text > span {
        display: none !important;
    }

    & em::before {
        content: url('/catalog/view/theme/journal3/svg/cart.svg');
        visibility: visible;
    }

    & #cart {
        padding: 0 20px;
    }
}

.desktop-header-active .header .mid-bar .language-currency.top-menu {
    order: 6;

    & .drop-menu {
        width: 100px;
    }

    & .drop-menu.open.animating {
        & .dropdown-toggle {
            border-bottom-right-radius: 0;
            border-bottom-left-radius: 0;
        }

        & .dropdown-menu .j-menu {
            padding: 13px;
            padding-top: 0;
        }
    }
}

.mobile-cart-content-wrapper .cart-products {
    padding: var(--item-spacing);

    & tr {
        background-color: var(--color-white) !important;
        border-radius: var(--radius-default);
        display: flex;
        flex-direction: row;

        & .c--product-stats {
            display: flex;
            flex-direction: row;
            align-items: center;
            gap: 30px;
        }
    }

    & tbody {
        display: flex;
        flex-direction: column;
        gap: var(--item-spacing);
    }
}

.mobile-cart-content-container :is(.mobile-wrapper-header > a, .td-remove .cart-remove i)::before {
    content: url("/catalog/view/theme/journal3/svg/bin.svg") !important;
    visibility: visible;
}

.mobile-cart-content-container :is(.mobile-wrapper-header, .cart-totals) {
    padding: var(--item-spacing);
}

.mobile-main-menu-container {
    & .mobile-wrapper-header {
        padding: var(--item-spacing);
        gap: calc(var(--item-spacing)/2);
        min-height: auto;

        & .mobile-bar-group {
            order: 2;
        }

        & .language-currency {
            order: 1;

            & .dropdown-toggle {
                padding: calc(var(--item-spacing)/2);
                max-height: 40px;
            }
        }

        .x {
            background-color: var(--color-primary);
            border-radius: var(--radius-round);
            width: 67px;
            order: 3;

            &::before {
                color: var(--color-white);
            }
        }
    }

    & > .full-search .header-search {
        border: 1px solid var(--color-gray);
    }

    & > .mobile-search-wrapper.mini-search {
        height: 40px;
        position: relative;

        & .dropdown.search-dropdown-default {
            height: 40px !important;
        }

        & .dropdown-menu {
            position: absolute;
            top: 0;
            padding: 0 16px !important;
            background-color: var(--color-white);

            &::before {
                display: none;
            }
        }
    }

    & .mobile-main-menu-wrapper {
        padding: var(--item-spacing);
    }

    & .mobile-language-wrapper {
        & .dropdown-toggle {
            width: 80px;
        }

        & .drop-menu.open.animating .dropdown-toggle {
            border-bottom-right-radius: 0;
            border-bottom-left-radius: 0;
        }

        & .dropdown-menu.j-dropdown {
            width: 80px !important;
        }
    }
}

.mobile-main-menu-wrapper .accordion-menu {
    height: 100%;

    ul.j-menu { 
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        height: 100%;
        position: relative;
    }
    .dropdown {
        .collapse, .collapsing {
            position: absolute;
            width: 100%;
            height: 100% !important;
            background-color: #fff;
            left: 100% !important;
            transition: 0.25s ease all;
            display: block;
            z-index: 100;
            top: 0;

            &.in {
                left: 0 !important;
            }
        }
    }

    .j-menu .menu-item.parent {
        background-color: #f5f5f5;
        & > a {
            padding-left: 30px !important;
           
            .open-menu {
                right: auto;
                left: 0px;

                i::before {
                    content: url("/catalog/view/theme/journal3/svg/arrow_left_black.svg") !important;
                    visibility: visible;
                }
            }
        }
    }

    .menu-item .count-badge {
        display: none;
    }
}

.mobile-main-menu-wrapper ul li {
    position: unset !important;
}

@media only screen and (min-width: 1025px) {
    .mobile-main-menu-wrapper .accordion-menu .parent {
        display: none;
    }
}

/* EOF Header */

/* SOF Homepage */

.c--top-banners .slide-content:hover span {
    color: var(--color-white);
}

.c--portfolio .block-item {
    & .block-footer {
        margin-top: auto;
        padding-bottom: 50px;
    }

    & .block-wrapper {
        justify-content: center;

        & .block-content.block-text {
            max-width: 270px;
        }
    }

    & .block-header {
        overflow: hidden;
        display: inline-block;

        & img {
            transition: transform 0.3s ease-in-out;
            display: block;

            &:hover {
                transform: scale(1.05);
            }
        }
    }
}

.c--blocks {
    & .c--white-on-hover:hover {
        color: var(--color-white);
    }

    & .info-block {
        justify-content: space-between;

        & > img {
            max-height: 159px;
            width: 100%; 
            transition: max-height 0.8s cubic-bezier(0.4, 0, 0.2, 1);
        }
    }

    & .info-blocks {
        height: 440px;
        overflow: hidden;
    }

    & .info-blocks:hover {
        & .info-block-content {
            align-items: flex-start;

            & .info-block-text {
                text-align: left;
                display: flex;
                align-items: center;
                gap: var(--item-spacing);

                &::after {
                    content: url('/catalog/view/theme/journal3/svg/arrow-white.svg');
                    visibility: visible;
                }
            }
        }

        & img {
            max-height: 220px !important;
        }
    }
}

.c--category-blocks .block-item {
    & .block-body {
        display: flex !important;
        flex-direction: row !important;
        align-items: center;
    }

    &:hover {
        .block-header img {
            filter: invert(1);
        }

        .block-content {
            color: var(--color-white);
        }
    }
}

.c--category-cards .block-item {
    transition: background-image 0.3s ease-out, visibility 0.3s ease-out;
}

.c--category-cards .block-item:hover {
    background-size: cover;
    visibility: visible;

    &.c--cat-sintheta {
        background-image: url('/image/catalog/new_design/banners/sintheto-room.png');
    }

    &.c--cat-mpanio {
        background-image: url('/image/catalog/new_design/banners/mpanio-room.png');
    }

    &.c--cat-fotismos {
        background-image: url('/image/catalog/new_design/banners/fotistika-room.png');
    }

    &.c--cat-kouzinika {
        background-image: url('/image/catalog/new_design/banners/eidi-kouzinas-room.png');
    }
}

.c--category-cards .block-item .block-header {
    opacity: 1;
    transition: opacity 0.3s ease-out; 
}

.c--category-cards .block-item:hover .block-header {
    opacity: 0; 
}

.c--category-cards .block-item .block-wrapper {
    transition: flex-direction 0.3s ease-out, gap 0.3s ease-out, color 0.3s ease-out;
    color: var(--color-black);
}

.c--category-cards .block-item:hover .block-wrapper {
    flex-direction: row;
    gap: var(--item-spacing);
    align-items: center;
    color: var(--color-white);
}

.c--category-cards .block-item .block-wrapper::after {
    content: '';
    opacity: 0;
    visibility: hidden;
    transform: translateX(-10px); 
    transition: opacity 0.3s ease-out, visibility 0s 0.3s, transform 0.3s ease-out; 
}

.c--category-cards .block-item:hover .block-wrapper::after {
    content: url('/catalog/view/theme/journal3/svg/arrow-right.svg');
    opacity: 1;
    visibility: visible;
    transform: translateX(0);
}

/* EOF Homepage */

/* SOF Product Card */

.buttons-wrapper .btn-cart {
    justify-content: space-between;

    &:hover .btn-text {
        transform: translateX(40px);
        transition: transform 0.4s ease;
    }

    &::after {
        content: url('/catalog/view/theme/journal3/svg/cart-white.svg');
        visibility: visible;
    }
}

.product-layout {
    margin-top: 30px !important;

    & .product-labels {
        top: -30px;
        left: 30px;
        z-index: 99;

        & .product-label strong {
            position: absolute;
            top: 30%;
            left: 20%;
            color: var(--color-white);
            transform: rotate(-25deg);
        }
    }

    &.has-special .product-label svg path {
        fill: var(--color-secondary);
    }

    &.has-special .c--new-label {
        display: none !important;
    }
}

.product-grid .auto-carousel-buttons {
    gap: var(--item-spacing);
}

/* EOF Product Card */

/* SOF Category */

.products-filter > .select-group {
    margin-inline-start: 0;
}

.module-filter .panel-title .accordion-toggle {
    flex-direction: row-reverse;
    justify-content: space-between;
    padding: 8px;
}

/* EOF Category */

/* SOF Product */

.product-price-group .price-doseis {
    color: var(--color-secondary);
}

.product-blocks.blocks-default .product_extra > div {
    display: flex;
    justify-content: space-between;

    & .title {
        width: 300px;
        height: fit-content;
        padding: var(--item-spacing);
    }

    & .block-body {
        max-width: 650px;
    }
}

.product-details .buttons-wrapper .btn-cart:hover .btn-text {
    transform: translateX(100px);
}

.tags a {
    background-color: var(--color-gray);
    padding: var(--item-spacing);
    border-radius: var(--radius-default-button);
    margin-right: 5px;
}

/* EOF Product */

/* SOF Cart */

:is(.cart-table, .cart-section) .td-qty .input-group {
    flex-direction: column;

    & .stepper {
        border-radius: var(--radius-button-6) !important;
    }

    & .input-group-btn {
        justify-content: space-between;
    }
}

.cart-table table {
    border-radius: var(--radius-default);


    & .td-image .img-thumbnail {
        border-radius: var(--radius-default);
    }
}

.cart-bottom .panels-total .panel-group .panel {
    background-color: var(--color-light-gray);
    padding: var(--item-spacing);
    border-radius: var(--radius-default);
    margin-bottom: calc(var(--item-spacing)/2);

    & .accordion-toggle {
        flex-direction: row-reverse;
        justify-content: space-between;
    }
}

.cart-total {
    border-radius: var(--radius-default);

    & .table-responsive {
        border-radius: var(--radius-default);
    }

    & tr td:first-child {
        text-align: left !important;
    }
}

.cart-page .cart-table table {
    padding: 8px;
    
    & td {
        position: relative;
    }
}

.cart-page .cart-table table td:not(:last-child)::after {
    content: "";
    position: absolute;
    right: 0;
    top: 0;
    height: 100%;
    width: 1px;
    background-color: var(--color-gray);
}

/* EOF Cart */

/* SOF Checkout */

.checkout-section.section-login .login-options {
    flex-direction: column;
    gap: 0;
}

.checkout-section .radio label {
    margin-bottom: 0;
}

.section-register .section-body {
    gap: calc(var(--item-spacing)/2);
}

.cart-section .section-body > table {
    background-color: var(--color-white) !important;
    border-radius: var(--radius-default);
}

.confirm-section .confirm-buttons #quick-checkout-button-confirm {
    border-radius: var(--radius-button-6) !important;
    margin-left: auto;
}

.success-social a {
    font-size: 0;

    &::before {
        font-size: 28px;
    }
}

.success-social .skroutz-icon::before {
    content: url("/catalog/view/theme/journal3/svg/skroutz.svg");
    visibility: visible;
}

#common-success #content {
    display: flex;
    flex-direction: column;
    gap: var(--item-spacing);
}

/* EOF Checkout */

/* SOF Account */

#account-login .page-title {
    margin-bottom: var(--item-spacing) !important; 
}

.login-box {
    border-radius: var(--radius-default);
    
    & .col-sm-6 {
        padding: 50px;

        &:first-child {
            background-color: var(--color-primary);
            border-top-right-radius: var(--radius-default);
            border-bottom-right-radius: var(--radius-default);

            & .well {
                color: var(--color-white);

                & .title {
                    color: var(--color-white);
                }
            }
        }

        &:nth-child(2) {
            background-color: var(--color-light-gray);
            border-top-left-radius: var(--radius-default);
            border-bottom-left-radius: var(--radius-default);

            & .buttons .btn.btn-primary {
                border: none;
            }
        }
    }
}

/* EOF Account */

/* SOF Footer */

.c--telephone-footer .info-block-content {
    flex-direction: row;
    gap: var(--item-spacing);
    align-items: center;
}

.module-newsletter .newsletter-form .input-group-btn button {
    flex-direction: row-reverse;
}

.c--go-on-top a::before {
    content: url('/catalog/view/theme/journal3/svg/ontop.svg') !important;
    visibility: visible;
}

/* EOF Footer */

@media only screen and (max-width: 600px) {
    .c--portfolio .block-wrapper :is(.block-content, .title) {
        display: none;
    }
}
  
.menu-item .count-badge {
    display: none !important;
}

.module-newsletter .input-captcha {
    display: none;
}

.module-newsletter .checkbox :is(label, a) {
	color: #fff;
}
.mobile-cart-content-wrapper .cart-products .td-image {
	align-content: center;
}

@media only screen and (max-width: 1500px) {
    .desktop-main-menu-wrapper .main-menu-item .links-text {
  	    text-align: center;
    }
}

@media only screen and (min-width: 1025px) {
    .desktop-main-menu-wrapper .c--main-menu .menu-item.parent {
  	    display: none;
    }
}

.route-extension-information-gdpr_request {
    & .title.page-title {
  	    text-align: left;
    }

    & fieldset {
  	    display: flex;
        flex-direction: column;
        gap: 16px;
    }
  
    & form legend {
  	    text-align: left;
    
        & p {
    	    font-size: 18px;
    	    text-transform: none;
        }
    }
}

@media only screen and (max-width: 1300px) {
    .buttons-wrapper .btn-cart:hover .btn-text {
        transform: translateX(0);
    }
}

@media only screen and (max-width: 1200px) {
    .mid-bar .main-menu .main-menu-item a::before {
        margin-right: 0;
    }

    .c--top-banners .slide-cols .slide-text-item b {
        font-size: 36px !important;
    }

    .product-details .buttons-wrapper .btn-cart:hover .btn-text {
        transform: translateX(0);
    }
}

@media only screen and (min-width: 1025px) {
    .c--category-blocks .auto-grid-items {
        display: grid;
        grid-template-columns: repeat(8, 1fr);
        gap: 10px;

        .block-item:nth-child(1),
        .block-item:nth-child(2),
        .block-item:nth-child(3),
        .block-item:nth-child(4) {
            grid-column: span 2;
        }
        
        .block-item:nth-child(5) {
            grid-column-start: 2;
            grid-column-end: 4;
        }
        
        .block-item:nth-child(6) {
            grid-column-start: 4;
            grid-column-end: 6;
        }
        
        .block-item:nth-child(7) {
            grid-column-start: 6;
            grid-column-end: 8;
        }
        
        .block-item:nth-child(8),
        .block-item:nth-child(9),
        .block-item:nth-child(10),
        .block-item:nth-child(11) {
            grid-column: span 2;
        }
    }
}

@media only screen and (max-width: 1024px) {
    .mobile-cart-wrapper em::before {
        content: url('/catalog/view/theme/journal3/svg/cart.svg');
        visibility: visible;
        filter: invert(1);
    }

    .mobile-bar {
        padding: var(--item-spacing) 0;
    }

    .mobile-header .mobile-custom-menu.mobile-custom-menu-1 {
        border-radius: var(--radius-round);
        margin-right: calc(var(--item-spacing)/2);

        &::before {
            content: url('/catalog/view/theme/journal3/svg/user.svg');
            visibility: visible;
            filter: invert(1);
        }
    }

    .mobile-header .menu-trigger {
        border-radius: var(--radius-round);
        margin-left: calc(var(--item-spacing)/2);
        order: 99;

        & .menu-icon::before {
            content: url('/catalog/view/theme/journal3/svg/menu.svg');
            visibility: visible;
            filter: invert(1);
        }
    }

    .mobile-search-wrapper.mini-search {
        margin-right: calc(var(--item-spacing)/2);

        & .dropdown-toggle.search-trigger {
            width: 38px;
            border-radius: 100px;
        }
    }

    .module-newsletter .newsletter-form {
        width: 100%;

        & form {
            width: 100%;
    
            & .input-group {
                flex-direction: column;
                width: 100%;
                height: auto;
                gap: var(--item-spacing);
    
                & .input-group-btn > button {
                    position: relative;
                }
    
                & input {
                    width: 100% !important;
                }
            }
        }
    }
}

@media only screen and (max-width: 768px) {
    .auto-grid {
        flex-direction: column-reverse;

        & .auto-carousel-buttons {
            top: auto !important;
            margin-top: auto !important;
            bottom: -50px;
            gap: 8px;
        }
    }
}

@media only screen and (max-width: 600px) {
    .product-layout > .product-labels .product-label svg {
        width: 60px;
        height: 60px;
    }
    
    .c--blocks .info-block img {
        max-height: max-content;
    }

    .buttons-wrapper .btn-cart::after {
        display: none;
    }

    .product-blocks.blocks-default .product_extra > div {
        display: block;
    }
}