/*
    Theme Name:  Space Oddity Child
    Author:  Alfredo D'Amico
    Template:  space_oddity
    Version:  1.0
*/
/*
    CSS GENERAL
*/

.hide-me {
    display: none;
}

.page-wrapper {
    padding-top: 80px;
}

img.custom-logo {
    height: 32px !important;
}

.sticky_header img.custom-logo {
    height: 26px !important;
}

.site-header.sticky_header {
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

#header_wrapper {
    padding: 0 !important;
    gap: 20px;
}

.site-header:not(.sticky_header) ul.nav-menu>li>a {
    padding-top: 33px !important;
    padding-bottom: 33px !important;
    line-height: 100%;
}

.site-header.sticky_header ul.nav-menu>li>a {
    padding-top: 18px !important;
    padding-bottom: 18px !important;
    line-height: 100%;
}

span.pre_title {
    color: var(--color);
    font-size: 1rem;
}

h1.composer_heading,
h2.composer_heading,
h3.composer_heading,
h4.composer_heading,
h5.composer_heading,
h6.composer_heading {
    color: var(--text-color);
}

.composer_txt_img-bkg.only_text h2 {
    max-width: 900px;
}

.header_menu_nav li.menu-item-has-children>a {
    padding-right: 20px !important;
}

.main-navigation li.menu-item-has-children>a:after,
.main-navigation ul.sub-menu>li.menu-item-has-children>a:after {
    right: 0px !important;
}

.boxed .slick-next:before {
    margin-left: -2px;
}

.boxed .slick-prev:before {
    margin-right: -2px;
}

.composer_wrapper .slick-prev:before,
.composer_wrapper .slick-next:before {
    border-width: 0 2px 2px 0 !important;
    padding: 3px;
    border-color: var(--text-color) !important;
    opacity: 1;
}

.composer_wrapper .slick-arrow:hover {
    background: white;
    box-shadow: 0px 0px 20px 0px rgb(141 181 220 / 30%);
}

.composer_wrapper .slick-arrow {
    width: 40px;
    height: 40px;
    border-radius: 50%;
}

ul.slick-dots li button:before {
    font-size: 30px;
    color: var(--color);
}

.slick-dots li.slick-active button:before {
    opacity: 1;
}

.composer_txt_img-bkg h2 {
    font-size: 28px;
    line-height: 34px;
    color: var(--text-color);
}

.composer_txt_img-bkg {
    line-height: 22px;
}

/*
    CSS BUTTONS
*/
a.generic_button {
    font-size: 16px;
    font-weight: 600;
    border-radius: 4px;
    padding: 15px 24px;
    line-height: 100%;
}

a.generic_button.header:after {
    display: none;
}

a.generic_button.empty {
    background: transparent;
    border-color: transparent;
    color: var(--color);
}

a.generic_button.empty:hover {
    border-color: var(--color);
}

a.generic_button.empty.video {
    padding-left: 55px !important;
    padding-right: 20px !important;
}

a.generic_button.empty.video:before {
    content: '';
    width: 30px;
    height: 30px;
    display: inline-block;
    vertical-align: middle;
    -webkit-mask: url(ico/play_circle.svg) no-repeat 50% 50%;
    mask: url(ico/play_circle.svg) no-repeat 50% 50%;
    -webkit-mask-size: cover;
    mask-size: cover;
    background: var(--color);
    position: absolute;
    left: 15px;
}

.download-button {
    width: auto;
    border-radius: 60px;
    background: linear-gradient(89.1deg, #0A5CA6 -19.62%, #0F1741 28.78%, #431979 97.26%);
    color: #ffffff;
    padding: 14px 36px;
    font-size: 16px;
    font-family: Lato, sans-serif;
    letter-spacing: 0.3px;
    box-shadow: 0px 4px 11px 0px #00000040;
    white-space: nowrap;
}

.download-button span {
    font-weight: 800;
    text-transform: uppercase;
}

/*
    CSS MAIN MENU NAVIGATION
*/
.sub_header_wrapper {
    border-bottom: 1px solid var(--color);
    width: 80vw !important;
}

.sub_header_menu_nav ul {
    align-items: center;
}

.sub_header_menu_nav ul i.fa-solid {
    font-size: 14.4px;
    font-size: 14.4px;
    font-size: 0.9rem;
}

ul.nav-menu {
    gap: 18px !important;
    align-items: center;
}

ul.nav-menu li a {
    font-size: 14px;
}

ul.nav-menu ul.sub-menu li a {
    padding: 2px 0px !important;
}

ul.nav-menu:not(#menu-menu-switcher)>li>a:hover:before,
ul.nav-menu:not(#menu-menu-switcher)>li.current-page-item>a:before,
ul.nav-menu:not(#menu-menu-switcher)>li.current-page-ancestor>a:before,
ul.nav-menu:not(#menu-menu-switcher)>li.current-page-parent>a:before,
ul.nav-menu:not(#menu-menu-switcher-fra)>li>a:hover:before,
ul.nav-menu:not(#menu-menu-switcher-fra)>li.current-page-item>a:before,
ul.nav-menu:not(#menu-menu-switcher-fra)>li.current-page-ancestor>a:before,
ul.nav-menu:not(#menu-menu-switcher-fra)>li.current-page-parent>a:before ul.nav-menu:not(#menu-menu-switcher-ita)>li>a:hover:before,
ul.nav-menu:not(#menu-menu-switcher-ita)>li.current-page-item>a:before,
ul.nav-menu:not(#menu-menu-switcher-ita)>li.current-page-ancestor>a:before,
ul.nav-menu:not(#menu-menu-switcher-ita)>li.current-page-parent>a:before,
ul.nav-menu:not(#menu-menu-switcher-esp)>li>a:hover:before,
ul.nav-menu:not(#menu-menu-switcher-esp)>li.current-page-item>a:before,
ul.nav-menu:not(#menu-menu-switcher-esp)>li.current-page-ancestor>a:before,
ul.nav-menu:not(#menu-menu-switcher-esp)>li.current-page-parent>a:before {
    content: '';
    display: block;
    height: 3px;
    width: 100%;
    background: #003879;
    position: absolute;
    bottom: 0px;
}

ul.nav-menu>li:not(.mega_menu_col) ul {
    padding: 40px 30px;
    min-width: 300px;
    box-shadow: unset;
    display: flex;
    flex-direction: column;
}

ul.nav-menu>li:not(.mega_menu_col):hover>ul,
ul.nav-menu>li:not(.mega_menu_col).focus>ul {
    left: -30px;
}

ul.nav-menu>li:not(.mega_menu_col) ul>li {
    padding: 4px 0px;
}

ul.nav-menu>li:not(.mega_menu_col) ul>li>a {
    font-weight: normal !important;
}

ul.nav-menu>li:not(.mega_menu_col) ul>li:last-child {
    border: 0;
}

.mega_menu_col_container>a {
    display: none;
}

.header_menu_nav.menu_switcher {
    margin-left: 4px;
}

#menu-menu-switcher.nav-menu>li:hover>ul.sub-menu,
#menu-menu-switcher-fra.nav-menu>li:hover>ul.sub-menu,
#menu-menu-switcher-esp.nav-menu>li:hover>ul.sub-menu,
#menu-menu-switcher-ita.nav-menu>li:hover>ul.sub-menu {
    padding: 5px 20px;
    left: 23px;
    width: auto;
    min-width: auto;
}

#menu-menu-switcher>li>a,
#menu-menu-switcher-fra>li>a,
#menu-menu-switcher-esp>li>a,
#menu-menu-switcher-ita>li>a {
    border-left: 1px solid #e2e2e2;
    padding: 8px 12px 8px 16px !important;
    margin-left: 12px;
    color: var(--text-color);
}

#menu-menu-switcher,
#menu-menu-switcher-fra,
#menu-menu-switcher-esp,
#menu-menu-switcher-ita {
    gap: 0 !important;
}

#menu-menu-switcher>li:first-child>a:before,
#menu-menu-switcher-fra>li:first-child>a:before,
#menu-menu-switcher-ita>li:first-child>a:before,
#menu-menu-switcher-esp>li:first-child>a:before {
    content: '\f555';
}

#menu-menu-switcher>li:last-child>a:before,
#menu-menu-switcher-fra>li:last-child>a:before,
#menu-menu-switcher-esp>li:last-child>a:before,
#menu-menu-switcher-ita>li:last-child>a:before {
    content: '\f0ac';
}

#menu-menu-switcher>li>a:before,
#menu-menu-switcher-fra>li>a:before,
#menu-menu-switcher-ita>li>a:before,
#menu-menu-switcher-esp>li>a:before {
    font-family: 'FontAwesome';
    font-size: 14px;
    font-weight: 300;
    margin-right: 5px;
}

#menu-menu-switcher>li>a:hover,
#menu-menu-switcher-fra>li>a:hover,
#menu-menu-switcher-ita>li>a:hover,
#menu-menu-switcher-esp>li>a:hover {
    color: var(--color);
}

#header_wrapper .menu_ext a.generic_button {
    white-space: nowrap;
    font-size: 14px !important;
    padding: 10px 22px !important;
}

#header_wrapper .menu_ext a.generic_button:after {
    display: none;
}

#header_wrapper .menu_ext {
    display: inline-flex;
    flex-wrap: nowrap;
}

#header_wrapper .menu_ext a.generic_button.login {
    background: white;
    color: var(--color);
}

#header_wrapper .menu_ext a.generic_button.login i.fa-solid {
    margin-right: 6px;
}

#header_wrapper .menu_ext a.generic_button.login:hover {
    background: var(--color);
    color: white;
}

.header_menu_nav ul.sub-menu>li.menu-item-has-children>a:after {
    display: none;
}

.header_menu_nav li.menu-item-has-children>a {
    position: relative;
}

.main-navigation li.mega_menu_col {
    position: unset;
}

.main-navigation li.mega_menu_col>ul.sub-menu {
    right: 50% !important;
    width: 1200px;
    display: flex;
    justify-content: space-around;
    box-shadow: none;
    padding: 0 220px;
    transform: translateX(50%) !important;
}

.main-navigation li.mega_menu_col>ul.sub-menu>* ul {
    position: relative;
    left: unset;
    flex-direction: column;
    box-shadow: unset;
    background: transparent;
    padding: 0;
}

.main-navigation li.mega_menu_col>ul.sub-menu>li {
    padding: 40px 0px;
}

.main-navigation ul ul a {
    width: auto;
}

.main-navigation li.mega_menu_col li.menu_title>a {
    color: var(--color);
    border-bottom: 1px solid var(--color);
    margin-bottom: 10px;
    pointer-events: none;
    font-weight: bold;
    text-transform: uppercase;
    font-size: 13px;
}

@media all and (min-width: 1280px) {

    .site-header {
        --navbar-spacing: 30px;
    }

    .site-header.sticky_header {
        --navbar-spacing: 18px;
    }

    .main-navigation .header_menu_nav:first-child .menu-item-has-children:hover::after {
        content: '';
        position: absolute;
        top: calc(100% - var(--navbar-spacing));
        left: 0;
        width: 100%;
        height: var(--navbar-spacing);
        z-index: 1000;
    }
}

/*
    CSS HEADER
*/
body {
    overflow-x: hidden;
    position: relative;
}

body.home.active:before {
    top: 150vh;
}

body.home:before {
    content: '';
    display: none;
    background: #51a3a3;
    width: 23.3vw;
    height: 23.3vw;
    position: absolute;
    top: 77vh;
    left: -14vw;
    border-radius: 50%;
    transition: all 1000ms;
    z-index: -1;
}

body.home.active:after {
    bottom: 33%;
}

body.home:after {
    content: '';
    display: none;
    background: var(--yellow);
    width: 13vw;
    height: 13vw;
    position: absolute;
    bottom: 23%;
    right: -10vw;
    border-radius: 50%;
    transition: all 1000ms;
    z-index: 1;
}

.header_wrapper {
    height: 36.5vw;
    position: relative;
    overflow: hidden;
}

.header_wrapper .header_wrapper_bkg {
    content: '';
    width: 50vw;
    height: 50vw;
    background: var(--color);
    display: block;
    position: absolute;
    right: -10vw;
    bottom: 2vw;
    border-radius: 50%;
}

.header_person>img {
    position: absolute;
    right: 13vw;
    bottom: 1vw;
    width: 28vw;
}

.header_wrapper_bkg .header_element,
.header_person>img {
    transition: all 1000ms;
}

.header_wrapper_bkg .header_element.active:nth-child(1) {
    bottom: 29vw;
}

.header_wrapper_bkg .header_element:nth-child(1) {
    width: 3.7vw;
    height: 3.7vw;
    display: block;
    background: var(--yellow);
    position: absolute;
    left: -1.5vw;
    bottom: 27vw;
    border-radius: 50%;
}

.header_wrapper_bkg .header_element.active:nth-child(2) {
    bottom: 2vw;
}

.header_wrapper_bkg .header_element:nth-child(2) {
    width: 1.6vw;
    height: 1.6vw;
    display: block;
    background: #cd234b;
    position: absolute;
    left: 30vw;
    bottom: 0vw;
    border-radius: 50%;
}

.header_wrapper_bkg .header_element.active:nth-child(3) {
    bottom: 13vw;
}

.header_wrapper_bkg .header_element:nth-child(3) {
    width: 1.6vw;
    height: 1.6vw;
    display: block;
    background: #51a3a3;
    position: absolute;
    left: -4vw;
    bottom: 10vw;
    border-radius: 50%;
}

img.header_element.active:nth-child(4) {
    bottom: 19vw;
}

img.header_element:nth-child(4) {
    position: absolute;
    left: -1vw;
    bottom: 14vw;
    width: 8.55vw;
    z-index: 2;
    box-shadow: 0px 0px 20px 0px rgb(141 181 220 / 30%);
    border-radius: 6px;
}

img.header_element.active:nth-child(5) {
    bottom: 4vw
}

img.header_element:nth-child(5) {
    position: absolute;
    left: 15vw;
    bottom: 9vw;
    width: 12.4vw;
    z-index: 2;
}

img.header_element.active:nth-child(6) {
    bottom: 22vw;
}

img.header_element:nth-child(6) {
    position: absolute;
    left: 19vw;
    bottom: 19vw;
    width: 9.6vw;
    z-index: 0;
    ;
}

.header_content {
    width: 100%;
    max-width: 1200px;
    margin: auto;
    display: flex;
    height: 100%;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
}

.header_content h1 {
    color: var(--color);
    font-size: 64px;
    line-height: 70px;
    font-weight: 700;
    margin: 0;
    margin-bottom: 40px;
}

.header_content>span {
    color: var(--text-color);
    font-size: 24px;
    line-height: 32px;
    margin-bottom: 50px;
}

.header_content h1,
.header_content>span {
    max-width: 50%;
}

div.buttons {
    display: flex;
}

div#row_01_home,
div.row_02_home {
    margin: 0 auto;
}

.composer_txt_img-bkg.only_text h2 {
    font-size: 38px;
    color: var(--text-color);
    margin: 15px auto;
    line-height: 1.1;
}

.composer_txt_img-bkg.only_text>div>div {
    font-size: 20px;
    line-height: 28px;
    margin-top: 15px;
}

/*
    BREADCRUMBS
*/
.theme_breadcrumbs_wrapper {
    position: absolute;
    width: 100%;
    display: none;
}

.theme_breadcrumbs_container {
    border-bottom: 1px solid #d6d9dd;
    padding: 24px 0px !important;
    padding: 24px 0px !important;
    padding: 1.5rem 0px !important;
}

.theme_breadcrumbs_container>a {
    font-weight: normal;
    color: var(--text-color);
    position: relative;
    z-index: 999;
}

.theme_breadcrumbs_container>.last_breadcrumb {
    font-weight: 700;
    color: var(--color);
}

.theme_breadcrumbs_container span.material-symbols-outlined {
    font-weight: 300;
    margin: 0px 5px;
    line-height: 100%;
}

/*
    INTERNAL HEADER
*/
.header_int_content {
    padding-top: 40px;
}

.header_int_wrapper {
    display: flex;
    height: 40vw;
    background: var(--gradient-bg);
    color: #fff;
}

.header_int_wrapper>div {
    flex: 1;
    position: relative;
    display: flex;
    justify-content: flex-end;
    align-items: center;
}

.header_int_left {
    width: 100%;
    max-width: 600px;
}

.header_int_left h1 {
    font-size: 50px;
    line-height: 1;
    color: #fff;
    font-weight: 800;
    margin-top: 15px;
}

.header_int_left span.header_int_text {
    font-size: 24px;
    line-height: 32px;
    color: #fff;
    display: block;
}

.header_int_left span.pre_title {
    color: #fff;
}

.header_int_left a.generic_button:after {
    display: none;
}

.header_int_left a.generic_button {
    margin-top: 40px;
    background: var(--bluette);
    border-color: var(--bluette);
}

.radial_bkg {
    position: absolute;
    width: 50vw;
    height: 50vw;
    top: -10vw;
    right: -10vw;
    z-index: 1;
    border-radius: 50% 50% 50% 50%;
}

.radial_scheda.active {
    bottom: 11vw;
}

.radial_scheda {
    position: absolute;
    right: 33vw;
    bottom: 17vw;
    z-index: 2;
    box-shadow: 0px 0px 20px 0px rgb(141 181 220 / 30%);
    border-radius: 6px;
    transition: all 1000ms;
}

.radial_scheda img {
    display: block;
    width: auto;
}

.radial_image {
    background-size: 36vw;
    position: absolute;
    z-index: 3;
    background-position: top 15vw left 5vw;
    background-repeat: no-repeat;
    width: 50vw;
    height: 50vw;
    top: -10vw;
    right: -10vw;
    border-radius: 50%;
}

.header_int_images.internal>.radial_image {
    background-size: contain;
    background-position: bottom right;
    top: 0;
    right: 0;
    border-radius: unset;
    width: 100%;
    height: 100%;
}
.archive .header_int_wrapper {
    height: unset;
}

.archive .header_int_content {
    max-width: 1200px;
    margin: auto;
    padding-block: 40px;
}

.archive .header_int_left {
    max-width: unset;
}

.archive .header_int_left span.header_int_text {
    font-size: 1.4em;
    line-height: 1.5;
}

.archive .header_int_left span.header_int_text p:not(:first-child){
    font-size: .7em;
}

/*
    SEMI CIRCLE
*/
.semi_circle_container.composer_cols_container {
    margin: 0 auto;
}

.semi_circle_wrapper {
    background-image: url(images/semi_circle.webp?a=2);
    height: 420px;
    background-position: center bottom;
    background-repeat: no-repeat;
    position: relative;
    display: flex;
    justify-content: center;
}

.semi_circle_wrapper .icons {
    width: 813px;
    height: 100%;
    position: relative;
}

.composer_cols_container .semi_circle_wrapper>.icons>a {
    position: absolute;
    color: white;
    fill: white;
    font-weight: 400;
    font-size: 57.6px;
    font-size: 3.6rem;
    line-height: 100%;
    opacity: 0;
    transition: all 2s;
}

.composer_cols_container .semi_circle_wrapper>.icons>a>svg {
    width: 60px;
}

.composer_cols_container.scrolled .semi_circle_wrapper>.icons>a:hover {
    opacity: 1;
}

.composer_cols_container.scrolled .semi_circle_wrapper>.icons>a {
    opacity: 0.5;
}

.semi_circle_wrapper .icons>a:nth-child(1) {
    top: 324px;
    left: 89px;
}

.semi_circle_wrapper .icons>a:nth-child(2) {
    top: 216px;
    left: 123px;
}

.semi_circle_wrapper .icons>a:nth-child(3) {
    top: 139px;
    left: 209px;
}

.semi_circle_wrapper .icons>a:nth-child(4) {
    top: 84px;
    left: 316px;
}

.semi_circle_wrapper .icons>a:nth-child(5) {
    top: 87px;
    left: 428px;
}

.semi_circle_wrapper .icons>a:nth-child(6) {
    top: 130px;
    left: 535px;
}

.semi_circle_wrapper .icons>a:nth-child(7) {
    top: 219px;
    left: 620px;
}

.semi_circle_wrapper .icons>a:nth-child(8) {
    top: 327px;
    left: 664px;
}

.semi_circle_content_wrapper {
    position: absolute;
    bottom: 0;
    text-align: center;
    transition: all 2s;
}

.semi_circle_text {
    opacity: 0;
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 300px;
    transition: all 2s;
}

.semi_circle_text h3 {
    font-size: 18px;
    font-weight: 400;
    color: black;
    margin-bottom: 5px;
}

.semi_circle_text.text_open {
    opacity: 1;
}

.default_semi_circle_text {
    transition: all 2s;
}

/*
    HP SOLUTIONS
*/
.solutions_wrapper {
    display: flex;
    align-items: center;
    position: relative;
    gap: 100px;
}

.solutions_wrapper>div {
    flex: 1;
    position: relative;
}

.solutions_wrapper>div>div {
    font-size: 20px;
    line-height: 28px;
    margin-top: 25px;
}

.solutions_wrapper h2 {
    font-size: 42px;
    color: var(--text-color);
    margin: 15px auto;
    line-height: 48px;
}


/*
    ACCORDIONS
*/

.accordions_wrapper {
    max-width: 800px;
    margin: 0 auto;
}

.accordion_faq {
    padding-bottom: 60px;
}

.solutions_wrapper .accordions_wrapper {
    display: grid;
    grid-template-columns: repeat(auto-fill, calc(50% - 30px));
    column-gap: 50px;
}

.solutions_wrapper .accordions_wrapper .acc_opener {
    color: var(--text-color);
    font-weight: 700 !important;
    border-bottom: none;
    font-size: 16px !important;
    font-size: 16px !important;
    font-size: 1rem !important;
    padding: 12px 0px !important;
}

.solutions_wrapper .acc_content .panel {
    border-bottom: 1px solid rgba(214, 217, 221, 0.2);
}

.solutions_wrapper .acc_content .panel>div {
    margin: 5px 0 20px;
}

/*
    BRANDS
*/
.brands_container .slick-track {
    display: flex;
    align-items: center;
}

.brands_container img:hover {
    filter: unset;
}

.brands_container img {
    display: block;
    padding: 0px 40px;
    filter: grayscale(100%);
}

.hp_row_brands {
    padding-top: 80px;
}

.hp_brands .composer_wrapper {
    padding-bottom: 160px;
    border-bottom: 1px solid #e2e2e2;
}

.hp_brands .composer_wrapper ul.slick-dots {
    bottom: -80px;
}

/*
    ICONS
*/
.hp_row_why {
    padding-top: 60px;
}

.hp_row_icons {
    padding-bottom: 100px;
}

.composer_cols_wrapper {
    flex-wrap: wrap;
}

.icon_single {
    width: calc((100%/3) - 27px);
    flex: auto !important;
    align-items: flex-start !important;
    padding-bottom: 30px;
}

.icon_single i.fa-solid {
    background: white;
    width: 60px;
    height: 60px;
    font-size: 24px !important;
    display: flex;
    justify-content: center;
    align-items: center;
    box-shadow: 0px 0px 20px 0px rgb(141 181 220 / 30%);
    border-radius: 50%;
}

.icon_single>div:first-child {
    min-width: 70px;
    color: var(--color);
}

.icon_single>div:last-child>span:first-child {
    font-size: 18px !important;
    color: var(--text-color);
    font-weight: 500;
    margin-bottom: 8px;
}

.icon_single>div:last-child>span:last-child {
    font-size: 16px !important;
    line-height: 22px;
}

/*
    FAQ
*/
.hp_faq {
    padding-top: 80px;
}

input#faq_filter {
    border: 0;
    outline: 0;
    padding: 12px 25px;
    width: 80%;
    background-image: url(images/ico_search.webp);
    box-shadow: 0px 0px 20px 0px rgb(141 181 220 / 30%);
    border-radius: 6px;
    background-repeat: no-repeat;
    background-position: center right 16px;
    background-position: center right 16px;
    background-position: center right 1rem;
    margin-top: 20px;
}

.page-faqs-guides .composer_wrapper h2,
.page-contact-us .composer_wrapper h2 {
    padding: 60px 0 30px 0;
    margin: 0;
    color: var(--color);
}

.page-faqs-guides .composer_wrapper .composer_txt_img-bkg.only_text h2,
.page-contact-us .composer_wrapper .composer_txt_img-bkg.only_text h2 {
    padding: 0;
    color: var(--color);
}

.page-faqs-guides .composer_wrapper h5 {
    padding: 60px 0px 20px 0;
    margin: 0;
    color: var(--color);
}

.page-faqs-guides .composer_wrapper h2 strong {
    font-weight: 400;
    font-size: 85%;
}

.page-faqs-guides .composer_wrapper h5 strong {
    font-weight: 600;
}

.page-faqs-guides hr+.composer_cols_container .composer_wrapper {
    border-radius: 12px 12px 0 0;
}

.page-faqs-guides .composer_cols_container:has(+ hr) .composer_wrapper {
    padding-bottom: 30px !important;
    border-radius: 0 0 12px 12px;
}

.page-faqs-guides .composer_cols_container:not(.wide) .composer_wrapper {
    background: #fff;
}

.page-contact-us .composer_cols_container:not(.wide) .composer_wrapper {
    background: #fff;
    border-radius: 12px;
    margin-bottom: -24px;
    padding-bottom: 24px;
}

.page-faqs-guides .composer_cols_container:not(.wide) .composer_wrapper>*:not(a) {
    max-width: 800px;
    margin: auto;
    text-align: left;
    padding-left: 15px;
    padding-right: 15px;
}

.page-contact-us .composer_cols_container:not(.wide) .composer_wrapper>*:not(a) {
    max-width: 900px;
    margin: auto;
    text-align: left;
    padding-left: 15px;
    padding-right: 15px;
}

.page-faqs-guides .composer_txt_img-bkg>div,
.page-contact-us .composer_txt_img-bkg>div {
    padding: 30px 0;
    text-align: left;
}

.page-faqs-guides .accordions_wrapper .acc_opener {
    position: relative;
    padding: 20px 20px 20px 0;
}

.page-faqs-guides .accordions_wrapper .acc_opener::before {
    position: absolute;
    right: 0;
    content: '\f078';
    font-family: 'FontAwesome';
    color: var(--color);
    background: none !important;
    margin: 0;
}

.page-faqs-guides .accordions_wrapper .acc_opener.opened::before {
    content: '\f077';
}

.page-faqs-guides hr {
    background: none;
    margin-bottom: 2em;
}

.faq-switcher {
    text-align: left !important;
    margin-bottom: 20px !important;
}

.faq-switcher a.generic_button:last-child {
    background: var(--color);
    border-color: var(--color);
    color: #fff;
}

.page-faqs-guides .faq-switcher a.generic_button:first-child {
    background: var(--color);
    border-color: var(--color);
    color: #fff;
}

.page-faqs-guides .faq-switcher a.generic_button:last-child {
    color: var(--color);
    background: #fff;
}

.btns_anchor {
    text-align: center;
}

.btns_anchor a.generic_button:after {
    display: none;
}

.btns_anchor a.generic_button {
    background: #d8e2ed;
    border: 0;
    color: var(--text-color);
}

.btns_anchor a.generic_button:hover {
    background: #000;
    color: white;
}

.src_faqs input#s,
#job_filter {
    border: 0;
    padding: 12px 25px;
    width: 80%;
    background-image: url(images/ico_search.webp);
    box-shadow: 0px 0px 20px 0px rgb(141 181 220 / 30%);
    border-radius: 6px;
    background-repeat: no-repeat;
    background-position: center right 16px;
    background-position: center right 16px;
    background-position: center right 1rem;
    margin-top: 20px;
}

.src_faqs input#s:focus-visible,
#job_filter {
    outline: 0;
    box-shadow: 0px 0px 30px 0px rgb(141 181 220 / 60%);
}

.acc_yellow>div>.accordions_wrapper .acc_opener:before {
    background: var(--yellow);
}

.acc_green>div>.accordions_wrapper .acc_opener:before {
    background: #51a3a3;
}

.acc_red>div>.accordions_wrapper .acc_opener:before {
    background: #cd234b;
}

.composer_cols_container.cta_faq {
    margin-bottom: -74px;
    margin-top: 74px;
}

.composer_cols_container.cta_faq .cta_pre_footer>div {
    padding: 60px 0px;
    border-bottom: 1px solid #265f97;
}

.cta_pre_footer.discover_more {
    font-size: 26px;
}

.cta_pre_footer.discover_more strong {
    font-weight: 700;
}

/*
    CONTENT TYPES
*/
.hp_content_types {
    padding-top: 80px;
}

.hp_content_types_list {
    padding-bottom: 110px;
}

.content_types_wrapper {
    display: flex;
    flex-wrap: wrap;
    gap: 40px;
}

.content_types_wrapper .content_types_container {
    width: calc((100%/3) - 27px);
    display: flex;
    margin-bottom: 30px;
}

.content_types_container i.fa-solid {
    background: white;
    width: 60px;
    height: 60px;
    font-size: 24px !important;
    display: flex;
    justify-content: center;
    align-items: center;
    box-shadow: 0px 0px 20px 0px rgb(141 181 220 / 30%);
    border-radius: 50%;
    color: var(--color);
}

.content_types_wrapper .content_types_container>div:nth-child(2) {
    flex: 1;
    padding-left: 25px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    padding-top: 16px;
}

.content_types_wrapper .content_types_container>div:nth-child(2)>span {
    font-size: 18px;
    color: var(--text-color);
    font-weight: 500;
    display: block;
    line-height: 24px;
}

.content_types_wrapper .content_types_container ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.content_types_wrapper .content_types_container li {
    border-bottom: 1px solid #e2e2e2;
    color: var(--text-color);
    padding: 8px 0px 8px 20px;
    position: relative;
}

.content_types_wrapper .content_types_container li:before {
    content: '';
    width: 14px;
    height: 14px;
    -webkit-mask: url(ico/ico_right.svg) no-repeat 50% 50%;
    mask: url(ico/ico_right.svg) no-repeat 50% 50%;
    -webkit-mask-size: cover;
    mask-size: cover;
    background: var(--color);
    position: absolute;
    top: 12px;
    left: 0;
}

/*
    FOOTER
*/

.footer_col ul.menu>li>a {
    font-weight: inherit;
    letter-spacing: 0.4px;
}

.footer_col ul.menu>li>a:before {
    display: none;
}

.footer_col a:hover {
    opacity: 1 !important;
    color: white !important;
}

.footer_col i.fa-brands {
    margin-right: 8px;
    font-size: 16px;
    width: 18px;
}

.footer_col .widget-title {
    text-transform: none !important;
    font-size: 14px !important;
    border-bottom: 1px solid rgba(255, 255, 255, .3);
    padding-bottom: 20px;
}

.subfooter {
    background: #000 !important;
}

.subfooter .sub_footer_wrapper {
    color: rgba(255, 255, 255, .8);
    justify-content: space-between;
    font-size: 13px;
}

.sub_footer_menu ul {
    padding: 0;
    margin: 0;
    list-style: none;
    display: flex;
    gap: 24px;
}

.sub_footer_menu ul>li>a {
    color: rgba(255, 255, 255, .8);
    font-weight: normal;
}

.sub_footer_menu ul>li>a:hover {
    color: rgba(255, 255, 255, 1);
}

/*
    PRICING
*/

.page-template-template-pricing .site-header .menu_ext .btn_free_7,
.page-template-template-pricing .site-header #src_opener,
.site-header .menu-item.valuta {
    display: none;
}

.page-template-template-pricing .page-wrapper .composer_cols_container:first-child .only_text div>p {
    font-size: 24px;
    line-height: 1.2;
    color: var(--text-color);
}

.page-template-template-pricing #plans {
    padding-top: 45px;
}

li.valuta {
    cursor: pointer;
}

span.currency {
    display: none;
}

.price_cards_wrapper {
    display: flex;
    gap: 20px;
    justify-content: center;
    text-align: left;
    padding-bottom: 40px;
}

.card_head {
    padding: 20px;
    padding-top: 48px;
    display: flex;
    flex-direction: column;
    color: var(--color);
    font-family: Lato, sans-serif;
    min-height: 180px;
}

.single_price_card {
    flex: 1;
    background-color: #ffffff;
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    box-shadow: 3px 4px 10px 0 #7a70701c;
    border-radius: 8px;
    max-width: 400px;
}

.single_offer_card .card_body{
    display: flex;
    justify-content: end;
    flex-direction: column;
}

.single_price_card.card-1 {
    display: none;
}

.bordered.currency strong {
    font-weight: 500;
}

.bordered.currency {
    border: 1px solid #e2e2e2;
    float: right;
    font-size: 16px;
    color: var(--text-color);
    padding: 8px 18px;
    line-height: 100%;
    vertical-align: middle;
    margin-top: -5px;
    font-weight: 300;
    border-radius: 4px;
}

.single_price_card .big {
    font-size: 30px;
    font-weight: 700;
    line-height: 20px;
}

span.big.currency {
    font-size: 30px;
    font-weight: 700;
    line-height: 20px;
    color: var(--color);
}

span.big.currency.line-through:not(:empty){
    color: var(--pink);
    padding-right: 8px;
}

.card_head span.big.currency {
    color: #fff;
}

span.small.currency {
    font-weight: 700;
    margin: 8px 0;
    color: #999;
}

span.small.currency::before {
    content: "";
    display: block;
}

.single_price_card .medium {
    font-size: 38px;
    font-weight: 500;
    line-height: 1.2;
    margin-bottom: 8px;
    border-bottom: 1px solid var(--violet);
}
.single_price_card .medium_medium {
    font-size: 23px;
    font-weight: 500;
    line-height: 1.2;
    margin-bottom: 8px;
    color: black;
}

.single_price_card .small {
    font-size: 13px;
    line-height: 18px;
}

span.line-through {
    text-decoration: line-through;
}

span.offer_featured,
span.offer_label {
    display: flex;
    gap: 3px;
    align-items: center;
    font-size: 12px;
    font-weight: 500;
    line-height: 100%;
    padding: 7px 20px 7px 16px;
    border-radius: 15px;
    position: absolute;
    top: 8px;
    right: 10px;
    background: var(--yellow);
    border: 2px solid var(--yellow);
}

span.offer_featured {
    color: #ffffff;
}

span.offer_students {
    color: var(--yellow);
    background: #fff;
}

span.offer_featured .fa-solid {
    font-size: 10px;
    line-height: 1;
    color: inherit;
    margin-right: 2px;
}

span.offer_label {
    left: 15px;
    right: unset;
    padding: 7px 20px;
    display: none;
}

.card_body {
    padding: 0 18px 18px;
    flex: 1;
    font-size: 13px;
    line-height: 20px;
    color: #222;
    font-family: Lato, sans-serif;
}

.card_body .buttons {
    display: block;
}

.card_body .button {
    display: block;
    text-align: center;
    background: linear-gradient(45deg, var(--violet), var(--ultraviolet));
    color: #fff;
    font-size: 14px;
    font-weight: 600;
    border-radius: 8px;
    padding: 10px 22px;
}

.card_body .button.main-button-on-card-4 {
    background-color: white;
    background-image: none;
    border: 2px solid var(--violet);
    color: var(--violet);
    padding-top: 6px;
    padding-bottom: 6px;
}

.card_body .option {
    text-align: center;
    margin: 5px;
}

.card_body .option a {
    font-weight: bold;
    text-decoration: underline;
}

.card_price_box {
    min-height: 110px;
}

.underprice {
    display: block;
    font-weight: normal;
}

.lh-discount-message {
    color: var(--pink);
    font-weight: 500;
    font-size: 12px;
}

.card_body .card_desc {
    background: #faf8f6;
    border-radius: 6px;
    padding: 15px;
    margin-bottom: 15px;
    min-height: 95px;
}

.card_body .card_title {
    font-size: 18px;
    color: var(--color);
    font-weight: 700;
    display: block;
    margin-bottom: 15px;
}

.card_body .card_sub_title {
    display: block;
    color: var(--color);
    line-height: 1.2;
}

.card_content_text {
    margin-top: 15px;
}

.card_content_text p {
    margin-bottom: 0;
}

.card_body ul {
    padding-left: 0;
    margin-left: 0;
    list-style: none;
}

.card_body ul li:before {
    content: '';
    width: 13px;
    height: 13px;
    position: absolute;
    top: 12px;
    left: 0;
    background: url("ico/bullet-point-hunt.svg") no-repeat;
    background-size: contain;
}

.card_body ul li {
    position: relative;
    padding: 6px 15px 6px 25px;
    border-top: 1px solid #faf8f6;
}

.card_body ul li img.logo {
    height: 18px;
    vertical-align: bottom;
}

.card_included {
    min-height: 80px;
    margin: 0 0 16px;
}

.card_included_inner {
    border-left: 2px solid var(--color);
    padding-left: 8px;
    color: var(--color);
}

.card_included p {
    margin-bottom: 0;
}

.card_included_label {
    font-weight: bold;
}

.card_included>span:nth-of-type(1) {
    margin-bottom: 4px;
    display: block;
}

.card_included>span.currency {
    font-weight: 500;
    font-size: 18px;
}

.card_included>span.currency>span {
    font-size: 14px;
    font-weight: normal;
}

.card-more-info {
    display: none;
    font-size: 14px;
    cursor: pointer;
}

.card-more-info::after {
    content: url("data:image/svg+xml,%3Csvg width='22' height='12' viewBox='0 0 22 12' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1L11 11L21 1' stroke='%23004583' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E%0A");
    transform: scale(.5);
    top: 1px;
    position: relative;
}

.open .card-more-info::after {
    rotate: 180deg;
}

.card-more-info .less {
    display: none;
}

.card_body.open .more {
    display: none;
}

.card_body.open .less {
    display: inline;
}

@media all and (max-width:1024px) {
    .card-more-info {
        display: flex;
        justify-content: center;
    }

    .card_content_text {
        max-height: 0;
        overflow: hidden;
        transition: all .3s ease-in-out;
    }

    .open .card_content_text {
        max-height: 100%;
    }
}

.card_footer {
    background: var(--color);
    border-bottom-left-radius: 5px;
    border-bottom-right-radius: 5px;
    display: flex;
    justify-content: center;
    padding: 12px;
}

.card_footer a {
    color: white;
    font-size: 16px;
}

.card_footer:hover {
    background: var(--yellow);
}

.page-template-template-pricing .single_offer_card.news {
    display: none;
}

.period_switcher {
    padding: 20px 0 60px;
    display: flex;
    justify-content: center;
    gap: 15px;
    align-items: center;
    color: var(--color);
    font-size: 14px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.switch {
    position: relative;
    display: inline-block;
    width: 70px;
    height: 24px;
}

.switch input {
    opacity: 0;
    width: 0;
    height: 0;
}

.recharge-box {
    max-width: 800px;
    width: 90%;
    margin: 0 auto 60px;
}

.recharge-box .card_head {
    min-height: unset;
}

.box_body {
    display: flex;
    gap: 30px;
}

@media all and (max-width:800px) {
    .box_body {
        flex-direction: column;
    }
}

.box_body>div {
    flex: 1;
}

.box_body>div:first-child {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    font-size: 1.4em;
}

.recharge-box .text-label {
    font-size: 25px;
    text-transform: uppercase;
    display: inline-block;
    width: 36px;
}

.recharge-box .insert-amount-input {
    font-size: 25px;
    width: calc(100% - 46px);
    margin-bottom: 12px;
}

.recharge-box .card_footer {
    margin-top: -5px;
    padding: 0;
}

.recharge-box button {
    background: transparent;
    color: #fff;
    border: none;
    font-size: 20px;
    font-weight: 700;
    cursor: pointer;
    padding: 24px;
    display: block;
    width: 100%;
}

.slider {
    position: absolute;
    cursor: pointer;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: #ccc;
    transition: .4s;
}

.slider:before {
    position: absolute;
    content: "";
    height: 18px;
    width: 18px;
    right: 3px;
    bottom: 3px;
    background-color: var(--yellow);
    transition: .4s;
}

/*
    input:checked + .slider {background-color: var(--color);}
    input:focus + .slider {box-shadow: 0 0 1px var(--color);}
*/
input:checked+.slider:before {
    transform: translateX(-46px);
}

.slider.round {
    border-radius: 34px;
}

.slider.round:before {
    border-radius: 50%;
}

.notes .composer_txt_img-bkg>div {
    padding: 30px 0 !important;
}

.notes .composer_txt_img-bkg>div>div {
    font-size: 13px;
    line-height: 1.4;
    text-align: left;
    max-width: 800px;
    margin: auto;
}

.notes .composer_txt_img-bkg>div>div p{
    margin-bottom: 10px;
}

/*
    LISTINO
*/
.listino_row {
    display: flex;
    justify-content: space-between;
    border-bottom: 1px solid #d6d9dd;
    padding-bottom: 30px;
    margin-bottom: 30px;
    align-items: flex-start;
    overflow-x: scroll;
}

.listino_row:first-child {
    padding-top: 30px;
}

.listino_col:first-child {
    text-align: left;
    flex-basis: calc((100%/7)*2);
}

.listino_col {
    display: flex;
    flex-direction: column;
    text-align: right;
    gap: 5px;
    flex-basis: calc(100%/7);
    min-width: 100px;
}

.listino_row .listino_col:not(:first-child) {
    justify-content: center;
}

.listino_col:first-child>div {
    display: flex;
    align-items: center;
}

.listino_col strong {
    color: #000;
}

.listino_col svg,
.listino_col i {
    width: 22px;
    margin-right: 5px;
    text-align: center;
    color: var(--color);
}

.listino_ai {
    color: var(--color);
    background: linear-gradient(180deg, #E9ECF4 0%, #DEE2EE 100%);
    border-radius: 5px;
    overflow: hidden;
    border-bottom: 2px solid var(--color);
    font-size: 14px;
    padding: 0 24px;
    margin-bottom: 30px;
    font-weight: 700;
}

.listino_ai .listino_row {
    align-items: center;
    margin-bottom: 0;
    padding: 20px 0;
    border-bottom: 1px solid #fff;
    flex-wrap: wrap;
}

.listino_ai .listino_col {
    flex: 1 0 120px;
}

.listino_ai .listino_col strong {
    color: unset;
}

.composer_txt_img-bkg .back-button {
    position: absolute;
    font-weight: 700;
}

.composer_txt_img-bkg .back-button::before {
    content: url("data:image/svg+xml,%3Csvg width='22' height='12' viewBox='0 0 22 12' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1L11 11L21 1' stroke='%23004583' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E%0A");
    vertical-align: middle;
    display: inline-block;
    margin-right: 5px;
    rotate: 90deg;
}

.pricing-switcher {
    background: var(--color);
    display: flex;
    justify-content: center;
    gap: 10px;
}

.pricing-switcher a {
    color: #fff;
    padding: 20px 12px 12px;
    border-bottom: 8px solid var(--color);
    font-size: 18px;
    font-weight: 600;
    display: flex;
    align-items: center;
    gap: 6px;
}

@media all and (max-width:660px) {
    .pricing-switcher a {
        font-size: 11px;
    }
}

.pricing-switcher a:first-child {
    border-color: var(--yellow);
}

.page-pricing-professional-writing .pricing-switcher a:first-child {
    border-color: var(--color);
}

.page-pricing-professional-writing .pricing-switcher a:last-child {
    border-color: var(--yellow);
}

.pricing-switcher a:first-child::before {
    content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 18 18'%3E%3Cpath d='M6.47.84a.85.85,0,0,0-1.69,0V2.25H4.5A2.29,2.29,0,0,0,2.25,4.5v.28H.84a.85.85,0,0,0,0,1.69H2.25V8.16H.84a.84.84,0,0,0,0,1.68H2.25v1.69H.84a.85.85,0,0,0,0,1.69H2.25v.28A2.29,2.29,0,0,0,4.5,15.75h.28v1.41a.85.85,0,0,0,1.69,0V15.75H8.16v1.41a.84.84,0,0,0,1.68,0V15.75h1.69v1.41a.85.85,0,0,0,1.69,0V15.75h.28a2.29,2.29,0,0,0,2.25-2.25v-.28h1.41a.85.85,0,0,0,0-1.69H15.75V9.84h1.41a.84.84,0,0,0,0-1.68H15.75V6.47h1.41a.85.85,0,0,0,0-1.69H15.75V4.5A2.29,2.29,0,0,0,13.5,2.25h-.28V.84a.85.85,0,0,0-1.69,0V2.25H9.84V.84a.84.84,0,0,0-1.68,0V2.25H6.47ZM3.94,4.5a.54.54,0,0,1,.56-.56h9a.54.54,0,0,1,.56.56v9a.54.54,0,0,1-.56.56h-9a.54.54,0,0,1-.56-.56Zm7.87,1.55a.72.72,0,0,0-.7.7v4.5a.72.72,0,0,0,.7.7.72.72,0,0,0,.71-.7V6.75A.72.72,0,0,0,11.81,6.05Zm-3.58.42A.69.69,0,0,0,7,6.47L5,11a.69.69,0,0,0,1.27.56l.21-.42H8.72l.21.42A.69.69,0,0,0,10.2,11Zm-.64,2L8.12,9.7h-1Z' fill='%23fff'/%3E%3C/svg%3E");
    width: 21px;
    height: 21px;
}

.pricing-switcher a:last-child::before {
    content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20.97 18'%3E%3Cpath d='M1.49,2.25A2.21,2.21,0,0,1,2.61.32a2.12,2.12,0,0,1,2.25,0,2.21,2.21,0,0,1,0,3.86,2.12,2.12,0,0,1-2.25,0A2.21,2.21,0,0,1,1.49,2.25Z' fill='%23fff'/%3E%3Cpath d='M.15,8.19A2.82,2.82,0,0,1,1,6.36,3,3,0,0,1,3,5.62H4.51a2.87,2.87,0,0,1,2.32,1.2L6.55,7,4.3,9.28a2,2,0,0,0,0,2.81L6,13.75v2.56a1.86,1.86,0,0,1-.5,1.2A1.81,1.81,0,0,1,4.3,18H3.17A1.85,1.85,0,0,1,2,17.51a1.8,1.8,0,0,1-.49-1.2V12.23a2.17,2.17,0,0,1-1.13-.87A2.14,2.14,0,0,1,0,10Z' fill='%23fff'/%3E%3Cpath d='M15,2.25A2.21,2.21,0,0,1,16.11.32a2.12,2.12,0,0,1,2.25,0,2.21,2.21,0,0,1,0,3.86,2.12,2.12,0,0,1-2.25,0A2.21,2.21,0,0,1,15,2.25Z' fill='%23fff'/%3E%3Cpath d='M14.42,7l-.28-.21a3,3,0,0,1,2.32-1.2H18a3,3,0,0,1,1.93.74,2.82,2.82,0,0,1,.88,1.83L21,10a2.19,2.19,0,0,1-1.47,2.28v4.08a1.86,1.86,0,0,1-.5,1.2A1.81,1.81,0,0,1,17.8,18H16.67a1.85,1.85,0,0,1-1.19-.49,1.8,1.8,0,0,1-.49-1.2V13.75l1.68-1.66a2,2,0,0,0,0-2.81Z' fill='%23fff'/%3E%3Cpath d='M8.8,8.44V9.56h3.37V8.44a.85.85,0,0,1,.53-.78.81.81,0,0,1,.92.18l2.25,2.25a.87.87,0,0,1,0,1.2l-2.25,2.25a.9.9,0,0,1-.92.17.84.84,0,0,1-.53-.77V11.81H8.8v1.13a.83.83,0,0,1-.53.77.8.8,0,0,1-.91-.17L5.11,11.29a.85.85,0,0,1,0-1.2L7.36,7.84a.85.85,0,0,1,1.44.6Z' fill='%23fff'/%3E%3C/svg%3E");
    width: 21px;
    height: 21px;
}

/*
    PRODUCT
*/
.icons_big {
    padding-bottom: 100px;
}

.icons_big .icon_set>.icon_single {
    flex-direction: column;
    align-items: center !important;
}

.icons_big .icon_set>.icon_single i.fa-solid {
    width: 140px;
    height: 140px;
    font-size: 42px !important;
}

.icons_big .icon_set>.icon_single>div:last-child {
    text-align: center;
    padding-top: 40px;
    padding-left: 0;
}

.icons_big .icon_set>.icon_single>div:last-child>span:first-child {
    font-size: 26px !important;
    margin-bottom: 15px;
    line-height: 32px;
}

/*
    SCHEDE PRODOTTO
*/
.row_products_carousel span.pre_title {
    color: var(--color);
}

.composer_cols_container.row_schede_prod {
    margin-top: -100px;
}

.composer_wrapper .specs_wrapper:not(:last-child) {
    border-bottom: 1px solid #d6d9dd;
}

.specs_wrapper {
    display: flex;
    align-items: center;
    padding: 100px 0px;
    gap: 60px;
    justify-content: center;
}

.specs_wrapper>div:first-child {
    width: calc(100%/3);
}

.specs_wrapper>div:last-child {
    width: calc((100%/3)*2);
    justify-content: flex-end;
    display: flex;
    position: relative;
}

.specs_wrapper.left>div:last-child {
    order: -1;
    justify-content: flex-start;
}

.specs_wrapper img:not(.header_element) {
    box-shadow: 0px 0px 20px 0px rgb(141 181 220 / 30%);
    border-radius: 6px;
}

.specs_wrapper.left>div.img_double {
    justify-content: flex-end;
}

.left .img_double>img:last-child {
    left: 0;
}

h3.specs_title {
    font-size: 28px;
    line-height: 34px;
    font-weight: 500;
    color: var(--text-color);
}

.specs_description>span:first-child {
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    color: #fff;
    background: var(--bluette);
}

.specs_description {
    display: flex;
    align-items: center;
    margin-bottom: 20px;
}

.specs_description>span:last-child {
    width: calc(100% - 60px);
    padding-left: 20px;
}

.discover_text ol {
    list-style: none;
    counter-reset: ol-counter;
    margin: 30px 0;
    padding: 0;
    text-align: left;
}

.discover_text ol li {
    counter-increment: ol-counter;
    margin: 0 0 1.5rem;
    line-height: 1.2;
    position: relative;
    padding: 0px 0 0 48px;
}

.discover_text ol li::before {
    content: counter(ol-counter);
    background: var(--bluette);
    color: white;
    width: 2rem;
    height: 2rem;
    border-radius: 50%;
    display: inline-grid;
    place-items: center;
    position: absolute;
    left: 0;
    top: -4px;
}

/*
    DISCOVER CARDS
*/
.boxed .discover_wrapper .slick-prev {
    left: -80px;
}

.boxed .discover_wrapper .slick-next {
    right: -80px;
}

.templates_dot-container {
    margin-bottom: 30px;
}

.discover_wrapper {
    max-width: 1040px;
    margin: auto;
}

.products_wrapper .slick-dots {
    bottom: 10px;
}

.products_wrapper .slick-prev {
    scale: .5;
    top: 20%;
    left: 0;
 }
.products_wrapper .slick-next {
    scale: .5;
    top: 20%;
    right: 0;
}

.discover_container {
    display: flex !important;
    align-items: stretch;
}

.discover_container>div {
    flex: 1;
}

.discover_content_text {
    padding: 60px;
}

/* this is used in dot, but hidden in the card/slider */
.discover_container .discover_content_text .pre_title span[class*='product_is_new'] {
    display: none;
}

.discover_container>div:last-child {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 10px 0;
}

span.discover_title {
    font-size: 28px;
    line-height: 1.25;
    color: var(--text-color);
    display: block;
    margin-top: 10px;
    font-weight: 600;
}

.discover_container>div:last-child>img {
    max-height: 455px;
    box-shadow: 0px 0px 20px 0px rgb(141 181 220 / 30%);
    border-radius: 4px;
    max-width: 92%;
    max-height: 99%;
    margin: auto;
}

a.generic_button.product_button {
    border: 0;
    margin-top: 40px;
}

a.generic_button.product_button:after {
    display: none;
}

a.generic_button.product_button:hover {
    color: white;
    background: #000;
}

.discover_text:not(:empty) {
    margin-top: 24px;
}

.discover_text:not(:empty)+a.generic_button.product_button {
    margin-top: 0;
}

/*
    FORM
*/
.wpcf7-form {
    max-width: 900px;
    margin: auto;
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    font-family: Lato, sans-serif;
    font-size: 12px;
}

.wpcf7-form label {
    display: block;
    margin: 20px 0 0;
    font-weight: bold;
    color: var(--color);
}

.wpcf7-form label input,
.wpcf7-form label select,
.wpcf7-form label textarea {
    margin-top: 10px
}

.wpcf7-form input[type=text],
.wpcf7-form input[type=tel],
.wpcf7-form input[type=email],
.wpcf7-form textarea,
.wpcf7-form select {
    width: 100%;
    padding: 10px 14px;
    border: 1px solid #ddd;
    border-radius: 5px;
    background: #fff;
    font-size: 12px;
}

.wpcf7-form .form-column {
    flex: 1 0 320px;
}

@media all and (min-width: 1024px) {
    .wpcf7-form .form-column {
        width: calc(50% - 10px);
    }

    .wpcf7-form .form-name {
        display: flex;
        gap: 20px;
    }
}

.wpcf7-form span input:focus-visible,
.wpcf7-form span textarea:focus-visible {
    outline: 0;
}

.frm_checks [type="checkbox"],
.frm_checks [type="radio"] {
    margin-right: 5px;
    vertical-align: text-bottom;
}

.frm_checks span:before {
    display: none;
}

.frm_checks span {
    margin: 0px;
}

.frm_checks label span:not(.wpcf7-list-item-label) {
    display: none;
}

.frm_checks label {
    margin: 0px 0px 5px;
    color: unset;
    font-weight: unset;
}

.wpcf7-list-item {
    margin: 0;
}

.wpcf7 .wpcf7-submit {
    border-radius: 5px;
    text-transform: none;
    font-weight: 600;
    float: right;
    border-color: var(--color);
    letter-spacing: unset;
}

.wpcf7 .wpcf7-submit:disabled {
    opacity: .6;
}

.wpcf7-form-control-wrap {
    display: block;
}

.wpcf7-not-valid {
    border-color: #dc3232 !important;
}

.wpcf7-not-valid-tip::before {
    content: '\f06a';
    font-family: 'FontAwesome';
    position: absolute;
    top: 21px;
    right: 10px;
}

/*
    VIDEO LIGHTBOX
*/
.header_video_player {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 99999;
    background: #000000a7;
    display: none;
}

.header_video_lightbox {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    border: 10px solid white;
    width: 90%;
    max-width: 800px;
    background: white;
}

.header_video_lightbox>div {
    height: 0;
    overflow: hidden;
    padding-bottom: 56%;
    position: relative;
}

.header_video_lightbox>div iframe,
.header_video_lightbox>div object,
.header_video_lightbox>div embed {
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%;
}

#video_close {
    position: absolute;
    right: -50px;
    top: -10px;
    background: white;
    z-index: 99;
    cursor: pointer;
}

#video_close:before {
    width: 40px;
    height: 40px;
    display: block;
    content: '';
    -webkit-mask: url(ico/ico_close.svg) no-repeat 50% 50%;
    mask: url(ico/ico_close.svg) no-repeat 50% 50%;
    -webkit-mask-size: cover;
    mask-size: cover;
    background: black;
}

/*
    PRODUCTS ACCORDIONS MOBILE
*/

.product-range {
    max-width: 800px !important;
}

span.mob_cat_prods {
    font-size: 12px;
    text-transform: uppercase;
    font-weight: 700;
    letter-spacing: 2px;
    border-bottom: 2px solid;
    display: block;
    padding-bottom: 8px;
    margin: 50px 0 15px 0;
}

.accordions_wrapper.mobile_acc .acc_opener {
    align-items: center
}

.accordions_wrapper.mobile_acc .acc_opener:before {
    display: none;
}

.accordions_wrapper.mobile_acc .acc_opener>span {
    flex: 1
}

.accordions_wrapper.mobile_acc .acc_content i.fa-solid {
    font-size: 22.4px !important;
    font-size: 22.4px !important;
    font-size: 1.4rem !important;
}

.accordions_wrapper.mobile_acc .acc_content .opened i.fa-solid:before {
    content: "\f146";
}

.accordions_wrapper.mobile_acc .acc_icon svg {
    width: max(35px, 3vw);
    height: auto;
}

.accordions_wrapper.mobile_acc .acc_icon {
    align-items: center;
    display: flex;
    justify-content: flex-start;
    margin-right: 20px;
}

.accordions_wrapper.mobile_acc .panel span {
    font-size: 14px;
    line-height: 20px;
}

.composer_txt_img-bkg.only_text ul li {
    list-style: none;
}

.composer_txt_img-bkg.only_text ul li:before {
    content: '';
    width: 14px;
    height: 14px;
    display: inline-block;
    vertical-align: middle;
    -webkit-mask: url(ico/ico_right.svg) no-repeat 50% 50%;
    mask: url(ico/ico_right.svg) no-repeat 50% 50%;
    -webkit-mask-size: cover;
    mask-size: cover;
    background: var(--color);
    margin-right: 5px;
}

/*
    ACCORDIONS CAREERS
*/
a.opening {
    display: flex;
    align-items: center;
    gap: 10px;
    border-bottom: 1px solid #d6d9dd !important;
    padding: 12px 0;
    font-size: 20px;
    color: var(--text-color);
    font-weight: 600 !important;
    cursor: pointer;
}

a.opening:hover,
a.opening.active {
    color: var(--color);
}

a.opening.active:after {
    content: '\e5ce';
}

a.opening:before {
    content: '';
    width: 48px;
    height: 48px;
    -webkit-mask: url(ico/badge.svg) no-repeat 50% 50%;
    mask: url(ico/badge.svg) no-repeat 50% 50%;
    -webkit-mask-size: cover;
    mask-size: cover;
    background: var(--text-color);
}

a.opening:after {
    content: '';
    width: 30px;
    height: 30px;
    -webkit-mask: url(ico/ico_down.svg) no-repeat 50% 50%;
    mask: url(ico/ico_down.svg) no-repeat 50% 50%;
    -webkit-mask-size: cover;
    mask-size: cover;
    background: var(--text-color);
}

a.opening>span:nth-child(2) {
    flex: 1;
}

.expanded {
    padding: 40px 30px;
}

.frm_file {
    font-size: 16px;
    font-size: 1rem;
    margin: 20px 0px;
}

input[type=file] {
    margin: 10px 0px;
}

.expanded .wpcf7 {
    margin: 60px 0px;
}

#job_filter {
    display: table;
    margin: 60px auto;
}

span.job_frm_title {
    font-size: 30px;
    display: table;
    margin: 50px auto -20px;
    color: var(--color);
    font-weight: 500;
}

/*
    CASE STUDIES
*/
.composer_cols_container.cs_brands {
    margin-bottom: 170px;
}

.cs_brands .brands_container img {
    filter: none;
}

.case_studies_container.composer_cols_container {
    margin-bottom: 60px;
}

.cs_container {
    display: flex;
    gap: 40px;
    padding: 30px 0px;
    border-top: 1px solid var(--color);
}

.cs_container>div {
    flex: 1;
    flex-basis: calc(100%/3);
}

.cs_container>div>span {
    display: block;
    width: 100%;
}

.cs_container span.cs_title {
    font-size: 32px;
    line-height: 38px;
    font-weight: 400;
    color: var(--text-color);
    margin-bottom: 30px;
}

.cs_industry {
    display: inline-flex;
    align-items: center;
    gap: 20px;
    color: white;
    background: var(--color);
    padding: 12px 24px;
}

.cs_industry>span:last-child {
    font-size: 16px;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 1.5px;
}

.cs_industry i.fa-solid {
    font-size: 26px !important;
}

.cs_container span.cs_desc {
    font-size: 20px;
    line-height: 28px;
    color: var(--text-color);
}

.cs_activity {
    display: flex;
    align-items: center;
    font-weight: 500;
    line-height: 22px;
    color: var(--text-color);
    border-bottom: 1px solid #d6d9dd;
    padding: 20px 0px;
}

.cs_activity span:first-child {
    background: white;
    width: 60px;
    height: 60px;
    display: flex;
    justify-content: center;
    align-items: center;
    box-shadow: 0px 0px 20px 0px rgb(141 181 220 / 30%);
    border-radius: 50%;
    color: var(--color);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 2px;
    margin-right: 24px;
}

.cs_activity span:last-child {
    flex: 1;
}

.cs_container>div:last-child {
    background: white;
    border-radius: 6px;
    padding: 30px 40px;
    font-size: 16px;
    line-height: 24px;
    align-items: center;
    display: flex;
    flex-wrap: wrap;
}

.cs_quote>span {
    margin-bottom: 10px;
}

.cs_quote>span.author {
    border-bottom: 1px solid #e2e2e2;
    margin-bottom: 30px;
    padding-bottom: 20px;
}

.cs_quote>span.author strong {
    color: var(--color);
}

/*
    COMPARISON
*/
.composer_cols_container.row_comparison {
    margin-bottom: -75px;
}

.comparison {
    display: flex;
    align-items: flex-end;
    gap: 30px;
}

.comparison>div {
    flex: 1;
    position: relative;
    padding-bottom: 140px;
    display: flex;
    gap: 40px;
}

.comparison_line {
    flex: 1;
    font-size: 20px;
    border-bottom: 1px solid #d6d9dd;
    padding-bottom: 28px;
    margin-bottom: 24px;
}

.compare_title {
    margin-bottom: 20px;
    color: var(--text-color);
}

.compare_title strong {
    font-weight: 500;
}

.comparison_line span strong {
    padding: 0 4px;
}

.comparison_line span {
    font-size: 16px;
    display: flex;
    line-height: 30px;
    align-items: baseline;
}

.comparison_line span:before {
    content: '';
    width: 14px;
    height: 14px;
    display: inline-block;
    vertical-align: middle;
    -webkit-mask: url(ico/ico_right.svg) no-repeat 50% 50%;
    mask: url(ico/ico_right.svg) no-repeat 50% 50%;
    -webkit-mask-size: cover;
    mask-size: cover;
    background: var(--color);
    margin-right: 5px;
}

.comparison a.generic_button {
    margin-top: 30px;
}

img.compare_image {
    display: block;
    width: 100%;
}

.compare_element {
    position: absolute;
    border-radius: 50%;
    z-index: 3;
    transition: all 2s ease;
}

.compare_element.active:nth-child(1) {
    bottom: 22vw;
}

.compare_element:nth-child(1) {
    background: #cd234b;
    right: 22vw;
    bottom: 14vw;
    width: 1.5vw;
    height: 1.5vw;
}

.compare_element.active:nth-child(2) {
    bottom: 9vw;
}

.compare_element:nth-child(2) {
    background: #51a3a3;
    right: 18.5vw;
    bottom: 25vw;
    width: 4vw;
    height: 4vw;
}

.compare_element.active:nth-child(3) {
    bottom: 29vw;
}

.compare_element:nth-child(3) {
    background: var(--yellow);
    right: -0.5vw;
    bottom: 16vw;
    width: 3.5vw;
    height: 3.5vw;
}

/*
    SOLUTIONS
*/
.composer_cols_container.section.row_intervention {
    padding-top: 80px;
    margin-top: -80px;
}

.composer_cols_container.solutions_content_types_list {
    padding-bottom: 120px;
}

.solutions_content_types_list .content_types_wrapper .content_types_container {
    width: calc((100%/4) - 30px);
    align-items: flex-start;
    flex-direction: column;
}

.solutions_content_types_list .content_types_wrapper .content_types_container>div:nth-child(2) {
    justify-content: flex-start;
    width: 100%;
    padding-left: 0;
}

.solutions_content_types_list .content_types_wrapper .content_types_container>div:nth-child(2)>span {
    display: block;
    margin: 15px 0px;
}

.composer_cols_container.row_solutions_technology {
    padding: 90px 0px;
}

.row_solutions_technology .composer_txt_img-bkg>div {
    padding: 60px 60px 60px 0px;
}

.row_solutions_technology .composer_txt_img-bkg h2 {
    font-size: 32px;
    line-height: 38px;
}

.row_solutions_technology .composer_txt_img-bkg:not(.only_text)>div:last-child {
    background-size: unset;
    background-repeat: no-repeat;
}

/*
    LIST
*/
.list_wrapper .list_title {
    font-size: 24px;
    color: var(--text-color);
    font-weight: 500;
    display: block;
    margin-bottom: 25px;
}

.list_container {
    columns: 2;
    gap: 100px;
}

.list_container span strong {
    padding: 0 4px;
}

.list_container span {
    display: block;
    border-bottom: 1px solid #d6d9dd;
    padding: 8px 0px 8px 20px;
    position: relative;
}

.list_container span:before {
    content: '';
    width: 14px;
    height: 14px;
    mask: url(ico/ico_right.svg) no-repeat 50% 50%;
    mask-size: cover;
    background: var(--color);
    position: absolute;
    top: 12px;
    left: 0;
}

.sub_footer_mob_cta {
    display: none;
}

#src_opener:before {
    margin-left: 0 !important;
    margin-top: 5px;
}

.slider-audio-toggle {
    text-transform: uppercase;
    float: right;
    color: #222;
    font-size: 13px;
    font-weight: 700;
    margin: 8px 2px;
}

.slider-audio-toggle::after {
    content: "";
    background: url(images/volume-off.png) no-repeat center / contain;
    display: inline-block;
    width: 22px;
    height: 18px;
    mix-blend-mode: difference;
    vertical-align: bottom;
    margin-left: 5px;
}

.slider-audio-toggle.active::after {
    background: url(images/volume-on.png) no-repeat center / contain;
}

/*
    RESPONSIVE
*/
@media all and (max-width:1024px) {
    .desktop_dev {
        display: none !important
    }
}

@media all and (min-width:1025px) {
    .mobile_dev {
        display: none !important
    }
}

@media all and (min-width:1281px) {
    .sub_header {
        display: none !important
    }
}

@media all and (max-width:1280px) {
    header#mobthead {
        background: white;
    }

    .mob_logo_container {
        padding: 13px 20px !important;
    }

    .mobile-header .header_menu_nav {
        background-color: var(--color) !important;
    }

    #mob_menu_toggle {
        color: var(--color);
        font-size: 2rem;
    }

    span#mob_open.down_arrow:after,
    span#mob_open:after {
        color: white;
        top: -4px;
    }

    img.custom-logo {
        height: 20px !important;
    }

    .wpml-ls-current-language,
    .valuta_on {
        position: relative;
    }

    .wpml-ls-current-language>a,
    .valuta_on>a {
        pointer-events: none;
    }

    .wpml-ls-current-language .sub-menu,
    .valuta_on .sub-menu {
        display: none;
        position: absolute;
        background: #fff;
        z-index: 100;
        width: 60px;
        padding: 8px 8px 0;
        border: 1px solid #ccc;
        border-top: none;
    }

    .sub_header_menu_nav ul>li>a {
        font-size: 13px;
    }

    .wpml-ls-current-language:hover .sub-menu,
    .valuta_on:hover .sub-menu {
        display: block;
    }

    .wpml-ls-current-language>a::before {
        content: '\f0ac';
        font-family: 'FontAwesome';
        font-size: 0.9rem;
    }

    .valuta_on>a:before {
        content: '\f555';
        font-family: 'FontAwesome';
        font-size: 0.9rem;
    }

    .sub_header_wrapper {
        width: 98%;
        padding: 10px 0px;
    }

    .sub_header_wrapper div:last-child {
        margin: 0;
    }

    .sub_header_menu_nav ul li {
        white-space: nowrap;
    }

    .header_content,
    .header_int_wrapper {
        padding-left: 20px;
        padding-right: 20px;
    }

    .sub_header_menu_nav ul li ul li {
        border-bottom: 1px solid #ccc;
        padding: 8px 0;
    }

    .header_content h1,
    .header_int_left h1 {
        font-size: 30px;
        line-height: 36px;
    }

    .header_content>span,
    .header_int_left span.header_int_text {
        font-size: 18px;
        line-height: 26px;
    }

    .theme_breadcrumbs_container {
        padding: 1.5rem !important;
    }
}

@media all and (max-width:1024px) {
    .subfooter {
        margin-bottom: 46px;
    }

    .sub_footer_mob_cta {
        background: var(--color);
        padding: 16px;
        display: none; /* display: flex; */
        justify-content: center;
        align-items: center;
        font-size: 14px;
        line-height: 100%;
        position: fixed;
        bottom: 0;
        width: 100%;
    }

    .sub_footer_mob_cta>a {
        color: white;
    }

    ul,
    ol {
        padding: 0;
    }

    .composer_cols_container:not(.media) {
        padding-left: 30px;
        padding-right: 30px;
    }

    footer#colophon {
        padding: 30px !important;
    }

    .cta_pre_footer>div {
        padding: 30px !important;
    }

    body.home:before,
    body.home:after {
        display: none;
    }

    .header_content {
        text-align: center;
        margin: 40px 0px 20px 0;
        padding: 0px 30px;
        align-items: center;
    }

    .header_wrapper {
        height: auto;
    }

    .header_person>img {
        position: relative;
        right: auto;
        bottom: auto;
        width: 100%;
    }

    .header_content h1,
    .header_content>span {
        max-width: 100%;
    }

    .header_content h1 {
        font-size: 36px;
        line-height: 40px;
        margin-bottom: 20px;
    }

    .header_content>span {
        font-size: 16px;
        line-height: 24px;
        margin: auto;
    }

    .composer_txt_img-bkg.only_text>div:last-child {
        padding-top: 0;
    }

    .composer_txt_img-bkg>div {
        padding: 0 !important;
        text-align: left;
    }

    .composer_txt_img-bkg.only_text h2 {
        margin: 15px 0;
    }

    .composer_txt_img-bkg.only_text h2 {
        font-size: 30px;
        line-height: 1.1;
        max-width: 100%;
        margin-bottom: 30px;
    }

    .composer_txt_img-bkg.only_text>div>div {
        font-size: 14px;
        line-height: 20px;
    }

    .mob_play_video span.material-symbols-outlined {
        font-size: 80px;
        color: white;
        position: relative;
    }

    .header_person.mobile_dev {
        position: relative;
    }

    .mob_play_video:before {
        content: '';
        width: 70px;
        height: 70px;
        display: inline-block;
        vertical-align: middle;
        -webkit-mask: url(ico/play_circle.svg) no-repeat 50% 50%;
        mask: url(ico/play_circle.svg) no-repeat 50% 50%;
        -webkit-mask-size: cover;
        mask-size: cover;
        background: white;
        position: absolute;
        left: 50%;
        top: 50%;
        transform: translate(-50%, -50%);
    }

    .mob_play_video {
        position: absolute;
        cursor: pointer;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
    }

    .mob_play_video:after {
        content: '';
        width: 50px;
        height: 50px;
        background: black;
        display: block;
        position: absolute;
        z-index: -1;
        border-radius: 50%;
        opacity: 0.4;
        left: 50%;
        top: 50%;
        transform: translate(-50%, -50%);
    }

    .solutions_wrapper {
        flex-direction: column;
        gap: 40px
    }

    .solutions_wrapper h2 {
        font-size: 30px;
        line-height: 36px;
    }

    .solutions_wrapper>div>div {
        font-size: 14px;
        line-height: 20px;
    }

    .solutions_wrapper .accordions_wrapper {
        grid-template-columns: auto;
    }

    .solutions_wrapper .accordions_wrapper .acc_opener {
        padding: 20px 0px !important;
    }

    .solutions_wrapper>div:last-child {
        align-self: center;
    }

    .solutions_right>img {
        width: 63vw;
    }

    .solutions_right .solutions_element:nth-child(1) {
        right: -30px;
        top: 130px;
        width: 10vw;
        height: 10vw;
    }

    .solutions_right .solutions_element:nth-child(2) {
        top: 90px;
        width: 3.5vw;
        height: 3.5vw;
        left: -30px;
    }

    .solutions_right .solutions_element:nth-child(3) {
        top: 250px;
        width: 10vw;
        height: 10vw;
        left: 0;
    }

    .solutions_right .solutions_element:nth-child(4) {
        width: 28vw;
        top: 150px;
        left: -40px;
    }

    .solutions_right .solutions_element:nth-child(5) {
        width: 30vw;
        top: 250px;
        right: -5px;
    }

    .solutions_right .solutions_element:nth-child(6) {
        width: 30vw;
        right: 30px;
        top: 40px;
    }

    .solutions_right .solutions_element.active:nth-child(1) {
        top: 240px;
    }

    .solutions_right .solutions_element.active:nth-child(2) {
        top: 0px;
    }

    .solutions_right .solutions_element.active:nth-child(3) {
        top: 370px;
    }

    .solutions_right .solutions_element.active:nth-child(4) {
        top: 60px;
    }

    .solutions_right .solutions_element.active:nth-child(5) {
        top: 320px;
    }

    .solutions_right .solutions_element.active:nth-child(6) {
        top: -40px;
    }

    .content_types_wrapper {
        gap: 20px;
    }

    .content_types_wrapper .content_types_container {
        width: 100%;
    }

    .content_types_wrapper .content_types_container li {
        font-size: 14px;
    }

    .content_types_wrapper .content_types_container>div:nth-child(2) {
        padding-top: 10px;
    }

    .icon_single {
        width: 100%;
        padding-bottom: 0px;
    }

    .icon_single>div:last-child>span:last-child {
        font-size: 14px !important;
        line-height: 20px;
    }

    .cta_pre_footer {
        text-align: center;
        font-size: 20px;
        line-height: 36px;
    }

    .cta_pre_footer strong {
        font-weight: 600;
    }

    .cta_pre_footer>div {
        padding: 40px 20px 53px 20px;
    }

    .brands_container img {
        padding: 0px 25px;
    }

    .subfooter .sub_footer_wrapper {
        flex-direction: column;
        justify-content: center;
        text-align: center;
    }

    #video_close {
        top: -49px;
        right: -10px;
        font-size: 30px;
    }

    .header_int_wrapper {
        flex-direction: column;
        padding: 0px 30px 30px;
        height: auto;
    }

    .theme_breadcrumbs_wrapper {
        position: relative;
        margin-bottom: 30px;
    }

    .header_int_left h1 {
        font-size: 30px;
        line-height: 34px;
    }

    .header_int_left span.header_int_text {
        font-size: 20px;
        line-height: 24px;
    }

    .header_int_left a.generic_button {
        margin-top: 30px;
    }

    .header_int_images {
        display: none !important;
    }

    .composer_cols_container.specs_wrapper {
        padding: 60px 0px !important;
    }

    .specs_wrapper>div:first-child,
    .specs_wrapper>div:last-child {
        width: 100%;
    }

    .specs_wrapper {
        flex-direction: column;
        gap: 20px;
    }

    .specs_wrapper.left>div:last-child {
        order: 1;
    }

    .price_cards_wrapper {
        flex-direction: column;
    }

    .single_price_card {
        margin: auto;
    }

    .discover_container {
        flex-direction: column;
    }

    .discover_container>div:last-child {
        flex-direction: column;
        align-items: center;
        padding: 0 30px;
    }

    .discover_container a.generic_button.product_button {
        margin: 10px auto 40px;
    }

    .discover_content_text {
        padding: 30px 30px 10px;
        right: unset !important;
        margin: 0 30px;
    }

    span.discover_title {
        font-size: 22px;
    }

    .src_faqs input#s,
    #job_filter {
        width: 100%;
    }

    .btns_anchor .composer_wrapper {
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
        justify-content: center;
        gap: 10px;
    }

    .btns_anchor a.generic_button {
        white-space: nowrap;
    }

    .btns_anchor a.generic_button+.btns_anchor a.generic_button {
        margin: 0;
    }

    .accordions_wrapper .acc_opener {
        font-size: 16px !important;
    }

    .frm_contact_fields span {
        width: 100%;
    }

    .case_studies_container.composer_cols_container {
        padding: 0px 10px;
    }

    .cs_container {
        flex-direction: column;
    }

    a.opening {
        font-size: 1rem;
    }

    a.opening>span.material-symbols-outlined {
        font-size: 2.5rem;
    }

    .expanded {
        padding: 30px 10px;
    }

    .comparison {
        flex-direction: column
    }

    .comparison>div:first-child {
        padding-bottom: 40px;
        flex-direction: column;
    }

    .compare_element.active:nth-child(1) {
        bottom: 60%;
    }

    .compare_element:nth-child(1) {
        right: 80%;
        bottom: 40%;
        width: 3vw;
        height: 3vw;
    }

    .compare_element.active:nth-child(2) {
        bottom: 40%;
    }

    .compare_element:nth-child(2) {
        right: 60%;
        bottom: 80%;
        width: 10vw;
        height: 10vw;
    }

    .compare_element.active:nth-child(3) {
        bottom: 80%;
    }

    .compare_element:nth-child(3) {
        right: 0%;
        bottom: 50%;
        width: 7vw;
        height: 7vw;
    }

    .header_int_wrapper>div {
        justify-content: flex-start;
    }

    .comparison {
        align-items: flex-start;
    }

    .composer_cols_container.section.row_intervention {
        margin-top: unset;
    }

    .solutions_content_types_list .content_types_wrapper .content_types_container {
        width: 100%;
    }

    .row_solutions_technology .composer_txt_img-bkg:not(.only_text)>div:last-child {
        background-size: cover;
    }

    .list_container {
        -webkit-columns: 1;
        -moz-columns: 1;
        columns: 1;
    }

    .period_switcher {
        gap: 20px;
        font-size: 12px;
        letter-spacing: 0px;
        justify-content: center;
        flex-direction: column;
    }

    input#faq_filter {
        width: 100%;
    }
}

@media all and (max-width:661px) {
    .composer_cols_container:not(.media) {
        padding-left: 12px;
        padding-right: 12px;
    }
}

/* docs api page styling */

.docs-mono {
    font-family: "Courier New", Courier, monospace;
}

.the-docs-api .composer_cols_wrapper .col_container code,
.the-docs-api .composer_cols_wrapper .col_container pre {
    background-color: #e6e6e6;
    border-radius: 3px;
}

.the-docs-api .composer_cols_wrapper .col_container ul {
    margin-left: 0;
}

.the-docs-api .composer_cols_wrapper h3 {
    color: var(--color);
}

.the-docs-api .accordions_wrapper .acc_opener:before {
    content: "\f121";
    font-family: 'FontAwesome';
    font-size: 11px;
    line-height: 19px;
}

body .qc-cmp2-persistent-link {
    right: 100px;
    background: var(--bluette);
}

#voiceflow-chat {
    position: relative;
    z-index: 2147483647;
}

html[lang="it-IT"] body>div[aria-label*="chat"][id="hubspot-messages-iframe-container"],
html[lang="es-ES"] body>div[aria-label*="chat"][id="hubspot-messages-iframe-container"] {
    /* display: none !important; doesnt work, overriden by inline external style */
    visibility: hidden;
}
.qsm-quiz-container {
    padding-block: 48px;
}
.qsm-quiz-container h2 {
    font-size: 42px;
    color: var(--text-color);
    margin: 15px auto;
    line-height: 48px;
    text-align: center;
    font-weight: 700;
}
.qmn_radio_horizontal_answers {
    display: flex;
    gap: 30px;
}
.qsm-results-page h3 {
    font-size: 80px;
    margin: 0;
    font-weight: 900;
    color: var(--color);
}

.qsm-results-page .qmn_image_option,
.quiz_section .qmn_image_option {
    height: unset !important;
    overflow: visible !important;
    padding: 0 !important;
    width: unset !important;
}
.quiz_section .qmn_radio_answers label {
    margin: 0 !important;
    max-width: unset !important;
}
.qsm-progress-bar svg path:nth-child(1) {
    stroke: #ccc;
}

.qsm-progress-bar svg path:nth-child(2) {
    stroke: var(--color);
}

.composer_wrapper .qmn_quiz_container .qmn_btn,
.composer_wrapper .qmn_quiz_container .btn {
    background-color: var(--color) !important;
    font-size: 14px !important;
    padding: 10px 22px !important;
    font-weight: 600;
    border-radius: 4px !important;
    border: none !important;
}
.composer_wrapper .qmn_quiz_container .qmn_btn:hover,
.composer_wrapper .qmn_quiz_container .btn:hover {
    background-color: #000 !important;
}
.qsm-progress-bar .progressbar-text {
    color: var(--color) !important;
}

.qmn_image_option img {
    border-radius: 10px;
}

.qmn_image_option input:checked+label img {
    outline: 5px solid var(--bluette);
}

.qmn_image_option .qmn_quiz_radio,
.qmn_image_option .qsm_image_caption,
.quiz_end.empty_quiz_end {
    display: none !important;
}

.qmn_quiz_container a[href="#alert"] {
    display: none;
}