/**
Theme Name: OSP
Author: Sotirios Boutris - RDC
Author URI: https://www.rdc.gr
Description: Custom theme design for OSP - Odontiatrikos Syllogos Peiraia
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: osp
Template: astra
*/

:root {
    --ospblue: #119CBF;
    --sintagografisi: #AF4D98;
    --omospondia: #E89063;
    --blackish: #282f3b;
}

body {
    background-image: url('/wp-content/uploads/2024/07/body-bg.png');
    background-repeat: no-repeat;
    background-attachment: fixed;
    background-size: cover;
}

span.emphasis {
    color: var(--ospblue);
    font-weight: 700;
}

.hidden {
    display: none;
}

.elementor-location-header .elementor-sticky {
    z-index: 100;
    box-shadow: rgba(0, 0, 0, 0.09) 0px 3px 25px 0px;
}

.mh-605 {
    max-height: 605px;
}
.maxw-584 {
    max-width: 584px !important;
    width: 100%;

    & a {
        width: 100%;
    }
}

.file-iconbox:hover {
	& > div {
    	box-shadow: 6px 6px 15px #00000029;
	}
	& svg path {
    	fill: var(--blackish);
	}
	& .elementor-icon-box-title a {
		color: var(--ospblue);
	}
}

.archive.category, .archive.tax-listing-category, .archive.tax-katigoria-ekdilosis, .archive.tax-offer-category {
    & #content {
        & > .ast-container {
            max-width: 100%;
        }
    }
}

.single-periodiko {
    & #content {
        & > .ast-container {
            max-width: 100%;
            padding-left: 0px;
            padding-right: 0px;

            & #primary {
                margin: 0;

                & #main {
                    & > .ast-article-single {
                        padding: 0;
                        background-color: transparent;
                    }
                }
            }
        }
    }
}

.single-aggelia {
    & #content {
        & > .ast-container {
            max-width: 100%;
            padding-left: 0px;
            padding-right: 0px;

            & #primary {
                margin: 0;

                & #main {
                    & > .ast-article-single {
                        padding: 0;
                        background-color: transparent;

                        & .listing-images {
                            & .elementor-gallery__container {
                                display: grid;
                                grid-template-columns: repeat(4, 1fr);
                                grid-template-rows: repeat(2, 1fr);
                                grid-column-gap: 16px;
                                grid-row-gap: 16px;
                                
                                
                                & a:nth-of-type(1) { grid-area: 1 / 1 / 3 / 3; }
                                & a:nth-of-type(2) { grid-area: 1 / 3 / 2 / 4; }
                                & a:nth-of-type(3) { grid-area: 1 / 4 / 2 / 5; }
                                & a:nth-of-type(4) { grid-area: 2 / 3 / 3 / 4; }
                                & a:nth-of-type(5) { grid-area: 2 / 4 / 3 / 5; }
                            }
                        }

                        & .listing-gallery {
                            display: grid;
                            grid-template-columns: repeat(4, 1fr);
                            grid-template-rows: repeat(2, 1fr);
                            grid-column-gap: 16px;
                            grid-row-gap: 16px;
                            height: 352px;

                            & .e-gallery-image {
                                height: 100%;
                                border-radius: 6px;
                                background-position: center top;
                                background-size: cover;

                                & .listing-gallery-overlay {
                                    display: flex;
                                    width: 100%;
                                    height: 100%;
                                    background: rgb(0 0 0 / 50%);
                                    color: white;
                                    justify-content: center;
                                    align-items: center;
                                    font-size: 23px;
                                    font-weight: 700;
                                    border-radius: 6px;
                                }
                            }

                            &.grid5p {
                                & a:nth-of-type(1) { grid-area: 1 / 1 / 3 / 3; }
                                & a:nth-of-type(2) { grid-area: 1 / 3 / 2 / 4; }
                                & a:nth-of-type(3) { grid-area: 1 / 4 / 2 / 5; }
                                & a:nth-of-type(4) { grid-area: 2 / 3 / 3 / 4; }
                                & a:nth-of-type(5) { grid-area: 2 / 4 / 3 / 5; }
                            }

                            &.grid4p {
                                & a:nth-of-type(1) { grid-area: 1 / 1 / 3 / 2; }
                                & a:nth-of-type(2) { grid-area: 1 / 2 / 3 / 3; }
                                & a:nth-of-type(3) { grid-area: 1 / 4 / 3 / 5; }
                                & a:nth-of-type(4) { grid-area: 1 / 3 / 3 / 4; }
                            }

                            &.grid3p {
                                grid-template-columns: repeat(3, 1fr);

                                & a:nth-of-type(1) { grid-area: 1 / 1 / 3 / 2; }
                                & a:nth-of-type(2) { grid-area: 1 / 2 / 3 / 3; }
                                & a:nth-of-type(3) { grid-area: 1 / 3 / 3 / 4; }
                            }

                            &.grid2p {
                                & a:nth-of-type(1) { grid-area: 1 / 1 / 3 / 3; }
                                & a:nth-of-type(2) { grid-area: 1 / 3 / 3 / 5; }
                            }

                            &.grid1p {
                                grid-template-columns: repeat(3, 1fr);

                                & a:nth-of-type(1) { grid-area: 1 / 1 / 3 / 3; }
                            }
                        }

                        
                    }
                }
            }
        }
    }
}



#bank-accounts {
    display: flex;
    flex-direction: row;
    gap: 30px;

    & .bank-account {
        border: 1px solid #E6EBEE;
        border-radius: 10px;
        padding: 9px;
        display: flex;
        flex-direction: row;
        gap: 26px;
        width: 100%;
        min-width: 533px;

        & .bank-logo {
            border-radius: 6px;
            background: #F7F8FA;
            width: 170px;
            height: 170px;
            display: flex;
            align-items: center;
            justify-content: center;
            flex-shrink: 0;
            flex-grow: 0;

            & img {
                max-width: 98px;
                width: 100%;
                height: auto;
                mix-blend-mode: multiply;
            }
        }

        & .bank-name {
            color: #282F3B;
            font-size: 13.33px;
            font-weight: 700;
            line-height: 1;
            width: 100%;
            padding-bottom: 12px;
            border-bottom: 1px solid #D0D8DC;
            margin-bottom: 15px;
            padding-top: 29px;
            width: 100%;
        }

        & .bank-details {
            width: 100%;
            position: relative;

            

            & .account-no, .account-iban {
                color: var(--blackish);
                font-size: 13.33px;
                font-weight: 400;
                line-height: 24px;
                width: calc(100% - 70px);

                & strong {
                    color: var(--ospblue);
                    font-weight: 700;
                }
            }
        }
    }
}

@media screen and (max-width: 1280px){
    #bank-accounts {
        flex-direction: column;
    }
}

@media screen and (max-width: 767px){
    #bank-accounts {
        & .bank-account {
            flex-direction: column;
            gap: 0;
            width: 100%;
            min-width: 100%;
            align-items: center;
            padding: 9px 29px 29px 29px;

            & .bank-details {
                & .account-no, .account-iban {
                    width: 100%;
                }

                & .copy-container {
                    position: relative;
                    right: 0;
                    top: 16px;
                    margin: 0 auto;
                }
            }
        }
    }
}

.copy-container {
    width: 70px;
    position: absolute;
    right: 0;
    top: 85px;

    & .copy-icon {
        width: 40px;
        height: 40px;
        background: #E6EBEE;
        display: flex;
        align-items: center;
        justify-content: center;
        border-radius: 60px;
        margin: 0 auto;
    
        &:hover {
            & svg path { fill: #1E2021; }
        }
    }
    
    & .copied {
        color: #24B86E;
        font-size: 11.85px;
        line-height: 15px;
        text-align: center;
        display: none;

    }

    &.copy-ok {
        & .copy-icon { display: none; }
        & .copied { display: block; }
    }
}


.archive.tax-listing-category {
    & #listing-categories {
        display: flex;
        flex-direction: row;
        gap: 12px;
        flex-wrap: wrap;

        & .listing-term {
            color: #282F3B;
            font-size: 13px;
            line-height: 16px;
            font-weight: 400;
            letter-spacing: 1.27px;
            padding: 14px 20px;
            border: 1px solid #D4D7DE;
            border-radius: 22px;
            transition: all 0.3s;
            text-transform: uppercase;

            &:hover {
                background-color: var(--ospblue);
                border-color: var(--ospblue);
                color: white; 
            }

            &.active {
                background-color: var(--ospblue);
                border-color: var(--ospblue);
                color: white;
            }
        }
    }

    & #aggelies-loop .elementor-loop-container > div {
        border-radius: 10px;
    }
}

.tropoi-pliromis {
    & .elementor-tab-title {
        border-radius: 39px;
        & .elementor-toggle-icon {
            & svg {
                width: 27px !important;
                height: 27px !important;
            }
        }
    }
}

.oikonomikos-apologismos {
    & .elementor-icon-list-item {
        & a {
            justify-content: space-between !important;
            flex-direction: row-reverse;
            width: 100%;
        }
    }
}

.faq {
    & .elementor-toggle-item {
        border-radius: 31px !important;
        overflow: hidden;
    }
    & .elementor-tab-title {
        display: flex;
        flex-direction: row-reverse;
        width: 100%;
        justify-content: space-between;
        align-items: center;
    }
}

/*! KATIGORIA NEA ODONTIATRON */
.elementor-page-159,
.elementor-page-528 {
    & .e-loop-item.post {
        border-radius: 20px;
        border-bottom: none;

        & .elementor-icon-list-text, .elementor-icon-list-text a {
            color: var(--ospblue) !important;
        }
    } 
    
    & #post-categories {
        & a.active, a:hover, h3{
            color: var(--ospblue) !important;
        }        
    }
}

/*! KATIGORIA E-SYNTAGOGRAFISI */
.elementor-page-466,
.elementor-page-541 {
    & .e-loop-item.post {
        border-radius: 20px;
        border-bottom: none;

        & .elementor-icon-list-text, .elementor-icon-list-text a {
            color: var(--sintagografisi) !important;
        }
    }  
    
    & #post-categories {
        & a.active, a:hover, h3{
            color: var(--sintagografisi) !important;
        }        
    }       
}

/*! KATIGORIA NEA OMOSPONDIAS */
.elementor-page-485,
.elementor-page-546 {
    & .e-loop-item.post {
        border-radius: 20px;
        border-bottom: none;

        & .elementor-icon-list-text, .elementor-icon-list-text a {
            color: var(--omospondia) !important;
        }
    }  
    
    & #post-categories {
        & a.active, a:hover, h3{
            color: var(--omospondia) !important;
        }        
    }       
}

/*! KATIGORIA NOMOTHESIA */
.elementor-page-10498,
.elementor-page-10504 {
    & .e-loop-item.post {
        border-radius: 20px;
        border-bottom: none;

        & .elementor-icon-list-text, .elementor-icon-list-text a {
            color: var(--blackish) !important;
        }
    }  
    
    & #post-categories {
        & a.active, a:hover, h3{
            color: var(--blackish) !important;
        }        
    }       
}

/*! KATIGORIA NEA KOINOU */
.elementor-page-10510,
.elementor-page-10516 {
    & .e-loop-item.post {
        border-radius: 20px;
        border-bottom: none;

        & .elementor-icon-list-text, .elementor-icon-list-text a {
            color: #6369B9 !important;
        }
    }  
    
    & #post-categories {
        & a.active, a:hover, h3{
            color: #6369B9 !important;
        }        
    }       
}

#post-categories {
    background: white;
    border-radius: 20px;
    display: flex;
    flex-direction: column;
    width: 100%;
    padding: 36px 30px;

    & h3 {
        font-size: clamp(20px, 2vw, 28px);
        line-height: 1.2;
        font-weight: 700;
        margin-bottom: 35px;
    }

    & a {
        color: #707070;
        font-size: 16px;
        line-height: 18px;
        width: 100%;
        padding-bottom: 17.5px;
        border-bottom: 1px solid #E7EBF2;
        margin-bottom: 26px;
        text-transform: uppercase;
        font-weight: 400;
    }
}

.elementor-pagination {
    margin-top: 62px;
    display: flex;
    gap: 20px;
    justify-content: center;

    & .page-numbers {
        width: 56px;
        height: 56px;
        border-radius: 56px;
        background-color: transparent;
        color: var(--blackish);
        font-size: 19px;
        line-height: 1.2;
        font-weight: 700;
        display: flex;
        align-items: center;
        justify-content: center;
        margin: 0 !important;
        transition: all 0.3s;

        &.prev {
            transform: rotate(180deg);
            background-color: transparent !important;
        }

        &.next {
            background-color: transparent !important;
        }

        &.dots {

        }

        &.current {
            background-color: var(--ospblue);
            color: white;
        }
    }

    & a.page-numbers:hover {
        background-color: var(--ospblue);
        color: white;
    }
}

@media screen and (max-width: 600px){
    .elementor-pagination {
        gap: 10px;
    
        & .page-numbers {
            width: 40px;
            height: 40px;
            border-radius: 40px;
            background-color: transparent;
            color: var(--blackish);
            font-size: 19px;
            line-height: 1.2;
            font-weight: 700;
            display: flex;
            align-items: center;
            justify-content: center;
            margin: 0 !important;
            transition: all 0.3s;
        }
    }
}


#members-ds {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    row-gap: 135px;
    column-gap: 50px;
    justify-content: center;

    & .member-ds {
        width: calc((100% - 200px) / 5);
        min-width: 265px;
        pointer-events: none;

        & a { text-decoration: none; color: #272E3A; }
    
        & .member-img {            
            border-radius: 10px;
            overflow: hidden;
            margin-bottom: 22px;
            cursor: pointer;
            display: none;
        }

        & .member-name {
            font-size: 19px;
            line-height: 1.2;
            font-weight: 700;
            color: #272E3A;
            margin-bottom: 11px;
            cursor: pointer;
        }

        & .member-position {
            font-size: 16px;
            line-height: 21px;
            font-weight: 400;
            color: var(--blackish);
            margin-bottom: 5px;
            min-height: 21px;
            width: 100%;
        }

        & .member-eidikotita {
            font-size: 14px;
            line-height: 19px;
            font-weight: 400;
            color: var(--ospblue);
            width: 100%;
            display: -webkit-box;
            -webkit-line-clamp: 4;
            -webkit-box-orient: vertical;  
            overflow: hidden;
            /* min-height: 60px; */
        }

        & .member-separator {
            padding-bottom: 12px;
            width: 100%;
            border-bottom: 2px solid #F5F7F9;
            margin-bottom: 19px;
        }

        & .member-details {
            display: flex;
            flex-direction: column;
            gap: 21px;

            & > div {
                /* padding-left: 27px; */
                width: 100%;
                color: var(--blackish);
                font-size: 13px;
                line-height: 16px;
                font-weight: 400;
                text-decoration: none !important;
                position: relative;
                display: flex;
                align-items: center;

                & .icon {
                    background-position: left center !important;
                    width: 27px;
                    height: 20px;
                    display: block;  
                    background-repeat: no-repeat !important;                  
                }                
            }
            & .member-address {
                & .icon {
                    background: url("/wp-content/uploads/2024/07/location-pin.svg");                        
                }
            }

            & .member-email {
                & .icon {
                    background: url('/wp-content/uploads/2024/07/email-header.svg');
                }
            }

            & .member-phones {
                & .icon {
                    background: url('/wp-content/uploads/2024/07/phone-header.svg');
                }
            }
        }
    }
}

.popup-open {
    overflow: hidden;
}

.team-popup {
    position: relative;
    z-index: 999;
    display: none;

    &.opened {
        display: block;
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
    }

    & .team-popup-overlay {
        position: absolute;
        z-index: 9991;
        inset: 0;
        display: flex;
        align-items: center;
        justify-content: center;
        background-color: var(--blackish);

        & .team-popup-close {
            width: 20px;
            height: 20px;
            position: absolute;
            top: 40px;
            right: 40px;
            background-size: cover;
            background-position: center center;
            background-repeat: no-repeat;
            cursor: pointer;

            & path {
                fill: white;
            }
        }

        & .team-popup-inner {
            position: absolute;
            z-index: 9992;
            width: calc(100% - 30px);
            max-width: 1220px;
            margin: 0 auto;
            display: flex;
            flex-direction: row;
            /* height: 757px; */
            gap: 105px;

            & .team-popup-image {
                width: 207px;
                height: 100%;
                flex-shrink: 0;
                flex-grow: 0;

                & img {
                    border-radius: 10px;
                }
            }

            & .team-popup-content {
                width: 100%;
                height: 100%;
                padding: 0;
                position: relative;



                & .team-name {
                    & h3 {
                        font-size: 19px;
                        color: #ffffff;
                        font-weight: 700;
                        line-height: 1.2;
                        margin-bottom: 11px;
                    }
                }

                & .team-position {
                    & h4 {
                        font-size: 19px;
                        color: var(--ospblue);
                        font-weight: 400;
                        line-height: 23px;
                        margin-bottom: 32px;
                    }
                }

                & .team-cv {
                    max-height: 570px;
                    max-width: 802px;
                    overflow-y: auto;
                    /* margin-bottom: 84px; */

                    font-size: 16px;
                    font-weight: 400;
                    line-height: 23px;
                    color: white;

                    & * {
                        color: white;
                    }
                }
            }
        }
    }
}

@media screen and (max-width: 900px){
    .team-popup {
        & .team-popup-overlay {
            align-items: flex-start;
            justify-content: center;
            padding: 80px 0px;

            & .team-popup-inner {
                gap: 50px;
                overflow-y: auto;
                height: 100%;
            
                & .team-popup-image {
                    margin: 0 auto;
                    height: fit-content;
                }

                & .team-popup-content {
                    & .team-name {
                        & h3 {
                            text-align: center;
                        }
                    }

                    & .team-position {
                        & h4 {
                            text-align: center;
                        }
                    }

                    & .team-cv, .team-cv p {
                        overflow: hidden;
                    }
                }
            }
        }
    }
}


@media screen and (max-width: 767px){
    .team-popup {
        & .team-popup-overlay {
            & .team-popup-inner {
                flex-direction: column;
            }
        }
    }
}


/*! CART PAGE */
.elementor-widget-woocommerce-cart {
    & .woocommerce {
        display: flex;
        flex-direction: column-reverse;
    }
    & .e-cart-section.e-cart-totals {
        background: #F5F7F9;
        border: none;
        border-radius: 22px;
        padding: 33px 26px 40px;

        & .cart_totals {
            & h2 {
                color: #272E3A;
                font-weight: 700;
                font-size: clamp(20px, 2vw, 28px);
                line-height: 1.2;
                padding: 0px;
                margin-bottom: 37px;
            }

            & table {
                & tr {
                    box-shadow: 0 1px 0 0px #302D35;

                    & th {
                        color: #272E3A;
                        font-weight: 400 ;
                        font-size: 16px;
                        line-height: 23px;
                    }

                    &:first-of-type {
                        & td {
                            padding-top: 0px;
                        }
                    }

                    &:last-of-type {
                        box-shadow: none;
                    }

                    & td {
                        padding-top: 15px;
                        padding-bottom: 15px;

                        &:before {
                            color: #272E3A;
                            font-weight: 400 !important;
                            font-size: 16px;
                            line-height: 23px;
                        }

                        & .woocommerce-Price-amount {
                            color: #272E3A;
                            font-weight: 700 !important;
                            font-size: 16px;
                            line-height: 23px;
                        }
                    }
                }            
            }

            & .wc-proceed-to-checkout .checkout-button {
                background-color: var(--ospblue) !important;
                border-radius: 22px !important;
                padding: 15px 22px !important;
                width: 100% !important;
                font-size: 16px !important;
                line-height: 18px !important;
                font-weight: 700 !important;
                transition: all 0.3s;

                &:hover {
                    background-color: #272E3A !important;
                }
            }
        }
    }
    & .e-shop-table.e-cart-section {
        padding: 0px;
        border: none;

        & thead {
            display: none;
        }

        & tbody {
            & tr {
                display: flex;
                align-items: center;
                gap: 14px;
                border-bottom: 1px solid #f5f7f9 !important;
                
                & td {
                    border-top: none !important;
                    min-height: auto !important;

                    &.product-remove {
                        flex-grow: 0;
                        flex-shrink: 0;
                    
                        & a {
                            display: inline-block;
                            aspect-ratio: 1;
                            height: 24px;
                        }
                    }
                    &.product-thumbnail {
                        width: 55px !important;
                        max-width: 55px !important;
                        padding-top: 14px !important;
                        padding-right: 0px !important;
                        padding-bottom: 14px !important;
                        flex-shrink: 0;
                        flex-grow: 0;
                    }
                    &.product-name {
                        flex-grow: 1;
                        padding: 0px !important;

                        & a {
                            color: #272E3A !important;
                            font-size: 16px !important;
                            line-height: 23px !important;
                            font-weight: 700 !important;
                            max-height: 55px !important;
                            overflow: hidden !important;    
                        }
                    }
                    &.product-price {
                        display: none;
                        padding: 0px !important;
                    }
                    &.product-quantity {
                        display: none;
                        padding: 0px !important;

                        & .quantity {
                            background: #F5F7F9;
                            border-radius: 17px;
                            display: flex;
                            flex-direction: row;
                            align-items: center;
                            justify-content: center;
                            position: relative;
                            padding: 7px 12px;

                            & .qty {
                                border: none !important;
                                /* margin: 0 !important; */
                                text-align: center;
                                /* padding: 0 40px; */
                                font-size: 14px;
                                min-height: 16px !important;
                                max-height: 16px !important;
                            }

                            & button {
                                width: 10px !important;
                                padding: 0px !important;
                                border: none !important;
                                background-color: transparent !important;
                                
                                /* position: absolute;
                                top: 0;
                                width: 30px;
                                height: 100%;
                                border: none;
                                background-color: #f2f2f2;
                                cursor: pointer; */
                            }
                        }
                    }
                    &.product-subtotal {
                        padding: 0px !important;
                        flex-grow: 0;
                        flex-shrink: 0;
                    }
                }
            }

            & td.actions .button {
                background-color: #F5F7F9 !important;
                border-radius: 22px !important;
                padding: 15px 22px !important;
                /* width: 100% !important; */
                font-size: 16px !important;
                line-height: 18px !important;
                font-weight: 700 !important;
                border: none !important;
                transition: all 0.3s;

                &:hover {
                    background-color: #272E3A !important;
                }
            }
        }
    }

    & .e-cart-section.coupon {
        border: none;
        padding: 15px 16px;
        background: #F5F7F9;
        border-radius: 24px;
        position: relative;

        &:before {
            content: "Κωδικός κουπονιού";
            position: absolute;
            top: -25px;
            font-size: 14px;
            font-weight: bold;
            line-height: 22px;
        }

        & #coupon_code {
            line-height: 18px;
            height: 18px !important;
            background: transparent !important;
            border: none !important;
            padding: 0 !important;
            font-size: 16px;
        }

        & button.button.e-apply-coupon {
            background-color: transparent;
            font-weight: 700;
            color: var(--blackish);
            padding: 0 !important;
            border: none !important;
            line-height: 20px !important;
            font-size: 16px !important;
            width: fit-content;
            height: 26px !important;
        }
    }

    & .woocommerce-notices-wrapper {
        & .woocommerce-message, .woocommerce-error, .woocommerce-info {
            border: none !important;
            background-color: transparent;
            padding: 10px 0 !important;
            
            &:before {
                display: none;
            }

            & li {
                font-size: 16px;
                line-height: 22px;
                font-weight: 400;
            }
        }

        & .woocommerce-message{
            color: #3DA267;
        }

        & .woocommerce-error {
            color: #D5445A;
        }

        & .woocommerce-info {
            color: #3DA267;
        }
    }
}

@media screen and (max-width: 767px){
    .elementor-widget-woocommerce-cart {
        & .e-shop-table.e-cart-section {
            & tbody {
                & tr {
                    & td {
                        &.product-thumbnail {
                        }
                        &.product-name {
                            &:before {
                                display: none;
                            }
                        }
                        &.product-subtotal {
                            &:before {
                                display: none;
                            }
                        }
                    }
                }
            }
        }
    }
}

@media screen and (max-width: 500px){
    .elementor-widget-woocommerce-cart {
        & .e-shop-table.e-cart-section {
            & tbody {
                & tr {
                    & td {
                        &.product-thumbnail {
                            display: none;
                        }
                    }
                }
            }
        }
    }
}

.quantity .minus {
    left: 0;
}

.quantity .plus {
    right: 0;
}

/*! CHECKOUT */


.woocommerce-checkout {
    & #content {
        & #checkout-container {
            max-width: 100%;

            & .woocommerce-notices-wrapper {
                & .woocommerce-message, .woocommerce-error, .woocommerce-info {
                    border: none !important;
                    background-color: transparent;
                    padding: 10px 0 !important;
                    
                    &:before {
                        display: none;
                    }
        
                    & li {
                        font-size: 16px;
                        line-height: 22px;
                        font-weight: 400;
                    }
                }
        
                & .woocommerce-message{
                    color: #3DA267;
                }
        
                & .woocommerce-error {
                    color: #D5445A;
                }
        
                & .woocommerce-info {
                    color: #3DA267;
                }
            }

            & form #order_review_heading:not(.elementor-widget-woocommerce-checkout-page #order_review_heading) {
                border: none !important;
                background: #E7EBF2;
                border-radius: 20px 20px 0 0;
            }
            & form #order_review:not(.elementor-widget-woocommerce-checkout-page #order_review) {
                border: none !important;
                background: #E7EBF2;
                border-radius: 0 0 20px 20px;
            }

            & form { 
                & .form-row {
                    margin-bottom: 23px;

                    & label {
                        line-height: 23px !important;
                        font-weight: 400 !important;
                        font-size: 16px !important;
                        margin-bottom: 11px !important;
                    }
                }
            }

            & #payment {
                & ul.payment_methods li {
                    display: flex;
                    flex-wrap: wrap;
                    flex-direction: row;
                    align-items: center;

                    & input {
                        cursor: pointer;
                        margin: 0 9px 0 0 !important;
                        width: 18px !important;
                        height: 18px !important;
                    }

                    & label {
                        font-size: 16px;
                        line-height: 18px;
                        font-weight: 700;
                    }

                    & div.payment_box {
                        background-color: #ffffff;
                        margin-bottom: 30px;
                        margin-top: 20px;
                        
                        &:before {
                            border-bottom-color: #ffffff;
                        }
                    }
                }

                & .woocommerce-terms-and-conditions-wrapper {
                    margin-top: 25px;
                }
            }

            

            & button#place_order {
                background-color: var(--ospblue) !important;
                border-radius: 22px !important;
                padding: 15px 22px !important;
                width: 100% !important;
                font-size: 16px !important;
                line-height: 18px !important;
                font-weight: 700 !important;
                transition: all 0.3s;

                &:hover {
                    background-color: #272E3A !important;
                }
            }

            & .woocommerce form .form-row-first, .woocommerce form .form-row-last, .woocommerce-page form .form-row-first, .woocommerce-page form .form-row-last {
                width: 100%;
            }
            & input[type="text"], input[type="email"], input[type="tel"] {
                background: #f5f7f9 !important;
                border: none !important;
                border-radius: 24px !important;
            }

            & textarea#order_comments {
                border-radius: 20px !important;
                border: none !important;
                background: #f5f7f9 !important;
                min-height: 172px !important;
            }
            & span.select2-selection { 
                background: #f5f7f9 !important;
                border: none !important;    
                border-radius: 24px !important;
            }

            & .woocommerce-form-coupon-toggle {
                & .woocommerce-info {
                    border: none;
                    background-color: #f5f7f9;
                    padding: 20px;
                    border-radius: 29px;
                    font-size: 16px;
                    line-height: 18px;

                    &:before {
                        display: none;
                    }

                    & a {
                        color: var(--blackish);
                        font-weight: bold;
                    }
                }

                
            }

            & .woocommerce-form-coupon {
                & button {
                    background-color: var(--ospblue) !important;
                    border-radius: 22px !important;
                    padding: 15px 22px !important;
                    width: 100% !important;
                    font-size: 16px !important;
                    line-height: 18px !important;
                    font-weight: 700 !important;
                    transition: all 0.3s;
                    margin-top: 15px;

                    &:hover {
                        background-color: var(--blackish);
                    }
                    
                }
            }

            & #customer_details h3:not(.elementor-widget-woocommerce-checkout-page h3) {
                padding: 0;
                margin: 0 0 42px 0;
                border-bottom: none;
                font-size: clamp(20px, 2vw, 28px);
                line-height: 1.2;
                color: var(--blackish);
                font-weight: 700;
            }

            & #order_review_heading {
                font-size: clamp(20px, 2vw, 28px);
                line-height: 1.2;
                color: var(--blackish);
                font-weight: 700;
                padding: 29px 29px 20px 29px;
            }

            & #order_review {
                padding: 0px 29px;

                & .woocommerce-checkout-review-order-table {
                    & td, th, td span {
                        font-size: 16px !important;
                        line-height: 23px !important;
                        font-weight: 700 !important;
                        color: var(--blackish) !important;
                    }
                    & tbody {
                        & tr {
                            & td:first-of-type{
                                font-weight: 400 !important;
                            }
                        }
                    }
                }
            }

            & .woocommerce-additional-fields h3 {
                margin-top: 40px !important;
            }
        }
    }
}

#timeline {
    display: flex;
    flex-wrap: nowrap;
    flex-direction: row;
    gap: 21px;
    padding: 0px 42px;
    overflow-x: scroll;

    & .timeline-item {
        display: flex;
        flex-direction: column;
        align-content: center;
        align-items: center;
        min-width: 360px;


    
        & .timeline-year {
            color: white;
            background: var(--ospblue);
            font-size: 19px;
            line-height: 21px;
            padding: 15px 56px;
            border-radius: 25px;
            margin-bottom: 20px;
            font-weight: bold;
            text-align: center;
        }

        & .timeline-divider {
            width: 100%;
            height: 2px;
            position: relative;
            background: #F5F7F9;

            &:before {
                content: "";
                display: block;
                width: 12px;
                height: 12px;
                border-radius: 12px;
                background: var(--ospblue);
                position: absolute;
                left: 50%;
                transform: translateX(-50%) translateY(-5px);
            }
        }

        &.active {
            & .timeline-divider {
                background: var(--ospblue);
            }

            & .timeline-container {
                background: var(--ospblue);

                & .timeline-title {
                    color: white;
                }
                & .timeline-description {
                    color: white;
                }
            }
        }
        
    
        & .timeline-container {
            /* position: relative; */
            /* border-top: 2px solid var(--ospblue); */
            margin-top: 27px;
            padding: 14px;
            border-radius: 10px;
            background: #F5F7F9;
            width: 100%;
    
            & .timeline-image {
                width: 100%;
                height: 224px;
                background-position: center top;
                background-repeat: no-repeat;
                background-size: cover;
                border-radius: 2px;
                margin-bottom: 47px;
            }
    
            & .timeline-title {
                color: #272e3a;
                font-size: clamp(19px, 1vw, 23px);
                line-height: 1.2;
                padding: 0;
                margin-bottom: 21px;
                font-weight: bold;
                text-align: center;
            }
    
            & .timeline-description {
                font-size: 16px;
                line-height: 23px;
                font-weight: 400;
                display: -webkit-box;
                -webkit-line-clamp: 4;
                -webkit-box-orient: vertical;  
                overflow: hidden;
                text-align: center;
                min-height: 92px;
                margin-bottom: 90px;
            }
        }
    }
}

#odontiatroi_wrapper {
    & label, .dt-search {
        display: flex;
        flex-direction: row;
        align-items: center;
        gap: 12px;
        font-family: 'proxima-nova';
        font-size: 16px;
        font-weight: 400;
    }

    & select {
        width: 63px;
        padding: 11px 12px;
        height: auto;
        border-radius: 8px;
        border-color: #282f3b;
        line-height: 1;
        background-size: 11px;
        background-repeat: no-repeat;
        background-position-x: calc(100% - 6px);
        background-position-y: center;    
    }

    & input[type="search"] {
        max-width: 180px;
        width: 100%;
        padding: 11px 12px;
        height: auto;
        border-radius: 8px;
        border-color: #282f3b;
        line-height: 1; 
    }

    & .dt-paging {
        margin-top: 75px;

        & nav {
            display: flex;
            flex-direction: row;
            gap: 10px;
            align-items: center;
            flex-wrap: nowrap;

            & button {
                margin: 0px;
                width: 56px !important;
                height: 56px !important;
                border: none !important;
                border-radius: 56px !important;
                font-weight: bold;
                font-size: 19px;
                line-height: 23px;
                font-family: 'proxima-nova';
                display: block !important;
                padding: .5em 0em;
                
                &.current {
                    background: #119CBF;
                    color: white !important;
                    pointer-events: none;
                }
                &:hover, :focus {
                    background: #119CBF;
                    color: white !important;
                }
                &.disabled {
                    display: none !important;
                }
                &.next {
                    background-image: url('/wp-content/uploads/2024/08/arrow-right.svg') !important;
                    background-size: contain;
                    background-position: center;
                    background-color: white !important;
                }
                &.previous {
                    background-image: url('/wp-content/uploads/2024/08/arrow-right.svg') !important;
                    background-size: contain;
                    background-position: center;
                    background-color: white !important;
                    transform: rotate(180deg);
                }
            }
            
        }
        
    }
}
#odontiatroi {
    border: none !important;

    & th {
        border: none !important;
        color: var(--ospblue);
        background: white;
        font-size: 13px;
        line-height: 16px;
        font-weight: bold;
        padding: 22px 19px;
    }

    & tr:nth-child(odd){
        background: #F5F7F9;
    }

    & tr:nth-child(even){
        background: #ffffff;
    }

    & td {
        font-size: 16px;
        line-height: 19px;
        font-weight: 400;
        color: #272e3a;
        border: none !important;
        padding: 14px 19px;
        font-family: 'proxima-nova';

        &.odontiatros-name a {
            text-decoration: none !important;
            color: #272e3a;
            font-family: 'proxima-nova';
            font-size: 16px;
            font-weight: bold;
        }
    }

    & .dt-type-numeric, .dt-type-date {
        text-align: left;
    }

    & .row-trigger {
        display: none;
    }
}

@media screen and (max-width: 767px) {
    #odontiatroi .row-trigger {
        display: block;
    }
}

.single-odontiatros {
    & #content {
        & > .ast-container {
            max-width: 100%;
            padding-left: 0px;
            padding-right: 0px;

            & #primary {
                margin: 0;

                & #main {
                    & > .ast-article-single {
                        padding: 0;
                        background-color: transparent;
                    }
                }
            }
        }
    }

    & .dentist-data {
        display: flex;
        flex-direction: column;
        gap: 32px;
        flex-wrap: nowrap;

        & > div {
            display: flex;
            gap: 13px;
            flex-wrap: nowrap;
            flex-direction: row;
            align-items: flex-start;
            color: #272E3A;
            font-size: clamp(16px, 2vw, 19px);
            font-family: 'proxima-nova';
            font-weight: 400;
            line-height: 23px;

            & .icon {
                height: 23px;
                display: flex;
                flex-direction: row;
                flex-wrap: nowrap;
                align-items: center;
                min-width: 19px;

                & img {
                    flex-shrink: 0;
                    flex-grow: 0;
                }
            }
        }
    }
}

.contact-info a {
    color: #272E3A;
    text-decoration: none !important;
}

.contact-form {
    & .wpforms-container-full {
        margin: 0 !important;

        & .wpforms-field{
            padding: 0 0 12px 0 !important;
    
            & input {
                background: #F5F7F9 !important;
                border: 1px solid #E7EBF2 !important;
                border-radius: 23px !important;
                box-shadow: none !important;
                padding: 0 20px !important;
                font-family: 'proxima-nova' !important;
                color: #515F78 !important;
            }
            & textarea {
                background: #F5F7F9 !important;
                border: 1px solid #E7EBF2 !important;
                border-radius: 23px !important;
                box-shadow: none !important;
                min-height: 150px !important;
                padding: 12px 20px !important;
                font-family: 'proxima-nova' !important;
                color: #515F78 !important;
            }
        }
    
        & .wpforms-submit-container {
            margin-top: 0px !important;
            box-shadow: none !important;
            border: none !important;
    
            & button.wpforms-submit {
                width: 100%;
                border-radius: 20px !important;
                background-color: #119CBF !important;
                height: 40px !important;
                font-family: 'proxima-nova' !important;
                font-size: 16px !important;
                font-weight: 400 !important;
                line-height: 19px !important;
    
                &:focus:after {
                    display: none !important;
                }
            }
        }
    }    
}

.single-ekdilosi {
    & #content {
        & > .ast-container {
            max-width: 100%;
            padding-left: 0px;
            padding-right: 0px;

            & #primary {
                margin: 0;

                & #main {
                    & > .ast-article-single {
                        padding: 0;
                        background-color: transparent;
                    }
                }
            }
        }
    }

    & h3.seminar-section-title {
        font-weight: bold;
        font-family: 'proxima-nova';
        margin-bottom: 30px;
        font-size: clamp(20px, 2vw, 28px);
        line-height: 1.2;
    }

    & #no-members {
        width: fit-content;
    }

    & .speaker {
        display: flex;
        flex-direction: row;
        max-height: 142px;
        border-radius: 71px;
        overflow: hidden;
        background: #f5f7f9;
        padding: 13px;
        gap: 53px;
        /* background: red; */
        margin-bottom: 14px;
        align-items: center;

        & .speaker-img img {
            width: 116px;
            height: 116px;
            object-fit: cover;
            border-radius: 100%;
            object-position: center top;
        }

        & .speaker-data {
            display: flex;
            flex-direction: row;
            align-items: center;
            gap: 145px;

            & .speaker-details {
                display: flex;
                flex-direction: column;
                gap: 14px;

                & .speaker-position h5 {
                    color: var(--ospblue);
                    font-size: 16px;
                    font-family: 'proxima-nova';
                    line-height: 1.2;
                    font-weight: 400;
                }

                & .speaker-name h4 {
                    color: var(--blackish);
                    font-size: 19px;
                    font-family: 'proxima-nova';
                    line-height: 1.2;
                    font-weight: 700;
                }
            }

            & .speaker-cv {
                margin-right: 35px;

                & a {
                    color: white;
                    font-size: 16px;
                    font-family: 'proxima-nova';
                    line-height: 18px;
                    font-weight: 400;
                    padding: 11px 22px;
                    width: 160px;
                    text-align: center;
                    border-radius: 20px;
                    background: var(--ospblue);
                    display: block;
                    height: 40px;
                    cursor: pointer;
                    text-decoration: none;
                }
            }
        }
    }

    & .sponsors {
        display: flex;
        flex-direction: row;
        align-items: center;
        flex-wrap: wrap;
        gap: 60px;

        & .sponsor img {
            max-width: 270px;
            max-height: 70px;
            width: 100%;
            height: auto;
        }
    }

    & #accordion-schedule {
        margin-bottom: 15px;

        & .accordion {
            background-color: #F5F7F9;
            color: #272E3A;
            cursor: pointer;
            padding: 18px 33px;
            width: 100%;
            text-align: left;
            border: none;
            outline: none;
            transition: 0.4s;
            margin-top: 11px;
            border-radius: 39px;
            font-size: clamp(18px, 2vw, 23px);
            line-height: 1.2;
            position: relative;
            display: flex;
            flex-direction: row;
            align-items: center;

            &:after {
                /* background: red; */
                width: 27px;
                height: 27px;
                display: block;
                content: "";
                position: absolute;
                right: 28px;
                background-image: url('/wp-content/uploads/2024/07/plus-big.svg');
                background-size: contain;
                background-position: center;
                background-repeat: no-repeat;
            }

            &.active:after {
                background-image: url('/wp-content/uploads/2024/07/minus-big.svg');
            }
        }
        
        & .active, .accordion:hover {
            /* background-color: #ccc; */
        }

        & .panel {
            padding: 15px 33px;
            background-color: white;
            display: none;
            overflow: hidden;
            /*!*/
            width: 100%;

            & .schedule-day {
                border-bottom: 2px solid #f5f7f9;
                margin-bottom: 30px;

                & .schedule-time {
                    color: var(--ospblue);
                    font-size: 19px;
                    line-height: 21px;
                    width: 100%;
                    font-family: 'proxima-nova';
                    font-weight: bold;
                    margin-bottom: 14px;
                    max-width: 1117px;
                }

                & .schedule-content {
                    color: var(--blackish);
                    font-size: 19px;
                    line-height: 29px;
                    width: 100%;
                    font-family: 'proxima-nova';
                    font-weight: 400;
                    max-width: 1117px;
                }

                
            }
            
            & .schedule-day:last-child { margin-bottom: 0px; }
        }
    }

    & .seminar-type {
        background: #F6EFA6;
        border-radius: 30px;
        width: 100%;
        text-align: center;
        font-weight: bold;
        color: var(--blackish);
        letter-spacing: 1.8px;
        padding: 9px 10px;
        line-height: 18px;
        margin-bottom: 25px;
    }
    
    & .sidepanel-notes {
        padding: 25px 20px;
        text-align: center;
        color: white;
        border: 1px solid white;
        border-radius: 10px;

        & p {
            margin-bottom: 0px;
        }
    }

    & .sidepanel-buy-btn {
		& button, a {
			width: 100%;
			padding: 0;
			background: var(--blackish);
			padding: 11px 22px;
			text-align: center;
			border-radius: 20px;
			display: block;
			font-size: 16px;
			line-height: 18px;
			box-shadow: inset 0 0 0 2px var(--blackish) !important;
			font-weight: 400;
			transition: all 0.3s;

			&:hover, :focus {
				box-shadow: inset 0 0 0 2px white !important;
				background: var(--ospblue);
			}
		}
    }

    & .sidepanel-section {
        display: flex;
        flex-direction: column;
        gap: 11px;
        border-bottom: 2px solid rgba(255, 255, 255, 0.2);
        margin-bottom: 2px;
        padding-bottom: 13px;

        & .side-section-title {
            color: var(--blackish);
            font-family: 'proxima-nova';
            font-size: 16px;
            font-weight: 700;
            line-height: 18px;            
        }

        & .side-section-content {
            color: white;
            font-family: 'proxima-nova';
            font-size: 16px;
            font-weight: 400;
            line-height: 24px;

            & p {
                margin-bottom: 0px;

                
            }

            & .starting-price {
                margin-left: 10px;
                opacity: 0.5;
                color: #ffffff;
            }
        }
    }

    & .wpforms-form {
        width: 100%;

        & .wpforms-field-container {
            display: flex;
            flex-wrap: wrap;
            /* row-gap: 10px; */
            column-gap: 8px;
            justify-content: center;

            & .wpforms-field {
                max-width: 340px !important;
                width: 100%;
                margin: 0px;
                padding: 5px 0px;

                & input {
                    border-radius: 23px;
                    color: var(--blackish);
                    font-size: 16px;
                    font-family: 'proxima-nova';
                    line-height: 18px;
                    font-weight: 400;
                    box-shadow: 0px 0px 1px #E7EBF2 !important;

                    &::placeholder {
                        color: #515F78;
                    }
                }
            }
			& .disabled {
				display: none;
			}
        }

        & .wpforms-submit-container {
            display: flex;
            flex-direction: column;
            align-items: center;

            & button {
                width: 172px;
                padding: 0;
                background: var(--blackish);
                padding: 11px 22px;
                text-align: center;
                border-radius: 20px;
                display: block;
                font-size: 16px;
                line-height: 19px;
                box-shadow: inset 0 0 0 2px var(--blackish) !important;
                font-weight: 400;
                transition: all 0.3s;
        
                &:hover, :focus {
                    box-shadow: inset 0 0 0 2px white !important;
                    background: var(--ospblue) !important;
                }

                &:focus:after {
                    display: none !important;
                }
            }
        }
    }

    & .seminar-to-whom, & .generic-description {
        font-family: 'proxima-nova';
        font-size: clamp(16px, 1vw, 19px);
        color: var(--blackish);
        line-height: 1.2;

        & ul {
            margin-left: 1.2em;

            & li {
                font-size: clamp(16px, 1vw, 19px);
                margin-bottom: 27px;
                line-height: 1.5;

                &::marker {
                    color: var(--ospblue);
                }
            }
        }

        & p {
            font-size: clamp(16px, 1vw, 19px);
            margin-bottom: 27px;
            line-height: 1.5;
        }

        & a {
            color: var(--ospblue);
        }
    }
      
      /* Add a background color to the button if it is clicked on (add the .active class with JS), and when you move the mouse over it (hover) */
    
      
      /* Style the accordion panel. Note: hidden by default */
     
}

@media screen and (max-width: 1200px) {
    .single-ekdilosi .speaker { 
        gap: 20px; 

        & .speaker-img {
            flex-shrink: 0;
        }

        & .speaker-data {
            display: flex;
            flex-direction: row;
            align-items: center;
            gap: 30px;
            justify-content: space-between;
            width: 100%;
        }
    }
}

@media screen and (max-width: 767px) {
    .single-ekdilosi .speaker { 
        & .speaker-data {
            display: flex;
            flex-direction: column;
            align-items: flex-start;
            gap: 15px;
            justify-content: space-between;
            width: 100%;

            & .speaker-details {
                gap: 5px;
            }
        }
    }
}

#elementor-menu-cart__toggle_button {
    width: 40px;
    height: 40px;
    border-radius: 100px;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
    align-content: center;
    border: none !important;
    box-shadow: inset 0 0 0 2px var(--ospblue);

    & .elementor-button-icon {

        & .elementor-button-icon-qty[data-counter] {
            top: -1.1em;
            inset-inline-end: -1.3em;
        }

        & svg {
            /* width: 17px; */
            height: auto;
            /* margin-left: -2px; */
        }
    }

    &:hover, :focus {
        & svg {
            & path {
                fill: var(--ospblue);
            }
        }
    }
}

#login-btn {
    & a.elementor-button {
/*         width: 122px !important; */
        text-align: left;
        display: flex;
        
        & span.elementor-button-icon {
            height: 22px;
            overflow: hidden;
    
            & svg {
                width: 22px;
                height: 22px;
                overflow: hidden;
            }

            
        }

        &:hover, :focus {
            & svg {
                & path {
                    fill: var(--ospblue);
                }
            }
        }
    }

    
}

#omospondia-latest a {
    text-decoration: none;
}

#nomothesia-cta {
    & .elementor-icon-box-icon {
        display: inline-flex !important;

        & a {
            width: 22px;

            & svg {
                position: absolute;
                transition: all 0.7s;
            }
        }
    }

    &:hover, :focus {
        & svg {
            right: -9px;

            & path {
                fill: var(--ospblue);
            }

        }
    }
}

#latest-posts-home {
    display: flex;
    flex-direction: row;
    gap: 80px;

    & .latest-left-col {
        flex-basis: 610px;
        flex-grow: 0;

        & .latest-post-data {
            padding: 0 14px;
        }
    
        & > div {
            display: flex;
            flex-direction: column;
            flex-wrap: nowrap;
            gap: 0px;
            justify-content: space-between;

            & .latest-post-image {
                width: 100%;
                flex-grow: 0;
                flex-shrink: 0;
                margin-bottom: 29px;

                & img {
                    width: 100%;
                    height: auto;
                    flex-grow: 0;
                    flex-shrink: 0;
                    border-radius: 20px;
                    overflow: hidden;
                    object-fit: cover;
                    object-position: center;
                }
            }

            & .latest-post-category {
                color: var(--ospblue);
                font-weight: 400;
                text-decoration: none;
                font-size: 16px;
                line-height: 19px;
                letter-spacing: 1.57px;
                margin-bottom: 23px;

                & a {
                    color: var(--ospblue);
                    font-weight: 400;
                    text-decoration: none;
                    font-size: 16px;
                    line-height: 19px;
                    letter-spacing: 1.57px;
                    text-transform: uppercase;
                }
            }
            & .latest-post-title {
                & a {
                    color: var(--blackish);
                    font-weight: bold;
                    text-decoration: none;
                    font-size: 23px;
                    line-height: 29px;
                    display: block;
                    margin-bottom: 15px;
                }
            }

            & .latest-post-date {
                color: #707070;
                font-weight: 400;
                text-decoration: none;
                font-size: 16px;
                line-height: 18px;
                text-transform: uppercase;
            }
        } 
    }

    & .latest-right-col {
        flex-basis: 616px;
        flex-grow: 0;

        & > div {
            padding-top: 9px;
            padding-bottom: 15px;
            margin-bottom: 21px;
            border-bottom: 2px solid #D4D7DE;
            display: flex;
            flex-direction: row;
            flex-wrap: nowrap;
            gap: 40px;
            justify-content: space-between;

            & .latest-post-image {
                width: 167px;
                height: 108px;
                flex-grow: 0;
                flex-shrink: 0;

                & img {
                    width: 167px;
                    height: 108px;
                    flex-grow: 0;
                    flex-shrink: 0;
                    border-radius: 10px;
                    overflow: hidden;
                    object-fit: cover;
                    object-position: center;
                }
            }

            & .latest-post-category {
                color: var(--ospblue);
                font-weight: 400;
                text-decoration: none;
                font-size: 16px;
                line-height: 19px;
                letter-spacing: 1.57px;
                margin-bottom: 23px;

                & a {
                    color: var(--ospblue);
                    font-weight: 400;
                    text-decoration: none;
                    font-size: 16px;
                    line-height: 19px;
                    letter-spacing: 1.57px;
                    text-transform: uppercase;
                }
            }
            & .latest-post-title {
                & a {
                    color: var(--blackish);
                    font-weight: bold;
                    text-decoration: none;
                    font-size: 19px;
                    line-height: 25px;
                    min-height: 75px;
                    overflow: hidden;
                    display: block;
                    display: -webkit-box;
                    -webkit-line-clamp: 3;
                    -webkit-box-orient: vertical;
                    margin-bottom: 9px;
                }
            }

            & .latest-post-date {
                color: #707070;
                font-weight: 400;
                text-decoration: none;
                font-size: 13px;
                line-height: 15px;
                text-transform: uppercase;
            }
        } 
    }
}

@media screen and (max-width: 1024px) {
    #latest-posts-home {
        gap: 35px;

        & .latest-right-col {
            & > div {
                gap: 25px;
            }
        }
    }
}

@media screen and (max-width: 850px) {
    #latest-posts-home {
        flex-direction: column;
    }
}


.elementor-loop-container {
    & .type-periodiko {
        margin-bottom: 25px;

        & a {
            text-decoration: none;
        }
    }

    & .type-ekdilosi {
        width: auto; 

        border-radius: 20px;
        & .elementor-widget-image {
            & a {
                width: 100%;
            }
        }

        & .ekdilosi-category {
            width: 174px;
            text-align: center;
            border-radius: 20px 0 20px 0px;
            color: white;
            text-decoration: none;
            padding: 4px 0;
            background-color: #272E3A;
        
            & a {
                color: white;
                text-decoration: none !important;
                font-family: 'proxima-nova';
                font-weight: bold;
                font-size: 14px;
                line-height: 16px;
            }
        
            &.praktiko-seminario {
                background-color: #21B4E2;
            }
            &.praktiko-seminario-synergaton {
                background-color: #21B4E2;
            }
            &.synedrio {
                background-color: #E9763A;
            }
            &.synedrio-synergaton {
                background-color: #E9763A;
            }
            &.imerida {
                background-color: #92BC3C;
            }
            &.imerida-synergaton {
                background-color: #92BC3C;
            }
        }
        & .ekdilosi-inner {
            padding-left: 26px;
            padding-right: 26px;
        }
        & .seminar-date {
            color: var(--ospblue);
            font-size: 19px;
            line-height: 23px;
            margin-bottom: 14px;
            font-weight: 400;
            font-family: 'proxima-nova';
        }
        & .ekdilosi-title {
            padding-bottom: 22px;
            border-bottom: 2px solid #E7EBF2;
        
            & h2 {
                font-size: 23px;
                line-height: 1.2;
                font-family: 'proxima-nova';
                font-weight: bold;
                display: -webkit-box;
                -webkit-line-clamp: 3;
                -webkit-box-orient: vertical;  
                overflow: hidden;
        
                & a {
                    text-decoration: none !important;
                }
            }
        }
        
        & .ekdilosi-eisigites {
            min-height: 64px;
            padding-top: 13px;
            padding-bottom: 11px;
            border-bottom: 2px solid #e7ebf2;
            margin-bottom: 30px;
        
            & .supertitle {
                font-weight: 400;
                font-family: 'proxima-nova';
                font-size: 13px;
                line-height: 15px !important;
                color: #272E3A;
                margin-bottom: 5px;
                display: block;
            }
        
            & h3 {
                color: var(--ospblue);
                font-family: 'proxima-nova';
                font-weight: 400;
                font-size: 16px;
                line-height: 18px;
                display: -webkit-box;
                -webkit-line-clamp: 1;
                -webkit-box-orient: vertical;  
                overflow: hidden;
                margin-bottom: 0;
            }
        }
        
        & .ekdilosi-agora {
            display: flex;
            flex-direction: row;
            flex-wrap: nowrap;
            justify-content: space-between;
            align-items: center;
            align-content: center;
        
            & .ekdilosi-prices {
                display: flex;
                gap: 15px;
                align-items: center;
                align-content: center;
        
                & .normal-price {
                    color: #272E3A;
                    font-weight: bold;
                    font-size: 23px;
                    line-height: 26px;
                    font-family: 'proxima-nova';
                }
        
                & .discount-price {
                    color: #707070;
                    font-weight: 400;
                    font-size: 16px;
                    line-height: 18px;
                    font-family: 'proxima-nova';
                    text-decoration: line-through;
                }
            }
        
            & .ekdilosi-buybtn {
                & button, a {
                    background: var(--ospblue);
                    color: white;
                    border-radius: 18px;
                    width: 150px;
                    height: 36px;
                    padding: 0;
                    text-align: center;
                    font-size: 16px;
                    font-family: 'proxima-nova';
                    line-height: 36px;
                    font-weight: 400;
                    display: block;
                    text-decoration: none;
        
                    &:hover {
                        background: #272E3A;
                    }
                }
            }
        }

        & .seminar-data {
            & > div {
                display: flex;
                flex-direction: row;
                align-items: center;
                gap: 13px;
                font-family: 'proxima-nova';
                font-size: 16px;
                line-height: 19px;
                font-weight: 400;
                color: var(--blackish);
                margin-bottom: 26px;
                
                

                & a {
                    display: block;
                    color: var(--blackish);
                }
            }

            & .seminar-address {
                margin-bottom: 0px;

                & + a {
                    padding-left: 27px;
                    color: var(--ospblue);
                    font-family: 'proxima-nova';
                    font-size: 13px;
                    line-height: 16px;
                    font-weight: 400;
                    text-decoration: underline;
                    margin-bottom: 26px;
                    display: block;
                    margin-top: 7px;
                }
            } 
        }
    }

    & .type-prosfora {
        & .prosfora-title {
            & h2 {
                & a {
                    text-decoration: none;
                }                
            }
        }
        & .offer-category {
            width: 229px;
            padding: 10px;
            border-radius: 31px;
            text-align: center;

            & a {
                color: white;
                font-size: 19px;
                font-family: 'proxima-nova';
                font-weight: 400;
                line-height: 21px;
                text-decoration: none;
            }

            &.astiki-euthini {
                background-color: #598153;
            }
            &.apovlita {
                background-color: #282F3B;
            }
        }
    }
}

@media screen and (max-width: 1200px){
    .elementor-page-10581,
    .elementor-page-10583 {
        .elementor-loop-container {
            & .type-ekdilosi {
                & > div {
                    flex-direction: column;
                }
                
                & .seminar-image {
                    min-height: 180px;
                }
            }
        }
    }   
}

@media screen and (max-width: 767px){
    .elementor-loop-container {
        & .type-ekdilosi {
            padding: 0px;

            & .ekdilosi-inner {
                padding-left: 20px;
                padding-right: 20px;
            }
        }
    }
}


#ekdiloseis .elementor-loop-container {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
    margin: 0 auto !important;
    align-items: center;
}


#kataggelia-form {
    & .form-row {
        display: flex;
        gap: 12px;
        width: 100%;

        & .form-row-half {
            width: 100%;
        }

        & input {
            width: 100%;
            border: 1px solid #E7EBF2 !important;
            background: #F5F7F9 !important;
            border-radius: 23px !important;
            padding: 13px 20px !important;
        }

        & textarea {
            border: 1px solid #E7EBF2 !important;
            background: #F5F7F9 !important;
            border-radius: 23px !important;
            padding: 13px 20px !important;
        }

        & p {
            width: 100%;
            margin-bottom: 0px;
        }

        .wpcf7-submit {
            max-width: 384px;
            margin: 0 auto !important;
            text-align: center;
            color: white !important;
            border-radius: 20px !important;
            background: var(--ospblue) !important;
            font-size: 16px !important;
            font-weight: 400 !important;
            line-height: 18px !important;
            width: 100% !important;
            padding: 11px !important;
            display: block;
        }
    }
}


.focus-jfilestyle {
    & label {
        border-radius: 23px !important;
        border: 1px solid #E7EBF2 !important;
        background: #F5F7F9 !important;
        padding: 6px 14px !important;
        min-width: 169px !important;
        text-align: center;

        & > span {
            display: flex;
            gap: 15px;
            flex-direction: row;
            align-content: center;
            align-items: center;

            & .file-icon {
                width: 13px !important;
                height: 13px !important;
                background-image: url('/wp-content/uploads/2024/10/upload.png') !important;
                /* border-radius: 100px !important; */
                background-repeat: no-repeat !important;
                background-position: center center !important;
                background-size: cover !important;
            }

            & .file-label {
                font-family: 'proxima-nova' !important;
                font-size: 13px !important;
                line-height: 15px !important;
                font-weight: 700 !important;
                color: #282F3B !important;
            }
        }

        & .count-jfilestyle { display: none !important; }
    }
}

.single-prosfora {
    & #content {
        & > .ast-container {
            max-width: 100%;
            padding-left: 0px;
            padding-right: 0px;

            & #primary {
                margin: 0;

                & #main {
                    & > .ast-article-single {
                        padding: 0;
                        background-color: transparent;
                    }
                }
            }
        }
    }
}
.elementor-icon-box-icon g#g3737 {
    display: none;
}

#newsletter-form {
	& div.wpforms-container-full:not(:empty) {
		margin: 0px;
		
		& .wpforms-field {
			padding: 0;
			margin-bottom: 30px;
		}
		
		& .wpforms-field-email input {
			border: 1px solid #E7EBF2 !important;
			background: #F5F7F9 !important;
			padding: 12px 20px !important;
			font-size: 16px;
			font-weight: 400;
			line-height: 18px;
			font-family: 'proxima-nova';
			color: #515F78;
			box-shadow: none !important;
			border-radius: 23px;
		}
		
		& .wpforms-field-checkbox {
			& li {
				display: flex;
    			align-items: center;
				
				& label {
					font-size: 13px;
					line-height: 15px;
					font-weight: 400;
					font-family: 'proxima-nova';

					& a {
						color: var(--ospblue);
						text-decoration: underline;
					}
				}
			}
			
		}
		
		& .wpforms-submit-container {
			margin: 0px;
			
			& button {
				background: var(--ospblue);
				color: white;
				font-size: 16px;
				line-height: 18px;
				font-weight: 400;
				font-family: 'proxima-nova';
				padding: 9px 20px;
				text-align: center;
				width: 172px;
				border-radius: 33px;
				
				&:hover, :focus {
					background: var(--blackish) !important;
				}
				
				&:focus:After {
					display: none;
				}
			}
		}
	}
}
@media(max-width:1500px) {
    .elementor-nav-menu--dropdown.elementor-nav-menu__container {
        margin-top: 27px !important;
    }
}

@media(max-width:530px) {
    #latest-posts-home .latest-post-left {
        flex-direction: column !important;
    }
    
    #latest-posts-home .latest-post-image {
        order: -1;
    }
    
    #latest-posts-home {
        & .latest-left-col {
            flex-basis: 100%;
            flex-grow: 0;
        }
    }


}


.ekit-promo-popup.mfp-ready .mfp-content:after, .ekit-promo-popup.mfp-ready .mfp-content:before {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
}


.ekit-promo-popup .mfp-content::before {
    content: "Αναζήτηση";
    text-align: center;
    display: block;
    color: var(--ospblue);
    font-size: clamp(44px, 4vw, 3.815rem);
    font-family: proxima-nova;
    font-weight: 800;
    line-height: 77px;
    opacity: 0;
    transform: translateY(-500px);
    margin: 0px auto auto;
    transition: 1s 0.8s;
    margin-bottom: 107px;
}

.search-result-item .elementor-widget-theme-post-excerpt p {
	  display: -webkit-box;
	  -webkit-line-clamp: 2;
	  -webkit-box-orient: vertical;  
	  overflow: hidden;
}

.search-results .elementor-pagination .prev {
	transform: rotate(180deg);
}

/*.ekdilosi-sinergati {
    & .interest-form-anchor {
        display: none;
    }
    
    & .interest-form-container {
        display: none;
    }
}*/
	
	
/* ! OSP 2.0 CUSTOM CHANGES */

input.readonly {
    background: transparent !important;
    border: none !important;
    padding: 12px 0 !important;
}

#account_syllogos, #reg_syllogos {
    padding: 0px 12px !important;    
}

.woocommerce-order-details {
    & .woocommerce-table__product-name.product-name {
        & a { 
            pointer-events: none; 
        }
    }
}

.woocommerce-account {
    & #primary {
        padding: 0 15px !important;

        & article {
            max-width: 1808px;
            margin: 0 auto;
            padding: 0px;
        }
    }
    & h1.entry-title {
        color: #119CBF;
        font-family: "proxima-nova", Sans-serif;
        font-size: clamp(24px, 4vw, 49px);
        font-weight: 700;
        line-height: 1.2;
        text-align: center;
        padding: 20px 0 50px 0;
    }
}

.woocommerce-MyAccount-navigation {
    & > ul {
        background: white;
        padding: 30px;
        border-radius: 26px;
        margin-bottom: 50px;

        & .woocommerce-MyAccount-navigation-link {
            border: none !important;
            
            & a {
                color: var(--ospblue);
            }

            &.is-active {
                & a {
                    background-color: var(--ospblue) !important;
                    color: white !important;
                }
            }
        }
    }
}

.woocommerce-MyAccount-content {
    background: white;
    padding: 30px 30px;
    border-radius: 26px;
}

.login-btn {
    & a.elementor-button {
        /* width: fit-content !important; */
        width: 40px !important;
        height: 40px !important;
        padding: 0px !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;

        & svg {
            width: 20px !important;
            margin-top: 4px !important;
        }
    }
}

.cart-btn {
    & a {
        width: 40px !important;
        height: 40px !important;
        padding: 0px !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;

        & svg {
            width: 15px;
            margin-top: 5px;
        }
    }
}

.sidepanel-buy-btn {
    &.no-capacity {
        background: red;
        color: white;
        border-radius: 6px;
        padding: 5px 15px;
        border: 2px solid red;
    }
}

.show-password-input {
    padding: 0;
    background: none !important;
    color: #666 !important;
}

/* ! END OF OSP 2.0 CUSTOM CHANGES */

.ekdilosi-osp {
	& .interest-form-container {
		display: none;
	}
}