.attps-uni-product-single {
    padding: var(--atb-space-8) 0;

    .atb-row {
        --atb-column-gap: 2rem;
        --atb-column-min-width: 300px;



    }
}

.attps-uni-product-single__content {
    display: flex;
    flex-direction: column;
    gap: var(--atb-space-6);

    .attps-uni-product-single__content__taxonomy {
        display: flex;
        flex-wrap: wrap;
        gap: var(--atb-space-2);

        .attps-uni-product-single__content__taxonomy__term {
            background-color: color-mix(in oklab, var(--atb-secondary) 5%, transparent);
            color: var(--atb-secondary, #3b3b3b);
            padding: 0.25rem 0.5rem;
            border-radius: 0.5rem;
            font-size: 0.875rem;
            font-weight: 500;
        }
    }

    .attps-uni-product-single__content__title {
        font-size: 3rem;
        font-weight: bold;
    }

    .attps-uni-product-single__content__description {
        font-family: var(--atb-font-condensed, inherit);
        font-weight: 300;
        font-size: 1rem;

        .attps-uni-truncated-text__toggle {
            font-weight: 500;
        }
    }

    .attps-uni-product-single__content__cartes {
        display: grid;
        grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
        gap: var(--atb-space-4);

        .attps-uni-product-single__content__cartes__item {
            background-color: color-mix(in oklab, var(--atb-primary) 5%, transparent);
            padding: 1rem;
            border-radius: var(--atb-radius-lg);
            text-align: center;
            line-height: var(--atb-leading-tight);

            .attps-uni-product-single__content__cartes__item__title {
                font-weight: 700;
                margin-bottom: 0.25rem;
                color: var(--atb-primary);
                font-size: 0.875rem;
                text-transform: uppercase;
            }

            .attps-uni-product-single__content__cartes__item__value {
                color: color-mix(in oklab, var(--atb-neutral) 95%, transparent);
                font-family: var(--atb-font-condensed, inherit);
                font-weight: bold;
                font-size: 1.125rem;
            }

            .attps-uni-product-single__content__cartes__item__description {
                color: color-mix(in oklab, var(--atb-neutral) 95%, transparent);
                font-family: var(--atb-font-condensed, inherit);
                font-weight: 300;
                font-size: 0.875rem;
            }

        }
    }

    .attps-uni-product-single__content__more-data {
        .atb-details-item {
            details {
                border: none;
                padding: 0;
                margin-bottom: 1rem;

                summary {
                    font-weight: 500;
                    cursor: pointer;
                    list-style: none;
                    display: flex;
                    gap: var(--atb-space-2);


                    &::-webkit-details-marker {
                        display: none;
                    }

                    .title {
                        font-family: var(--atb-font-condensed, inherit);
                        font-weight: 700;
                        color: color-mix(in oklab, var(--atb-neutral) 95%, transparent);
                        font-size: 1.125rem;
                    }

                    .icon-wrapper {
                        width: 25px;
                        height: 25px;
                        position: relative;
                        border-radius: var(--atb-radius-pill);
                        background-color: color-mix(in oklab, var(--atb-primary) 10%, transparent);

                        .plus,
                        .minus {
                            color: var(--atb-primary);
                            width: 25px;
                            height: 25px;
                            line-height: 25px;
                            display: block;
                            position: absolute;
                            top: 0;
                            left: 0;
                            right: 0;
                            bottom: 0;
                            text-align: center;
                            box-sizing: border-box;
                            transition: .5s all ease-out;
                        }

                        .plus {
                            opacity: 1;
                            transform: rotate(0deg);
                        }



                        .minus {
                            opacity: 0;
                            transform: rotate(-90deg);
                        }

                    }
                }

                &.active {
                    .icon-wrapper {
                        .plus {
                            opacity: 0;
                            transform: rotate(90deg);
                        }

                        .minus {
                            opacity: 1;
                            transform: rotate(0deg);
                        }
                    }
                }

                .atb-details-answer {
                    padding-top: 0.5rem;
                    padding-left: calc(25px + 0.5rem);

                    &>ul {
                        &>li {
                            &::marker {
                                color: var(--atb-primary);

                            }

                            li {
                                &::marker {
                                    color: color-mix(in oklab, var(--atb-primary) 50%, transparent);
                                }
                            }
                        }
                    }
                }
            }
        }
    }

    .attps-uni-product-single__content__labels_wrapper {
        .attps-uni-product-single__content__labels__title {
            display: flex;
            align-items: center;
            gap: var(--atb-space-2);

            .title {

                font-family: var(--atb-font-condensed, inherit);
                font-weight: 700;
                color: color-mix(in oklab, var(--atb-neutral) 95%, transparent);
                font-size: 1.125rem;
            }

            .icon-wrapper {
                width: 25px;
                height: 25px;
                position: relative;
                border-radius: var(--atb-radius-pill);
                background-color: color-mix(in oklab, var(--atb-primary) 10%, transparent);
                display: grid;
                place-items: center;



            }
        }

        .attps-uni-product-single__content__labels {
            display: flex;
            flex-wrap: wrap;
            gap: var(--atb-space-2);
            padding-left: calc(25px + 0.5rem);

            .attps-uni-product-single__content__labels__item {


                img {
                    max-height: 40px;
                    width: auto;
                    height: 100%;
                    object-fit: contain;
                    display: block;
                }
            }
        }
    }
}

.attps-uni-product-single__gallery {
    position: relative;
    aspect-ratio: 9/12;

    .attps-uni-product-single__gallery__logo {
        position: absolute;
        top: 1rem;
        right: 1rem;
        z-index: 2;
        max-width: max(20%, 100px);

        img {
            border-radius: var(--atb-radius-lg);
            box-shadow: rgba(0, 0, 0, 0.05) 0px 6px 24px 0px, rgba(0, 0, 0, 0.08) 0px 0px 0px 1px;


        }
    }

    .attps-uni-product-single__gallery__main {
        height: 100%;
        width: 100%;

        .swiper-wrapper {
            .swiper-slide {
                height: auto;

                img {
                    width: 100%;
                    height: 100%;
                    object-fit: cover;
                    border-radius: var(--atb-radius-lg);

                }
            }
        }
    }

    .attps-uni-product-single__gallery__thumbs {
        position: absolute;
        bottom: 0;
        left: 0;
        width: 100%;
        padding: 10px;
        box-sizing: border-box;

        .swiper-wrapper {
            .swiper-slide {
                height: auto;
                opacity: 0.5;

                img {
                    width: 100%;
                    aspect-ratio: 1 / 1;
                    object-fit: cover;
                    border-radius: var(--atb-radius-lg);
                    box-shadow: rgba(0, 0, 0, 0.05) 0px 6px 24px 0px, rgba(0, 0, 0, 0.08) 0px 0px 0px 1px;
                }

                &.swiper-slide-thumb-active {
                    opacity: 1;
                }
            }
        }
    }
}

.attps-uni-product-single__related {
    background-color: color-mix(in oklab, var(--atb-grey) 10%, transparent);

    .atb-row {
        --atb-column-gap: 2rem;

        .atb-column {

            .attps-uni-product-single__related__list {
                display: flex;
                flex-wrap: wrap;

                justify-content: center;
                gap: var(--atb-space-4);

                .attps-uni-product-single__related__item {
                    width: min(100%, calc(15rem - 0.5rem));
                    box-sizing: border-box;
                    background: var(--atb-light);
                    border-radius: var(--atb-radius-lg);
                    overflow: hidden;

                    .attps-uni-product-single__related__item__image {
                        width: 100%;
                        aspect-ratio: 1 / 1;

                        img {
                            width: 100%;
                            height: 100%;
                            object-fit: cover;
                        }
                    }

                    .attps-uni-product-single__related__item__content {
                        padding: 1rem;

                        .attps-uni-product-single__related__item__title {
                            font-weight: 700;
                            color: var(--atb-secondary);
                            font-size: 1.25rem;
                        }
                    }

                }
            }

        }
    }
}
/* ============================================================
   Simulateur (fiche produit, 29/09/2026) : bouton révélé par
   simulator.js selon le site de provenance, fenêtre dialog + iframe.
   ============================================================ */
.attps-uni-product-single__simulator {
  margin-top: 1.5rem;
}
.attps-uni-product-single__simulator[hidden] {
  display: none;
}
.attps-uni-simulator {
  /* Le simulateur (iframe) se bloque sous 1024px de large : fenêtre jusqu'à 1280px, jamais plus que l'écran. */
  width: min(1280px, 100vw);
  height: min(900px, calc(100dvh - 2rem));
  max-width: none;
  max-height: none;
  padding: 0;
  border: 0;
  border-radius: var(--atb-radius-lg, 1rem);
  overflow: hidden;
  background: #fff;
  box-shadow: 0 30px 80px -20px rgba(0, 0, 0, 0.5);
}
.attps-uni-simulator[open] {
  display: flex;
  flex-direction: column;
}
.attps-uni-simulator::backdrop {
  background: rgba(25, 39, 67, 0.7);
}
.attps-uni-simulator__bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: 0.5rem 0.75rem 0.5rem 1.5rem;
  background: var(--atb-neutral, #192743);
  color: #fff;
}
.attps-uni-simulator__title {
  margin: 0;
  padding: 0;
  font-family: var(--atb-font-heading, inherit);
  font-weight: 700;
  color: #fff;
}
.attps-uni-simulator__close {
  appearance: none;
  display: grid;
  place-items: center;
  width: 2.5rem;
  height: 2.5rem;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: transparent;
  color: #fff;
  font-size: 1.75rem;
  line-height: 1;
  cursor: pointer;
}
.attps-uni-simulator__close:hover,
.attps-uni-simulator__close:focus-visible {
  background: rgba(255, 255, 255, 0.15);
  outline: none;
}
.attps-uni-simulator__close:focus-visible {
  box-shadow: 0 0 0 2px #fff;
}
.attps-uni-simulator__frame {
  flex: 1;
  width: 100%;
  border: 0;
}
html.attps-uni-simulator-open {
  overflow: hidden;
}
@media (max-width: 1280px) {
  .attps-uni-simulator {
    border-radius: 0;
  }
}
@media (max-width: 768px) {
  .attps-uni-simulator {
    width: 100vw;
    height: 100dvh;
    border-radius: 0;
  }
}
