.art-postcontent h1, h1, .h1, .art-postcontent .h1,
.art-postcontent h2, h2, .h2, .art-postcontent .h2,
.art-postcontent h3, h3, .h3, .art-postcontent .h3,
.art-postcontent h4, h4, .h4, .art-postcontent .h4,
.art-postcontent h5, h5, .h5, .art-postcontent .h5,
.art-postcontent h6, h6, .h6, .art-postcontent .h6 {
    font-family: "new-science", sans-serif;
    font-weight: 700;
    font-style: normal;
}

a.art-button, a.art-button:link, a:link.art-button:link, body a.art-button:link, a.art-button:visited, body a.art-button:visited, input.art-button, button.art-button. .art-postcontent a:hover, .art-postcontent a.hover {
    font-family: "new-science", sans-serif;
    display: inline-block;
}

/*#art-main.art-homepage {
    background-image: url(/images/homepage/gradiente_hero.png);
    background-size: contain;
    background-position-y: -200px;
    background-repeat: no-repeat;
}*/

#art-main.art-page-soluzione::before {
    /*content: '';
    background-image: url(/images/soluzione/gradiente_hero.png);
    background-size: contain;
    background-repeat: no-repeat;*/
}

.main-full-height h1,
.main-full-height p {
    color: #fff;
}

.main-full-height h1 {
    font-size: 72px;
    margin-bottom: 40px;
}

.main-full-height p {
    font-size: 21px;
}

.main-full-height .subtext {
    max-width: 800px;
    margin: 0 auto;
    width: 100%;
}

/*.main-full-height {
    height: 100%;
    min-height: calc(100vh - 74px);
}*/

.art-nav .container-nav {
    background-color: transparent;
}

.nav-sticky-wrapper.nav-sticky .art-nav {
    background-color: #313132;
}

.nav-sticky-wrapper.nav-sticky .menu-bootstrap5 .mod-menu_bootstrap5 .nav-link {
    color: #fff;
}

.nav-sticky-wrapper.nav-sticky .menu-bootstrap5 .mod-menu_bootstrap5 .nav-link.active,
.nav-sticky-wrapper.nav-sticky .menu-bootstrap5 .mod-menu_bootstrap5 .nav-link:hover {
    color: #adff2f
}

.art-button, a.art-button, a.art-button:link, a.art-button.link {
    border: 1px solid;
    border-radius: 8px;
    display: inline-block;
    text-transform: uppercase;
}

.main-full-height > div {
    max-width: 1000px;
    width: 100%;
    margin: 0 auto;
}

.main-full-height > div a.art-button {
    margin-top: 50px;
    display: inline-block;
}

#scroll-driver {
    height: calc(var(--hero-sticky-height, calc(100vh - 74px)) + var(--hero-animation-scroll, calc(100vh - 74px)));
    position: relative;
}

.sticky-section {
    position: sticky;
    top: 0;
    height: var(--hero-sticky-height, calc(100vh - 74px));
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    /*overflow: hidden;*/
}

.title-line {
    display: block;
    font-size: 72px;
    color: rgba(255, 255, 255, 1);
    transition: color 0.3s ease;
    padding: 0.1em 0;
    will-change: color;
}

.title-line.active {
    color: #adff2f
}

.title-line.done {
    color: #fff;
}

/* fine sezione testo scroller */

.bg-white {
    background-color: #fff;
}

.art-postcontent .bg-white p, .bg-white p,
.art-postcontent .bg-white h1, .bg-white h1, .bg-white .h1, .art-postcontent .bg-white .h1,
.art-postcontent .bg-white h2, .bg-white h2, .bg-white .h2, .art-postcontent .bg-white .h2,
.art-postcontent .bg-white h3, .bg-white h3, .bg-white .h3, .art-postcontent .bg-white .h3,
.art-postcontent .bg-white h4, .bg-white h4, .bg-white .h4, .art-postcontent .bg-white .h4,
.art-postcontent .bg-white h5, .bg-white h5, .bg-white .h5, .art-postcontent .bg-white .h5,
.art-postcontent .bg-white h6, .bg-white h6, .bg-white .h6, .art-postcontent .bg-white .h6,
.bg-white a.art-button, .bg-white a.art-button:link, .bg-white a:link.art-button:link, body .bg-white a.art-button:link, .bg-white a.art-button:visited, body .bg-white a.art-button:visited, .bg-white input.art-button, .bg-white button.art-button {
    color: #000;
}

.slider-card .swiper-container {
    height: auto;
}

.slider-card .swiper-wrapper {
    align-items: stretch;
}

.slider-card .swiper-slide {
    background-color: rgba(218, 255, 157, 1) !important;
    border-radius: 30px;
    height: auto;
    padding: 30px;
    display: flex;
}

.slider-card .kw-slide-content {
    display: flex;
    flex-direction: column;
    color: #000;
    opacity: 1 !important;
}

.slider-card .kw-slide-content > p:first-child {
    font-family: "new-science", sans-serif;
    font-weight: 500;
    font-style: normal;
    margin-bottom: auto;
    color: #000;
}

.slider-card .kw-slide-content h5 {
    font-size: 32px;
    color: #000;
}

.kw-slider.swiper {
    position: sticky;
}

.art-postcontent .kw-saccordion__panel-text > p {
    font-size: 21px;
}

.art-kwmod3-item {
    position: relative;
    min-height: 280px;
    border-radius: 30px;
    overflow: hidden;
    padding: 0;
    display: flex;
    align-items: flex-end;
    height: 100%;
}

/* immagine */
.art-kwmod3-item .kwmod3-bg {
    position: absolute;
    inset: 0;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    transition: transform 0.5s ease;
    z-index: 1;
}

.art-kwmod3-item:hover .kwmod3-bg {
    transform: scale(1.08);
}

/* gradiente più scuro in basso e nella zona testo */
.art-kwmod3-item .kwmod3-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(
            180deg,
            rgba(0, 0, 0, 0.05) 0%,
            rgba(0, 0, 0, 0.15) 28%,
            rgba(0, 0, 0, 0.55) 58%,
            rgba(0, 0, 0, 0.82) 100%
    );
    z-index: 2;
}

/* contenitore testo */
.art-kwmod3-item .kwmod3-content {
    position: relative;
    z-index: 3;
    width: 100%;
    padding: 20px;
}

.kwmod3-description {
    color: #ffffff;
    text-shadow: 0 2px 8px rgba(0, 0, 0, 0.85);
}

.art-kwmod3-item h2 {
    font-weight: 800;
    margin: 150px 0 12px 0;
    text-transform: uppercase;
    text-shadow: 0 2px 8px rgba(0, 0, 0, 0.65);
    z-index: 2;
}

.art-kwmod3-container {
    margin-bottom: 50px;
}

.swiper-slide, .swiper-slide p {
    color: #000;
}

h3.kw-saccordion__title {
    font-size: 26px;
}

.kw-saccordion .kw-saccordion__panel-text p, .kw-saccordion .kw-saccordion__panel-text {
    font-size: 21px;
}

#scroll-driver .sticky-section {
    align-items: start;
}

.text-flex {
    position: sticky;
    top: 85px;
    align-self: flex-start;
    display: block;
}

.mod_kw_layout-243 .kw-module-content {
    position: sticky;
    top: 0;
}

div.art-service-item {
    max-width: 500px;
    margin: 25px auto;
    background: #fff;
    color: #000;
    border-radius: 30px;
    text-align: left;
    position: relative;
    padding: 30px;
    min-height: 320px;
    display: flex;
    flex-direction: column;
}

.art-service-item .art-service-icona {
    position: absolute;
}


.art-service-item h3, .art-service-item p, .art-service-item i {
    color: #000;
    text-align: left;
}

.art-service-item h3.art-service-title {
    font-size: 32px;
    margin-top: 70px;
}

.art-service-item h3.art-service-title, .art-service-item div.art-service-description {
    text-align: left;
}

.art-service-item div.art-service-description {
    margin-top: auto;
}

.art-service-item div.art-service-icona {
    position: absolute;
    right: 20px;
    height: initial;
}

.menu-noradiante .menu-bootstrap5 .mod-menu_bootstrap5 .nav-link:hover,
.menu-noradiante .menu-bootstrap5 .mod-menu_bootstrap5 .nav-link.active,
.menu-noradiante .menu-bootstrap5 .mod-menu_bootstrap5 .nav-link {
    color: #fff;
}

.menu-noradiante .menu-bootstrap5 .mod-menu_bootstrap5 .nav-link:hover, .menu-noradiante .menu-bootstrap5 .mod-menu_bootstrap5 .nav-link.active {
    color: #adff2f;
}

.art-privacy h1 {
    text-transform: uppercase;
    font-weight: 700;
}

#header-noradiante .main-full-height .title-container {
    margin-top: 0;
}

.main-full-height .title-container {
    margin-top: 100px;
    width: 100%;
}

.kw-saimg__media {
    max-height: 500px;
}

#header-radiante {
    background: radial-gradient(ellipse 112% 54% at 50% 0%, hsl(83 100% 81% / 1) 0%, hsl(82, 26%, 21%) 50%, #373640 75%, #373640 100%, #373640 100%);
    position: relative;
    top: -75px;
}

.kw-mod_kw_catalog .comp-cell.col-featured,
.kw-mod_kw_catalog .comp-row:nth-child(even) .comp-cell.col-featured,
.kw-mod_kw_catalog .comp-header.col-featured {
    background: #4B4951;
}

.kw-mod_kw_catalog .col-featured .cell-title, .kw-mod_kw_catalog .cell-title, .kw-mod_kw_catalog .cell-desc {
    color: #fff;
    font-size: 16px;
}

.kw-mod_kw_catalog .col-featured .cell-title, .kw-mod_kw_catalog .cell-title {
    font-weight: bold;
}

div.kw-mod_kw_catalog {
    --kora-bg: #373640;;
    --kora-green: #d9ff9d;
    --kora-header-bg: #373640;
    --kora-row-alt: #373640;
    --kora-border: rgba(255, 255, 255, 0.07);
    --kora-text: #e8e8e8;
    --kora-muted: #888;
    --kora-cross: #fff;
}

.kw-mod_kw_catalog .comp-cell {
    border-right: 0;
}

div.kw-mod_kw_catalog .comp-header {
    font-size: 18px;
    border-bottom: 1px solid var(--kora-green);
    font-weight: bold;
}

div.kw-mod_kw_catalog .col-featured .cell-title {
    font-weight: bold;
}

div.kw-mod_kw_catalog .cell-title {
    font-weight: normal;
}

p.big-text {
    font-size: 28px;
    font-weight: bold;
}

div.kw-planes-wrap {
    --plane-bg: #4B4951;
    --plane-border: rgba(255, 255, 255, 0.07);
    --plane-green: #d9ff9d;
    --plane-text: #e8e8e8;
    --plane-muted: #888;
    --plane-cross: #9e9393;
    --plane-value: #fff;
}

div.kw-planes-wrap .plane-title {
    color: #d9ff9d;
    text-align: center;
    margin-bottom: 20px;
}

div.kw-planes-wrap .plane-description {
    color: #fff;
}

div.kw-planes-wrap .plane-feature.has-value .feature-label {
    color: #fff;
}

div.kw-planes-wrap .plane-subtitle {
    color: #fff;
    font-weight: bold;
}

#tc-aipr-vs-aipu .comp-cell {
    justify-content: center;
}

.art-footer, .art-footer a, .art-footer a:link, .art-footer a:visited, .art-footer a:hover, .art-footer td, .art-footer th, .art-footer caption {
    font-size: 14px;
}

.art-footer a.art-button, .art-footer a.art-button:link, .art-footer a:link.art-button:link, body .art-footer a.art-button:link, .art-footer a.art-button:visited, body .art-footer a.art-button:visited, .art-footer input.art-button, .art-footer button.art-button {
    font-size: 14px;
    padding: 5px 20px;
}

#modalCookieType.modal {
    --bs-modal-color: #fff;
    --bs-body-bg: #313132;
    --bs-border-color-translucent: rgb(255 255 255);
}

div#modalCookieType h6, div#modalCookieType h5, div#modalCookieType p {
    color: #fff;
}

div#modalCookieType .btn-close {
    --bs-btn-close-color: #d9ff9d;
    --bs-btn-close-bg: none;
    height: auto;
}

div#modalCookieType .btn-close:before {
    content: "\f00d";
    font-family: "Font Awesome 6 Pro";
    font-weight: 900;
    font-size: 24px;
    color: #d9ff9d;
}

.form-check-input:checked {
    background-color: #000000;
    border-color: #000000;
}

#come-funziona, #cookie-area, #privacy-area, #ai-privata {
    padding-top: 80px;
}

#back-top {
    color: #000;
}

.art-footer p, .art-footer a:link, .art-footer a:visited {
    color: #fff;
}

.art-footer a:hover {
    color: #d9ff9d;
}

div.art-modulo-informazioni ul li {
    margin-bottom: 10px;
    margin-top: 0;
}

.art-button {
    transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

.art-button.hover, .art-button:hover, a.art-button.hover, a.art-button:hover {
    background: #d9ff9d;
    color: #1a1f1a;
}

input[type="text"], input[type="password"], input[type="email"], input[type="url"], input[type="color"], input[type="date"], input[type="datetime"], input[type="datetime-local"], input[type="month"], input[type="number"], input[type="tel"], input[type="time"], input[type="week"], textarea, textarea.form-control {
    color: #000;
}


nav.navbar-simple .mod-list li {
    padding: 11px 0;
}

nav.navbar-simple ul.art-hmenu > li > a {
    line-height: initial;
    font-size: 18px;
}

.art-postcontent nav.navbar-simple a:visited, .art-postcontent nav.navbar-simple a.visited, nav.navbar-simple a:visited, nav.navbar-simple a.visited {
    color: #fff;
}

.art-postcontent nav.navbar-simple a, .art-postcontent nav.navbar-simple a:link, nav.navbar-simple a, nav.navbar-simple a:link {
    color: #fff;
}

nav.navbar-simple ul.art-hmenu > li > a:hover, nav.navbar-simple ul.art-hmenu > li.current > a, .desktop nav.navbar-simple ul.art-hmenu > li:hover > a {
    color: #d9ff9d;
}

.mod-kw-faqs-search {
    margin-bottom: 20px;
}

.container-header .mod-menu > li.active::after, .container-header .mod-menu > li:hover::after {
    content: none;
}

.alert-message p {
color: #000 !important;
}

/* Extra extra large devices (<1400px) */
@media (max-width: 1399.98px) {
    div.art-skcards-stage {
        max-width: 550px;
        width: 100%;
    }
}

/* Extra large devices (max-width 1199.98px) */
@media (max-width: 1199.98px) {

    .main-full-height .title-container {
        margin-top: 150px;
    }

    .title-line {
        font-size: 60px;
    }

    .main-full-height p {
        font-size: 18px;
    }

    p.big-text {
        font-size: 24px;
    }

    .main-full-height > div a.art-button {
        margin-top: 20px;
    }

    a.art-button, a.art-button:link, a:link.art-button:link, body a.art-button:link, a.art-button:visited, body a.art-button:visited, input.art-button, button.art-button {
        font-size: 18px;
    }

    .menu-bootstrap5 .mod-menu_bootstrap5 > li {
        font-size: 18px;
    }

    #art-main {
        font-size: 18px;
    }

    .art-postcontent h2, h2, .art-postcontent .h2, .h2 {
        font-size: 24px;
    }

    div.art-skcards-stage h2.skcards-title {
        font-size: 32px;
    }

    .slider-card .kw-slide-content h5 {
        font-size: 24px;
    }

    h3.kw-saccordion__title {
        font-size: 22px;
    }

    .kw-accordion2 span.kw-accordion2-title {
        font-size: 22px;
    }

    .art-service-item h3.art-service-title {
        font-size: 24px;
    }

    div.kw-accordion3-title {
        font-size: 24px;
    }

    h3.kw-saimg__title {
        font-size: 24px;
    }

    .kw-saimg__desc p, .kw-saimg__desc {
        font-size: 18px;
    }
}


/* Large devices (max-width 991.98px): Desktops */
@media (max-width: 991.98px) {
    .text-flex {
        position: relative;
        height: auto !important;
        top: 0 !important;
        margin-bottom: 100px;
    }

    .art-logo > img {
        padding: 10px;
    }

    span.hamburger-inner, span.hamburger-inner::before, span.hamburger-inner::after {
        background-color: #fff;
    }

    .offcanvas-title {
        color: #000;
    }

    .nav-sticky-wrapper.nav-sticky .menu-bootstrap5 .mod-menu_bootstrap5 .nav-link, .menu-noradiante .menu-bootstrap5 .mod-menu_bootstrap5 .nav-link:hover, .menu-noradiante .menu-bootstrap5 .mod-menu_bootstrap5 .nav-link.active, .menu-noradiante .menu-bootstrap5 .mod-menu_bootstrap5 .nav-link {
        color: #000;
    }

    .container-header .container-nav .container-search, .container-header .container-nav nav {
        margin-top: 0;
    }

    .container-header .mod-menu > li.active > a, .container-header .mod-menu > li.active > span, .container-header .mod-menu > li > a:hover {
        text-decoration: none;
    }

    .art-kwmod3-container > div {
        margin-bottom: 40px;
    }

    h3.kw-saimg__title {
        font-size: 20px;
    }

    div.kw-saimg__desc p, div.kw-saimg__desc {
        font-size: 18px;
        margin-top: 20px;
    }

    .kw-saimg__media {
        max-height: 400px;
    }

    .menu-bootstrap5 .mod-menu_bootstrap5 .nav-link:hover, .menu-bootstrap5 .mod-menu_bootstrap5 .nav-link.active {
        color: #adff2f;
    }

    .nav-sticky-wrapper .art-nav {
        opacity: 1;
    }

    div.kw-accordion3-section {
        flex: 0 0 200px;
    }

    div.kw-accordion3-body {
        padding: 0 0 28px 224px;
    }

    #art-main {
        font-size: 16px;
    }

    div.kw-accordion3-title {
        font-size: 18px;
    }

    .container-header .navbar-toggler {
        border: 0;
    }
}

/* Medium devices (max-width 767.98px): Tablets */
@media (max-width: 767.98px) {
    .title-line {
        font-size: 40px;
    }

    p.big-text {
        font-size: 20px;
    }

    .kw-saccordion .kw-saccordion__panel-text p, .kw-saccordion .kw-saccordion__panel-text {
        font-size: 18px;
    }

    h3.kw-saccordion__title {
        font-size: 20px;
    }

    .art-postcontent h2, h2, .art-postcontent .h2, .h2 {
        font-size: 20px;
    }

    div.art-skcards-stage h2.skcards-title {
        font-size: 24px;
    }

    .kw-accordion2 span.kw-accordion2-title {
        font-size: 20px;

    }

    div.kw-accordion3-header {
        display: grid;
        grid-template-columns: 1fr auto;
        grid-template-areas: "section section" "title icon";
        align-items: start;
        column-gap: 30px;
        row-gap: 20px;
    }

    div.kw-accordion3-section {
        grid-area: section;
        width: 100%;
    }

    div.kw-accordion3-body {
        padding: 0;
    }

    .kw-accordion3-title {
        grid-area: title;
    }

    .kw-accordion3-icon {
        grid-area: icon;
    }

}


/* Small devices (max-width 575.98px): Mobile portrait */
@media (max-width: 575.98px) {
    .title-line {
        font-size: 28px;
    }

    .main-full-height p {
        font-size: 14px;
    }

    p.big-text {
        font-size: 16px;
    }

    a.art-button, a.art-button:link, a:link.art-button:link, body a.art-button:link, a.art-button:visited, body a.art-button:visited, input.art-button, button.art-button {
        font-size: 14px;
    }

    #art-main {
        font-size: 14px;
    }

    .art-postcontent h2, h2, .art-postcontent .h2, .h2 {
        font-size: 18px;
    }

    div.art-skcards-stage h2.skcards-title {
        font-size: 18px;
    }

    h3.kw-saccordion__title {
        font-size: 18px;
    }

    .kw-saccordion .kw-saccordion__panel-text p, .kw-saccordion .kw-saccordion__panel-text {
        font-size: 16px;
    }

    .kw-accordion2 span.kw-accordion2-title {
        font-size: 16px;
    }

    h3.kw-saimg__title {
        font-size: 18px;
    }

    div.kw-saimg__desc p, div.kw-saimg__desc {
        font-size: 16px;
    }

    .form-check .form-check-input {
        float: left;
        margin-left: -1em;
        width: 15px;
        height: 15px;
    }

    .kw-mod_kw_catalog .col-featured .cell-title, .kw-mod_kw_catalog .cell-title, .kw-mod_kw_catalog .cell-desc {
        font-size: 14px;
    }

    div#modalCookieType h5.modal-title {
        font-size: 16px;
    }

    div#modalCookieType a.art-button.btn-close {
        padding: 3px 5px;
    }

    div#modalCookieType {
        z-index: 9999999999;
        background: rgba(0, 0, 0, 0.8);
    }
}


