/* 
Theme Name: IdexaWeb Child
Theme URI: https://idexaweb.com
Description: Versione child del tema IdexaWeb. 
Author: IdexaWeb
Author URI: https://idexaweb.com
Template: idexa-web
Version: 1.0.0
Text Domain: idexa-web-child
*/

/*
html {
    scroll-snap-type: y mandatory;
    scroll-behavior: smooth;
}

body:not(.elementor-editor-active) .scroll-snap-step {
    scroll-snap-align: start;
} */


.elementor-widget-image-box img {
    width: 35px;
    height: 35px;
}

#idexa-accessibility-panel {
    font-family: 'Poppins';
}

.grecaptcha-badge {
    display: none !important;
    bottom: -100px !important;
}

#scroll-to-top {
    position: fixed;
    bottom: 20px;
    right: 20px;
    z-index: 995;
    width: 36px;
    height: 36px;
    background-color: #111;
    color: #fff;
    border-radius: 5px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: background-color 0.3s ease-in-out;
    font-size: 36px;
    font-family: 'Poppins';
}

div#scroll-to-top:hover {
    background-color: #d55a1f;
}

/* HOME - header */

body::before {
    content: "";
    position: fixed;
    inset: 0;
    background-color: rgba(0, 0, 0, 0.5);
    z-index: 990;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.3s ease;
    overflow: hidden;
    position: fixed;
    overflow-y: scroll;

}

body.menu-overlay-active::before {
    opacity: 1;
    pointer-events: auto;
    position: fixed;
    overflow-y: scroll;
}

html,
body {
    max-width: 100%;
    overflow-x: hidden;
}

div#header-main {
    transition: 500ms cubic-bezier(0.445, 0.05, 0.55, 0.95);
    width: 100% !important;
    z-index: 999;
}


body.home div#header-main:not(.elementor-sticky--effects) {
    background-color: rgba(255, 255, 255, 0);
}





body.home div#header-main:not(.elementor-sticky--effects) a {
    color: rgba(255, 255, 255, 0.65);
}


div#header-main div.elementor-menu-toggle svg {
    fill: #151515 !important;
}

body.home div#header-main:not(.elementor-sticky--effects) a:hover,
body.home div#header-main:not(.elementor-sticky--effects) a:active,
body.home div#header-main:not(.elementor-sticky--effects) a .elementor-item-active,
body.home div#header-main:not(.elementor-sticky--effects) div.elementor-menu-toggle svg {
    color: rgba(255, 255, 255, 1);
    fill: #ffffff !important;
}

@media screen and (min-width:992px) {

    body.home div#header-main:not(.elementor-sticky--effects) .elementor-nav-menu--dropdown a:hover,
    body.home div#header-main:not(.elementor-sticky--effects) .elementor-nav-menu--dropdown a:active,
    body.home div#header-main:not(.elementor-sticky--effects) .elementor-nav-menu--dropdown a .elementor-item-active {
        color: #151515 !important;
    }
}



body.home div#header-main:not(.elementor-sticky--effects) .elementor-social-icon svg {
    fill: #ffffff;
}

body:not(.home) div#header-main .white-logo {
    opacity: 0;
    height: 0;
    transition: all 0ms linear;
}

body.home div#header-main.elementor-sticky--effects .white-logo {
    opacity: 0;
    height: 0;
    transition: all 0ms linear;
}

body.home div#header-main:not(.elementor-sticky--effects) .dark-logo {
    opacity: 0;
    height: 0;
    transition: all 300ms linear;
}

body.home div#header-main:not(.elementor-sticky--effects) .elementor-nav-menu--main .elementor-item {
    color: #ffffff80;
    fill: #ffffff80;
}

body.home div#header-main:not(.elementor-sticky--effects) .elementor-nav-menu--dropdown {
    background-color: rgba(19, 20, 22, 0.65) !important;
}

@media screen and (max-width:992px) {

    body.home div#header-main:not(.elementor-sticky--effects) .elementor-nav-menu--dropdown {
        background-color: #ffffff !important;
    }

}

/* HEADER */
@media screen and (max-width:1500px) and (min-width:992px) {
    div#header-main .elementor-nav-menu .elementor-item {
        font-family: "Poppins", Sans-serif;
        font-size: 11px;
    }

    div#header-main {
        padding: 0px;
    }
}


@media screen and (max-width:992px) {

    div#header-main .elementor-nav-menu--dropdown .current-menu-item a {
        background: rgba(21, 21, 21, 1) !important;
        color: #ffffff !important;
    }

    div#header-main .elementor-nav-menu--dropdown a {
        color: rgba(20, 20, 20, 0.5) !important;
    }

    div#header-main .elementor-nav-menu--dropdown a:hover {
        background: rgba(21, 21, 21, 1) !important;
        color: #ffffff !important;
    }

    div#header-main {
        padding: 0px 10px;
    }
}

/* GLOBAL */

.orange {
    color: #EE6D23;
}

.orange-dot {
    color: #EE6D23;
    font-family: "Poppins", Sans-serif;
    font-weight: 600;
}


/* GLOBAL - Follow Mouse */

.cursorFollower {
    position: absolute;
    width: 1.1rem;
    height: 1.1rem;
    border-radius: 50%;
    transform: translate(-50%, -50%);
    transition: transform 0.3s;
    z-index: 99999;
    pointer-events: none;
    background: #ee6d23;
}

.cursorFollower.big {
    transform: scale(1.6) translate(-50%, -50%);
}

/* HOME - slider */

#slider-down img {
    filter: brightness(0) invert(1);
}

.elementor-background-overlay {
    transition: all 300ms linear;
}

.elementor-repeater-item-ef20100 .elementor-background-overlay,
.elementor-repeater-item-15ba017 .elementor-background-overlay {
    background-color: rgba(0, 0, 0, 0.7) !important;
}




/* HOME - Cosa facciamo */

.grid-what-we-do {
    min-height: 360px;
}

.grid-what-other-we-do {
    min-height: 200px;
}

.grid-what-we-do p.elementor-image-box-description,
.grid-what-other-we-do p.elementor-image-box-description {
    left: 0px;
    position: absolute;
}

.grid-what-we-do.last p.elementor-image-box-description {
    top: 125px;
}

span.pleft {
    margin-left: 124px;
}

@media screen and (max-width: 768px) {

    .grid-what-we-do .elementor-image-box-wrapper,
    .grid-what-other-we-do .elementor-image-box-wrapper {
        display: flex;
    }

    .grid-what-we-do h3.elementor-image-box-title,
    .grid-what-other-we-do h3.elementor-image-box-title {
        margin-left: 20px;
    }

    .grid-what-we-do {
        min-height: 320px;
    }

    .grid-what-other-we-do {
        min-height: 220px;
    }


}

/* HOME - webnews */

.web-news .elementor-widget-theme-post-excerpt {
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}





/* Form Contatti + Form Post Servizi */

.form-pagina-contatti label,
.form-contatto-servizi label {
    width: 100%;
}

.form-pagina-contatti input,
.form-pagina-contatti textarea,
.form-contatto-servizi input,
.form-contatto-servizi textarea {
    padding: 0.8rem 1rem !important;
    border: 2px solid #b3b3b3;
    margin-top: 5px;
    background-color: #fafafa;
}

.form-pagina-contatti textarea,
.form-contatto-servizi textarea {
    margin-bottom: 15px !important;
}


.form-pagina-contatti span.form-label,
.form-contatto-servizi span.form-label {
    text-transform: uppercase;
    font-weight: 500;
    margin-top: 15px;
    margin-bottom: -15px;
    font-size: 14px;
    font-family: 'Poppins';
    display: block;
    color: #333
}

.form-pagina-contatti input.wpcf7-form-control.wpcf7-submit.has-spinner,
.form-contatto-servizi input.wpcf7-form-control.wpcf7-submit.has-spinner {
    margin-top: 15px;
    background: #111;
    color: #fff;
    text-transform: uppercase;
    border: 2px solid #111;
}

.form-pagina-contatti span.wpcf7-not-valid-tip,
.form-contatto-servizi span.wpcf7-not-valid-tip {
    line-height: 1.4em;
}


/* Idexa Portfolio Widget Elementor  */

/*
.elementor-portfolio-item .icon-idexa-hover {
    opacity: 0;
    background: #ee6d23;
    width: 60px;
    height: 60px;
    margin: auto;
    border-radius: 100px;
    transform: translateY(0px);
    transition: all 0.4s ease-in-out;
}


.elementor-portfolio-item:hover .icon-idexa-hover {
    opacity: 1;
    transform: translateY(-20px);
}


.icon-idexa-hover:before {
    z-index: 999999;
    content: "idx" !important;
    background: url(/wp-content/themes/idexa-web-child/x.png);
    background-size: 100% 100%;
    background-repeat: no-repeat;
    color: transparent;
    line-height: 60px;
    text-align: center;
    font-size: 25px;
} */

h4.elementor-portfolio-item__title {

    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;

}

/* Portfolio breadcrumb */

.portfolio-breadcrumb ul>li:nth-child(3)>span.elementor-icon-list-text {
    font-weight: 600 !important;
}

/* Portfolio grid */

.portfolio-grid h2.elementor-heading-title {
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

/* Idexa Portfolio Detail */


ul.idexa-portfolio-info {
    background: #fafafa;
    border-radius: 5px;
    margin-left: 0px;
    padding-left: 0px;
    padding: 15px;
    font-family: 'Poppins', Sans-serif;
}


ul.idexa-portfolio-info li {

    display: flex;
    justify-content: space-between;
    border-bottom: 1px solid #f2f2f2;
    padding-bottom: 5px;
    margin-bottom: 10px;
    font-size: 13px;
    text-align: right;

}


.idexa-app-links {
    padding: 10px 5px;
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: space-between;
}

.idexa-button-links {
    padding: 10px 5px;
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: space-between;
}



a.idexa-apple-store-button {
    background: linear-gradient(135deg, #d7d7d7, #f9f9f9, #dadada, #f7f7f7);
    background-size: 300% 300%;
    color: #7e7e7e;
    padding: 8px 15px;
    text-align: center;
    text-transform: uppercase;
    font-weight: 500;
    font-size: 12px;
    border-radius: 5px;
    display: inline-block;
    text-decoration: none;
    box-shadow: inset 0 1px 0 #ffffff,
        0 3px 5px rgba(0, 0, 0, 0.2),
        0 0 0 1px rgba(255, 255, 255, 0.3);
    transition: all 0.3s ease-in-out;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, sans-serif;
}

a.idexa-apple-store-button:hover {
    background-position: right center;
    filter: brightness(1.1);
    color: #525252;
    text-decoration: none;
}

a.idexa-play-store-button {
    background: linear-gradient(135deg, #00c853, #00b0ff, #ffab00, #d50000);
    background-size: 300% 300%;
    color: #fff;
    padding: 8px 15px;
    text-align: center;
    text-transform: uppercase;
    font-weight: 600;
    font-size: 12px;
    border-radius: 5px;
    display: inline-block;
    text-decoration: none;
    box-shadow: 0 3px 6px rgba(0, 0, 0, 0.2),
        inset 0 1px 0 rgba(255, 255, 255, 0.1);

    transition: all 0.4s ease-in-out;
    font-family: 'Roboto', -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

a.idexa-play-store-button:hover {
    background-position: right center;
    filter: brightness(1.1);
    color: #fff;
    text-decoration: none;
}



a.idexa-apple-store-button {
    background: linear-gradient(135deg, #d7d7d7, #f9f9f9, #dadada, #f7f7f7);
    background-size: 300% 300%;
    color: #7e7e7e;
    padding: 8px 15px;
    text-align: center;
    text-transform: uppercase;
    font-weight: 500;
    font-size: 12px;
    border-radius: 5px;
    display: inline-block;
    text-decoration: none;
    box-shadow: inset 0 1px 0 #ffffff,
        0 3px 5px rgba(0, 0, 0, 0.2),
        0 0 0 1px rgba(255, 255, 255, 0.3);
    transition: all 0.3s ease-in-out;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, sans-serif;
}

a.idexa-apple-store-button:hover {
    background-position: right center;
    filter: brightness(1.1);
    color: #525252;
    text-decoration: none;
}

a.idexa-visit-site-button,
a.idexa-video-interview-button {
    background-color: #111111;
    color: #ffffff;
    padding: 5px 15px;
    text-align: center;
    text-transform: uppercase;
    font-weight: 500;
    font-size: 12px;
    border-radius: 5px;
    display: inline-block;
    text-decoration: none;
    transition: all 0.3s ease-in-out;
    border: 2px solid #111111;

}

a.idexa-visit-site-button:hover {
    background-color: #ffffff;
    color: #111111;
}


a.idexa-video-interview-button {
    background-color: #ffffff;
    color: #111111;
    border: 2px solid #111111;
}

a.idexa-video-interview-button:hover {
    background-color: #111111;
    color: #ffffff;
}

.idv-container {
    padding: 15px;
    margin: auto;
    text-align: center;
    background: #fafafa;
    border-radius: 5px;
    margin-top: 24px;
}

.text-idv {
    color: #333;
    font-weight: 400;
}


a.idexa-visit-site-button.interview {
    background: #052465;
    border: 2px solid #052465;
}

a.idexa-visit-site-button.interview:hover {
    background-color: #fff;
}



/* PAGINA SERVIZI INTERNET - BLOG */


.blog-post-grid,
.blog-post-grid .elementor-element.container-img {
    overflow: hidden;
}

.blog-post-grid .elementor-widget-theme-post-excerpt {
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}



@media screen and (min-width: 992px) {
    .blog-grid .elementor-loop-container.elementor-grid>*:nth-child(3n-1) {
        margin-top: 50px;
    }
}


.blog-post-grid:hover div.elementor-element.elementor-element-3a99a6de.e-con-full.e-flex.e-con.e-child,
.blog-post-grid:focus div.elementor-element.elementor-element-3a99a6de.e-con-full.e-flex.e-con.e-child {
    transform: scale(1.1);
}

/* WIDGET BLOG */

details#\#sidebar-servizi,
details#\#sidebar-servizi-internet {
    border: 2px solid #111;
    background: #ffffff;
}

details#\#sidebar-servizi summary.e-n-accordion-item-title,
details#\#sidebar-servizi-internet summary.e-n-accordion-item-title {
    background: #111;
    color: #fff;
}

.widget.widget_categories li.cat-item,
.widget.widget_recent_entries li {
    padding-bottom: 5px;
    border-bottom: 1px solid #f0f0f0;
}

.widget.widget_categories ul,
.widget.widget_recent_entries ul {

    display: block;
    list-style-type: none;
    margin-block-start: 0em;
    margin-block-end: 0em;
    padding-inline-start: 0px;
    unicode-bidi: isolate;
}

.widget.widget_categories li.cat-item a,
.widget.widget_recent_entries li a {
    color: #333;
    font-weight: 500;
    font-size: 0.76rem;
    font-family: 'Poppins', Sans-serif;
}


details#\#sidebar-servizi .e-n-accordion-item-title-icon span>svg,
details#\#sidebar-servizi-internet .e-n-accordion-item-title-icon span>svg {
    fill: #ffffff;
}


/* Nasconde input rif servizi */

.rif-servizio-container {
    display: none;
}


.search-field .e-search-form {
    flex-direction: column !important;
}

.search-field .e-search-input {
    border-width: 2px !important;
    margin-bottom: 15px;
}

.search-field button.e-search-submit {
    max-width: 75px;
    padding: 10px 15px !important;
}


/* RICERCA */

/* HOME - webnews */

.blog-grid-search .elementor-widget-theme-post-excerpt {
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

/* BLOCCO ICONE */

@media screen and (max-width: 768px) {


    .icon-follow-page .e-con-inner {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: 10px;
    }
}


/* FOOTER */


.footer-text-copy {
    display: flex;
    align-items: flex-end;
}

.footer-text-copy img {
    margin-left: 10px;
    margin-right: 5px;
}

@media screen and (max-width: 768px) {
    .footer-text-copy {
        display: flex;
        align-items: center !important;
        flex-direction: column;
        justify-content: center;
    }

    .footer-text-copy br {
        display: none;
    }

    .footer-text-copy img {
        margin-top: 5px;
        margin-bottom: 6px;
    }


    .portfolio-grid h2.elementor-heading-title {

        -webkit-line-clamp: 2 !important;

    }
}

div#idexa-portfolio-wrapper {
    --grid-columns: 3;
    --grid-row-gap: 0px;
    width: var(--container-widget-width, 1340px);
    max-width: 1340px;
    --container-widget-width: 1340px;
    --container-widget-flex-grow: 0;
    --grid-column-gap: 0px;

}

div#idexa-portfolio-posts {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-column-gap: var(--grid-column-gap, 30px);
    grid-row-gap: var(--grid-row-gap, 30px);
    grid-auto-rows: 1fr;
    align-items: stretch;
}

div#idexa-portfolio-posts article {
    display: flex;
    padding: 20px;
    justify-content: center;
}

div#idexa-portfolio-posts article a {
    text-align: center;
}

div#idexa-portfolio-posts h2 {
    font-family: "Raleway", Sans-serif;
    font-size: 0.9rem;
    font-weight: 600;
    text-transform: uppercase;
    line-height: 1.3rem;
    color: #111111;
    text-align: center;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

div#idexa-portfolio-posts h3 {
    font-family: "Poppins", Sans-serif;
    font-size: 0.86rem;
    font-weight: 400;
    line-height: 1.2rem;
    color: #424242;
    text-align: center;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

div#idexa-portfolio-posts img {
    height: 280px;
    object-fit: cover;
    object-position: center center;
}

.elementor-widget-taxonomy-filter .e-filter-item[aria-pressed=true] {
    color: #ec6e30;
}

button.e-filter-item {
    font-family: "Raleway", Sans-serif;
    font-size: 1rem;
    text-transform: uppercase;
    font-weight: 500;
}

.elementor-widget-taxonomy-filter {
    text-align: center;
}

button.e-filter-item {
    border: 0px;
    color: #69727d;
}


button.e-filter-item:hover,
button.e-filter-item:focus,
button.e-filter-item:active {
    border: 0px;
    color: #111111;
    background-color: #00000000;
    box-shadow: none;
}

@media (max-width: 1366px) {
    div#idexa-portfolio-posts h2 {
        font-size: 0.9rem;
    }

    div#idexa-portfolio-posts h3 {
        font-size: 0.9rem;
    }
}

@media (max-width: 992px) {
    div#idexa-portfolio-wrapper {
        max-width: 100%;
    }

    div#idexa-portfolio-posts {
        grid-template-columns: repeat(2, 1fr);
    }

    div#idexa-portfolio-posts h2 {
        font-size: 1rem;
    }

    div#idexa-portfolio-posts h3 {
        font-size: 0.875rem;
    }
}

@media (max-width: 768px) {

    div#idexa-portfolio-wrapper {
        max-width: 100%;
    }

    div#idexa-portfolio-posts img {
        height: 240px;
    }

    div#idexa-portfolio-posts {
        grid-template-columns: repeat(1, 1fr);
    }

    div#idexa-portfolio-posts h2 {
        font-size: 0.9rem;
    }

    div#idexa-portfolio-posts h3 {
        font-size: 0.875rem;
    }
}


.portfolio-navigation {
    display: flex;
    justify-content: space-between;
    margin-top: 2rem;
    font-weight: bold;
}

.portfolio-navigation .prev a,
.portfolio-navigation .next a {
    text-decoration: none;
}



a.portfolio-nav-prev,
a.portfolio-nav-next {
    text-transform: uppercase;
    text-decoration: underline !important;
    color: #333;
}

a.portfolio-nav-prev:hover,
a.portfolio-nav-next:hover {
    color: #ACA298;
}

.swiper-pagination-bullet {
    font-size: 36px;
}

.swiper-pagination.swiper-pagination-clickable.swiper-pagination-bullets.swiper-pagination-horizontal {
    display: none;
}