/*
Theme Name: Impreza Child
Template: Impreza
Version: 1.0
Author: UpSolution
Theme URI: http://impreza.us-themes.com/
Author URI: http://us-themes.com/
*/

/*Add your own styles here:*/
* {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}

.g-cols.via_flex.type_default {
    margin: 0;
}

.g-cols.via_flex.type_default>div>.vc_column-inner {
    padding-left: 0;
    padding-right: 0;
}

:root {
    --font-primary: 'Noto Sans Gujarati', sans-serif;
    --font-secondary: 'Big Shoulders Display', sans-serif;
}

img {
    width: 100%;
}

/*Professionisti*/

.page-id-13 .professionista .employee-wrapper {
    border-bottom: 1px solid #000;
    transition: all 0.3s ease-in-out;
    opacity: 0;
    transform: translateY(50px);
}

.page-id-13 .professionista .employee-wrapper.visible {
    opacity: 1;
    transform: translateY(0);
}

.page-id-13 .professionista .employee-wrapper .employee-hidden-layer {
    position: absolute !important;
    left: 0;
    right: 0;
    bottom: 0;
    height: 0;
    background-color: #FAF4F0;
    opacity: 0;
    visibility: hidden;
    overflow: scroll;
    transition: height 0.4s ease,
        opacity 0.4s ease,
        visibility 0.4s ease;
    padding: 15px;
}


.page-id-13 .professionista .employee-wrapper:hover .employee-hidden-layer {
    height: 100%;
    opacity: 1;
    visibility: visible;
}



.page-id-13 .professionista .employee-wrapper .employee-image-container img {
    transition: transform 0.3s ease;
    height: 100%;
    width: 100%;
    object-fit: cover;
}

.page-id-13 .professionista .employee-wrapper:hover .employee-image-container img {
    transform: scale(1.05);
}




.page-id-13 .professionista .employee-wrapper .employee-image-hidden-layer-wrapper .employee-image-container {
    bottom: 0;
    left: 0;
    right: 0;
    right: 0;
    height: 100%;
    margin: 0 !important;
}

.page-id-13 .professionista .employee-wrapper .employee-image-hidden-layer-wrapper {
    height: 494px;
    margin: 0;
}

.page-id-13 .professionista .employee-wrapper .employee-image-container a {
    height: 100%;
    display: block;
    display: flex;
    justify-content: center;
    align-items: center;
}

.page-id-13 .professionista .employee-wrapper .title {
    color: #000;
    font-family: var(--font-primary);
    font-size: 16px;
    font-style: normal;
    font-weight: 700;
    line-height: 142.997%;
}

.page-id-13 .professionista .employee-wrapper .text {
    color: #000;
    font-family: var(--font-primary);
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 142.997%;
}

.page-id-13 .employee-wrapper .text:not(:last-child) {
    margin-bottom: 30px;
}

.page-id-13 .professionista .employee-wrapper .employee-general-section {
    padding: 13px 30px 17px;
}

.page-id-13 .professionista .employee-wrapper .employee-name {
    color: #000;
    font-family: var(--font-secondary);
    font-size: 28px !important;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
}

.page-id-13 .professionista .employee-wrapper .employee-role {
    color: #53575A;
    font-family: var(--font-primary);
    font-size: 16px;
    font-style: normal;
    font-weight: 700;
    line-height: normal;
}

.employee-email a span {
    color: #000;
    font-family: var(--font-primary);
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 142.997%;
    padding-left: 30px;
}

.employee-email a {
    position: relative;
}

.employee-email a::before {
    content: '';
    width: 20px;
    height: 20px;
    position: absolute;
    left: 0;
    display: block;
    background-image: url('/wp-content/uploads/2025/07/mail.png');
    background-position: center;
    background-repeat: no-repeat;
}


.professionisti-h1 {
    color: #000;
    font-family: var(--font-secondary);
    font-size: 64px;
    font-style: normal;
    font-weight: 500;
    line-height: 81px;
    margin-bottom: 60px;
    transition: all 0.3s ease-in-out;
    opacity: 0;
    transform: translateY(50px);
}

.professionisti-h1.visible {
    opacity: 1;
    transform: translateY(0);
}

.professionisti-external-wrapper {
    padding-bottom: 80px;
    padding-top: 180px;
}

.professionisti .homepage-aree-attivita-text-wrapper {
    max-width: 750px;
    width: 100%;
}

/*Homepage*/
.homepage-header {
    padding: 0;
}

.homepage-header .l-section-h {
    margin: 0;
    max-width: 100%;
    width: 100%;
}

.homepage-header img {
    width: 100%;
}

/*in responsive it should become 1.5 rem*/
.homepage-header-text {
    max-width: 1220px;
    width: 100%;
    margin: 0 auto;
    padding: 0 2.5rem;
    position: absolute;
    color: #FFF;
    text-align: right;
    font-family: var(--font-secondary);
    font-size: 80px;
    font-style: normal;
    font-weight: 500;
    line-height: 81px;
    bottom: 60px;
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    justify-content: right;

}

.homepage-header-text span {
    max-width: 720px;
    width: 100%;
    display: block;
    transition: all 0.3s ease-in-out;
    opacity: 0;
    transform: translateY(50px);
}

.homepage-header-text span.visible {
    opacity: 1;
    transform: translateY(0);
}



.homepage-studio-sts-text-wrapper h2 {
    color: #000;
    font-family: var(--font-secondary);
    font-size: 40px;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
    margin-bottom: 35px;
}

.homepage-studio-sts-text-wrapper p {
    color: #000;
    font-family: var(--font-primary);
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 142.997%;
}

.homepage-studio-sts .vc_row {
    justify-content: space-between;
}

.homepage-studio-sts .vc_row img {
    max-width: 410px;
    width: 100%;
    position: absolute;
    margin-top: 80px;
    z-index: 2;
}

.homepage-studio-sts {
    padding-top: 130px;
    padding-bottom: 200px;
    z-index: 3;
}


.homepage-studio-sts-text-wrapper {
    max-width: 550px;
    transition: all 0.3s ease-in-out;
    opacity: 0;
    transform: translateX(-50px);
}

.homepage-studio-sts-text-wrapper.visible {
    opacity: 1;
    transform: translateX(0);
}

.homepage-studio-sts-image {
    max-width: 410px;
    transition: all 0.3s ease-in-out;
    opacity: 0;
    transform: translateX(50px);
}

.homepage-studio-sts-image.visible {
    opacity: 1;
    transform: translateX(0);
}

.homepage-studio-sts .g-cols.via_flex.type_default {
    margin: 0;
}




.homepage-aree-attivita {
    background-color: #FAF4F0;
    z-index: 1;
    padding-top: 60px;
    padding-bottom: 90px;
}

.homepage-aree-attivita-text-wrapper {
    max-width: 415px;
    width: 100%;
}

.homepage-aree-attivita-header {
    color: #000;
    font-family: var(--font-secondary);
    font-size: 40px;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
    margin-bottom: 30px;
}

.homepage-aree-attivita-text p {
    color: #000;
    font-family: "Noto Sans Gujarati";
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 142.997%;
    margin-bottom: 50px;
}


.homepage-aree-attivita-list.w-grid.type_grid .w-grid-list {
    gap: 10px;
}

.homepage-aree-attivita-list a {
    color: #000 !important;
    font-family: var(--font-secondary);
    font-size: 28px;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
    padding: 20px 0;
    border-bottom: 1px solid black;
    width: 100%;
    display: block;
    position: relative;
    transition: padding-left 0.3s ease;
    /* smooth movement */
}

.homepage-aree-attivita-list a::after {
    content: '';
    width: 50px;
    height: 20px;
    position: absolute;
    right: 0;
    top: 20px;
    background-image: url('/wp-content/uploads/2025/07/arrow.svg');
    background-repeat: no-repeat;
    transition: all 0.3s step-start;
    background-position: right;
}

/* === On Hover === */
.homepage-aree-attivita-list a:hover {
    padding-left: 30px;
    /* move text slightly to the right */
}

.homepage-aree-attivita-list a:hover::after {
    background-image: url('/wp-content/uploads/2025/07/arrow-hover.svg');
}

.homepage-news-text-wrapper {
    justify-content: space-between;
    align-items: baseline !important;
    margin-bottom: 30px;
}

.single-news-related-posts.homepage {
    background: #FFF;
}

.area-attivita {
    position: relative;
    overflow: hidden;
    transition: all 0.3s ease-in-out;
    opacity: 0;
    transform: translateY(50px);
}

.area-attivita.visible {
    opacity: 1;
    transform: translateY(0);
}

.area-attivita::before {
    content: '';
    position: absolute;
    bottom: 0;
    height: 2px;
    background-color: black;
    width: 0;
    left: 0;
    transition: width 0.4s ease;
    /* Animate width change */
}

/* On hover — trigger animation */
.area-attivita:hover::before {
    width: 100%;
}




.homepage-sedi-header h2 {
    padding-top: 90px;
    color: #000;
    font-family: var(--font-secondary);
    font-size: 40px;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
    margin-bottom: 35px;
}

.homepage-sede>.vc_column-inner>.wpb_wrapper {
    display: flex;
    max-width: 455px;
    justify-content: space-between;
    align-items: flex-end;
}

.homepage-sede .image {
    max-width: 100px;
    width: 100%;
}

.homepage-sede .text .wpb_wrapper {
    display: flex;
    flex-direction: column;
    max-width: 320px;
}

.homepage-sede h3 {
    color: #000;
    font-family: var(--font-secondary);
    font-size: 28px;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
    margin-bottom: 18px;
}



address {
    color: #000;
    font-family: var(--font-primary);
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 143.16%;
}

address a {
    color: #000;
    font-family: var(--font-primary);
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 143.16%;
    text-decoration: underline;
}

address a:first-child {
    text-decoration: none;
}

address a:hover {
    color: #000 !important;
}

address a:hover {
    text-decoration: none;
}

.homepage-sedi .l-section-h.i-cf {
    padding-bottom: 100px;
    border-bottom: 1px solid;
    transition: all 0.3s ease-in-out;
    opacity: 0;
    transform: translateY(50px);
}

.homepage-sedi .l-section-h.i-cf.visible {
    opacity: 1;
    transform: translateY(0);
}

.lavora-con-noi-header-text-image.homepage {
    padding: 0;
    background-color: #FAF4F0;
}

/* Custom file input button text */
.lavora-con-noi-form .lavora-con-noi-form-internal .lavora-con-noi-form-wrapper form input[type="file"]::file-selector-button {
    font-family: var(--font-primary);
    font-size: 18px;
    font-style: normal;
    font-weight: 400;
    color: #53575A;
    background-color: transparent;
    border: none;
    padding: 0;
    margin: 0;
    cursor: pointer;
}

/* Alternative method for older browsers */
.lavora-con-noi-form .lavora-con-noi-form-internal .lavora-con-noi-form-wrapper form input[type="file"]::-webkit-file-upload-button {
    font-family: var(--font-primary);
    font-size: 18px;
    font-style: normal;
    font-weight: 400;
    color: #53575A;
    background-color: transparent;
    border: none;
    padding: 0;
    margin: 0;
    cursor: pointer;
}


.homepage .lavora-con-noi-header-text-image-internal-wrapper .image {
    position: absolute;
    top: 0;
    right: 0;
    max-width: 900px;
    width: 100%;
    z-index: 2;
    transition: all 0.3s ease-in-out;
    opacity: 0;
    transform: translateX(50px);
}

.homepage .lavora-con-noi-header-text-image-internal-wrapper .image.visible {
    opacity: 1;
    transform: translateX(0);
}

.homepage-contatti .l-section-h {
    width: 100%;
    max-width: 100%;
}

.homepage-contatti .g-cols.vc_row.via_flex.valign_top.type_default.stacking_default {
    max-width: 100%;
    width: 100%;
}

.lavora-con-noi-header-text-image.homepage .wpb_wrapper {
    position: relative;
    overflow: hidden;
}



.homepage-contatti-text .vc_column-inner {
    align-items: center;
    justify-content: center;
}

.lavora-con-noi-header-text-image.homepage h2 {
    color: #000;
    font-family: var(--font-secondary);
    font-size: 40px;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
    max-width: 300px;
    width: 100%;
    margin-bottom: 40px;
    transition: all 0.3s ease-in-out;
    opacity: 0;
    transform: translateX(-50px);
}

.lavora-con-noi-header-text-image.homepage h2.visible {
    opacity: 1;
    transform: translateX(0);
}

.homepage-contatti-text a,
.general-button-style a {
    color: #000;
    text-align: center;
    font-family: var(--font-secondary);
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    padding: 10px 32px;
    border: 1px solid #000;
}

.general-button-style a:hover {
    background-color: #000;
    color: #FFF;
}

/*Footer*/
.footer-sede h3 {
    font-size: 20px;
}


footer .partner {
    color: #000;
    font-family: var(--font-secondary);
    font-size: 20px;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
}

footer .image-cfl {
    max-width: 188px;
    width: 100%;
    margin-bottom: 20px;
}

footer .image-media {
    max-width: 260px;
    width: 100%;
}

.footer-section-sedi>.vc_column-inner>.wpb_wrapper {
    display: flex;
    justify-content: space-between;
    max-width: 640px;
    width: 100%;
    column-gap: 15px;
}

.footer-sedi-partner {
    padding-top: 55px;
    padding-bottom: 75px;
}

.footer-section-sedi.vc_col-sm-9 {
    width: 60%;
}

.footer-sedi-partner .g-cols.via_flex.type_default {
    margin: 0;
    justify-content: space-between;
}

.footer-additional-info {
    padding-bottom: 20px;
}

.footer-additional-info p,
.footer-additional-info a,
.footer-additional-info span {
    color: #000;
    font-family: var(--font-primary);
    font-size: 14px;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
}

.footer-additional-info a img {
    width: 13px;
    margin-left: 5px;
}


.footer-last-line {
    display: flex;
    align-items: center;
}

.footer-additional-info a.powered-by-footer {
    display: flex;
    text-decoration: none;
}

.footer-additional-info a.powered-by-footer:hover {
    text-decoration: underline;
}

.footer-additional-info a {
    text-decoration: underline;
}

.footer-additional-info a:hover {
    text-decoration: none;
    color: #000;
}

footer address,
footer address a {
    font-size: 14px;
}


/*Contatti*/
.contatti-header {
    padding-top: 180px;
}

.homepage-sedi.contatti a,
.homepage-sedi.contatti li {
    color: #000;
    font-family: var(--font-primary);
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 143.16%;
}

.contatti-header h1 {
    color: #000;
    font-family: var(--font-secondary);
    font-size: 64px;
    font-style: normal;
    font-weight: 500;
    line-height: 81px;
    margin-bottom: 60px;
    transition: all 0.3s ease-in-out;
    opacity: 0;
    transform: translateY(50px);
}

.contatti-header h1.visible {
    opacity: 1;
    transform: translateY(0);
}

.homepage-sedi.contatti li {
    padding-left: 15px;
}

.homepage-sedi.contatti a {
    text-decoration: underline;
}

.homepage-sedi.contatti a:hover {
    text-decoration: none;
}

.homepage-sedi.contatti a:hover {
    text-decoration: none;
}

.homepage-sedi.contatti ul {
    list-style: none;
    margin: 0;
}

.homepage-sedi.contatti ul li {
    position: relative;
}

.homepage-sedi.contatti ul li:first-child a {
    text-decoration: none;
}


.homepage-sedi.contatti ul li::before {
    content: '';
    position: absolute;
    left: 0;
    top: 40%;
    transform: translateY(-50%);
    width: 10px;
    height: 8px;
    background-color: #53575A;
}

.contatti .homepage-sede>.vc_column-inner>.wpb_wrapper {
    display: flex;
    flex-direction: column;
    max-width: 455px;
    align-items: baseline;
}

.contatti-address-image-text-wrapper {
    max-width: 240px;
    width: 100%;
    justify-content: space-between;
    align-items: end !important;
    margin-bottom: 20px;
}

.contatti-address-image-text-wrapper h2 {
    color: #000;
    font-family: "Big Shoulders Display";
    font-size: 40px;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
}

.homepage-sedi.contatti .l-section-h.i-cf {
    padding-bottom: 100px;
    border-bottom: unset;
}

.homepage-sedi.contatti .g-cols.vc_row.via_flex.valign_top.type_default.stacking_default {
    align-items: end;
}

/*lavora con noi*/
.lavora-con-noi-form {
    background-color: #FAF4F0;
    padding-top: 190px;
    padding-bottom: 85px;
    transition: all 0.3s ease-in-out;
    opacity: 0;
    transform: translateY(50px);
}

.lavora-con-noi-form.visible {
    opacity: 1;
    transform: translateY(0);
}

.name-surname p,
.phone-email p,
.cv-sede p {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
}

.name-surname p span,
.phone-email p span,
.cv-sede p label {
    max-width: 49%;
    width: 100%;
}

.cv-sede p label {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.cv-sede p label span:not(.wpcf7-not-valid-tip) {
    max-width: 100%;
    width: 100%;
    padding-left: 40px;
}

.lavora-con-noi-form .lavora-con-noi-form-internal .lavora-con-noi-form-wrapper form input,
.lavora-con-noi-form .lavora-con-noi-form-internal .lavora-con-noi-form-wrapper form textarea,
.lavora-con-noi-form .lavora-con-noi-form-internal .lavora-con-noi-form-wrapper form select {
    background-color: transparent;
    border: 1px solid black;
    border-radius: 0;
}

.lavora-con-noi-form .lavora-con-noi-form-internal .lavora-con-noi-form-wrapper form label {
    color: #53575A;
    font-family: var(--font-primary);
    font-size: 18px;
    font-style: normal;
    font-weight: 400;
    line-height: 90%;
}

.lavora-con-noi-form .lavora-con-noi-form-internal .lavora-con-noi-form-wrapper form input::placeholder,
.lavora-con-noi-form .lavora-con-noi-form-internal .lavora-con-noi-form-wrapper form textarea::placeholder,
.lavora-con-noi-form .lavora-con-noi-form-internal .lavora-con-noi-form-wrapper form input,
.lavora-con-noi-form .lavora-con-noi-form-internal .lavora-con-noi-form-wrapper form textarea {
    color: #53575A !important;
    font-family: var(--font-primary);
    font-size: 18px;
    font-style: normal;
    font-weight: 400;
    opacity: 1 !important;
}

.lavora-con-noi-form .lavora-con-noi-form-internal .lavora-con-noi-form-wrapper form input[type="submit"] {
    color: #000 !important;
    text-align: center;
    font-family: "Big Shoulders Display";
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    border: 1px solid #000;
    padding: 10px 32px;
    margin-top: 35px;
}

.lavora-con-noi-form .lavora-con-noi-form-internal .lavora-con-noi-form-wrapper form input[type="submit"]:hover {
    background-color: #000 !important;
    color: #FFF !important;
}

.lavora-con-noi-header-text-image-internal-wrapper .image {
    position: absolute;
    top: 0;
    right: 0;
    max-width: 805px;
    width: 100%;
    z-index: 2;
    transition: all 0.3s ease-in-out;
    opacity: 0;
    transform: translateX(50px);
}

.lavora-con-noi-header-text-image-internal-wrapper .image.visible {
    opacity: 1;
    transform: translateX(0);
}

/*in responsive it should become 1.5 rem*/
.lavora-con-noi-header-text-wrapper {
    max-width: 1220px;
    width: 100%;
    padding: 120px 2.5rem 90px;
    margin: 0 auto;
}

.lavora-con-noi-header-text-wrapper * {
    line-height: unset;
}

.lavora-con-noi-header-text-image {
    padding: 0;
    padding-top: 100px;
}

.lavora-con-noi-header-text-image .l-section-h.i-cf {
    max-width: 100%;
    width: 100%;
}

.internal-wrapper-texts {
    max-width: 385px;
    flex-direction: column;
    padding-right: 15px;
}

.internal-wrapper-texts h1 {
    color: #000;
    font-family: var(--font-secondary);
    font-size: 64px;
    font-style: normal;
    font-weight: 500;
    line-height: 81px;
    transition: all 0.3s ease-in-out;
    opacity: 0;
    transform: translateY(50px);
}

.internal-wrapper-texts h1.visible {
    opacity: 1;
    transform: translateY(0);
}

.internal-wrapper-texts .text {
    color: #000;
    font-family: var(--font-primary);
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 142.997%;
}


/*news*/
.news-page h1 {
    color: #000;
    font-family: var(--font-secondary);
    font-size: 64px;
    font-style: normal;
    font-weight: 500;
    line-height: 81px;
    margin-bottom: 90px;
    transition: all 0.3s ease-in-out;
    opacity: 0;
    transform: translateY(50px);
}

.news-page h1.visible {
    opacity: 1;
    transform: translateY(0);
}

.news-page .post time {
    color: #000;
    font-family: var(--font-primary);
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 142.997%;
    margin-bottom: 0;
}

.news-page .post h3 {
    color: #000;
    font-family: var(--font-secondary);
    font-size: 28px;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
    max-width: 80%;
    width: 100%;
}

.news-page .w-grid.type_grid .w-grid-list {
    gap: 50px 30px;
}

.news-page article {
    position: relative;
    transition: all 0.3s ease-in-out;
    opacity: 0;
    transform: translateY(50px);
}

.news-page article.visible {
    opacity: 1;
    transform: translateY(0);
}

.news-page article::before {
    content: '';
    position: absolute;
    bottom: 0;
    right: 30px;
    background-image: url('/wp-content/uploads/2025/07/arrow.svg');
    background-position: right;
    background-repeat: no-repeat;
    width: 50px;
    height: 16px;
    transition: all 0.2s step-start;
}

.news-page article:hover::before {
    background-image: url('/wp-content/uploads/2025/07/arrow-hover.svg');
}

.news-page article:hover a {
    text-decoration: underline;
    text-underline-offset: 0;
    text-decoration-thickness: 0.5px;
}

.news-page {
    padding-bottom: 90px;
    padding-top: 180px;
}

/*singolo news*/
.single-news-date {
    padding-top: 150px;
}

.single-news-related-posts {
    background: #FAF4F0;
    padding-top: 95px;
    padding-bottom: 95px;
}



.single-news-related-posts .w-grid.type_grid .w-grid-list {
    gap: 50px 30px;
}

.single-news-related-posts article {
    position: relative;
    transition: all 0.3s ease-in-out;
    opacity: 0;
    transform: translateY(50px);
}

.single-news-related-posts article.visible {
    opacity: 1;
    transform: translateY(0);
}

.single-news-related-posts .post time {
    color: #000;
    font-family: var(--font-primary);
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 142.997%;
    margin-bottom: 0;
}

.single-news-related-posts .post h3 {
    color: #000;
    font-family: var(--font-secondary);
    font-size: 28px;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
    max-width: 80%;
    width: 100%;
}

.single-news-related-posts article::before {
    content: '';
    position: absolute;
    bottom: 0;
    right: 30px;
    background-image: url('/wp-content/uploads/2025/07/arrow.svg');
    background-position: right;
    background-repeat: no-repeat;
    width: 50px;
    height: 16px;
    transition: all 0.2s step-start;
}

.single-news-related-posts article:hover::before {
    background-image: url('/wp-content/uploads/2025/07/arrow-hover.svg');
}

.single-news-related-posts article:hover a {
    text-decoration: underline;
    text-underline-offset: 0;
    text-decoration-thickness: 0.5px;
}

.single-news-related-posts h2 {
    color: #000;
    font-family: var(--font-secondary);
    font-size: 40px;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
    margin: 0;
}

.single-news-date time {
    color: #000;
    font-family: var(--font-primary);
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 142.997%;
}

.single-news-title h1 {
    color: #000;
    font-family: var(--font-secondary);
    font-size: 64px;
    font-style: normal;
    font-weight: 500;
    line-height: 81px;
    max-width: 755px;
    width: 100%;
    margin-bottom: 60px;
    transition: all 0.3s ease-in-out;
    opacity: 0;
    transform: translateY(50px);
}

.single-news-title h1.visible {
    opacity: 1;
    transform: translateY(0);
}

.single-news-content .post_content {
    color: #000;
    font-family: var(--font-primary);
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 142.997%;
    max-width: 940px;
    margin-bottom: 60px;
}

h2.related-news {
    margin-bottom: 40px;
}

/*singola area attivita*/
.single-area-attivita-header {
    padding: 0;
}

.single-area-attivita-header .l-section-h.i-cf {
    margin: 0;
    max-width: 100%;
    width: 100%;
}


.single-area-attivita-header .header-text {
    max-width: 1220px;
    width: 100%;
    margin: 0 auto;
    padding: 0 2.5rem;
    position: absolute;
    bottom: 40px;
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    justify-content: left;
}

.single-area-attivita-header .header-text h1 {
    max-width: 960px;
    width: 100%;
    display: block;
    color: #FFF;
    text-align: left;
    font-family: var(--font-secondary);
    font-size: 80px;
    font-style: normal;
    font-weight: 500;
    line-height: 81px;
    transition: all 0.3s ease-in-out;
    opacity: 0;
    transform: translateY(50px);
}

.single-area-attivita-header .header-text h1.visible {
    opacity: 1;
    transform: translateY(0);
}

.single-area-attivita-content {
    color: #000;
    font-family: "Noto Sans Gujarati";
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 142.997%;
    max-width: 770px;
    margin-bottom: 55px;
}

.single-area-attivita-content-external {
    padding-top: 55px;
    padding-bottom: 55px;
}













/*Header*/
.header_hor .l-header.pos_fixed~.l-main>.l-section:first-of-type>.l-section-h {
    padding-top: 0;
}

header.l-header.shadow_thin .l-subheader.at_middle {
    background-color: transparent;
    box-shadow: none !important;
    height: 100% !important;
    padding-top: 20px;
    padding-bottom: 20px;
}


.l-subheader-cell.at_left {
    max-width: 310px;
}

.l-subheader-cell.at_left a.w-image-h {
    display: flex;
    justify-content: center;
    align-items: center;
}

.header_hor .l-subheader-cell.at_left>* {
    margin-right: 0;
    max-width: 100%;
    width: 100%;
}

.header_hor .l-subheader-cell.at_left img {
    width: 100%;
    height: auto;
}

.no-touch .w-nav.type_desktop.dropdown_height .menu-item:hover>.w-nav-list {
    background-color: rgba(0, 0, 0, 0.33);
    backdrop-filter: blur(6px);
}






header ul li.menu-item-has-children:hover {
    background-color: rgba(0, 0, 0, 0.33);
    backdrop-filter: blur(6px);
}

header ul li a {
    color: #FFF !important;
    font-family: "Big Shoulders Display";
    font-size: 18px;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
}

.w-nav.type_desktop .w-nav-list.level_2 {
    min-width: 32rem;
}

header ul li a.level_2 {
    border-bottom: 1px solid white;
    margin: 15px 20px;
    padding: 0 0 5px !important;
    transition: padding-left 0.3s !important;
}

.header_hor .ush_menu_1.type_desktop .menu-item.level_1>a:not(.w-btn) {
    padding: 20px;
}

a.w-nav-anchor.level_2::after {
    content: "";
    width: 13px;
    height: 13px;
    position: absolute;
    right: 0px;
    /* top: 20px; */
    background-image: url(/wp-content/uploads/2025/07/arrow-white.svg);
    background-repeat: no-repeat;
    transition: 0.3s step-start;
    background-position: center;
    background-size: contain;
}

header ul li a.level_2:hover {
    padding-left: 20px !important;
}

header ul li a.level_2:hover::after {
    background-image: url('/wp-content/uploads/2025/07/arrow.svg');
}

.w-nav-arrow {
    opacity: unset;
}

.w-nav.type_desktop .w-nav-anchor.level_1 .w-nav-arrow:before {
    margin-inline-start: 0;
    margin-left: 4px;
    font-weight: 200;

}

.w-nav.type_desktop .w-nav-anchor.level_1:hover .w-nav-arrow:before,
.w-nav.type_desktop .menu-item.opened .w-nav-anchor.level_1 .w-nav-arrow:before,
.w-nav.type_desktop .menu-item:hover .w-nav-anchor.level_1 .w-nav-arrow:before {

    transform: rotate(180deg);
    display: inline-block;
    /* Needed for transform to apply properly */
    transition: transform 0.3s ease;
    /* Optional: adds smooth rotation */
}

/*header on scroll*/
.header-scroll {
    transform: translateY(-100%);
    transition: transform 0.3s ease-in-out;
}

header,
.header,
#header {
    transition: transform 0.3s ease-in-out;
    z-index: 1000;
}

/*white header*/


.white-navigation header.l-header.shadow_thin .l-subheader.at_middle {
    background-color: #FFF;
}

.white-navigation .no-touch .w-nav.type_desktop.dropdown_height .menu-item:hover>.w-nav-list {
    background-color: #FFF;
}

.white-navigation .ush_menu_1 .w-nav-list:not(.level_1) {
    background-color: #FFF !important;
}

.white-navigation header ul li.menu-item-has-children:hover {
    background-color: #FFF;
}

.white-navigation header ul li a {
    color: #000 !important;
}



.white-navigation header ul li a.level_2 {
    border-bottom: 1px solid #000;
}



.white-navigation a.w-nav-anchor.level_2::after {

    background-image: url(/wp-content/uploads/2025/07/arrow.svg);
}

.white-navigation header ul li a.level_2:hover {
    padding-left: 20px !important;
}

.white-navigation header ul li a.level_2:hover::after {
    background-image: url('/wp-content/uploads/2025/07/arrow-white.svg');
}

.current-menu-item a {
    text-decoration: underline;
    text-underline-offset: 2px;
}

.w-nav-control .w-nav-icon div {
    color: #FFF;
}

.white-navigation .w-nav-control .w-nav-icon div {
    color: #000;
}


input[type="checkbox"] {
    width: 18px;
    height: 18px;
    display: flex;
    justify-content: center;
    align-items: center;
}


.form-policy,
.form-policy * {
    color: #53575A;
    font-family: var(--font-primary);
    font-size: 16px;
}

.form-policy a {
    text-decoration: underline;
}

.form-policy a:hover {
    text-decoration: none;
}

.form-policy {
    margin-top: 30px;
}


.footer-section-partner:not(.page-id-11 .footer-section-partner) {
    display: none;
}

.w-image.homepage-header-image.align_none::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    height: 150px;
    width: 100%;
    background: linear-gradient(to bottom, rgba(0, 0, 0, 0.6), transparent);
    pointer-events: none;
}

.l-subheader-cell .ush_menu_1 .w-nav-list:not(.level_1) {

    background: rgba(0, 0, 0, 0.33);

    backdrop-filter: blur(6px);

}

.single-area-attivita-header .post_image img {
    max-height: 500px;
    height: 100%;
    width: 100%;
    object-fit: cover;
}











/*responsive*/
@media (max-width: 1300px) {
    .page-id-13 .professionista .employee-wrapper:hover .employee-hidden-layer {
        height: 0;
        opacity: 0;
        visibility: hidden;
    }

    .page-id-13 .professionista .employee-wrapper.clicked .employee-hidden-layer {
        height: 100%;
        opacity: 1;
        visibility: visible;
    }
}






@media (max-width: 1200px) {
    .homepage .lavora-con-noi-header-text-image-internal-wrapper .image {
        position: unset;
        max-width: unset;
    }

    .internal-wrapper-texts {
        max-width: unset;
    }

    .lavora-con-noi-header-text-image.homepage h2 {
        max-width: unset;
        text-align: center;
    }

    .internal-wrapper-texts p.general-button-style {
        max-width: 100%;
        width: 100%;
        text-align: center;
    }

    .lavora-con-noi-header-text-image-internal-wrapper .image {
        position: unset;
        max-width: unset;
    }
}











@media (max-width: 992px) {
    header .type_mobile.ush_menu_1 .w-nav-list:not(.level_1) {

        background: #FFF;

        backdrop-filter: unset;

    }

    header .type_mobile ul li a {
        color: #000 !important;
    }

    .type_mobile a.w-nav-anchor.level_2::after {
        background-image: url(/wp-content/uploads/2025/07/arrow.svg);
    }

    header .type_mobile ul li a.level_2 {
        border-bottom: 1px solid #000;
    }

    header .type_mobile ul li.menu-item-has-children:hover {
        background-color: unset;
        backdrop-filter: unset;
    }

    .homepage-studio-sts-text-wrapper {
        padding-right: 15px;
    }

    .homepage-studio-sts {
        padding-top: 40px;
        padding-bottom: 40px;
    }

    .homepage-sede>.vc_column-inner>.wpb_wrapper {
        column-gap: 15px;
    }

    .homepage-sedi .vc_col-sm-6 {
        padding-right: 15px;
    }

    .lavora-con-noi-header-text-wrapper {
        padding: 80px 2.5rem;
    }

    .lavora-con-noi-form {
        padding-top: 80px;
        padding-bottom: 80px;
    }
}








@media (max-width: 768px) {
    .footer-last-line {
        display: unset;
        align-items: unset;
    }

    .w-image.homepage-header-image.align_none::after {
        height: 100%;
    }

    .cv-sede p label span:not(.wpcf7-not-valid-tip) {
        padding-left: unset;
    }

    h1 {
        font-size: 36px !important;
        line-height: 1 !important;
    }

    h2 {
        font-size: 32px !important;
        line-height: 1 !important;
    }

    .l-subheader-cell.at_left {
        max-width: 185px;
    }

    .homepage-header-text {
        bottom: 70px;
        text-align: center;
        padding: 0 1.5rem;
    }

    header.l-header.shadow_thin .l-subheader.at_middle {
        padding-top: 0;
        padding-bottom: 0;
    }

    .homepage-studio-sts .vc_row img {
        max-width: unset;
        position: unset;
        margin-top: unset;
    }






    .homepage-aree-attivita-text-wrapper {
        max-width: unset;
    }

    .homepage-aree-attivita-list a::after {
        top: unset;
        bottom: 10px;
    }

    .homepage-aree-attivita-list a {
        padding-right: 30px;
    }

    .homepage-sedi .vc_col-sm-6 {
        padding-right: unset;
        width: 100%;
        max-width: 100%;
    }

    .homepage-sedi .g-cols.vc_row.via_flex.valign_top.type_default.stacking_default {
        row-gap: 30px;
    }

    .homepage-sedi-header h2 {
        padding-top: 50px;
    }

    .homepage-sedi .l-section-h.i-cf {
        padding-bottom: 60px;
    }

    .single-news-related-posts {
        padding-top: 60px;
        padding-bottom: 60px;
    }

    .footer-sedi-partner .g-cols.via_flex.type_default {
        flex-direction: column;
        row-gap: 30px;
    }

    .footer-section-sedi>.vc_column-inner>.wpb_wrapper {
        flex-direction: column;
        row-gap: 20px;
    }

    .lavora-con-noi-header-text-wrapper {
        padding: 60px 1.5rem;
    }

    .professionisti-external-wrapper {
        padding-top: 80px;
    }

    .news-page {
        padding-top: 80px;
    }

    .news-page h1 {
        margin-bottom: 60px;
    }

    .single-news-date {
        padding-top: 80px;
    }

    .lavora-con-noi-header-text-wrapper {
        padding: 0 1.5rem 60px;
        margin: 0 auto;
    }

    .homepage .lavora-con-noi-header-text-wrapper {
        padding: 60px 1.5rem;
    }

    .homepage .internal-wrapper-texts {
        padding-right: unset;
    }

    .lavora-con-noi-header-text-image {
        padding-top: 80px;
    }

    .contatti-header {
        padding-top: 80px;
    }

    .name-surname p,
    .phone-email p,
    .cv-sede p {
        display: flex;
        justify-content: space-between;
        flex-direction: column;
    }

    .name-surname p span,
    .phone-email p span,
    .cv-sede p label {
        max-width: unset;
    }


    .lavora-con-noi-form .lavora-con-noi-form-internal .lavora-con-noi-form-wrapper form label:not(.form-policy label) {
        flex-direction: column;
        align-items: flex-start;
    }

    .cv-sede p label span {
        padding-left: unset;
    }

    .single-area-attivita-header .header-text {
        bottom: 10px;
        text-align: center;
        padding: 0 1.5rem;
    }


    .single-area-attivita-header .header-text h1 {
        text-align: center;
    }



    .wpcf7 form.invalid .wpcf7-response-output,
    .wpcf7 form.unaccepted .wpcf7-response-output,
    .wpcf7 form.payment-required .wpcf7-response-output,
    .wpcf7 form.sent .wpcf7-response-output {
        position: absolute;
        top: -70px;
        width: 100%;
    }
}


@media (max-width: 500px) {
    .homepage-header-text {
        bottom: 10px;
    }

    .homepage-studio-sts .vc_row .vc_col-sm-6 {
        width: 100%;
        max-width: 100%;
        padding: unset;
    }

    .homepage-studio-sts .vc_row {
        flex-direction: column;
        row-gap: 30px;
    }
}