@import url('https://fonts.googleapis.com/css2?family=Instrument+Sans:ital,wght@0,400..700;1,400..700&display=swap');
:root {
    --website_blue: #1F242F;
    --website_red: #DB0632;
}

body,
html {
    
}

body {
   font-family: "Instrument Sans", sans-serif;
}

.main-menu{
    > ul{

        > li:has(ul){
            &:before{
                border-top-left-radius: 1rem;
                border-top-right-radius: 1rem;
                border-bottom-left-radius: 0;
                border-bottom-right-radius: 0;
            }
        }

        > li {
            position: relative;
            z-index: 1;
            min-height: 55px;
            display: flex;
            align-items: center;

            &:before{
                content: "";
                background: white;
                z-index: -1;
                position: absolute;
                left: 50%;
                top: 50%;
                transform: translate(-50%,-50%);
                width: calc(100% + 30px);
                height: 100%;
                pointer-events: none;
                opacity: 0;
                transition: all 0.3s ease-out;
                border-radius: 1rem;    

            }

            &:after{
                content: "";
                width: 5px;
                aspect-ratio: 1/1;
                position: absolute;
                top: 9px;
                left: 50%;
                transform: translateX(-50%);
                background: var(--website_red);
                border-radius: 100%;
                opacity: 0;
                transition: all 0.3s ease-out;
            }

            &:hover{

                > ul{
                    opacity: 1;
                    transform: translateY(0) translateX(-50%);
                    pointer-events: all;
                }

                &:before,&:after{
                    opacity: 1;
                }
            }

            > ul{
                position: absolute;
                left: 50%;
                transform: translateX(-50%) translateY(20px);
                top: 100%;
                width: max-content;
                background: white;
                padding: 1rem;
                border-bottom-left-radius: 1.3rem;
                border-bottom-right-radius: 1.3rem;
                transition: all 0.3s ease-out;
                opacity: 0;
                pointer-events: none;
                display: grid;
                gap: 7px;

                li.current-menu-item{
                    a{
                        color: var(--website_red);
                        opacity: 1;
                    }
                }

                a{
                    transition: all 0.3s ease-out;
                    opacity: 0.7;

                    &:hover{
                        color: var(--website_red);
                        opacity: 1;
                    }
                }
            }
        }
    }
}

.hero-image{
    &:before{
        content: "";
        position: absolute;
        inset: 0;
        background: #1F242F;
        mix-blend-mode: exclusion;
    }
}

.main-cta{
    font-weight: 600;
    position: relative;
    padding-inline: 1rem;
    display: inline-block;
    z-index: 1;
    transition: all 0.3s ease-out;

    &:before,&:after{
        content: "";
        width: 10px;
        height: calc(100% + 10px);
        border-style: solid;
        border-color: #DB0632;
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        z-index: -1;
        transition: all 0.3s ease-out;
    }

    &:before{
        border-width: 2px 0 2px 2px;
        left: 0px;
        border-top-left-radius: 60px;
        border-bottom-left-radius: 60px;
    }
    &:after{
        border-width: 2px 2px 2px 0px;
        right: 0px;
        border-top-right-radius: 60px;
        border-bottom-right-radius: 60px;
    }

    &:hover{
        color: white;

        &:before,&:after{
            width: 60%;
            background: var(--website_red);
        }
    }
}

.main-cta.light{
    &:before,&:after{
        border-color: white;
    }

    &:hover{
        color: var(--website_blue);

        &:before,&:after{
            background: white;
        }
    }
}

.header-cta{
    .header-cta-dot{
        display: inline-block;
        width: 10px;
        height: 10px;
        overflow: hidden;
        position: relative;
        color: white;
        border-radius: 100%;
        transition: all 0.3s ease-out;
        background: var(--website_red);

        ion-icon{
            position: absolute;
            left: 50%;
            top: 50%;
            transform: translate(-50%,-50%);
            transition: all 0.3s ease-out;
            opacity: 0;
        }
    }
    &:hover{
        .header-cta-dot{
            width: 20px;
            height: 20px;
            ion-icon{
                opacity: 1;
            }
        }
    }
}

.section-title{
    margin-bottom: 2rem;
    display: flex;
    align-items: flex-end;
    line-height: 1;
    justify-content: space-between;
    padding-bottom: 1rem;
    border-bottom: 1px solid var(--website_blue);
    h2{
        font-size: 3.5rem;
        display: inline-flex;
        align-items: center;
        text-align: left;
        gap: 10px;
        &:before{
            content: "";
            display: inline-block;
        width: 7px;
        height: 7px;
        border-radius: 100%;
        flex-shrink: 0;
        background: var(--website_red);
        }
    }

    .main-cta{
        margin-bottom: 1rem;
    }
}

.section-title.inner{
    flex-direction: column;
    align-items: flex-start;
    border: none;
    width: min(100%,80%);
    h2{
        font-size: 2.6rem;
        gap: 1.5rem;
    }
    h3{
        padding-left: 2rem;
        margin-top: 1rem;
    }
}

.section-title.dot-dark{
    h2{
         &:before{
            background: var(--website_blue);
         }
    }
}

.section-title.light{
    border-color: rgb(255 255 255/20%);
    color: white;
}

#clients-slider{
    position: relative;
    

        &:before{
            content: "";
            position: absolute;
            left: 0;
            top: 0;
            width: 100px;
            height: 100%;
            z-index: 2;
            background: linear-gradient(90deg,#F5F5F5,transparent);
        }
        &:after{
            content: "";
            position: absolute;
            right: 0;
            top: 0;
            width: 100px;
            height: 100%;
            z-index: 2;
            background: linear-gradient(90deg, transparent,#F5F5F5);
        }
}

.client-image{
        background: white;
        position: relative;
        border-radius: 2rem;
        height: 200px;
        aspect-ratio: 16/9;
        display: flex;
        align-items: center;
        justify-content: center;

        img{
            max-width: 50%;
            max-height: 50%; 
            display: block;
            
        }

        > a{
            position: absolute;
            background: rgb(255 255 255/60%);
            position: absolute;
            inset: 0;
            display: flex;
            flex-direction: column;
            align-items: center;
            justify-content:center;
            backdrop-filter: blur(5px);
            border-radius: 2rem;
            z-index: 2;
            transition: all 0.3s ease-out;
            opacity: 0;
            transform: scale(0.9);

            span{
                display: inline-block;
                position: relative;
                line-height: 0;
                padding-inline: 2rem;
                margin-bottom: 1rem;

                &:before,&:after{
                    content: "";
                    width: 10px;
                    height: calc(100% + 10px);
                    border-style: solid;
                    border-color: #DB0632;
                    position: absolute;
                    top: 50%;
                    transform: translateY(-50%);
                    z-index: -1;
                    transition: all 0.3s ease-out;
                }

                &:before{
                    border-width: 2px 0 2px 2px;
                    left: 0px;
                    border-top-left-radius: 60px;
                    border-bottom-left-radius: 60px;
                }
                &:after{
                    border-width: 2px 2px 2px 0px;
                    right: 0px;
                    border-top-right-radius: 60px;
                    border-bottom-right-radius: 60px;
                }

                ion-icon{
                    transform: rotate(-45deg);
                    font-size: 1.8rem;
                }
            }
        }

        &:hover{
            >a {
                opacity: 1;
                transform: scale(1);
            }
        }
        
    }
    .client-image.white-image{
            img{
                filter: invert(1) brightness(0);
            }
        }

.brands-list{
    li.active{
        color: var(--website_red);

        span{
            margin-right: 0;
        }
    }
}
.brand-content{
        position: absolute;
    inset: 0;
    display: flex;
    align-items: flex-end;
    padding: 3rem;
    padding-right: 10rem;
    opacity: 0;
    pointer-events: none;
    transition: all 0.3s ease-out;

    h3{
        font-size: 1.5rem;
        font-weight: 600;
        margin-bottom: 1rem;
    }

    h2{
        position: absolute;
        bottom: 0;
        right: 0;
        writing-mode: vertical-lr;
        transform: rotate(180deg);
        line-height: 1;
        font-size: 4rem;
        font-weight: 900;
        padding: 2rem 1rem;
    }

    img{
        background: white;
        position: absolute;
        left: 0;
        top: 0;
        width: 250px;
        height: 160px;
        object-fit: contain;
        padding: 20px;
        border-bottom-right-radius: 1rem;
    }
}

.brand-content.active-content{
    opacity: 1;
    pointer-events: all;
}        

.usp-options{

    counter-reset: usp;

    > div{
        position: relative;
        counter-increment: usp;
        transition: all 0.3s ease-out;

        &:hover{
            background: #f5f5f5;
            color: black;

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

        &:before{
            content: '0'counter(usp)'.';
            position: absolute;
            top: 3.5rem;
            right: 3.5rem;
            transition: all 0.3s ease-out;
        }
    }

    img{
        width: 85px;
        margin-bottom: 2rem;
        filter: brightness(0) saturate(100%) invert(10%) sepia(65%) saturate(6762%) hue-rotate(342deg) brightness(119%) contrast(97%);
    }
    h3{
        font-size: 1.2rem;
        line-height: 1;
        font-weight: 600;
        margin-bottom: 1rem;
    }
}

.brands-list{
    > section{
        display: flex;
        align-items: center;
        justify-content: flex-start;
        border-bottom: 1px solid rgb(31 36 47/20%);
        padding-bottom: 2rem;
        margin-bottom: 2rem;
        position: relative;

        &:before{
            content: "";
            width: 0;
            position: absolute;
            bottom: -1px;
            left: 0;
            height: 1px;
            background: var(--website_blue);
            transition: all 0.6s ease-out;
        }

        &:hover{
            &:before{
                width: 100%;
            }
        }

        h3{
            margin-left: 5rem;
            font-size: 1.5rem;
        }
    }

    >section:last-of-type{
        border:none;
        margin:0;
    }

    .brand-content{
        position: relative;

        &:before{
            content: "";
            position: absolute;
            bottom: 0;
            left: 0;
            height: 40px;
            width: 100%;
            background: linear-gradient(180deg,transparent,#F5F5F5);
            z-index: 2;
            pointer-events: none;
            transition: all 0.3s ease-out;
        }

        p{
            height: 50px;
            overflow: hidden;
            opacity: 0.6;
        }
    }

    .right-brand.open{
        .brand-content{
            &:before{
                opacity: 0;
            }
            p{
                opacity: 1;
            }
        }
    }

    .right-brand{
        margin-left: auto;
        max-width: 600px;
        display: flex;
        align-items: center;
        gap: 5rem;
    }
    .brand-image{
        background: white;
        border-radius: 1.5rem;
        height: 100px;
        aspect-ratio: 16/9;
        display: flex;
        align-items: center;
        justify-content: center;

        img{
            display: block;
            max-width: 70%;
            max-height: 70%;
        }
    }
}

.preloader-container{
    svg{
        width: 400px;
        position: absolute;
        left: 50%;
        top: 50%;
        transform: translate(-50%,-50%);
    }

    .dot{
        opacity: 0;
    }
}

.content-image{
    position: relative;
    &:before{
        content: "";
        position: absolute;
        inset: 0;
       /* background: var(--website_red);*/
        opacity: 0.9;
        mix-blend-mode: multiply;
    }
}

.dots{
    display: flex;
    gap: 0.4rem;
    position: absolute;
    bottom: 0;
    left: 0;

    span{
        width: 40px;
        aspect-ratio: 1;
        border-radius: 50%;
        background: white;
        border: 6px solid var(--website_red);
    }

    span:nth-of-type(2){
        border-width: 14px;
    }
}

.grid-icon{
    img{
        filter: brightness(0) saturate(100%) invert(11%) sepia(70%) saturate(6140%) hue-rotate(341deg) brightness(106%) contrast(103%);
    }
}
.grid-menu-options{
    a{
        position: relative;
        &:before{
            content: url('https://11am.gr/wp/cpmpartners/wp-content/uploads/2026/02/arrow-forward-outline.svg');
            position: absolute;
            top: 2rem;
            right: 2rem;
            display: block;
            line-height: 0;
            width: 30px;
            height: 30px;
            transform: rotate(-45deg);
            anchor-name: --arrow;
        }

        &:hover{
            &:before{
                filter: brightness(0) saturate(100%) invert(100%) sepia(100%) saturate(0%) hue-rotate(288deg) brightness(102%) contrast(102%);
            }
        }
    }
    li{
        position: relative;
        &:before{
            content: "";
            width: 10px;
            height: 30px;
            border-style: solid;
            border-color: #DB0632;
            border-width: 2px 0 2px 2px;
            border-top-left-radius: 60px;
            border-bottom-left-radius: 60px;
            position: absolute;
            top: 2rem;
            right: 4rem;
            z-index: -1;
            transition: all 0.3s ease-out;
            z-index: 2;
        }
        &:after{
            content: "";
            width: 10px;
            height: 30px;
            border-style: solid;
            border-color: #DB0632;
            border-width: 2px 2px 2px 0px;
            border-top-right-radius: 60px;
            border-bottom-right-radius: 60px;
            position: absolute;
            top: 2rem;
            right: 1.2rem;
            z-index: -1;
            transition: all 0.3s ease-out;
            z-index: 2;
        }

        &:hover{
            &:before,&:after{
                border-color: white;
            }
        }
    }
}

.solutions{
    a{
        display: inline-block;
        position: relative;
        opacity: 0.6;
        transition: all 0.3s ease-out;

        &:before{
            content: "";
            width: 0;
            height: 2px;
            position: absolute;
            bottom: -0.5rem;
            left: 0;
            background: #DB0632;
            transition: all 0.3s ease-out;
        }

        &:hover{
            opacity: 1;
            &:before{
                width: 100%;
            }
        }
    }
    .current-menu-item a{
        opacity: 1;
        &:before{
            width: 100%;
        }
    }
}

.contact-form{

    form{
        display: grid;
        grid-template-columns: repeat(2,1fr);
        gap: 1rem;
    }

    p br{
        display: none;
    }    

    label{
        display: block;
        font-size: 0.9rem;
        font-weight: 500;
        margin-bottom: 0.5rem;
        text-align: left;
    }

    .form-group:has(input[placeholder="Subject"]),
    .form-group:has(textarea){
        grid-column: span 2;
    }

    textarea{
        width: 100%;
        background: whitesmoke;
        padding: 1.5rem;
        color: var(--primary_blue);
        height: 150px;
        border-radius: 1rem;
    }

    input:not([type="submit"]){
        width: 100%;
        background: whitesmoke;
        padding: 1rem;
        border-radius: 1rem;
        color: var(--primary_blue);
    }

    input[type="submit"]{
        background: var(--website_blue);
        color: white;
        transition: all 0.3s ease-out;
        padding: 1rem;
        line-height: 1;
        display: inline-block;
        border-radius: 60px;

        &:hover{
            background: var(--website_red);
        }
    }

    .form-group:has(input[type="submit"]){
        p{
            display: flex;
            align-items: center;
            gap: 1rem;
        }
    }

    .sent{
        .wpcf7-response-output{
            background: darkseagreen;
            color: white;
        }
    }

    .wpcf7-response-output{
        grid-column: span 2;
        border: none !important;
        background: rgba(219, 6, 49, 0.393);
        color: var(--website_blue);
        padding: 1rem !important;
        border-radius: 1.5rem;
    }
    .wpcf7-not-valid-tip{
        margin-top: 0.2rem;
        color: var(--website_red);
        font-size: 0.9rem;
        text-align: left;
    }
}