
/* Stile riportato perche era ggiunto in pagina */

#tabellaListRitiri, table {
    border-collapse: collapse;
    width: 100%;
    margin-bottom: 1rem;
    border-radius: 0;
}
th, td {
    display: table-cell;
}
#tabellaListRitiri tr:nth-child(even) {
    background-color: #f2f2f2;

}

.hero-image {
    margin-top: 20px;
}

/* ttl */
.news__arrows_2 button {
    background: none;
    border: none;
}

/* news */
.hero-image {
    max-width: 100vw;
    margin: 20px auto;
    overflow: hidden;
    height: 700px;
}

.hero-image .container {
    width: 100vw;
    margin: 0;
    max-width: 100%;
    position: relative;
}

.hero-image .container .w-full {
    width: 100% !important;
    height: 110% !important;
}
/* mobile */
@media (max-width: 768px) {
    .hero-image .container .w-full {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }
}

.news__content {
    overflow: hidden;
}

.news__arrows {
    display: flex;
    justify-content: center;
    align-items: center;
}

.news__arrow {
    width: 14px;
    height: 17px;
    cursor: pointer;
    filter: saturate(0%);
}

.news__arrow:hover {
    filter: saturate(100%);
}

.news__dots {
    position: absolute;
    left: 100px;
    bottom: 0;
}

.news__dots-list {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
}

.news__dots-list li {
    width: 4px;
    height: 4px;
    background: #ffffff;
    opacity: 0.4;
    margin: 0 20px;
}

.news__dots-list li.active {
    width: 32px;
    height: 4px;
    background: var(--rm-accent-bg);
}

.news__dots-list li.active:after {
    opacity: 1;
}

.news__slider {
    margin: 0 -10px !important;
    overflow-x: hidden;
}

.news__slide {
    box-sizing: border-box;
}

.news__arrows_2 {
    display: block;
    width: 35%;
    position: relative;
    z-index: 20;
    margin: 0 auto;
    position: absolute;
    right: 100px;
    width: 100px;
    bottom: 0;
    display: flex;
    justify-content: space-between;
}

/* article */
.article {
    display: flex;
    flex-direction: column;
    width: calc(100% - 20px);
    margin: 0 auto;
    font-family: inter, sans-serif;
}

.article__img-container {
    height: 640px;
    position: relative;
    overflow: hidden;
}

.article__img {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background: url(../images/news__img_2.jpg) no-repeat center center;
    background-size: cover;
    transition: 0.3s all;
}

.article:hover .article__img {
    transform: scale(1.2);
}

.article__title {
    color: #8c570a;
    font-weight: 700;
    font-size: 22px;
    padding: 20px 0;
}

.article__content {
    color: #85878d;
    font-size: 16px;
    line-height: 20px;
    height: 95px;
    overflow: hidden;
}

.article__info {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding-bottom: 15px;
}

.article__date {
    color: #737373;
    font-family: inter, sans-serif;
    font-size: 15px;
}

.article--info--container {
    position: absolute;
    top: 100px;
    left: 100px;
    z-index: 99;
}
.article--info--container .article--print {
    width: 134px;
    height: 24px;
    left: 252px;
    top: 249px;
    /* White */
    background: #ffffff;
    opacity: 0.2;
    display: flex;
    align-items: center;
    justify-content: center;
    text-transform: uppercase;
}
.article--info--container .article--print p {
    font-style: normal;
    font-weight: 400;
    font-size: 12px;
    line-height: 15px;
    text-align: center;
    text-transform: uppercase;
    font-family: inter, sans-serif;
}

.article--text {
    margin-top: 67px;
    margin-bottom: 40px;
}
.article--text h3 {
    font-style: normal;
    font-weight: 400;
    font-size: 48px;
    line-height: 56px;
    /* or 117% */
    text-transform: uppercase;
    /* White */
    color: #ffffff;
}
.article--text p {
    font-style: normal;
    font-weight: 400;
    font-size: 1.2em;
    line-height: 22px;
    /* White */
    color: #ffffff;
    margin-top: 20px;
    word-wrap: break-word;
}

.btn__slider {
    width: 142px;
    height: 56px;
    left: 252px;
    top: 565px;
    /* Orange */
    background: var(--rm-accent-bg);
    border-radius: 10px;
    font-style: normal;
    font-weight: 700;
    font-size: 18px;
    line-height: 22px;
    text-align: center;
    /* White */
    color: #ffffff;
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    margin-top: 40px;
}

.news__dots-list li {
    /* Rectangle 86 */
    text-indent: -5000px;
    width: 4px;
    height: 4px;
    margin: 0 10px;
    /* White */
    background: #ffffff;
    opacity: 0.4;
}
.news__dots-list li.slick-active {
    /* Rectangle 84 */
    width: 32px;
    height: 4px;
    /* Orange */
    background: var(--rm-accent-bg);
}
.news__dots-list li.slick-active:after {
    background: var(--rm-accent-bg);
}

.hero-image .full_screen {
    height: 100vh;
}
/* OLD */



/*relative px-4 py-16 sm:px-6 sm:py-24 lg:py-32 px-8 lg:px-16 (contenitore .news__dots) -> dargli classe ct-dots*/

.ct-dots {
    padding: 0;
    position: absolute;
    top: 570px;
    width: 100%;
    left: 10px;
}



.article--info--container .article--print p {
    font-style: normal;
    font-weight: 400;
    font-size: 12px;
    line-height: 15px;
    text-align: center;
    text-transform: uppercase;
    font-family: inter, sans-serif;
    color: #fff;
}

.article--text h3 {
    padding-right: 50px;
}

.article--info--container .article--print {
    width: 134px;
    height: 24px;
    left: 252px;
    top: 249px;
    background: rgba(255, 255, 255, 0.2);
    opacity: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    text-transform: uppercase;
}

.news__arrows_2 {
    right: 100px;
    top: 555px;
    bottom: auto;
}

.news__container.article {
    margin: 0;
    width: 100%;
}

.hero-image {
    max-width: 100vw;
    margin: 0 !important;
    overflow: hidden;
    height: 700px;
}

.home__categories_link {
    margin-top: 0;
}

.home__products .product-item-photo img:not(.icon-garanzia) {
    height: 230px;
    object-fit: cover;
    object-position: center;
}

.product-custom-1 .link-custom {
    margin-top: 25px;
    display: inline-block;
}

.btn-primary {
    box-shadow: none;		/* aggiungere questa regola */
}


.ct-reviews .swiper-wrapper {
    display: flex;
    justify-content: space-between;
    width: calc(100% + 22px);
    /*margin-left: -11px;*/
}


/*home -> testimonial swiper-slide -> creare questo div (.ct-img-author) chre wrappa img e .author*/
.ct-img-author {
    display: flex;
    justify-content: center;
    align-items: center;
    margin-bottom: 85px;
}

.testimonials-slider figure.testimonial img {
    max-height: 80px;
    max-width: 80px;
}

.testimonials-slider figure.testimonial {
    /*margin-right: 0;*/
    /*margin: 0 11px;*/
    width: 33.3333333%;
    height: auto;
    align-items: flex-start;
    justify-content: flex-end;
}

.latest_news .ct-news {
    height: 100%;
    justify-content: flex-end;
}
.latest_news .ct-text {
    height: 100%;
}

.product-custom-1.product-custom-2 {
    height: 100%;
    padding: 37px 34px;
}

.product-custom-1 .title-custom {
    font-size: 34px;
    line-height: 43px;
}

.title-1, .price-custom {
    font-size: 34px;
    line-height: 43px;
}

.brands_icons .list-brands {
    flex-wrap: wrap;
    /*justify-content: flex-start;*/
}

.brands_icons .list-brands:after {
    content: "";
    flex: auto;
}

#compare-link {
    display: none;
}

.hero-image {
    position: relative;
    z-index: 1;
}

/* Menu */

#search-content #search_mini_form {
    position: static;
    width: 190px;
}

#search-content input#search {
    padding-right: 11px;
}

.search-autocomplete.relative.w-full {
    width: 100%;
    position: absolute;
    left: 0;
    top: 95px;
    z-index: 10000;
}

#search_autocomplete > div {
    /*modifiche search*/
    max-width: 500px;
    float:right;
    /*fine modifiche search*/
    position: static;
    display: flex;
    justify-content: space-around;
    padding-top: 30px;
    padding-bottom: 30px;
}

#search_autocomplete > div .font-bold.pt-2.pl-2.text-center {
    font-size: 20px;
    margin-bottom: 20px;
    padding-left: 0;
    text-align: left;
}

#search_autocomplete > div .hover\:bg-gray-100 .w-full.p-2 {
    font-size: 20px;
    text-decoration: underline;
    line-height: 15px;
    border-bottom: 1px solid #000;
    padding-left: 0;
}

#search_autocomplete > div .grid.grid-cols-4.gap-4.p-3 {
    display: flex;
    padding-left: 0;
    padding-bottom: 0;
}

#search_autocomplete > div .text-xs.uppercase.text-gray-500 {
    display: none;
}

#search_autocomplete > div .grid.grid-cols-4.gap-4.p-3 img {
    width: 70px;
}

.row .ct-main-menu {
    flex-wrap: nowrap;
}

.nav-lang-selector {
    width: 110px;
}

#permuta-ora-header {
    background: transparent;
    padding: 11px;
    padding-left: 0;
    font-weight: 400;
    font-size: 14px;
    line-height: 17px;
    color: #fff;
    text-align: center;
}

.cms-spedizioni #maincontent .columns h1, .cms-condizioni-di-pagamento #maincontent .columns h1, .cms-condizioni-di-vendita #maincontent .columns h1, .cms-privacy-policy #maincontent .columns h1, .cms-cookie-policy #maincontent .columns h1, .cms-usato-certificato #maincontent .columns h1 {
    margin-top: 40px;
}

.cms-ritiri-info #maincontent .columns {
    max-width: 920px !important;
    width: 100%;
    padding: 30px 40px;
    margin: 0 auto;
}

.cms-ritiri-info #maincontent .link-orange {
    display: inline-block;
    margin-top: 30px;
}

.cms-faq .h2-homepage {
    padding: 0 16px;
    margin-top: 30px;
    text-transform: uppercase;
    font-weight: 700;
    font-size: 24px;
    margin-bottom: 10px;
}

#accordion {
    margin-bottom: 40px;
}

#accordion .card {
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
}
#accordion .card a {
    pointer-events: none;
    font-weight: 600;
    margin-bottom: 5px;
    display: block;
    margin-top: 10px;
}


.fieldset.ct-contact-page {
    display: flex;
    justify-content: space-between;
    margin: 0;
    margin-top: 0px;
    padding: 0;
    border: 0;
    margin-top: 50px;
    margin-bottom: 80px;
}
fieldset .field, form .field.ct-text-contact {
    width: 50%;
    margin: 0;
    margin-right: 70px;
}
.field.note.no-label.ct-text-contact h1 {
    text-align: left !important;
    font-size: 28px;
    font-style: normal;
    font-weight: 600;
    line-height: 40px;
    margin-bottom: 32px;
}
.field.note.no-label.ct-text-contact p {
    text-align: left !important;
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 24px;
}

.ct-field-contact {
    width: 50%;
    margin-left: 70px;
    border: 1px solid #ddd;
    padding: 48px 40px;
    margin-top: 70px;
}
.ct-field-contact .field {
    width: 100%;
    margin: 0;
}
.ct-field-contact label {
    font-size: 16px;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
    margin-bottom: 8px;
}
.ct-field-contact input, .ct-field-contact textarea {
    width: 100%;
    max-width: none;
    box-shadow: none;
    border-color: #ddd;
    margin-bottom: 24px;
}
.ct-field-contact .actions-toolbar {
    display: block;
    border: 0;
    padding: 0;
    margin-top: 32px;
}

.ct-field-contact .link-orange {
    font-weight: 700 !important;
    font-size: 16px !important;
    line-height: 19px !important;
    text-align: center;
    color: #fff !important;
    background-color: var(--rm-accent-bg) !important;
    border-radius: 10px !important;
    padding: 14px 24px !important;
    box-shadow: none !important;
}


.list-contact {
    margin-top: 12px;
}
.list-contact li {
    display: flex;
    align-items: center;
    margin-bottom: 12px;
}
.list-contact svg {
    margin-right: 12px;
}
.list-contact a {
    font-size: 16px;
    font-style: normal;
    font-weight: 700;
    line-height: 24px;
    text-decoration-line: underline;
    color: var(--rm-accent);
}
.list-contact span {
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 24px;
    margin-left: 8px;
}

#gallery #thumbs {
    overflow-x: auto !important;
}
.product-info-main .js_thumbs_slide {
    margin: 0 10px;
    margin-bottom: 0;
}

.first-block-product {
    margin-top: 50px;
}

.ct-prod-other-info .card .card {
    padding: 0;
}

.product-info-main .pdp_permuta p, .product-info-main .pdp_ordina_entro p {
    display: block;
    margin-top: 12px;
    margin-bottom: 12px;
}

.plp__hero {
    padding-top: 0;
}
.plp__hero img {
    height: 100%;
    object-fit: cover;
}

.plp__main .sidebar.sidebar-main > div {
    margin: 0;
}
.plp__main .filter-options-title {
    border: 0;
    padding: 0;
    margin: 0;
}
.plp__main .filter-options-content {
    margin-top: 25px;
}
.plp__main .sidebar.sidebar-main > div div .filter-options-content span {
    border: 0 !important;
}
.plp__main .sidebar.sidebar-main .items input {
    margin-bottom: 4px;
}
.plp__main .sidebar.sidebar-main input[type="text"] {
    box-shadow: none;
    margin-bottom: 30px;
}


.plp__main .filter-options-title span.rounded {
    width: auto;
    height: auto;
    background-image: none;
}
.plus-minus {
    padding: 0;
    border: 0;
    width: 24px;
    height: 24px;
    background-image: url(../images/icons/accordion_close_icon.svg);
    background-position: center;
    background-repeat: no-repeat;
    display: block;
    /*background: red;*/
}
.rotate-180 + .plus-minus {
    background-image: url(../images/icons/accordion_open_icon.svg);
    /*background: gray;*/
}

.ct-prod-other-info .ct-title h2 {
    cursor: pointer;
}

.item-nav-main.relative.mr-2.level-0.dropdown ul.submenu {
    display: none;
    position: absolute;
    width: 250px;
    top: 22px;
    background: #fff;
    z-index: 10000;
    padding: 15px;
}
.item-nav-main.relative.mr-2.level-0.dropdown ul.submenu li {
    margin-bottom: 5px;
}
.item-nav-main.relative.mr-2.level-0.dropdown ul.submenu li:last-child {
    margin-bottom: 0;
}
.item-nav-main.relative.mr-2.level-0.dropdown ul.submenu li a:hover {
    text-decoration: underline !important;
}
.item-nav-main.relative.mr-2.level-0.dropdown ul.submenu li a::after {
    display: none;
}
.item-nav-main.relative.mr-2.level-0.dropdown ul.submenu li a.underline {
    color: #1e1e1e;
    font-weight: 600;
}
.nav-main .item-nav-main a.underline::after {
    bottom: -28px;
}

.product-item-name.font-semibold {
    color: #1e1e1e;
}

.home__products.home__products_2 form.item a {
    display: flex;
    flex-direction: column;
    height: 100%;
}
.home__products.home__products_2 .product-info .pt-3 {
    padding: 0;
    margin: 0;
    margin-top: 15px;
}
.home__products .text-primary {
    margin-bottom: auto;
}


#ui-response {
    height: auto;
    max-height: none;
}
.ticket-readticket-index .chat-response.robot {
    background: var(--rm-accent-soft);
}
.ticket-readticket-index .chat-response.user {
    background: #9ac6ff;
}

.link-custom.link-orange {
    padding-bottom: 14px;
    border: 0;
}

.control input {
    box-shadow: none;
}
#ritiriForm select {
    width: calc(100% - 13px) !important;
    max-width: none !important;
    height: 45px;
}
#ritiriForm label {
    margin-bottom: 0;
    margin-top: 13px;
}
#ritiriForm label {
    line-height: 20px;
}


.product-list-group {
    padding: 0;
    margin-bottom: 32px;
}
.product-image-container {
    display: block;
    height: 100%;
}
.product-image-container .product-image-wrapper {
    display: block;
    padding: 0 !important;
    height: 100%;
}
.product-image-container img {
    width: 100%;
    min-width: 400px;
    height: 100%;
    object-fit: cover;
}
.product-list-group .description {
    padding: 34px;
    padding-left: 38px;
}
.product-list-group .disponibile-label {
    display: inline-block;
    padding: 2px 4px;
}
.product-list-group .product-details {
    right: 32px;
    top: 32px;
}


.ct-see-all {
    width: 33.33333%;
}

.btn-see-all {
    display: block;
    width: calc(100% - 22px);
    padding: 16px 0;
    border: 1px solid #1e1e1e;
    background-color: #fff;
    border-radius: 10px;
    font-weight: 600;
    font-size: 18px;
    line-height: 22px;
    text-align: center;
    color: #1e1e1e;
    margin-left: 11px;
    margin-top: 40px;
}

.home__products div[data-content-type="block"], .home__products .block-static-block, .home__products div[data-content-type="row"], .home__products div[data-enable-parallax] {
    height: auto;
}





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

    .product-custom-1 .title-custom {
        font-size: 29px;
        line-height: 38px;
    }
    .home__products .product-item-link {
        font-size: 21px;
        line-height: 25px;
    }
    .home__products .price-container .price {
        font-size: 21px;
        line-height: 25px;
    }
    .title-1, .price-custom {
        font-size: 29px;
        line-height: 38px;
    }
    .product-info-main .price-wrapper .price {
        font-size: 29px;
        line-height: 38px;
    }
    .product-info-main .ct-links {
        display: block;
    }
    .product-info-main .link-icon {
        margin-right: 0;
    }
    #product-addtocart-button span {
        display: block !important;
    }


    .latest_news u a {
        font-size: 21px;
        line-height: 25px;
    }
}





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

    .nav-main .item-nav-main a.underline::after {
        bottom: -26px;
    }

    .ct-logo-main img {
        width: 170px;
    }

    .row .ct-main-menu .lg\:pt-0 {
        padding: 0;
    }

    .nav-main .item-nav-main {
        margin-right: 28px;
    }

    .nav-main .item-nav-main a {
        font-size: 15px;
    }

    #search-content input#search {
        font-size: 15px;
    }

    #search-content input#search::placeholder {
        font-size: 14px;
    }

    .product-custom-1 {
        padding: 28px 20px;
    }
    .product-custom-1 .title-custom {
        font-size: 24px;
        line-height: 33px;
    }
    .title-1, .price-custom {
        font-size: 24px;
        line-height: 33px;
    }
    .product-info-main .price-wrapper .price {
        font-size: 24px;
        line-height: 33px;
    }

    .home__products .product-item-link {
        font-size: 18px;
        line-height: 23px;
    }
    .home__products .price-container .price {
        font-size: 18px;
        line-height: 23px;
    }

    .latest_news u a {
        font-size: 18px;
        line-height: 23px;
    }

    .banner__1.banner__1_1 .title-banner {
        font-size: 28px;
        line-height: 38px;
    }


    .testimonials-slider figure.testimonial {
        padding: 30px 28px;
    }
    .testimonials-slider figure.testimonial img {
        max-height: 55px;
        max-width: 55px;
    }
    .testimonials-slider figure.testimonial .author h5 {
        font-size: 20px;
        line-height: 25px;
    }
    .ct-img-author {
        margin-bottom: 55px;
    }
    .search-autocomplete.relative.w-full {
        top: 88px;
    }
}




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

    .ct-logo-main {
        order: 0;
        width: auto;
    }
    .row .ct-main-menu {
        flex-wrap: wrap;
    }
    .row .ct-main-menu .flex.items-center.order-3 {
        justify-content: flex-end;
        width: 100%;
        padding-right: 15px;
    }
    #header {
        padding: 20px 0;
    }
    #header .flex.items-center.justify-center.cursor-pointer {
        position: relative;
        top: -3px;
    }
    .flex.items-center.justify-center.cursor-pointer.ml-auto svg.p-4 {
        top: 4px;
        position: relative;
    }
    .search-autocomplete.relative.w-full {
        top: 143px;
    }
    #header .item-nav-main {
        border-bottom: 1px solid #ddd;
    }
    #header .item-nav-main a {
        font-size: 23px;
    }
    #header nav {
        height: calc(100vh - 60px);
        overflow-y: auto;
    }
    #header .item-nav-main > span {
        flex-direction: column;
        justify-content: flex-start;
        align-items: flex-start;
    }
    .item-nav-main.relative.mr-2.level-0.dropdown ul.submenu {
        position: static;
        padding-left: 0;
        padding-right: 0;
    }
    #header .item-nav-main a {
        color: rgb(55 65 81/var(--tw-text-opacity));
    }
}




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

    .ct-see-all {
        width: 100%;
    }

    .cms-ritiri-info #maincontent .columns {
        padding: 30px 20px;
    }

    .product-list-group .description {
        padding: 20px;
        padding-left: 20px;
    }

    #ritiriForm select {
        width: 100% !important;
    }

    .product-list-group {
        flex-direction: column;
    }

    .customer-account-index #maincontent .columns, .customer-account-edit #maincontent .columns, .account #maincontent .columns {
        flex-direction: column-reverse;
        padding: 25px 20px;
    }
    .sales-order-history .main {
        padding-left: 0;
    }
    #ritiriForm .container {
        padding: 0;
    }
    #ritiriForm .container .fieldset.row {
        padding: 0;
        border: 0;
        flex-direction: column;
    }
    #ritiriForm .container .fieldset.row > .col-md-6 {
        flex: 0 0 100%;
        max-width: 100%;
    }
    .ticket-readticket-index .chat-response {
        word-break: break-word;
    }

    .ticket-listticket-index .table thead th:first-child {
        text-indent: -999999px;
    }
    .ticket-listticket-index .table td, .ticket-listticket-index .table th, #tabellaListRitiri td, #tabellaListRitiri th {
        padding: 5px;
        font-size: 12px;
        line-height: 15px;
    }
    .ticket-listticket-index .table thead th, #tabellaListRitiri thead th {
        padding-left: 5px;
        padding-right: 5px;
    }
    .ticket-listticket-index .table th, #tabellaListRitiri th {
        padding-top: 8px;
        padding-bottom: 8px;
    }
    .ticket-listticket-index .table th, #tabellaListRitiri th {
        font-size: 12px;
        line-height: 15px;
    }

    .sales-order-history .grid .p-2, .sales-order-history .grid .p-2 p {
        display: block;
        font-size: 12px;
    }
    .sales-order-history label[for="limiter"] {
        display: flex;
        align-items: center;
    }





    .plp__main .toolbar-products {
        flex-direction: column;
    }
    .toolbar-sorter {
        flex-direction: column;
        width: 100%;
    }
    .plp__main .form-select {
        width: 100% !important;
    }
    .plp__main .sorter-label {
        margin-right: 0;
        margin-bottom: 10px;
    }

    .item-nav-main.relative.mr-2.level-0.dropdown ul.submenu li a.underline {
        text-decoration: none !important;
    }


    .plp__main .sidebar.sidebar-main .items span[x-html="attribute.label"] {
        display: none;
    }
    .plp__main .sidebar.sidebar-main .items a span[x-html="attribute.label"] {
        display: block;
    }
    .plp__main .toolbar-products.toolbar-products-bottom {
        margin-top: 40px;
    }

    .plp__main .sidebar.sidebar-main > div div {
        display: block;
    }
    .plp__main .sidebar.sidebar-main > div div .py-1.px-1.bg-container-lighter.rounded.border.border-container-darker.block {
        display: none;
    }

    .plp__main .toolbar-products.toolbar-products-bottom {
        width: calc(100% + 20px);
        margin-left: -10px;
        padding-left: 0;
    }

    .product-info-main .col-gallery {
        padding-right: 10px;
    }
    .product-info-main #product-addtocart-button {
        max-width: none;
    }
    .product-info-main .ct-links {
        display: block;
    }
    .ct-info .text-right {
        display: flex;
        margin-top: 10px;
    }

    .ct-prod-other-info .section-accordion {
        max-width: none;
    }
    .ct-prod-other-info .card {
        padding: 20px;
    }
    .ct-prod-other-info .ct-title h2 {
        text-align: left;
    }
    .ct-prod-other-info tr {
        display: block;
    }
    .ct-prod-other-info th, .ct-prod-other-info td {
        width: 100%;
        padding-bottom: 5px;
    }
    .ct-prod-other-info td {
        padding-bottom: 22px !important;
    }





    .home__categories_link .columns:last-child .ct-img {
        border-right: 1px solid #ddd;
    }
    .home__categories_link .columns:nth-child(2) .ct-img, .home__categories_link .columns:nth-child(4) .ct-img, .home__categories_link .columns:nth-child(6) .ct-img, .home__categories_link .columns:nth-child(8) .ct-img, .home__categories_link .columns:nth-child(10) .ct-img {
        border: 0;
    }
    .home__categories_link .row::after {
        content: "";
        flex: auto;
    }

    .fieldset.ct-contact-page {
        flex-direction: column;
    }
    fieldset .field, form .field.ct-text-contact {
        width: 100%;
        margin-right: 0;
    }
    .ct-field-contact {
        width: 100%;
        margin-left: 0;
        padding: 30px 20px;
        margin-top: 20px;
    }


    .cms-spedizioni #maincontent .columns h1, .cms-condizioni-di-pagamento #maincontent .columns h1, .cms-condizioni-di-vendita #maincontent .columns h1, .cms-privacy-policy #maincontent .columns h1, .cms-cookie-policy #maincontent .columns h1, .cms-usato-certificato #maincontent .columns h1 {
        font-size: 23px;
        line-height: 30px;
        margin-top: 30px;
    }

    .cms-spedizioni #maincontent .columns p, .cms-condizioni-di-pagamento #maincontent .columns p, .cms-condizioni-di-vendita #maincontent .columns p, .cms-privacy-policy #maincontent .columns p, .cms-cookie-policy #maincontent .columns p, .cms-usato-certificato #maincontent .columns p {
        margin-top: 10px;
    }

    .home__products .columns.col-prod {
        margin-bottom: 35px;
    }
    .home__products.home__products_2 .btn-primary {
        margin: 0;
        width: 100%;
        max-width: none;
    }

    .ct-logo-main img {
        width: 150px;
    }
    .row .ct-main-menu {
        padding: 0 20px;
        padding-right: 8px;
    }
    #search-content {
        width: 100%;
    }
    #search-content #search_mini_form {
        width: 100%;
    }
    .col-header-due {
        padding: 0;
    }
    section[name="pre-header-2"] .menu-1 li {
        margin-right: 15px;
    }
    section[name="pre-header-2"] .menu-1 a {
        font-size: 12px;
    }
    .ct-lang-selector .btn-lang-selector {
        font-size: 12px;
    }
    #search_autocomplete > div {
        flex-direction: column;
        padding-left: 20px;
        padding-right: 20px;
    }
    #search_autocomplete > div .font-bold.pt-2.pl-2.text-center {
        margin-bottom: 10px;
    }
    #search_autocomplete > div > div {
        margin-bottom: 35px;
    }


    /* Footer responsive */
    footer.page-footer > .footer.content > .row {
        grid-template-columns: 1fr !important;
        gap: 32px !important;
    }
    footer.page-footer .ct-links {
        grid-template-columns: 1fr 1fr 1fr !important;
        gap: 24px !important;
    }
    footer.page-footer .ct-links .links {
        margin-left: 0;
        margin-top: 0;
    }
    .ct-links > div {
        width: 100%;
    }
    footer.page-footer .second-row {
        flex-wrap: wrap;
        gap: 16px;
        padding: 20px 0;
    }
    footer.page-footer .ct-social {
        margin-left: 0;
    }
    footer.page-footer {
        padding-top: 40px;
    }
    footer.page-footer .title-footer {
        font-size: 14px;
        margin-bottom: 14px;
    }
    footer.page-footer .ct-form,
    footer.page-footer .form.subscribe .field.newsletter {
        flex-direction: column;
        align-items: stretch;
    }
    footer.page-footer .ct-form button,
    footer.page-footer .form.subscribe .action.subscribe {
        margin-left: 0;
        margin-top: 8px;
        max-width: none;
        width: 100%;
    }
    footer.page-footer #copyright-note {
        flex-direction: column;
        text-align: center;
    }
    footer.page-footer .footer-address-iva {
        text-align: center;
    }
    footer.page-footer > .footer.content {
        padding: 0 20px;
    }




    .product-custom-1.product-custom-2 {
        height: 620px;
        padding: 28px 20px;
    }
    .product-custom-1.product-custom-2 img {
        width: 65%;
    }

    .banner__1.banner__1_1 .ct-text {
        padding: 28px 20px;
    }
    .banner__1.banner__1_1 .title-banner {
        font-size: 24px;
        line-height: 34px;
    }


    .article--info--container {
        top: 40px;
        left: 20px;
    }

    .article--text {
        margin-top: 40px;
    }

    .article--text h3 {
        font-size: 36px;
        line-height: 50px;
        padding-right: 30px;
    }

    .ct-dots {
        display: none;
    }

    .news__arrows_2 {
        right: auto;
        top: 575px;
        left: 20px;
    }

    .product-custom-1 {
        height: 450px;
        margin-bottom: 30px;
    }
    .product-custom-1 img {
        left: auto;
        right: 0;
    }


    /*.ct-reviews .swiper-wrapper {
        flex-direction: column;
        justify-content: flex-start;
        width: 100%;
        margin-left: 0;
    }*/

    .testimonials-slider figure.testimonial {
        margin: 0;
        width: 100%;
        align-items: flex-start;
        justify-content: flex-end;
        margin-bottom: 25px;
    }

    .latest_news .columns{
        margin-bottom: 30px;
    }

    .cms-spedizioni #maincontent .columns, .cms-condizioni-di-pagamento #maincontent .columns, .cms-condizioni-di-vendita #maincontent .columns, .cms-privacy-policy #maincontent .columns, .cms-cookie-policy #maincontent .columns, .cms-usato-certificato #maincontent .columns {
        padding: 20px;
        padding-bottom: 40px;
    }

    .cms-spedizioni #maincontent .columns [data-content-type="row"] > div, .cms-condizioni-di-pagamento #maincontent .columns [data-content-type="row"] > div, .cms-condizioni-di-vendita #maincontent .columns [data-content-type="row"] > div, .cms-privacy-policy #maincontent .columns [data-content-type="row"] > div, .cms-cookie-policy #maincontent .columns [data-content-type="row"] > div, .cms-usato-certificato #maincontent .columns [data-content-type="row"] > div {
        padding: 0;
    }

    #html-body [data-pb-style="T5DCUEH"] {
        padding: 0 10px;
    }
    #accordion {
        margin-bottom: 20px;
    }
    #accordion .card a {
        margin-top: 25px;
    }
    #accordion .card {
        padding: 0 10px;
    }
    .cms-faq .h2-homepage {
        padding: 0px 10px;
    }
    .banner-info-header {
        padding: 18px;
        padding-left: 0;
        padding-right: 0;
    }

    #header .ct-account-menu nav {
        height: auto;
    }

    .btn-see-all {
        width: 100%;
        margin-top: 20px;
    }
}

.payment-icon{
    width:auto !important;
    height: auto !important;
}


@media screen and (max-width: 500px) {
    .banner-info-header {
        padding-left: 0;
        padding-right: 0;
        font-size: 12px;
    }
    #permuta-ora-header {
        font-size: 12px;
    }
}





@media screen and (max-width: 480px) {
    .product-custom-1.product-custom-2 img {
        width: 100%;
    }
}




@media screen and (max-width: 420px) {
    .product-custom-1.product-custom-2 img {
        width: 100%;
    }
    .banner-info-header .separator {
        margin: 0 3px;
    }
    .banner-info-header {
        font-size: 11px;
    }
    #permuta-ora-header {
        font-size: 11px;
    }
}

/* Media query for devices with a max width of 767px */
@media (max-width: 767px) {
    /*pagina prodotti padre con figli*/
    .product-image-container img {
        min-width: auto;
    }
    .product-list-group .product-details {
        right: 2px;
        top: 2px;
    }
    /*modifiche mobile filtri plp + e - */
    span.py-1.px-1 {
        flex-direction: row;
    }
    .hidden {
        display: none !important;
    }
    .plus-minus {
        float:right;
        padding: 0;
        border: 0;
        width: 24px;
        height: 24px;
        background-image: url(../images/icons/accordion_close_icon.svg);
        background-position: center;
        background-repeat: no-repeat;
        display: block;
        /*background: red;*/
    }
    .rotate-180 + .plus-minus {
        background-image: url(../images/icons/accordion_open_icon.svg);
        display: block;
        /*background: gray;*/
    }
}
.page-product-grouped .product-info-main #product_addtocart_form { flex-basis: 100%; width: 100%; }

/* Fix layout prodotti grouped */
.page-product-grouped .second-block-product > .row {
    flex-wrap: wrap;
}
.page-product-grouped .second-block-product > .row > #product_addtocart_form {
    flex: 0 0 100%;
    max-width: 100%;
    width: 100%;
}
.page-product-grouped .my-12 {
    width: 100%;
}

/* Fix layout prodotti grouped - CORRETTO */
.page-product-grouped .second-block-product {
    display: block;
}
.page-product-grouped .second-block-product > #product_addtocart_form {
    width: 100%;
    display: block;
}
.page-product-grouped #product_addtocart_form .my-12 {
    width: 100%;
}
.page-product-grouped .product-list-group {
    width: 100%;
}

/* Fix AGGRESSIVO layout prodotti grouped */
.page-product-grouped .first-block-product,
.page-product-grouped .second-block-product {
    display: block !important;
    width: 100% !important;
}
.page-product-grouped #product_addtocart_form {
    display: block !important;
    width: 100% !important;
    float: none !important;
    clear: both !important;
}
.page-product-grouped #product_addtocart_form .my-12,
.page-product-grouped .product-list-group {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}

/* ---- 2026 CLS fix (11/09): riserva spazio all'immagine card prodotto ---- */
/* Le img .product-image-photo erano senza width/height -> layout shift.        */
/* aspect-ratio + object-fit:contain riserva lo spazio senza distorcere.        */
img.product-image-photo{aspect-ratio:1/1;width:100%;height:auto;object-fit:contain}

/* ---- 2026 brand (anteprima 11/09): CTA primario = arancione brand ---- */
/* primary Tailwind e' compilato come blu; override contenuto ai bottoni.    */
/* Il cambio "pulito" (token primary -> arancio) va fatto col rebuild Tailwind.*/
.btn-secondary{border-color:var(--rm-accent) !important;color:#1c1815 !important}
.btn-secondary:hover{border-color:var(--rm-accent-hover) !important}

/* ==================== 2026 DESIGN BATCH (11/09) ==================== */

/* [4] Font di marca — HELVETICA NOW (Display=titoli, Text=corpo). .otf servite dirette (no tool woff2). */
/* [FONT] Helvetica Now Pro — licenza web MyFonts ordine #7326249 (14/09/2026), file in fonts/helvetica_now_pro/.
   Text Regular 400, Text Medium 500, Text Bold 600-900; Display Bold 600-900 per i titoli; i pesi leggeri dei titoli usano il Text. */
/* [R10-PERF] 15/09/2026: Text Medium, Text Bold, Display 500-599 (file Text Medium) e Display Bold in font-display:optional: niente scambio a pagina gia' disegnata (CLS home 0,088 all'arrivo di Display Bold). Text Regular resta swap. File dei font invariati. */
@font-face{font-family:'Helvetica Now Text';font-style:normal;font-weight:100 400;font-display:swap;src:url('../fonts/helvetica_now_pro/HelveticaNowProTextRegular.woff2') format('woff2'),url('../fonts/helvetica_now_pro/HelveticaNowProTextRegular.woff') format('woff')}
@font-face{font-family:'Helvetica Now Text';font-style:normal;font-weight:500 599;font-display:optional;src:url('../fonts/helvetica_now_pro/HelveticaNowProTextMedium.woff2') format('woff2'),url('../fonts/helvetica_now_pro/HelveticaNowProTextMedium.woff') format('woff')}
@font-face{font-family:'Helvetica Now Text';font-style:normal;font-weight:600 900;font-display:optional;src:url('../fonts/helvetica_now_pro/HelveticaNowProTextBold.woff2') format('woff2'),url('../fonts/helvetica_now_pro/HelveticaNowProTextBold.woff') format('woff')}
@font-face{font-family:'Helvetica Now Display';font-style:normal;font-weight:100 400;font-display:swap;src:url('../fonts/helvetica_now_pro/HelveticaNowProTextRegular.woff2') format('woff2')}
@font-face{font-family:'Helvetica Now Display';font-style:normal;font-weight:500 599;font-display:optional;src:url('../fonts/helvetica_now_pro/HelveticaNowProTextMedium.woff2') format('woff2')}
@font-face{font-family:'Helvetica Now Display';font-style:normal;font-weight:600 900;font-display:optional;src:url('../fonts/helvetica_now_pro/HelveticaNowProDisplayBold.woff2') format('woff2'),url('../fonts/helvetica_now_pro/HelveticaNowProDisplayBold.woff') format('woff')}

/* [FONT-FALLBACK] ripiego tarato su Arial con le misure di Helvetica Now: quando il webfont arriva
   i titoli non si ridistribuiscono (CLS). Percentuali calcolate con fontTools su una frase italiana (15/09/2026). */
@font-face{font-family:'HN Text Fallback';font-style:normal;font-weight:100 400;src:local('Arial'),local('ArialMT');size-adjust:107.14%;ascent-override:103.6%;descent-override:33.6%;line-gap-override:0%}
@font-face{font-family:'HN Text Fallback';font-style:normal;font-weight:500 599;src:local('Arial'),local('ArialMT');size-adjust:106.48%;ascent-override:104.24%;descent-override:33.81%;line-gap-override:0%}
@font-face{font-family:'HN Text Fallback';font-style:normal;font-weight:600 900;src:local('Arial Bold'),local('Arial-BoldMT');size-adjust:97.71%;ascent-override:113.61%;descent-override:36.84%;line-gap-override:0%}
@font-face{font-family:'HN Display Fallback';font-style:normal;font-weight:100 599;src:local('Arial'),local('ArialMT');size-adjust:107.14%;ascent-override:103.6%;descent-override:33.6%;line-gap-override:0%}
@font-face{font-family:'HN Display Fallback';font-style:normal;font-weight:600 900;src:local('Arial Bold'),local('Arial-BoldMT');size-adjust:94.09%;ascent-override:117.97%;descent-override:38.26%;line-gap-override:0%}
body,button,input,select,textarea{font-family:'Helvetica Now Text','HN Text Fallback','Helvetica Neue',Helvetica,Arial,sans-serif}
h1,h2,h3,h4,h5,h6,.title-font{font-family:'Helvetica Now Display','HN Display Fallback','Helvetica Neue',Helvetica,Arial,sans-serif}
/* nomi prodotto e titoli sezione: ink neutro, non arancio (arancio solo su prezzo/CTA/accenti) */
.product-item-link,.product-item-name a,.product.name a,.product-item .product-item-name{color:#1c1815 !important}


/* [2] CTA contrasto AA: #c8420c su bianco ~4.7:1 (supera 4.5:1 anche per label piccole) */
.btn-primary{background-color:var(--rm-accent-bg) !important;border-color:var(--rm-accent-bg) !important}
.btn-primary:hover{background-color:var(--rm-accent-bg-hover) !important;border-color:var(--rm-accent-bg-hover) !important}

/* [3] Prezzo dominante SOLO su schede simple (le grouped mostrano un listino per-esemplare) */
body.page-product-simple .product-info-price .price,
body.page-product-simple .price-box.price-final_price .price{font-size:2rem;font-weight:700;line-height:1.1;color:#1c1815}

/* [5] Badge grado condizione (pill) */
.rm-grade-badge{display:inline-block;vertical-align:middle;margin-left:.55rem;padding:.16em .62em;border-radius:9999px;background:var(--rm-ok-soft);color:var(--rm-ok);font-size:.62em;font-weight:600;letter-spacing:.02em;white-space:nowrap;font-family:'Helvetica Now Text','HN Text Fallback',sans-serif}

.rm-grade-line{margin:-2px 0 14px}

/* ================= 2027 DESIGN BATCH (staging, 11/09) ================= */
/* [1] coerenza colore: via il blu residuo -> brand */
.bg-blue-600{background-color:var(--rm-accent-bg) !important}
.bg-blue-50{background-color:var(--rm-accent-soft) !important}
.border-blue-600,.border-blue-500{border-color:var(--rm-accent) !important}
.text-blue-600,.text-blue-500{color:var(--rm-accent) !important}
.ring-blue-600,.ring-blue-500,.focus\:ring-blue-600:focus{--tw-ring-color:var(--rm-accent) !important}
.shadow-outline-blue{box-shadow:0 0 0 3px rgba(200,66,12,.35) !important}
/* [2] restraint: heading di sezione neutri (arancio solo su CTA/prezzo/accenti) */
h1.text-primary,h2.text-primary,h3.text-primary,h4.text-primary,h5.text-primary,.title-1.text-primary,.title-banner.text-primary{color:#1c1815 !important}
/* [4] WCAG 2.2 Target Size >=24px + focus non oscurato dallo sticky header */
.hero-2026 .hero-dot{position:relative}
.hero-2026 .hero-dot::after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:26px;height:26px;border-radius:50%}
a,button,[role=button],input:not([type=hidden]),select,summary,.hero-dot{scroll-margin-top:120px}
/* [5] PDP: prezzo dominante (tutti i tipi) + chip valore */
.product-info-main .price-box .price,.product-info-price .price,.product-info-main .price{font-size:1.9rem !important;font-weight:700 !important;font-variant-numeric:tabular-nums}
.rm-value-chips{display:flex;flex-wrap:wrap;gap:.5rem;margin:.7rem 0 1rem}
.rm-value-chip{display:inline-flex;align-items:center;gap:.3rem;padding:.3em .75em;border-radius:9999px;font-size:.82rem;font-weight:600;background:var(--rm-ok-soft);color:var(--rm-ok)}
.rm-value-chip.warranty{background:var(--rm-accent-soft);color:var(--rm-accent)}
/* [6] card prodotto piu' nude + respiro (griglia invariata) */
.product-item.card,.product-item.card-interactive{border:0 !important;box-shadow:none !important;border-radius:14px !important;transition:box-shadow .2s ease,transform .2s ease}
.product-item.card:hover{box-shadow:0 10px 26px rgba(28,24,21,.10) !important;transform:translateY(-2px)}

/* ================= ONDA ESPRESSIVA 2027 (staging, 11/09) ================= */
/* Batch aggiuntivo: motion hero (Ken Burns nel .phtml) + scroll-reveal + dark mode opt-in + polish premium.
   NB dark mode: attivazione SOLO via toggle (data-theme=dark su <html>), NON via prefers-color-scheme,
   per non ribaltare a scuro ogni visitatore con OS in dark mentre il tema non e' ancora rifinito al 100%. */

/* [A] Token di raggio/hairline unificati (polish premium) */
:root{--rm-radius:10px;--rm-radius-lg:14px;--rm-hairline:#e7e2db}
.btn,.btn-primary,.btn-secondary,.btn-see-all,input:not([type=checkbox]):not([type=radio]),select,textarea,.card,.product-item.card{border-radius:var(--rm-radius)}

/* [B] Focus-visible coerente in colore brand (a11y, non intrusivo col mouse) */
a:focus-visible,button:focus-visible,[role=button]:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible,.hero-dot:focus-visible{outline:2px solid var(--rm-accent);outline-offset:2px}

/* [C] Scroll-driven reveal: comparsa morbida delle sezioni home. VISIBILE A RIPOSO:
   il fade parte solo dove animation-timeline e' supportato; altrove opacity resta 1. */
@supports (animation-timeline:view()){
  @media (prefers-reduced-motion:no-preference){
    .cms-index-index .home__products,
    .cms-index-index .latest_news,
    .cms-index-index .brands_icons,
    .cms-index-index .ct-reviews,
    .cms-index-index .banner__1{
      animation:rmReveal linear both;
      animation-timeline:view();
      animation-range:entry 5% cover 22%;
    }
  }
}
/* [R5] niente opacità 0: le sezioni restano leggibili a riposo (screenshot, scroll veloce, telefoni lenti); resta solo il leggero scivolamento */
@keyframes rmReveal{from{transform:translateY(26px)}to{transform:none}}

/* [D] DARK MODE (opt-in) — token + applicazione alle superfici strutturali Hyva.
   Light mode invariata: nessuna regola qui fuori da :root[data-theme=dark]. */
:root[data-theme=dark]{
  --rm-bg:#141210;--rm-surface:#1d1a17;--rm-surface-2:#26221e;
  --rm-ink:#ece7e1;--rm-ink-soft:#b3aaa0;--rm-line:#332e28;
  color-scheme:dark;
  --rm-hairline:#332e28;
}
:root[data-theme=dark] body{background-color:var(--rm-bg) !important;color:var(--rm-ink)}
/* superfici: header, footer, container Hyva, bianchi e grigi chiari */
:root[data-theme=dark] #header,
:root[data-theme=dark] .bg-container-lighter,
:root[data-theme=dark] .bg-container,
:root[data-theme=dark] footer.page-footer,
:root[data-theme=dark] .bg-white,
:root[data-theme=dark] .product-item.card,
:root[data-theme=dark] .ct-field-contact,
:root[data-theme=dark] #accordion .card,
:root[data-theme=dark] .authentication-popup,
:root[data-theme=dark] .modal-popup .modal-inner-wrap,
:root[data-theme=dark] .minicart-wrapper .block-minicart{background-color:var(--rm-surface) !important;color:var(--rm-ink)}
:root[data-theme=dark] .bg-container-darker,
:root[data-theme=dark] .bg-gray-50,
:root[data-theme=dark] .bg-gray-100,
:root[data-theme=dark] .bg-gray-200{background-color:var(--rm-surface-2) !important}
/* testo */
:root[data-theme=dark] .text-black,
:root[data-theme=dark] .text-gray-900,
:root[data-theme=dark] .text-gray-800,
:root[data-theme=dark] .text-gray-700,
:root[data-theme=dark] .product-item-link,
:root[data-theme=dark] .product-item-name a,
:root[data-theme=dark] .product.name a,
:root[data-theme=dark] .product-item .product-item-name{color:var(--rm-ink) !important}
:root[data-theme=dark] .text-gray-600,
:root[data-theme=dark] .text-gray-500,
:root[data-theme=dark] .text-gray-400{color:var(--rm-ink-soft) !important}
/* bordi/hairline */
:root[data-theme=dark] .border-container-lighter,
:root[data-theme=dark] .border-container-darker,
:root[data-theme=dark] .border-gray-100,
:root[data-theme=dark] .border-gray-200,
:root[data-theme=dark] .border-gray-300,
:root[data-theme=dark] #header{border-color:var(--rm-line) !important}
/* input */
:root[data-theme=dark] input:not([type=checkbox]):not([type=radio]),
:root[data-theme=dark] select,
:root[data-theme=dark] textarea{background-color:var(--rm-surface-2) !important;color:var(--rm-ink) !important;border-color:var(--rm-line) !important}
:root[data-theme=dark] input::placeholder,
:root[data-theme=dark] textarea::placeholder{color:var(--rm-ink-soft)}
/* card hover: ombra piu' scura */
:root[data-theme=dark] .product-item.card:hover{box-shadow:0 10px 26px rgba(0,0,0,.5) !important}
/* le icone header a stroke nero devono virare a chiaro */
:root[data-theme=dark] #header svg[stroke="currentColor"]{color:var(--rm-ink)}
:root[data-theme=dark] #header svg rect[stroke],
:root[data-theme=dark] #header svg path[stroke]{stroke:var(--rm-ink)}
/* il prezzo dominante resta leggibile su scuro */
:root[data-theme=dark] body.page-product-simple .product-info-price .price,
:root[data-theme=dark] .product-info-main .price-box .price,
:root[data-theme=dark] .product-info-price .price,
:root[data-theme=dark] .product-info-main .price{color:var(--rm-ink) !important}

/* [E] Toggle tema nell'header */
#rm-theme-toggle{background:transparent;border:0;cursor:pointer;color:inherit;line-height:0}
#rm-theme-toggle svg{width:24px;height:24px}
@media (max-width:1024px){#rm-theme-toggle svg{width:26px;height:26px}}

/* [F] Dark mode: superfici mancate dal token-map (patch 11/09, gap del rebuild non ancora fatto).
   Blocchi con background hardcoded fuori dai token Tailwind: strip header secondaria,
   pannelli product-custom, bottone "vedi tutti", store switcher. Trustpilot resta iframe bianco. */
:root[data-theme=dark] .page-header{background-color:var(--rm-surface) !important;color:var(--rm-ink)}
:root[data-theme=dark] .page-header a{color:var(--rm-ink)}
:root[data-theme=dark] .product-custom-1,
:root[data-theme=dark] .product-custom-2{background-color:var(--rm-surface) !important}
:root[data-theme=dark] .btn-see-all{background-color:var(--rm-surface-2) !important;color:var(--rm-ink) !important;border-color:var(--rm-line) !important}
:root[data-theme=dark] .switcher select,
:root[data-theme=dark] .switcher-language select,
:root[data-theme=dark] .page-header select{background-color:var(--rm-surface-2) !important;color:var(--rm-ink) !important;border-color:var(--rm-line) !important}
/* Trustpilot e' un iframe di terzi (sempre bianco): incornicialo come card intenzionale, non box rotto */
/* [F5] rimossa: in dark il widget (gia' data-theme=dark su barra scura) diventava un box bianco vuoto */
/* [F2] testo hardcoded #1e1e1e che resta scuro-su-scuro (promo custom + prezzi card) */
:root[data-theme=dark] .title-custom,
:root[data-theme=dark] .price-custom,
:root[data-theme=dark] .price{color:var(--rm-ink) !important}
/* [F3] sezioni con bg chiaro hardcoded + testi scuri (news, testimonianze) */
:root[data-theme=dark] .latest_news,
:root[data-theme=dark] .ct-text,
:root[data-theme=dark] blockquote{background-color:var(--rm-surface) !important;color:var(--rm-ink)}
:root[data-theme=dark] .latest_news h1,:root[data-theme=dark] .latest_news h2,:root[data-theme=dark] .latest_news h3,:root[data-theme=dark] .latest_news h4,:root[data-theme=dark] .latest_news a,:root[data-theme=dark] .title-1,:root[data-theme=dark] blockquote *{color:var(--rm-ink) !important}

/* [F4] Dark mode: offender PLP/PDP + residui home (patch 11/09) */
/* Heading custom del tema con #1e1e1e hardcoded */
:root[data-theme=dark] .title-1,
:root[data-theme=dark] .title-2,
:root[data-theme=dark] .title-3,
:root[data-theme=dark] .title-4{color:var(--rm-ink) !important}
/* Etichetta categoria nelle card promo home */
:root[data-theme=dark] .product-custom-1 .text,
:root[data-theme=dark] .product-custom-2 .text{color:var(--rm-ink) !important}
/* Breadcrumb scuro-su-scuro */
:root[data-theme=dark] .breadcrumbs,
:root[data-theme=dark] .breadcrumbs a,
:root[data-theme=dark] .breadcrumbs li,
:root[data-theme=dark] .breadcrumbs .item{color:var(--rm-ink) !important}
/* PDP: box "ordina entro", altre info, card interne, bottone permuta */
:root[data-theme=dark] .pdp_ordina_entro,
:root[data-theme=dark] .ct-prod-other-info,
:root[data-theme=dark] .ct-prod-other-info .card,
:root[data-theme=dark] .card.w-full{background-color:var(--rm-surface) !important;color:var(--rm-ink)}
:root[data-theme=dark] .btn-permuta{background-color:var(--rm-surface-2) !important;color:var(--rm-ink) !important;border-color:var(--rm-line) !important}
/* [F5] PDP: descrizione/prose + box ordina-entro (testo scuro hardcoded) */
:root[data-theme=dark] .prose,
:root[data-theme=dark] .prose *,
:root[data-theme=dark] .ritira-entro,
:root[data-theme=dark] .ritira-entro *{color:var(--rm-ink) !important}
/* [F6] dark: residui testo #1e1e1e nel PDP info column + framing reCAPTCHA (12/09) */
:root[data-theme=dark] .pdp_ordina_entro,
:root[data-theme=dark] .pdp_ordina_entro *,
:root[data-theme=dark] #more_information,
:root[data-theme=dark] #more_information th,
:root[data-theme=dark] #more_information td,
:root[data-theme=dark] .ct-links,
:root[data-theme=dark] .ct-links *,
:root[data-theme=dark] .ct-info .text-right,
:root[data-theme=dark] .ct-info .text-right *,
:root[data-theme=dark] .pdp_permuta a{color:var(--rm-ink) !important}
:root[data-theme=dark] .g-recaptcha{border-radius:10px;box-shadow:0 0 0 1px var(--rm-line)}
/* [CRO 12/09] Blocco "Questo esemplare": prova concreta della condizione sotto il prezzo (dati gia' nel catalogo) */
.rm-esemplare{margin:1rem 0 1.25rem;border:1px solid #e7e3dd;border-radius:14px;background:#faf8f5;padding:.85rem 1rem}
.rm-esemplare-head{font-family:'Helvetica Now Display','HN Display Fallback','Helvetica Neue',Helvetica,Arial,sans-serif;font-weight:600;font-size:.95rem;color:#1c1815;letter-spacing:-.01em;margin-bottom:.55rem}
.rm-esemplare-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.35rem}
.rm-esemplare-list li{display:flex;justify-content:space-between;gap:1rem;font-size:.9rem;line-height:1.3;border-bottom:1px solid #efeae3;padding-bottom:.35rem}
.rm-esemplare-list li:last-child{border-bottom:0;padding-bottom:0}
.rm-esemplare-list li span{color:#6b6259}
.rm-esemplare-list li strong{color:#1c1815;font-weight:600;text-align:right}
.rm-esemplare-foot{margin-top:.6rem;font-size:.82rem;color:var(--rm-ok);font-weight:600}
:root[data-theme=dark] .rm-esemplare{background:var(--rm-surface-2) !important;border-color:var(--rm-line) !important}
:root[data-theme=dark] .rm-esemplare-head,:root[data-theme=dark] .rm-esemplare-list li strong{color:var(--rm-ink) !important}
:root[data-theme=dark] .rm-esemplare-list li span{color:var(--rm-ink-soft) !important}
:root[data-theme=dark] .rm-esemplare-list li{border-color:var(--rm-line) !important}
/* Reflexmania: scarsita' onesta (solo 1-3 esemplari) */
.rm-scarcity{display:flex;align-items:center;gap:.5rem;margin:.7rem 0 0;font-size:.9rem;font-weight:600;color:var(--rm-accent);font-family:'Helvetica Now Text','HN Text Fallback','Helvetica Neue',Helvetica,Arial,sans-serif;letter-spacing:-.01em}
.rm-scarcity-unique{color:var(--rm-accent)}
.rm-scarcity-dot{width:.5rem;height:.5rem;border-radius:9999px;background:var(--rm-accent-bg);box-shadow:0 0 0 0 rgba(200,66,12,.55);animation:rmPulse 2s infinite}
@keyframes rmPulse{0%{box-shadow:0 0 0 0 rgba(200,66,12,.5)}70%{box-shadow:0 0 0 .5rem rgba(200,66,12,0)}100%{box-shadow:0 0 0 0 rgba(200,66,12,0)}}
@media (prefers-reduced-motion:reduce){.rm-scarcity-dot{animation:none}}
:root[data-theme=dark] .rm-scarcity,:root[data-theme=dark] .rm-scarcity-unique{color:var(--rm-accent)}
/* Reflexmania: sticky buy-bar mobile (solo <768px, compare quando la CTA vera esce dal viewport) */
.rm-sticky-buy{display:none}
@media screen and (max-width: 767px){
.rm-sticky-buy{display:flex;align-items:center;gap:.7rem;position:fixed;left:0;right:0;bottom:0;z-index:900;padding:.65rem .9rem;padding-bottom:calc(.65rem + env(safe-area-inset-bottom,0px));background:rgba(255,255,255,.96);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-top:1px solid #e6e1dc;box-shadow:0 -6px 24px rgba(28,24,21,.10);transform:translateY(110%);transition:transform .28s cubic-bezier(.2,.8,.2,1);font-family:'Helvetica Now Text','HN Text Fallback','Helvetica Neue',Helvetica,Arial,sans-serif}
.rm-sticky-buy.rm-on{transform:translateY(0)}
.rm-sticky-img{width:44px;height:44px;border-radius:10px;object-fit:cover;flex:0 0 44px;background:#f3f0ec}
.rm-sticky-info{display:flex;flex-direction:column;min-width:0;flex:1 1 auto;line-height:1.2}
.rm-sticky-name{font-size:.78rem;color:#5a534d;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rm-sticky-price{font-size:1.02rem;font-weight:700;color:#1c1815;letter-spacing:-.01em;font-variant-numeric:tabular-nums}
.rm-sticky-btn{flex:0 0 auto;background:var(--rm-accent-bg);color:#fff;border:0;border-radius:10px;padding:.8rem 1.05rem;font-size:.92rem;font-weight:700;letter-spacing:-.01em;white-space:nowrap;box-shadow:0 4px 14px rgba(200,66,12,.28)}
.rm-sticky-btn:active{background:var(--rm-accent-bg-hover);transform:translateY(1px)}
body.rm-has-sticky{padding-bottom:0}
}
@media (prefers-reduced-motion:reduce){.rm-sticky-buy{transition:none}}
:root[data-theme=dark] .rm-sticky-buy{background:rgba(24,22,20,.94);border-top-color:var(--rm-line)}
:root[data-theme=dark] .rm-sticky-name{color:var(--rm-ink-soft)}
:root[data-theme=dark] .rm-sticky-price{color:var(--rm-ink)}
:root[data-theme=dark] .rm-sticky-img{background:var(--rm-surface-2)}
/* Reflexmania: promessa above-fold (spedizione/cutoff, garanzia, reso) */
.rm-promise{list-style:none;margin:1rem 0 0;padding:.85rem 1rem;border:1px solid #e6e1dc;border-radius:14px;background:#faf8f5;display:flex;flex-direction:column;gap:.6rem;font-family:'Helvetica Now Text','HN Text Fallback','Helvetica Neue',Helvetica,Arial,sans-serif;font-size:.88rem;line-height:1.35;color:#5a534d}
.rm-promise li{display:flex;align-items:flex-start;gap:.6rem;margin:0}
.rm-promise svg{flex:0 0 18px;margin-top:.1em;color:var(--rm-accent)}
.rm-promise strong{color:#1c1815;font-weight:600}
.rm-promise a{color:var(--rm-accent);text-decoration:underline;text-underline-offset:2px}
.rm-promise a:hover{color:var(--rm-accent-hover)}
.rm-promise-cutoff{display:inline-block;margin-top:.15rem;font-weight:600;color:#1c1815}
:root[data-theme=dark] .rm-promise{background:var(--rm-surface);border-color:var(--rm-line);color:var(--rm-ink-soft)}
:root[data-theme=dark] .rm-promise strong,:root[data-theme=dark] .rm-promise-cutoff{color:var(--rm-ink)}
:root[data-theme=dark] .rm-promise svg,:root[data-theme=dark] .rm-promise a{color:var(--rm-accent)}
/* ============================================================================
   [F4] Brand system (12-13/09/2026): token tipografici + motion, arancio solo accento,
   card PLP thumb-first, hero mobile. Solo vetrina Hyva (la cassa ha il suo CSS).
   ============================================================================ */
:root{
  --rm-fs-xs:.75rem;--rm-fs-sm:.875rem;--rm-fs-base:1rem;--rm-fs-md:1.125rem;--rm-fs-lg:1.375rem;
  --rm-fs-xl:clamp(1.55rem,1.2rem + 1.5vw,2.15rem);--rm-fs-2xl:clamp(1.9rem,1.35rem + 2.5vw,2.9rem);--rm-fs-3xl:clamp(2.4rem,1.6rem + 4vw,4rem);
  --rm-ease:cubic-bezier(.2,.8,.2,1);--rm-d1:.15s;--rm-d2:.25s;--rm-d3:.4s;
  --rm-accent:#c8420c;--rm-accent-hover:#a8350a;--rm-accent-soft:#fff1ea;--rm-accent-bg:#c8420c;--rm-accent-bg-hover:#a8350a;--rm-ok:#2e7d52;--rm-ok-soft:#e3f1e8;
  --rm-card-ink:#1c1815;--rm-card-ink-soft:#5a534d;--rm-card-line:#ece7e1;--rm-card-bg:#fff;--rm-card-photo:#f7f4f0;
}
:root[data-theme=dark]{--rm-ok:#7fd39e;--rm-ok-soft:rgba(46,125,82,.22);--rm-accent:#ff7a45;--rm-accent-hover:#ff9a70;--rm-accent-bg:#c8420c;--rm-accent-bg-hover:#e0561f;--rm-accent-soft:rgba(255,122,69,.14);--rm-card-ink:var(--rm-ink);--rm-card-ink-soft:var(--rm-ink-soft);--rm-card-line:var(--rm-line);--rm-card-bg:var(--rm-surface);--rm-card-photo:var(--rm-surface-2)}

/* --- scala tipografica: titoli di pagina, titoli sezione, nomi e prezzi --------------------- */
.page-title,.plp__hero h1,.cms-page-view .page-title,.customer-account-create .page-title,.customer-account-login .title-font,.cart-form .title-font{font-size:var(--rm-fs-2xl);line-height:1.05;letter-spacing:-.02em;font-weight:700}
.product-info-main .title-1,.title-1{font-size:var(--rm-fs-xl);line-height:1.1;letter-spacing:-.015em}
.home__slider_review .content-heading h2,.product-custom-1 .title-custom,.banner__1 .title-banner,.banner__1.banner__1_1 .title-banner,.ct-prod-other-info .ct-title h2,.ct-title h2,.title-3,h2.title-3,.latest_news .content-heading h2,.home__products .content-heading h2{font-size:var(--rm-fs-xl);line-height:1.1;letter-spacing:-.015em;font-weight:700;text-wrap:balance}
.product-item .product-item-link,.home__products .product-item-link{font-size:var(--rm-fs-base);font-weight:600;line-height:1.3;color:var(--rm-card-ink)}
.product-item .price-container .price,.home__products .price-container .price{font-size:var(--rm-fs-lg);font-weight:700;color:var(--rm-card-ink);letter-spacing:-.01em;font-variant-numeric:tabular-nums}
.home__products .price-label{font-size:var(--rm-fs-xs);letter-spacing:.06em;text-transform:uppercase;color:var(--rm-card-ink-soft)}
.product-info-main .price-wrapper .price{font-size:var(--rm-fs-2xl);letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.btn,.btn-primary,.link-orange{font-weight:600;letter-spacing:-.005em}

/* --- arancio: un solo tono, solo come accento ------------------------------------------------ */
.btn-primary,.link-orange,.product-info-main #product-addtocart-button,#cart-drawer .btn-primary,#menu-cart-icon .text-white,.customer-account-login .actions-toolbar .btn-primary,.block-new-customer .btn-primary,.customer-account-create .form-create-account .actions-toolbar button.primary,.customer-account-edit .actions-toolbar .primary button,.newsletter-manage-index .actions-toolbar .primary button,.checkout-onepage-success #maincontent .btn-primary{background:var(--rm-accent-bg)!important;border-color:var(--rm-accent-bg)!important;color:#fff!important}
.btn-primary:hover,.link-orange:hover,.link-orange:focus,.link-orange:active,.product-info-main #product-addtocart-button:hover,#cart-drawer .btn-primary:hover{background:var(--rm-accent-bg-hover)!important;border-color:var(--rm-accent-bg-hover)!important}
.link-orange-text,.link-orange-text:hover,.nav-main .item-nav-main a.underline{color:var(--rm-accent)}
.nav-main .item-nav-main a.underline:after{background-color:var(--rm-accent)}
[type=checkbox]:checked{background-color:var(--rm-accent)!important;border-color:var(--rm-accent)!important}
/* dove l'arancio era decorazione, non accento: torna neutro */
.product-item .text-primary,.home__products .text-primary{color:var(--rm-card-ink)}
.product-item .info-state.used,.home__products .info-state.used{display:none}
.product-info-main .pdp_permuta p,.product-info-main .pdp_ordina_entro p{color:var(--rm-card-ink-soft)}
.ticket-listticket-index .table thead{background:var(--rm-card-photo);color:var(--rm-card-ink)}
.customer-account-index .sidebar-main .item.current,.customer-account-edit .sidebar-main .item.current,.customer-account-index .sidebar-main .item:hover,.customer-account-edit .sidebar-main .item:hover{background:var(--rm-accent-soft)!important;color:var(--rm-accent)!important}
.customer-account-index .sidebar-main .item.current a,.customer-account-edit .sidebar-main .item.current a{color:var(--rm-accent)!important}

/* --- motion system ---------------------------------------------------------------------------- */
.btn,.btn-primary,.link-orange,.card-interactive,.product-item,.rm-sticky-btn,.hero-2026 .btn-primary{transition:transform var(--rm-d2) var(--rm-ease),box-shadow var(--rm-d2) var(--rm-ease),background-color var(--rm-d1) linear,color var(--rm-d1) linear,border-color var(--rm-d1) linear}
.btn:active,.btn-primary:active,.link-orange:active,.rm-sticky-btn:active{transform:translateY(1px) scale(.985)}
a{transition:color var(--rm-d1) linear}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important}}

/* --- PLP: thumb-first --------------------------------------------------------------------------- */
.products-grid .product-item.card,.products-grid .product-item{padding:0 0 14px;border:1px solid var(--rm-card-line);border-radius:14px;background:var(--rm-card-bg);overflow:hidden;box-shadow:0 1px 2px rgba(28,24,21,.04)}
.products-grid .product-item:hover{transform:translateY(-3px);box-shadow:0 12px 28px rgba(28,24,21,.12);border-color:#e0d9d1}
.products-grid .product-item .product-item-photo{position:relative;width:100%;aspect-ratio:4/3;margin:0 0 10px;background:var(--rm-card-photo);display:flex;align-items:center;justify-content:center;overflow:hidden}
.products-grid .product-item .product-item-photo img:not(.icon-garanzia){width:100%;height:100%;object-fit:contain;padding:10px;transition:transform var(--rm-d3) var(--rm-ease)}
.products-grid .product-item:hover .product-item-photo img:not(.icon-garanzia){transform:scale(1.04)}
.products-grid .product-item .icon-garanzia{position:absolute;top:10px;left:10px;width:54px;height:auto;z-index:2;filter:drop-shadow(0 1px 2px rgba(0,0,0,.15))}
.products-grid .product-item .product-info{padding:0 14px}
.products-grid .product-item .product-item-link{display:block;text-align:left;color:var(--rm-card-ink)}
.products-grid .product-item .product-info>div:first-child{text-align:left;margin:0}
.rm-card-meta{display:flex;flex-wrap:wrap;gap:.35rem;margin:.45rem 0 .2rem;font-family:'Helvetica Now Text','HN Text Fallback','Helvetica Neue',Helvetica,Arial,sans-serif}
.rm-card-grade{display:inline-block;padding:.12em .6em;border-radius:9999px;background:var(--rm-ok-soft);color:var(--rm-ok);font-size:var(--rm-fs-xs);font-weight:600;letter-spacing:.01em;white-space:nowrap}
.rm-card-shots{display:inline-block;padding:.12em .6em;border-radius:9999px;background:var(--rm-card-photo);color:var(--rm-card-ink-soft);font-size:var(--rm-fs-xs);font-weight:600;white-space:nowrap;font-variant-numeric:tabular-nums}
.products-grid .product-item .price-box,.products-grid .product-item .price-container{text-align:left;justify-content:flex-start}
.products-grid .product-item .pt-1.text-gray-900{padding-top:.25rem;text-align:left}
.products-grid .product-item .mt-auto.pt-3{justify-content:flex-start;gap:.5rem}
.products-grid .product-item .btn.btn-primary{width:100%;justify-content:center;border-radius:10px;padding:.7rem 1rem;font-size:var(--rm-fs-sm)}
.products-grid .product-item .btn.btn-primary span{display:inline!important;margin-left:.5rem!important}
.rm-card-cta{display:flex;width:100%;align-items:center;justify-content:center;gap:.4rem;padding:.7rem 1rem;border-radius:10px;border:1.5px solid var(--rm-accent);color:var(--rm-accent);font-size:var(--rm-fs-sm);font-weight:600;background:transparent;transition:background-color var(--rm-d1) linear,color var(--rm-d1) linear}
.products-grid .product-item:hover .rm-card-cta{background:var(--rm-accent-bg);color:#fff}
:root[data-theme=dark] .rm-card-grade{background:rgba(46,125,82,.22);color:var(--rm-ok)}

/* --- hero + header mobile ------------------------------------------------------------------------ */
a.action.skip.sr-only{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important}
@media (max-width:639px){
  /* html{overflow-x:clip} rimosso: in Chrome restringe la page-wrapper di 15px (larghezza scrollbar) */
  .hero-2026{margin-left:0!important;margin-right:0!important}
  /* l'hero prima della trust-bar: sopra la piega il messaggio, non i numeri */
  .cms-index-index .column.main{display:flex;flex-direction:column}
  .cms-index-index .column.main>.hero-2026{order:-2}
  .cms-index-index .column.main>div:has(.trustpilot-widget){order:-1}
  /* il menu secondario (Spedizioni/Faq/Contatti/...) occupava 126px sopra la piega: e' nel footer e nel menu */
  .pre-header-due-container .col-header-due>section{display:none}
  .pre-header-due-container{min-height:0}
  .hero-2026 h1{font-size:clamp(2.1rem,10vw,2.6rem)}
  .hero-2026 .hero-sub{font-size:var(--rm-fs-base)}
}
/* [F4b] .column.main in flex-column diventa flex-item della riga .columns e si restringe: larghezza piena */
@media (max-width:639px){.cms-index-index .column.main{width:100%;flex:1 1 100%;min-width:0}.cms-index-index .column.main>*{width:100%}}
/* [F4c] sforo orizzontale su mobile/tablet (Foundation .row a -1.5rem, carousel, flex del PDP): clip sulla page-wrapper.
   `clip` non crea uno scroll container (niente scrollbar interna, sticky intatti) e non restringe la pagina come farebbe su html. */
@supports (overflow:clip){@media (max-width:1023px){.page-wrapper{overflow-x:clip}}}
/* ============================================================================
   [F5] Feedback da telefono (13/09): toggle tema, logo dark, trust-bar, card, toolbar, dark fixes, figli grouped
   ============================================================================ */
/* toggle tema: pillola discreta accanto al menu */
.rm-theme-toggle{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:9999px;border:1px solid var(--rm-card-line);background:transparent;color:var(--rm-card-ink-soft);cursor:pointer;transition:background-color var(--rm-d1) linear,color var(--rm-d1) linear,border-color var(--rm-d1) linear}
.rm-theme-toggle:hover{color:var(--rm-card-ink);border-color:#cfc7bd}
.rm-theme-toggle:focus-visible{outline:2px solid var(--rm-accent);outline-offset:2px}
:root[data-theme=dark] .rm-theme-toggle{border-color:var(--rm-line);color:var(--rm-ink-soft)}
:root[data-theme=dark] .rm-theme-toggle:hover{color:var(--rm-ink)}
/* logo: in dark il wordmark nero sparisce -> variante con wordmark bianco (stesso otturatore a colori) */
:root[data-theme=dark] #header .logo img,:root[data-theme=dark] a.logo img,:root[data-theme=dark] .ct-logo-main img{content:url("../images/logo_reflexmania_dark.png")}
/* icone header in dark: anche i cerchi (icona profilo) */
:root[data-theme=dark] #header svg circle[stroke],:root[data-theme=dark] #header svg line[stroke],:root[data-theme=dark] #header svg polyline[stroke]{stroke:var(--rm-ink)}
/* categorie home in dark: le etichette erano nere su nero */
:root[data-theme=dark] .home__categories_link .text{color:var(--rm-ink)}
:root[data-theme=dark] .home__categories_link .ct-img{border-color:var(--rm-line)}
/* trust-bar: la cella Trustpilot occupa la riga intera su mobile (era incollata a sinistra) */
@media (max-width:639px){.column.main>div:has(.trustpilot-widget)>div>div:last-child{grid-column:1/-1;text-align:center}}
/* card PLP: min-height del nome pensata per la griglia desktop, inutile a una colonna */
@media (max-width:639px){.products-grid .product-item .product-item-link{min-height:0!important;margin-bottom:.35rem!important}}
.products-grid .product-item .product-item-link{margin-bottom:.4rem}
/* toolbar PLP/ricerca: filtro e ordinamento allineati e con lo stesso ritmo (erano due box con larghezze e offset diversi) */
@media (max-width:767px){
  .plp__main .block.border,.catalogsearch-result-index .block.border,.catalog-category-view .block.border{margin:0 0 12px;border-radius:14px;border-color:var(--rm-card-line)}
  .toolbar.toolbar-products{margin:0 0 16px;padding:12px 14px;border:1px solid var(--rm-card-line);border-radius:14px;background:var(--rm-card-bg);display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between}
  .toolbar.toolbar-products .toolbar-amount{margin:0;font-size:var(--rm-fs-sm);color:var(--rm-card-ink-soft)}
  .toolbar.toolbar-products select{margin:0;font-size:var(--rm-fs-sm)}
}
/* PDP padre grouped: "Acquista ora" e' l'azione primaria (scorre alla lista esemplari) */
.inner-add-to-cart a.btn-permuta[href="#grouped-list"]{background:var(--rm-accent-bg)!important;color:#fff!important;border-color:var(--rm-accent-bg)!important}
/* figli nel padre: azioni in basso, non in alto a destra; "Aggiungi al carrello" + "Vedi dettagli" */
.product-list-group{flex-wrap:wrap}
.product-list-group .product-details.rm-child-actions{position:static;width:100%;margin-top:16px;display:flex;flex-wrap:wrap;gap:10px 18px;align-items:center}
.product-list-group .rm-child-add{margin:0}
.product-list-group .rm-child-btn{border-radius:10px;padding:.7rem 1.2rem;font-size:var(--rm-fs-sm);font-weight:600}
.product-list-group .rm-child-details{font-size:var(--rm-fs-sm);font-weight:600;color:var(--rm-card-ink);text-decoration:underline;text-underline-offset:3px}
.product-list-group .rm-child-details:hover{color:var(--rm-accent)}
@media (max-width:639px){.product-list-group .rm-child-add,.product-list-group .rm-child-btn{width:100%}}
/* [F5b] logo dark: il markup Hyva e' <a class="flex items-center justify-center"><img src=.../logo_reflexmania.png>: aggancio sul src */
:root[data-theme=dark] #header img[src*="logo_reflexmania.png"]{content:url("../images/logo_reflexmania_dark.png")}
/* [F5b] toolbar allineata al box filtri: la sua .row ha -10px di margine in piu' rispetto alla sidebar */
@media (max-width:767px){.toolbar.toolbar-products{margin-left:-10px;margin-right:-10px}}
/* [F5c] feedback telefono, secondo giro */
/* toggle tema allineato all'hamburger (48px) e al logo */
.rm-theme-wrap{align-self:center;height:48px}
@media (max-width:1023px){.rm-theme-wrap{margin-right:6px}}
/* Trustpilot: il widget iframe su iPhone rende un box bianco (e in dark sempre): stelle statiche, che ci sono gia' sotto */
@media (max-width:639px){.trustpilot-widget{display:none!important}}
:root[data-theme=dark] .trustpilot-widget{display:none!important}
/* banner home/PDP: altezze fisse da desktop (640/360px) -> su mobile card compatta con foto e testo in basso */
@media (max-width:639px){
  .banner__1,.banner__1.banner__1_1{height:auto;min-height:0;margin-top:28px;margin-bottom:20px}
  .banner__1 .row,.banner__1 .columns{height:auto}
  .banner__1 .ct-image,.banner__1.banner__1_1 .ct-image{height:auto;min-height:280px;display:flex;align-items:flex-end;border-radius:14px;overflow:hidden;background-size:cover;background-position:center}
  .banner__1 .ct-text,.banner__1.banner__1_1 .ct-text{height:auto;width:100%;padding:22px 20px 20px;background:linear-gradient(180deg,rgba(15,12,10,0) 0%,rgba(15,12,10,.78) 65%)}
  .banner__1 .info-state{margin-bottom:12px}
  .banner__1 .title-banner,.banner__1.banner__1_1 .title-banner{font-size:var(--rm-fs-lg);line-height:1.15;margin-bottom:14px}
}
/* [F5d] toggle: l'hamburger e' ancorato in alto nella sua riga (y+7px, 48px): stesso ancoraggio */
@media (max-width:1023px){.rm-theme-wrap{align-self:flex-start;margin-top:7px;height:48px}}
/* [F6] pagina "grazie" (checkout/onepage/success) */
.rm-thanks{max-width:760px;margin:0 auto;padding:8px 0 40px;font-family:'Helvetica Now Text','HN Text Fallback','Helvetica Neue',Helvetica,Arial,sans-serif;color:var(--rm-card-ink)}
.rm-thanks-hero{text-align:center;padding:28px 0 22px}
.rm-thanks-check{width:64px;height:64px;margin:0 auto 14px;border-radius:9999px;background:var(--rm-ok-soft);color:var(--rm-ok);font-size:32px;font-weight:700;display:flex;align-items:center;justify-content:center}
.rm-thanks-title{font-family:'Helvetica Now Display','HN Display Fallback','Helvetica Neue',Helvetica,Arial,sans-serif;font-size:var(--rm-fs-2xl);line-height:1.05;letter-spacing:-.02em;font-weight:700;margin:0 0 10px}
.rm-thanks-sub{font-size:var(--rm-fs-md);color:var(--rm-card-ink-soft);margin:0}
.rm-thanks-box{border:1px solid var(--rm-card-line);border-radius:14px;background:var(--rm-card-bg);padding:20px 22px;margin:14px 0}
.rm-thanks-box h2{font-family:'Helvetica Now Display','HN Display Fallback','Helvetica Neue',Helvetica,Arial,sans-serif;font-size:var(--rm-fs-lg);line-height:1.15;letter-spacing:-.01em;font-weight:700;margin:0 0 8px}
.rm-thanks-muted{color:var(--rm-card-ink-soft);font-size:var(--rm-fs-sm);line-height:1.45;margin:0}
.rm-thanks-bank{border-color:rgba(200,66,12,.25);background:var(--rm-accent-soft)}
:root[data-theme=dark] .rm-thanks-bank{background:rgba(200,66,12,.08);border-color:rgba(255,122,69,.35)}
.rm-thanks-instr{white-space:pre-wrap;font:inherit;font-size:var(--rm-fs-sm);line-height:1.5;background:var(--rm-card-photo);border-radius:10px;padding:12px 14px;margin:12px 0 0}
.rm-thanks-dl{display:grid;gap:6px 18px;margin:12px 0 0;padding:0}
.rm-thanks-dl div{display:flex;justify-content:space-between;gap:12px;font-size:var(--rm-fs-sm)}
.rm-thanks-dl dt{color:var(--rm-card-ink-soft);margin:0}.rm-thanks-dl dd{margin:0;text-align:right}
.rm-thanks-steps{list-style:none;margin:12px 0 0;padding:0;display:flex;flex-direction:column;gap:14px}
.rm-thanks-steps li{display:flex;gap:12px;align-items:flex-start;font-size:var(--rm-fs-sm);line-height:1.4}
.rm-thanks-n{flex:0 0 28px;width:28px;height:28px;border-radius:9999px;background:var(--rm-accent-bg);color:#fff;font-weight:700;display:flex;align-items:center;justify-content:center;font-size:.85rem}
.rm-thanks-items{list-style:none;margin:10px 0 0;padding:0}
.rm-thanks-items li{display:flex;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid var(--rm-card-line);font-size:var(--rm-fs-sm)}
.rm-thanks-items img,.rm-thanks-noimg{width:56px;height:56px;border-radius:10px;object-fit:cover;background:var(--rm-card-photo);flex:0 0 56px}
.rm-thanks-item-name{flex:1 1 auto;font-weight:600}.rm-thanks-item-name small{color:var(--rm-card-ink-soft);font-weight:400}
.rm-thanks-item-price{font-variant-numeric:tabular-nums;font-weight:600;white-space:nowrap}
.rm-thanks-totals{margin-top:14px;padding-top:6px}
.rm-thanks-warranty,.rm-thanks-permuta{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap}
.rm-thanks-warranty{background:#f3faf5;border-color:#cfe8d7}
:root[data-theme=dark] .rm-thanks-warranty{background:rgba(46,125,82,.12);border-color:rgba(46,125,82,.4)}
.rm-thanks-cta{white-space:nowrap;border-radius:10px;padding:.75rem 1.2rem}
.rm-thanks-link{font-weight:600;color:var(--rm-accent);text-decoration:underline;text-underline-offset:3px;white-space:nowrap}
.rm-thanks-cross{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:14px}
@media (min-width:640px){.rm-thanks-cross{grid-template-columns:repeat(4,1fr)}}
.rm-thanks-card{display:flex;flex-direction:column;gap:6px;border:1px solid var(--rm-card-line);border-radius:14px;padding:10px;text-decoration:none;color:var(--rm-card-ink);transition:transform var(--rm-d2) var(--rm-ease),box-shadow var(--rm-d2) var(--rm-ease)}
.rm-thanks-card:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(28,24,21,.12)}
.rm-thanks-card img{width:100%;aspect-ratio:1;object-fit:contain;border-radius:10px;background:var(--rm-card-photo)}
.rm-thanks-card-name{font-size:var(--rm-fs-xs);font-weight:600;line-height:1.3}
.rm-thanks-card-price{font-size:var(--rm-fs-sm);font-weight:700;font-variant-numeric:tabular-nums}
.rm-thanks-continue{text-align:center;margin-top:18px}
/* il tema mette un h1 gigante e centrato sulla success: lo neutralizzo (titolo nostro nella card) */
.checkout-onepage-success #maincontent > .page-title-wrapper,.checkout-onepage-success .page-title-wrapper{display:none}
/* [F6b] success: via l'h1 del tema ("Thank you for your purchase!" a 4.8rem) e il mio titolo torna alla scala */
.checkout-onepage-success #maincontent h1.page-title{display:none}
.checkout-onepage-success #maincontent .rm-thanks-title{font-size:var(--rm-fs-2xl)!important;text-align:center}
.checkout-onepage-success #maincontent .rm-thanks-box h2{font-size:var(--rm-fs-lg)!important}

/* ============================================================================
   [F7] Fase A (13/09 pomeriggio): dark per componenti (misurato con scanner di contrasto),
   accento pieno #c8420c anche in dark (bianco su #ff7a45 = 2,6:1), footer che sforava,
   input a 16px e bersagli da 44px su telefono.
   ============================================================================ */
/* -- dark: figli nel padre (nome/attributi a #1e1e1e), descrizioni categoria, carrello, filtri, form, tabelle -- */
:root[data-theme=dark] .product-list-group{background:var(--rm-surface);border-color:var(--rm-line)}
:root[data-theme=dark] .product-list-group .description,:root[data-theme=dark] .product-list-group .description p,:root[data-theme=dark] .product-list-group .description span,:root[data-theme=dark] .product-list-group .description strong,:root[data-theme=dark] .product-list-group .description a,:root[data-theme=dark] .product-list-group .product-item-name,:root[data-theme=dark] .product-list-group .info_wrapper p,:root[data-theme=dark] .product-list-group .info_wrapper strong,:root[data-theme=dark] .product-list-group .product-price .price{color:var(--rm-ink)!important}
:root[data-theme=dark] .product-list-group .rm-child-btn{color:#fff!important}
:root[data-theme=dark] .product-list-group .disponibile-label{background:transparent!important}
:root[data-theme=dark] .text-2,:root[data-theme=dark] .text-2 b,:root[data-theme=dark] .text-2 i,:root[data-theme=dark] .ct-info p.text-2,:root[data-theme=dark] .plp__main p.text-2{color:var(--rm-ink-soft)!important}
:root[data-theme=dark] .cart-empty,:root[data-theme=dark] .cart-empty p,:root[data-theme=dark] .cart-empty a,:root[data-theme=dark] .cart-summary,:root[data-theme=dark] .cart-summary *,:root[data-theme=dark] .cart-form .cart.item,:root[data-theme=dark] .cart-form .cart.item *,:root[data-theme=dark] .cart-form label,:root[data-theme=dark] .cart-form .title-font,:root[data-theme=dark] .cart-form th,:root[data-theme=dark] .cart-form td{color:var(--rm-ink)!important}
:root[data-theme=dark] .cart-summary,:root[data-theme=dark] .cart-form .cart.item{background:var(--rm-surface)!important;border-color:var(--rm-line)!important}
:root[data-theme=dark] .cart-summary .btn-primary,:root[data-theme=dark] .cart-form .btn-primary{color:#fff!important}
:root[data-theme=dark] .filter-options a,:root[data-theme=dark] .filter-options a span,:root[data-theme=dark] .filter-options dd,:root[data-theme=dark] .filter-options dt,:root[data-theme=dark] .filter-options-title,:root[data-theme=dark] .filter-options-content,:root[data-theme=dark] .sidebar-main a,:root[data-theme=dark] .sidebar-main label,:root[data-theme=dark] .sidebar-main .count{color:var(--rm-ink)!important}
:root[data-theme=dark] .text-secondary-darker,:root[data-theme=dark] .text-secondary,:root[data-theme=dark] .text-secondary-lighter,:root[data-theme=dark] label.label span,:root[data-theme=dark] .field label,:root[data-theme=dark] .fieldset legend,:root[data-theme=dark] .fieldset legend h2,:root[data-theme=dark] .fieldset h2,:root[data-theme=dark] .block-title,:root[data-theme=dark] .block-content,:root[data-theme=dark] .form-login h2,:root[data-theme=dark] .form-create-account h2{color:var(--rm-ink)!important}
:root[data-theme=dark] .ct-prod-other-info table tr,:root[data-theme=dark] .ct-prod-other-info table td,:root[data-theme=dark] .ct-prod-other-info table th,:root[data-theme=dark] .prose table tr,:root[data-theme=dark] .prose table td,:root[data-theme=dark] .prose table th,:root[data-theme=dark] #product-attributes tr,:root[data-theme=dark] #product-attributes td,:root[data-theme=dark] #product-attributes th,:root[data-theme=dark] .additional-attributes tr,:root[data-theme=dark] .additional-attributes td,:root[data-theme=dark] #tabellaListRitiri tr:nth-child(even),:root[data-theme=dark] .column.main table tr:nth-child(even){background-color:transparent!important;color:var(--rm-ink)!important;border-color:var(--rm-line)!important}
:root[data-theme=dark] .cms-page-view .column.main p,:root[data-theme=dark] .cms-page-view .column.main li,:root[data-theme=dark] .cms-page-view .column.main h1,:root[data-theme=dark] .cms-page-view .column.main h2,:root[data-theme=dark] .cms-page-view .column.main h3,:root[data-theme=dark] .cms-page-view .column.main h4,:root[data-theme=dark] .cms-page-view .column.main td,:root[data-theme=dark] .cms-page-view .column.main th,:root[data-theme=dark] .cms-page-view .column.main span,:root[data-theme=dark] .cms-page-view .column.main strong{color:var(--rm-ink)!important}
:root[data-theme=dark] .cms-page-view .column.main a:not(.btn):not(.btn-primary):not(.link-orange):not(.rm-cond-btn){color:var(--rm-accent)!important}
:root[data-theme=dark] .cms-page-view .column.main .btn,:root[data-theme=dark] .cms-page-view .column.main .btn-primary,:root[data-theme=dark] .cms-page-view .column.main .link-orange,:root[data-theme=dark] .cms-page-view .column.main .link-orange span{color:#fff!important}
/* -- footer: riga pagamenti/marketplace sforava a destra su telefono (lista a larghezza fissa + social con margine) -- */
@media (max-width:767px){
  footer.page-footer .second-row{flex-wrap:wrap;gap:16px}
  footer.page-footer .ct-marketplace,footer.page-footer .list-market,footer.page-footer .list-card{flex-wrap:wrap;max-width:100%}
  footer.page-footer .ct-social{margin-left:0}
  footer.page-footer .ct-marketplace .title-footer-small{flex:0 0 100%;margin:0 0 6px}
}
/* -- telefono: 16px sui campi (iOS ingrandisce sotto i 16) e bersagli da 44px -- */
@media (max-width:767px){
  input[type=text],input[type=search],input[type=email],input[type=tel],input[type=password],input[type=number],select,textarea,#search,.toolbar-sorter select,.limiter select{font-size:16px!important}
  .rm-theme-toggle{width:44px;height:44px}
  #header a[aria-label],#header button[aria-label],#header .ct-icons a,#header .ct-icons button,#menu-cart-icon,#cart-drawer button.btn-secondary,#cart-drawer .btn-secondary,.cart-form .action-delete,.cart-form .action.delete,.cart-form button[aria-label],.cart-form a[aria-label],#cart-drawer button[aria-label],#cart-drawer a[aria-label]{min-width:44px;min-height:44px;display:inline-flex;align-items:center;justify-content:center}
  .filter-options a,.filter-options-title,.sidebar-main .items a,.toolbar-products a,.pages a,.pages .item{min-height:44px;display:inline-flex;align-items:center}
}
/* [F7b] residui dark: tabella descrizione (.prose table a #fafafa), suggerimenti ricerca, card bianche (login) */
:root[data-theme=dark] .prose table,:root[data-theme=dark] .prose table tr,:root[data-theme=dark] .prose table td,:root[data-theme=dark] .prose table th{background-color:transparent!important;color:var(--rm-ink)!important;border-color:var(--rm-line)!important}
:root[data-theme=dark] .catalogsearch-result-index dl dd a,:root[data-theme=dark] .catalogsearch-result-index dl dd a span,:root[data-theme=dark] .catalogsearch-result-index dl dt{color:var(--rm-accent)!important}
:root[data-theme=dark] .card,:root[data-theme=dark] .block-new-customer.card,:root[data-theme=dark] .block.card{background-color:var(--rm-surface)!important;color:var(--rm-ink)!important;border-color:var(--rm-line)!important}
:root[data-theme=dark] .card p,:root[data-theme=dark] .card .text-secondary-darker{color:var(--rm-ink-soft)!important}
/* [Fase B] carrello: promessa al posto dello stimatore, quantita fissa sugli esemplari unici */
.rm-promise-cart{margin:0 0 14px}
.rm-qty-unico{display:flex;align-items:center;justify-content:flex-end;gap:8px}
.rm-qty-fixed{display:inline-flex;align-items:center;justify-content:center;min-width:2.5rem;height:2.5rem;border:1px solid var(--rm-card-line);border-radius:10px;font-weight:600;color:var(--rm-card-ink-soft);background:var(--rm-card-photo)}
.cart-form .rm-unico{display:inline-block;margin:.35rem 0 0;padding:.1em .55em;border-radius:9999px;background:var(--rm-accent-soft);color:var(--rm-accent);font-size:13px;font-weight:700;letter-spacing:.02em;text-transform:uppercase;line-height:1.6}
@media (min-width:1024px){.cart-form .rm-unico{margin-left:0}}

/* ============================================================================
   [F8] Fase C/D (13/09 sera): header compatto + sticky al ritorno in su, PLP 3 colonne,
   Ken Burns solo sulla slide attiva, sistema bottoni unico.
   ============================================================================ */
/* -- header: USP strip su una riga, riga principale compatta, menu secondario basso ------------ */
.pre-header-uno-container .banner-info-header{padding:7px 0;font-size:12.5px;line-height:1.3;letter-spacing:.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pre-header-due-container{padding:0!important;min-height:0}
.pre-header-due-container .row{padding-top:2px;padding-bottom:2px}
@media (min-width:1024px){
  #header .ct-main-menu{padding-top:6px;padding-bottom:6px}
  .ct-logo-main img{width:170px}
  .pre-header-due-container .row{padding-top:0;padding-bottom:0}
  .pre-header-due-container .row>div{min-height:0}
  section[name="pre-header-2"] .menu-1 a,.ct-lang-selector .btn-lang-selector{padding-top:6px;padding-bottom:6px;line-height:1.2}
}
@media (max-width:1023px){
  .pre-header-uno-container .banner-info-header{font-size:12px;padding:6px 12px}
  .pre-header-uno-container #permuta-ora-header,.pre-header-uno-container .separator:last-of-type{display:none}
  /* logo, tema, icone e hamburger su UNA riga (le icone stavano su una seconda riga da 44px) */
  #header .ct-main-menu{flex-wrap:nowrap;padding:6px 8px 6px 12px;gap:2px}
  .ct-logo-main{order:1;width:auto;flex:1 1 auto;min-width:0}
  .ct-logo-main img{width:118px;max-width:100%}
  .rm-theme-wrap{order:3;margin:0!important;align-self:center!important;height:44px}
  #header .ct-main-menu>.flex.items-center.order-3{order:4;width:auto!important;padding-right:0!important;justify-content:flex-end}
  #header .ct-main-menu>.z-20{order:5}
  #compare-link{display:none}
  #header .flex.items-center.justify-center.cursor-pointer{top:0}
  .ct-lang-selector .btn-lang-selector{padding:4px 10px;font-size:12px}
}
/* sticky al ritorno in su: il header scivola via scendendo, torna appena si risale (js in html/header.phtml) */
#header{position:sticky;top:0;transition:transform var(--rm-d2) var(--rm-ease),box-shadow var(--rm-d2) var(--rm-ease)}
html.rm-hdr-hide #header{transform:translateY(-100%);box-shadow:none}
html.rm-hdr-float #header{box-shadow:0 8px 24px rgba(28,24,21,.10)}
:root[data-theme=dark] html.rm-hdr-float #header,html[data-theme=dark].rm-hdr-float #header{box-shadow:0 8px 24px rgba(0,0,0,.5)}
/* -- PLP desktop: 3 colonne (erano 2 su 678px con una sidebar da 327), card a 4:3 ------------------- */
@media (min-width:1024px){
  .plp__main .sidebar.sidebar-main{width:250px;flex:0 0 250px;padding-right:20px}
}
/* -- hero: Ken Burns solo sulla slide visibile (le altre due animavano a vuoto tre layer) ----------- */
.hero-2026 .hero-slide:not(.is-active){animation:none!important}
/* -- sistema bottoni: un font, un raggio, due altezze -------------------------------------------------- */
.btn,.btn-primary,.btn-secondary,.link-orange,.btn-permuta,.rm-child-btn,.rm-sticky-btn,.rm-card-cta,#product-addtocart-button,.btn-see-all,.rm-thanks-cta,#subscribe-button,.action.primary{font-family:'Helvetica Now Text','HN Text Fallback','Helvetica Neue',Helvetica,Arial,sans-serif;font-weight:600;letter-spacing:-.005em;border-radius:10px;line-height:1.2}
.btn,.btn-primary,.btn-secondary,.link-orange,.btn-permuta,.btn-see-all,#subscribe-button{min-height:48px;padding-top:.7rem;padding-bottom:.7rem}
#product-addtocart-button,.inner-add-to-cart a.btn-permuta[href="#grouped-list"]{min-height:56px;font-size:1.05rem}
.btn-permuta{background:transparent;color:var(--rm-card-ink);border:1.5px solid var(--rm-card-line)}
.btn-permuta:hover{border-color:var(--rm-card-ink)}
/* [F8c] header mobile: #header aveva padding 20px sopra e sotto (app.css ≤1024) e l hamburger 68px (svg 36 + p-4) */
@media (max-width:1023px){#header{padding:0!important}#header .ct-main-menu>.z-20 svg.p-4{padding:.6rem}#header .ct-main-menu>.z-20 .flex.items-center.justify-center.cursor-pointer{position:static}}
/* [F8d] PLP: ogni <section class="plp_products"> contiene un div.grid a 2 colonne (Tailwind): la card finiva al 46%; header desktop: #header padding 25px */
@media (min-width:1024px){
  #header{padding:0!important}
  .pre-header-due-container .row,.pre-header-due-container .columns{min-height:0;height:auto;line-height:1.2}
  .pre-header-due-container .row{display:flex;align-items:center}
  .pre-header-due-container .columns>*{margin-top:0!important;margin-bottom:0!important}
  section[name="pre-header-2"] .menu-1,section[name="pre-header-2"] .menu-1 li{margin-top:0;margin-bottom:0}
}
/* [F8f] PLP: la griglia vera e' il div.grid dentro l'unica <section class="plp_products"> */
@media (min-width:1024px){.products-grid>section.plp_products>div.grid,.products-grid>section.plp_products>div{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:18px!important}}
@media (min-width:1400px){.products-grid>section.plp_products>div.grid,.products-grid>section.plp_products>div{grid-template-columns:repeat(4,minmax(0,1fr))!important}}

/* ============================================================================
   [F9] 14/09: header davvero sticky, ricerca mobile, tablet, bersagli, footer, font, dark residui.
   ============================================================================ */
/* -- header: al ritorno in su diventa fixed (era sticky dentro un contenitore alto quanto le sue fasce) -- */
html.rm-hdr-float #header{position:fixed;top:0;left:0;right:0;z-index:40;box-shadow:0 8px 24px rgba(28,24,21,.12)}
html.rm-hdr-float .page-header{padding-top:var(--rm-hdr-h,90px)}
@keyframes rmHdrIn{from{transform:translateY(-100%)}to{transform:none}}
html.rm-hdr-hide #header{transform:none}
/* -- ricerca mobile: il campo era stritolato a 24px dalla riga unica; ora icona-lente 44px che apre il pannello -- */
@media (max-width:1023px){
  #menu-search-icon{display:inline-flex!important;align-items:center;justify-content:center;min-width:44px;min-height:44px;margin:0}
  #search-content{display:none!important;position:absolute!important;top:100%;left:0;right:0;width:100%!important;padding:10px 12px 12px;background:var(--rm-card-bg);border-top:1px solid var(--rm-card-line);box-shadow:0 12px 28px rgba(28,24,21,.14);z-index:50}
  #search-content:not([style*="none"]){display:block!important}
  #search-content[x-cloak]{display:none!important}
  #search-content #search_mini_form,#search-content .container{width:100%!important;max-width:none}
  #search-content input#search{width:100%!important;min-height:46px;font-size:16px;padding:8px 44px 8px 12px;border:1px solid var(--rm-card-line);border-radius:10px}
  #search-content button.action{position:absolute;right:18px;top:16px;min-width:40px;min-height:40px}
  .search-autocomplete.relative.w-full{top:100%;left:0}
}
/* -- tablet 640-1023: scheda a una colonna, hero senza margini negativi -- */
@media (min-width:640px) and (max-width:1023px){
  .product-info-main .col-gallery,.product-info-main .ct-info{width:100%!important;max-width:100%!important;flex:0 0 100%!important;padding-left:0!important;padding-right:0!important}
  .hero-2026{margin-left:0!important;margin-right:0!important}
  .plp__main .sidebar.sidebar-main{width:100%;flex:0 0 100%}
}
/* -- bersagli tocco -- */
.hero-2026 .hero-dot{padding:10px;box-sizing:content-box;background-clip:content-box;min-width:12px;min-height:12px}
.btn-lang-selector{min-height:40px}
footer.page-footer .links-footer a,footer.page-footer .list-market a,footer.page-footer .list-social a{display:inline-flex;align-items:center;min-height:40px}
#rm-sticky-btn,.rm-sticky-btn{min-height:48px}
#ck_mail,footer.page-footer input[type=checkbox]{width:22px;height:22px}
@media (max-width:767px){.actions-toolbar a.underline,.actions-toolbar .action.remind{display:inline-flex;align-items:center;min-height:44px}}
/* -- footer: testo legale a contrasto (era #666 su fondo scuro, 3:1) -- */
footer.page-footer .pie-footer,footer.page-footer .pie-footer a,footer.page-footer .title-footer-small,footer.page-footer .copyright{color:#b8afa6}
/* -- accento dark su bordi/testo arancione: #c8420c su fondo scuro e' 3,5:1, si usa la variante chiara -- */
:root[data-theme=dark] .rm-card-cta{color:var(--rm-accent);border-color:var(--rm-accent)}
:root[data-theme=dark] .rm-coupon-toggle,:root[data-theme=dark] .link-orange-text{color:var(--rm-accent)}
:root[data-theme=dark] .disponibile-label{color:var(--rm-ok)!important}
/* Inter era dichiarato in 31 selettori di app.css e mai caricato: i titoli di pagina/carrello/login andavano in font di sistema */
.page-title,.cart-form,.cart-summary,#cart-totals,.form-login,.form-create-account,.block-new-customer,.customer-account-login .title-font,.cms-page-view .page-title{font-family:'Helvetica Now Text','HN Text Fallback','Helvetica Neue',Helvetica,Arial,sans-serif}
h1.page-title,.page-title.title-font,.cart-form .title-font{font-family:'Helvetica Now Display','HN Display Fallback','Helvetica Neue',Helvetica,Arial,sans-serif}
/* -- carrello mobile: la merce prima del riepilogo -- */
@media (max-width:1023px){.checkout-cart-index .cart-form>.row,.checkout-cart-index .cart-form .row.w-full{display:flex;flex-direction:column}.checkout-cart-index .cart-form .row>div:has(.cart-summary){order:2;float:none;width:100%}.checkout-cart-index .cart-form .row>div:not(:has(.cart-summary)){order:1;float:none;width:100%}}
/* -- OOS: i bottoni dei form seguono il sistema -- */
.rm-oos-permuta-toggle strong{font-family:'Helvetica Now Display','HN Display Fallback','Helvetica Neue',Helvetica,Arial,sans-serif}
.rm-grade-line{display:none}
/* -- padre con un solo esemplare: il bottone diretto ha l'altezza della CTA primaria -- */
.rm-cta-top .rm-parent-direct{min-height:56px;font-size:1.05rem;width:100%}
/* [F9b] scheda mobile: il titolo era hidden md:block (nome solo nel breadcrumb); "da X €" del padre sotto il titolo */
@media (max-width:767px){h1.title-1.hidden,.product-info-main h1.title-1{display:block!important;font-size:var(--rm-fs-lg);line-height:1.15;margin:.4rem 0 .5rem}}
.rm-from-price{margin:.25rem 0 .5rem;font-size:var(--rm-fs-lg);font-family:'Helvetica Now Display','HN Display Fallback','Helvetica Neue',Helvetica,Arial,sans-serif;letter-spacing:-.01em;color:var(--rm-card-ink)}
.rm-from-price strong{font-size:var(--rm-fs-2xl);font-weight:700;font-variant-numeric:tabular-nums}
.rm-from-price span{display:block;font-size:var(--rm-fs-sm);color:var(--rm-card-ink-soft);font-family:'Helvetica Now Text','HN Text Fallback','Helvetica Neue',Helvetica,Arial,sans-serif;margin-top:.15rem}
/* [F9c] tablet: la colonna info sta in .small-12.medium-4.columns (Foundation: 33%) */
@media (min-width:640px) and (max-width:1023px){.product-info-main .small-12.medium-4.columns,.product-info-main .medium-4.columns,.product-info-main .medium-8.columns{width:100%!important;max-width:100%!important;flex:0 0 100%!important}}
/* [F9d] ricerca: "Ricerche correlate" (canon+nuov, canon++usata, canon+canon) e' rumore: nascosto */
.catalogsearch-result-index dl.my-6{display:none}
/* [F9e] "Perche' qui e non su eBay" (blocco CMS rm_perche_qui): chiuso nella scheda, pagina /perche-reflexmania per esteso */
.rm-perche-wrap{margin:.9rem 0 0;border:1px solid var(--rm-card-line);border-radius:14px;background:var(--rm-card-bg);padding:0 1rem}
.rm-perche-wrap>summary{cursor:pointer;list-style:none;padding:.8rem 0;font-family:'Helvetica Now Display','HN Display Fallback','Helvetica Neue',Helvetica,Arial,sans-serif;font-weight:600;font-size:var(--rm-fs-base);color:var(--rm-card-ink);display:flex;justify-content:space-between;align-items:center;gap:.6rem}
.rm-perche-wrap>summary::-webkit-details-marker{display:none}
.rm-perche-wrap>summary::after{content:'+';font-size:1.3em;line-height:1;color:var(--rm-card-ink-soft)}
.rm-perche-wrap[open]>summary::after{content:'−'}
.rm-perche-wrap .rm-perche-head{display:none}
.rm-perche-list{list-style:none;margin:0 0 1rem;padding:0;display:flex;flex-direction:column;gap:.55rem;font-size:var(--rm-fs-sm);line-height:1.45;color:var(--rm-card-ink-soft)}
.rm-perche-list strong{color:var(--rm-card-ink);font-weight:600}
.cms-perche-reflexmania .rm-perche-head{font-family:'Helvetica Now Display','HN Display Fallback','Helvetica Neue',Helvetica,Arial,sans-serif;font-size:var(--rm-fs-xl);font-weight:700;margin:1rem 0}
.cms-perche-reflexmania .rm-perche-list{font-size:var(--rm-fs-base);gap:.9rem;max-width:70ch}
/* [F9f] riga marche in home: loghi del tema + chip testuali (le swatch non esistono: la riga era vuota anche in prod) */
.swiper__brands .rm-brand-slide{display:flex;align-items:center;justify-content:center;width:auto!important;padding:0 8px}
.rm-brand{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:6px 14px;border-radius:10px;border:1px solid var(--rm-card-line);background:var(--rm-card-bg);color:var(--rm-card-ink);text-decoration:none;transition:border-color var(--rm-d1) linear,transform var(--rm-d2) var(--rm-ease)}
.rm-brand:hover{border-color:var(--rm-card-ink);transform:translateY(-1px)}
.rm-brand img{height:28px;width:auto;max-width:120px;object-fit:contain;filter:grayscale(1) contrast(1.1);opacity:.85}
.rm-brand:hover img{filter:none;opacity:1}
:root[data-theme=dark] .rm-brand img{filter:grayscale(1) invert(1) contrast(1.1)}
.rm-brand-chip span{font-family:'Helvetica Now Display','HN Display Fallback','Helvetica Neue',Helvetica,Arial,sans-serif;font-weight:600;font-size:var(--rm-fs-base);letter-spacing:-.01em}
.brands_icons .swiper-wrapper{flex-wrap:wrap;gap:8px 4px;justify-content:flex-start}
.brands_icons .swiper-button-next,.brands_icons .swiper-button-prev{display:none}
/* [F9g] riga marche statica (chip): niente Swiper, una riga che va a capo */
.rm-brands-static{overflow:visible}
.rm-brands-static .swiper-wrapper{display:flex!important;flex-wrap:wrap;gap:10px 8px;transform:none!important;width:auto!important;justify-content:flex-start;align-items:center}
.rm-brands-static .swiper-slide{width:auto!important;margin:0!important;flex:0 0 auto}
.ct-slider-brands .swiper-button-next,.ct-slider-brands .swiper-button-prev{display:none}
/* [F9h] pagina /perche-reflexmania: tabella di confronto ReflexMania / privato / eBay-Subito / altro rivenditore */
.cms-perche-reflexmania .page-title-wrapper{max-width:1100px;margin:0 auto}
.rm-perche-page{max-width:1100px;margin:0 auto;padding:0 0 3rem;font-family:'Helvetica Now Text','HN Text Fallback','Helvetica Neue',Helvetica,Arial,sans-serif;color:var(--rm-card-ink)}
.rm-perche-intro{font-size:var(--rm-fs-md);line-height:1.5;color:var(--rm-card-ink-soft);max-width:70ch;margin:0 0 1.5rem}
.rm-cmp-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;border:1px solid var(--rm-card-line);border-radius:14px;background:var(--rm-card-bg)}
.rm-cmp{width:100%;min-width:760px;border-collapse:separate;border-spacing:0;font-size:var(--rm-fs-sm);line-height:1.4;margin:0}
.rm-cmp th,.rm-cmp td{padding:.9rem 1rem;text-align:left;vertical-align:top;border-bottom:1px solid var(--rm-card-line);width:22%}
.rm-cmp th[scope=row],.rm-cmp thead th:first-child{width:12%;font-family:'Helvetica Now Display','HN Display Fallback','Helvetica Neue',Helvetica,Arial,sans-serif;font-weight:600;color:var(--rm-card-ink);background:var(--rm-card-photo)}
.rm-cmp thead th{font-family:'Helvetica Now Display','HN Display Fallback','Helvetica Neue',Helvetica,Arial,sans-serif;font-weight:700;font-size:var(--rm-fs-base);color:var(--rm-card-ink);background:var(--rm-card-photo);border-bottom:2px solid var(--rm-card-line)}
.rm-cmp tbody tr:last-child th,.rm-cmp tbody tr:last-child td{border-bottom:0}
.rm-cmp td.rm-cmp-us{background:var(--rm-accent-soft);color:var(--rm-card-ink)}
.rm-cmp thead th.rm-cmp-us{background:var(--rm-accent-bg);color:#fff}
.rm-cmp td.rm-cmp-us strong{color:var(--rm-card-ink)}
.rm-cmp td.rm-cmp-no{color:var(--rm-card-ink-soft)}
.rm-cmp td.rm-cmp-no::before{content:'✕';display:inline-block;margin-right:.4rem;color:#b3261e;font-weight:700}
.rm-cmp td.rm-cmp-us::before{content:'✓';display:inline-block;margin-right:.4rem;color:var(--rm-ok);font-weight:700}
.rm-cmp td.rm-cmp-mid{color:var(--rm-card-ink-soft)}
.rm-cmp td.rm-cmp-mid::before{content:'~';display:inline-block;margin-right:.4rem;color:var(--rm-card-ink-soft);font-weight:700}
.rm-perche-note{margin:1.5rem 0 0;font-size:var(--rm-fs-base);line-height:1.5;max-width:70ch;color:var(--rm-card-ink-soft)}
.rm-perche-cta{display:flex;flex-wrap:wrap;gap:1rem 1.5rem;align-items:center;margin-top:1.5rem}
.rm-perche-btn{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 1.6rem;border-radius:10px;background:var(--rm-accent-bg)!important;color:#fff!important;font-weight:600;text-decoration:none}
.rm-perche-link{font-weight:600;color:var(--rm-accent);text-decoration:underline;text-underline-offset:3px}
:root[data-theme=dark] .rm-cmp td.rm-cmp-us{background:rgba(255,122,69,.12)}
@media (max-width:767px){.rm-cmp th,.rm-cmp td{padding:.7rem .75rem}.rm-cmp{min-width:720px}.rm-cmp-wrap::after{content:'';display:block}}
/* [F9i] pagina perche: respiro laterale come le altre pagine CMS */
.cms-perche-reflexmania .column.main{padding:0 24px 2rem}
.cms-perche-reflexmania .page-title-wrapper{padding:0 24px}
@media (min-width:1024px){.cms-perche-reflexmania .column.main,.cms-perche-reflexmania .page-title-wrapper{padding-left:40px;padding-right:40px}}
/* [F9j] titolo della pagina perche allineato al contenuto (sta fuori da .column.main) */
.cms-perche-reflexmania #maincontent>h1.page-title,.cms-perche-reflexmania #maincontent>.page-title-wrapper,.cms-perche-reflexmania .columns>h1.page-title{max-width:1100px;margin:1.2rem auto .4rem;padding:0 40px;box-sizing:content-box}
@media (max-width:1023px){.cms-perche-reflexmania #maincontent>h1.page-title,.cms-perche-reflexmania .columns>h1.page-title{padding:0 24px}}
/* [F9k] l h1 della pagina sta in un .container flex del tema: si allinea alla tabella (max 1100 centrata) */
.cms-perche-reflexmania .container:has(>h1.page-title){max-width:1100px!important;padding-left:0!important;padding-right:0!important;margin:1rem auto 0}
.cms-perche-reflexmania .container>h1.page-title{margin:0 0 .5rem}
@media (max-width:1023px){.cms-perche-reflexmania .container:has(>h1.page-title){padding-left:24px!important;padding-right:24px!important}}

/* [F10 titoli card] i nomi prodotto nelle card erano scesi a 16px (la scala tipografica li aveva
   allineati a --rm-fs-base, mentre il tema originale li aveva a 18/21px): su schermo grande, in una
   card da 320px, sembrano microscopici accanto a prezzo e bottone. 20px da 1024 in su, 18px sotto. */
.product-item .product-item-link,.home__products .product-item-link,.products-grid .product-item .product-item-link{font-size:1.125rem;line-height:1.25;font-weight:600;letter-spacing:-.01em}
@media (min-width:1024px){.product-item .product-item-link,.home__products .product-item-link,.products-grid .product-item .product-item-link{font-size:1.25rem}}
@media (min-width:1400px){.product-item .product-item-link,.home__products .product-item-link,.products-grid .product-item .product-item-link{font-size:1.3rem}}

/* [F10b spazio nome card] app.css dava al nome min-height 80px + padding-bottom 24px + margin 16px
   (112px per una riga da 26px) e 21-24px di padding sopra: il nome galleggiava in un vuoto.
   Ora: due righe di spazio riservato (cosi' le card restano allineate), niente padding, 12px sopra. */
.home__products .product-info,.home__products.home__products_2 .product-info{padding-top:12px}
.home__products .product-item-link,.home__products.home__products_2 .product-item-link,.products-grid .product-item .product-item-link{min-height:2.5em;padding-bottom:0;margin-bottom:.4rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.home__products .product-item-link+.rm-card-meta,.products-grid .product-item .product-item-link+.rm-card-meta{margin-top:0}
.home__products .product-item-link+div.rm-card-meta+.pt-1,.products-grid .product-item .rm-card-meta+.pt-1{padding-top:2px}

/* [F10c CTA in fondo alla card] negli elenchi il link che avvolge la card e' display:block, quindi
   .product-info (flex-col grow) non si allunga e il "mt-auto" del bottone non ha effetto: con etichette
   su due righe il "Vedi esemplari" balla da card a card. Il wrapper diventa una colonna flex. */
.products-grid .product-item{display:flex;flex-direction:column}
.products-grid .product-item>a{display:flex;flex-direction:column;flex:1 1 auto;min-height:0}
.products-grid .product-item>a>.product-info{flex:1 1 auto;display:flex;flex-direction:column}
.products-grid .product-item .product-info>.mt-auto{margin-top:auto}

/* [R10-PERF] 15/09/2026 - pallino di scarsita': l'alone animava box-shadow (stile + paint a ogni fotogramma: ~600 ricalcoli
   e 1,3 s di task ogni 10 s a pagina ferma). Ora e' uno pseudo-elemento che anima solo transform/opacity (compositor). */
.rm-scarcity-dot{position:relative;flex:0 0 auto;box-shadow:none !important;animation:none !important}
.rm-scarcity-dot::after{content:"";position:absolute;inset:0;border-radius:inherit;background:rgba(200,66,12,.55);opacity:0;transform:scale(1);animation:rmPulseRing 2s cubic-bezier(0,0,.2,1) infinite;will-change:transform,opacity;pointer-events:none}
@keyframes rmPulseRing{0%{transform:scale(1);opacity:.55}70%{transform:scale(3);opacity:0}100%{transform:scale(3);opacity:0}}
@media (prefers-reduced-motion:reduce){.rm-scarcity-dot::after{animation:none;display:none}}
/* [R10-PERF] 15/09/2026 - galleria scheda: la riga miniature compare gia' lato server quando le immagini sono almeno 2
   (gallery.phtml aggiunge rm-thumbs-ssr); prima rm-pdp.css la teneva nascosta fino ad Alpine e spostava la colonna (CLS). */
/* [R10-PERF] solo telefono: su desktop la riga compare nel frame del primo disegno e Alpine corregge le frecce, CLS 0,01 (misurato) */
@media (max-width:767px){#gallery #thumbs.rm-thumbs-ssr{display:flex !important}}
