     :root {
         --brand-red: #E21C3D;
         /* bouton rouge (Order Now) */
         --brand-cyan: #1bb6be;
         /* voile cyan vue sur l'image */
         --text-white: #ffffff;
     }

     body {
         font-family: "Poppins", system-ui, -apple-system, Segoe UI, Roboto, "Helvetica Neue", Arial, "Noto Sans", "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
     }

     .num {
         display: none;
     }

     @media(min-width:992px) {
         .py-5 {
             padding-top: 7rem !important;
             padding-bottom: 7rem !important;
         }
     }

     @media(max-width:460px) {
         .py-5 {
             padding-top: 3rem !important;
             padding-bottom: 3rem !important;
         }
     }

     .h2,
     h2 {
         font-size: 41px;
         padding: 30px 0;
     }

     /* ===== HERO ===== */

     @media(min-width:1490px) {
         .hero-wrap {
             position: relative;
             height: 630px;
             color: var(--text-white);
             background-size: cover;
             background-position: center;
             background-repeat: no-repeat;
             background-image: url('../img/hero-bg.jpg');
             margin-bottom: 50px;
         }
     }

     @media(max-width:1400px) {
         .hero-wrap {
             position: relative;
             height: 835px;
             color: var(--text-white);
             background-size: cover;
             background-position: center;
             background-repeat: no-repeat;
             background-image: url('../img/hero-bg.jpg');
             margin-bottom: 50px;

         }
     }

     /* nav au-dessus de l’overlay */

     .hero-inner,
     .site-nav {
         position: relative;
         z-index: 2;
     }

     /* ===== NAV ===== */

     .site-nav .nav-link {
         color: var(--text-white);
         font-weight: 600;
         opacity: .9;
     }

     .site-nav .nav-link:hover {
         opacity: 1;
     }

     .btn-order-top {
         background: var(--brand-red);
         color: #fff;
         font-weight: 700;
         border: 0;
         padding: .65rem 1.15rem;
         border-radius: .4rem;
     }

     .btn-order-top:hover {
         background: var(--brand-red);
         color: #fff;
         font-weight: 700;
         border: 0;
         padding: .65rem 1.15rem;
         border-radius: .4rem;
         opacity: 0.8;
     }

     .brand-mark {
         display: flex;
         align-items: center;
         gap: .65rem;
         color: #fff;
         font-weight: 700;
         letter-spacing: .5px;
     }

     .brand-logo {
         width: 28px;
         height: 28px;
         display: inline-block;
     }

     /* ===== TITRAGE ===== */

     .hero-title {
         font-weight: 700;
         line-height: 1.05;
         letter-spacing: .2px;
         font-size: 55px;
         margin-bottom: 1.25rem;
         /* max-width: 14ch; */
     }

     .hero-title span {
         color: #f0ff00
     }

     .hero-lead {
         max-width: 58ch;
         font-size: 1rem;
         line-height: 1.5;
         opacity: .95;
     }

     .btn-order-main {
         background: var(--brand-red);
         color: #fff;
         font-weight: 700;
         border: 0;
         border-radius: .5rem;
         padding: .9rem 1.4rem;
         box-shadow: 0 .25rem .75rem rgba(226, 28, 61, .35);
     }

     .btn-order-main:hover {
         background: var(--brand-red);
         color: #fff;
         font-weight: 700;
         border: 0;
         border-radius: .5rem;
         padding: .9rem 1.4rem;
         box-shadow: 0 .25rem .75rem rgba(226, 28, 61, .35);
         opacity: 0.8;
     }

     /* ===== BADGES ===== */

     .badges {
         gap: 2rem;
     }

     .seal {
         width: 125px;
         height: 125px;
         color: #fff;
         display: flex;
         align-items: center;
         justify-content: center;
     }

     .seal small {
         display: block;
         font-weight: 600;
         font-size: .7rem;
         opacity: .9;
         margin-top: .25rem;
         letter-spacing: .4px;
     }

     /* ===== PRODUIT ===== */

     .product-col {
         position: relative;
         min-height: 520px;
     }

     .product-shot {
         position: absolute;
         right: 0;
         bottom: -40px;
         max-width: 520px;
         width: 100%;
         height: auto;
         filter: drop-shadow(0 14px 40px rgba(0, 0, 0, .45));
     }

     .capsules {
         position: absolute;
         right: 110px;
         bottom: 20px;
         max-width: 220px;
         width: 40%;
         filter: drop-shadow(0 10px 28px rgba(0, 0, 0, .35));
     }

     /* ===== ESPACEMENTS ===== */

     .hero-pad {
         padding-top: 28px;
         padding-bottom: 40px;
     }

     .content-spacer {
         padding-top: 60px;
         padding-bottom: 60px;
     }

     @media (max-width: 991.98px) {
         .content-spacer {
             padding-top: 0;
             padding-bottom: 0;
         }

         .hero-lead {
             margin-bottom: 0 !important;
         }

         .product-shot {
             position: relative;
             right: auto;
             bottom: auto;
             margin-top: 0;
             max-width: 420px;
         }

         img.product-shot {
             width: 60%;
             height: auto;
             margin: 0 auto;
         }

         .capsules {
             display: none;
         }

         .badges {
             justify-content: center;
         }

         .btn-order-main {
             margin-top: 20px;
         }

         .seal {
             width: 90px;
             height: 90px;
         }
     }

     .ready-section {
         font-family: "Poppins", system-ui, -apple-system, Segoe UI, Roboto, "Helvetica Neue", Arial;
     }

     .ready-title {
         font-weight: 800;
         line-height: 1.15;
         letter-spacing: .2px;
         /* Taille visuelle équivalente à la capture */
         font-size: clamp(1.9rem, 2.2vw + 1rem, 2.6rem);
         color: #0d0f12;
     }

     .text-accent {
         color: #1e6fd6;
     }

     /* bleu du “Sex Again...” */

     .ready-copy {
         color: #2b2f37;
         opacity: .9;
         font-size: 0.98rem;
         line-height: 1.65;
     }

     .btn-order {
         background: #E21C3D;
         color: #fff;
         border: 0;
         border-radius: .45rem;
         box-shadow: 0 .4rem 1rem rgba(226, 28, 61, .25);
     }

     .btn-order:hover {
         background: #E21C3D;
         color: #fff;
         border: 0;
         border-radius: .45rem;
         box-shadow: 0 .4rem 1rem rgba(226, 28, 61, .25);
         opacity: 0.8;
     }

     @media (min-width:992px) {
         .py-lg-6 {
             padding-top: 4.5rem !important;
             padding-bottom: 4.5rem !important;
         }
     }

     /* Typo et couleurs */

     .find-section {
         position: relative;
         font-family: "Poppins", system-ui, -apple-system, Segoe UI, Roboto, "Helvetica Neue", Arial;
         overflow: hidden;
     }

     .find-bg {
         position: absolute;
         inset: 0;
         /* Remplacer l'URL ci-dessous par l'image de fond */
         background-image: url('../img/ingredients-bg.jpg');
         background-size: cover;
         background-position: center;
     }

     /* voile turquoise (haut plus sombre) */

     .find-title {
         color: #ffffff;
         font-weight: 700;
         letter-spacing: .2px;
         font-size: clamp(1.6rem, 1.2vw + 1.2rem, 2rem);
         text-shadow: 0 1px 1px rgba(0, 0, 0, .20);
     }

     .find-sublead {
         max-width: 760px;
         color: #ffffff;
         opacity: .95;
         font-size: .95rem;
         line-height: 1.6;
         text-shadow: 0 1px 1px rgba(0, 0, 0, .15);
     }

     /* Anneau + image ronde */

     .ring {
         width: 168px;
         height: 168px;
         border-radius: 50%;
         background: #fff;
         padding: 10px;
         /* anneau blanc épais */
         box-shadow: 0 10px 26px rgba(0, 0, 0, .35);
     }

     .ring > img {
         width: 100%;
         height: 100%;
         display: block;
         border-radius: 50%;
         object-fit: cover;
     }

     .ingr-name {
         color: #ffffff;
         font-weight: 700;
         font-size: .95rem;
         text-shadow: 0 1px 1px rgba(0, 0, 0, .25);
     }

     .ingr-text {
         color: #ffffff;
         opacity: .95;
         font-size: .9rem;
         line-height: 1.55;
         margin: .35rem auto 0;
         max-width: 320px;
         text-shadow: 0 1px 1px rgba(0, 0, 0, .18);
     }

     .btn-order {
         background: #E21C3D;
         color: #fff;
         border: 0;
         border-radius: .45rem;
         box-shadow: 0 .5rem 1.25rem rgba(226, 28, 61, .30);
     }

     .reasons-section {
         font-family: Poppins, system-ui, -apple-system, Segoe UI, Roboto, "Helvetica Neue", Arial;
     }

     .reason-item {
         font-size: .95rem;
         line-height: 1.55;
         color: #2b2f37;
         opacity: .95;
     }

     /* Cercle noir central */

     .orbit {
         width: 360px;
         height: 329px;
         background: url(../img/bottle-md.5.png) no-repeat center center;
     }

     .orbit-en {
         width: 360px;
         height: 329px;
         background: url(../img/bottle-md-en.5.png) no-repeat center center;
     }

     /* Pastilles numérotées turquoise */

     .badge-dot {
         position: absolute;
         width: 34px;
         height: 34px;
         border-radius: 50%;
         background: #18b5bd;
         color: #fff;
         font-weight: 700;
         font-size: .95rem;
         display: flex;
         align-items: center;
         justify-content: center;
         box-shadow: 0 6px 14px rgba(0, 0, 0, .2);
     }

     /* Placement autour du cercle (aligné à la maquette) */

     .dot-1 {
         top: 21%;
         left: -17px;
     }

     .dot-2 {
         top: 21%;
         right: -17px;
     }

     .dot-3 {
         top: 44%;
         left: -17px;
     }

     .dot-4 {
         top: 44%;
         right: -17px;
     }

     .dot-5 {
         top: 70%;
         left: -17px;
     }

     .dot-6 {
         top: 70%;
         right: -17px;
     }

     /* Bouton rouge */

     .btn-order {
         background: #E21C3D;
         color: #fff;
         border: 0;
         border-radius: .45rem;
         box-shadow: 0 .5rem 1.25rem rgba(226, 28, 61, .3);
     }

     /* Responsive */

     @media (max-width: 991.98px) {

         .orbit,
         .orbit-en {
             width: 300px;
             height: 300px;
         }

         .dot-1,
         .dot-3,
         .dot-5 {
             left: -14px;
         }

         .dot-2,
         .dot-4,
         .dot-6 {
             right: -14px;
         }
     }

     @media (max-width: 575.98px) {

         .orbit,
         .orbit-en {
             width: 260px;
             height: 260px;
             margin: 0 auto;
         }

         .dot-1,
         .dot-3,
         .dot-5 {
             left: -12px;
         }

         .dot-2,
         .dot-4,
         .dot-6 {
             right: -12px;
         }
     }

     .tired-section {
         font-family: "Poppins", system-ui, -apple-system, Segoe UI, Roboto, "Helvetica Neue", Arial;
         color: #fff;
         overflow: hidden;
     }

     /* Image de fond */

     .tired-bg {
         position: absolute;
         inset: 0;
         background-image: url('../img/tired-bg.jpg');
         /* 👉 remplace cette URL */
         background-size: cover;
         background-position: center right;
     }

     /* Overlay turquoise */

     .tired-bg::after {
         content: "";
         position: absolute;
         inset: 0;
         background: rgba(27, 182, 190, .82);
         mix-blend-mode: multiply;
     }

     .tired-title {
         font-weight: 700;
         font-size: 45px;
         line-height: 1.3;
         letter-spacing: .2px;
         max-width: 18ch;
     }

     .tired-title span {
         color: #f0ff00
     }

     .text-accent {
         color: #1e6fd6;
     }

     .tired-list {
         list-style: none;
         padding: 0;
     }

     .tired-list li {
         position: relative;
         padding-left: 1.4rem;
         margin-bottom: .8rem;
         font-size: 1.15rem;
         line-height: 1.55;
         font-weight: 600;
     }

     .tired-list li::before {
         content: "•";
         position: absolute;
         left: 0;
         top: 0;
         color: #fff;
         font-size: 1.2rem;
         line-height: 1;
     }

     .tired-text {
         font-size: 1.15rem;
         line-height: 1.6;
         opacity: .95;
         max-width: 44ch;
     }

     .btn-order {
         font-weight: 700 !important;
         font-size: 20px;
         background: #E21C3D;
         color: #fff;
         border: 0;
         border-radius: .45rem;
         box-shadow: 0 .5rem 1.25rem rgba(226, 28, 61, .3);
         padding: 15px 60px !important;
     }

     .testi-section {
         font-family: Poppins, system-ui, -apple-system, Segoe UI, Roboto, "Helvetica Neue", Arial;
     }

     .testi-card {
         background: #fff;
         border-color: #eeeeee;
         padding: 22px 22px 14px;
         min-height: 330px;
     }

     .testi-avatar {
         width: 86px;
         height: 86px;
         border-radius: 50%;
         object-fit: cover;
         display: block;
         margin: 0 auto;
         box-shadow: 0 4px 10px rgba(0, 0, 0, .15);
     }

     .quote-badge {
         position: absolute;
         left: 80px;
         top: -6px;
         width: 58px;
         height: 58px;
         border-radius: 50%;
         background: #e53935;
         color: #fff;
         display: flex;
         align-items: center;
         justify-content: center;
         font-size: 22px;
         font-weight: 800;
         line-height: 1;
         box-shadow: 0 6px 16px rgba(229, 57, 53, .35);
     }

     .testi-text {
         color: #555a61;
         font-size: .92rem;
         line-height: 1.55;
         text-align: center;
         margin: 0 4px 14px;
     }

     .stars {
         color: #f7b500;
         letter-spacing: 2px;
         font-size: .95rem;
     }

     /* Arrows (comme sur la maquette, simples chevrons noirs) */

     .testi-control {
         width: auto;
         opacity: 1;
         filter: none;
     }

     .testi-arrow {
         display: inline-block;
         width: 38px;
         height: 38px;
         line-height: 34px;
         text-align: center;
         border-radius: 50%;
         border: 2px solid #111;
         color: #111;
         font-size: 28px;
         font-weight: 700;
         background: #fff;
     }

     .carousel-control-prev,
     .carousel-control-next {
         position: absolute;
         top: 50%;
         transform: translateY(-50%);
     }

     @media (max-width: 991.98px) {
         .testi-card {
             min-height: auto;
         }
     }

     .promo-banner {
         background-color: #2ec8cc;
         font-family: "Poppins", system-ui, -apple-system, Segoe UI, Roboto, "Helvetica Neue", Arial;
         font-size: 1.05rem;
         padding: 1.2rem 0;
         position: relative;
     }

     .promo-banner::after {
         content: "";
         position: absolute;
         bottom: -15px;
         left: 50%;
         transform: translateX(-50%);
         width: 0;
         height: 0;
         border-left: 15px solid transparent;
         border-right: 15px solid transparent;
         border-top: 15px solid #2ec8cc;
         /* flèche vers le bas */
     }

     /*************
TABLE PRICE
************/

     .pricing-section {
         font-family: "Poppins", system-ui, -apple-system, Segoe UI, Roboto, "Helvetica Neue", Arial;
     }

     .pack-card {
         background: #fff;
         border-color: #e3e3e3;
         transition: all 0.3s ease;
         /* animation fluide */
         transform: scale(1);
         /* état initial */
     }

     .pack-card:hover {
         transform: scale(1.05);
         /* zoom léger */
         box-shadow: 0 12px 32px rgba(0, 0, 0, 0.18);
         /* ombre plus marquée */
         z-index: 10;
         /* au-dessus des autres cartes */
     }

     .pack-marge {
         margin-top: 30px;
     }

     .pack-featured {
         background: #fff9d9;
         /* jaune pâle */
         border: 3px solid #1e6fd6 !important;
         /* bord bleu franc */
         box-shadow: 0 10px 26px rgba(0, 0, 0, .12);
         padding-bottom: 52px !important;
     }

     .pack-title {
         color: #0d3dab;
         /* bleu titre */
         font-weight: 700;
         font-size: 25px;
         letter-spacing: .5px;
         text-transform: uppercase;
     }

     .pack-sub {
         color: #7a7f86;
         font-size: .9rem;
     }

     .marge {
         margin-top: 30px !important;
     }

     .price-wrap .price {
         color: #0d3dab;
         font-weight: 700;
         font-size: 60px;
         line-height: 1;
     }

     .price-meta {
         color: #0d3dab;
         font-weight: 600;
         margin-left: .35rem;
     }

     .blue {
         color: #6b89ce !important;
     }

     .btn-buy {
         background: linear-gradient(to bottom, #ffd801 0%, #ffe455 50%, #ffd801 50%, #ffd801 100%);
         border: 2px solid #e0b420;
         color: #111;
         font-weight: 700;
         border-radius: .5rem;
         padding: .9rem 1rem;
         font-size: 25px;
     }

     .btn-buy:hover {
         background: linear-gradient(to bottom, #ffd801 0%, #ffd801 50%, #ffe455 50%, #ffd801 100%);
         border: 2px solid #e0b420;
         color: #111;
         border-radius: .5rem;
         padding: .9rem 1rem;
     }

     .total {
         color: #5a5f66;
         font-weight: 600;
         font-size: .95rem;
     }

     .total-old {
         text-decoration: line-through;
         opacity: .8;
     }

     .total-new {
         color: #111;
         font-weight: 800;
     }

     .pay-icons img {
         height: auto;
         display: block;
         filter: saturate(.95);
     }

     .ship-note {
         font-weight: 600;
         color: #6c6c6c;
         font-size: .9rem;
     }

     /* Badge MEILLEUR CHOIX centré en haut à droite du visuel produit */

     .badge-choice {
         position: absolute;
         right: 54px;
         top: 78px;
         width: 68px;
         height: auto;
     }

     @media (max-width: 991.98px) {
         .badge-choice {
             right: 40px;
             top: 74px;
         }
     }

     @media (max-width: 575.98px) {
         .price-wrap .price {
             font-size: 2.2rem;
         }

         .badge-choice {
             right: 24px;
             top: 66px;
             width: 60px;
         }
     }

     .guarantee-section {
         background: #2ec8cc;
         /* turquoise de fond */
         font-family: "Poppins", system-ui, -apple-system, Segoe UI, Roboto, "Helvetica Neue", Arial;
     }

     .guarantee-title {
         color: #161a1d;
         letter-spacing: .2px;
         font-size: clamp(1.15rem, 1.1vw + 0.9rem, 1.45rem);
         line-height: 1.25;
     }

     .guarantee-text {
         color: #1f2328;
         opacity: .9;
         font-size: .96rem;
         line-height: 1.55;
         max-width: 46ch;
     }

     .certif-section {
         background: #2a2a2a;
         /* fond gris foncé comme sur la capture */
         font-family: "Poppins", system-ui, -apple-system, Segoe UI, Roboto, "Helvetica Neue", Arial;
     }

     .certif-badge {
         width: 120px;
         height: auto;
         filter: brightness(100%) contrast(105%);
     }

     @media (max-width:575.98px) {
         .certif-badge {
             width: 90px;
         }
     }

     .faq-section {
         font-family: Poppins, system-ui, -apple-system, Segoe UI, Roboto, "Helvetica Neue", Arial;
     }

     .faq-btn {
         width: 100%;
         display: flex;
         align-items: center;
         justify-content: space-between;
         padding: 14px 18px;
         border: 0;
         border-radius: .6rem;
         color: #1a1d21;
         font-weight: 600;
         letter-spacing: .1px;
         font-size: 20px;
         text-align: left;
     }

     .faq-btn.bg-light {
         background: #ededed !important;
     }

     /* gris doux comme la maquette */

     .faq-body {
         color: #3a3f45;
         font-size: .95rem;
         line-height: 1.6;
         padding: 12px 6px 4px 6px;
         max-width: 620px;
         margin-left: 14px;
         /* léger décalage visuel comme sur la capture */
     }

     /* Chevron rotation: pointé vers le bas (collapsed) → vers le haut (expanded) */

     .faq-btn .chev {
         transition: transform .2s ease;
         color: #1a1d21;
     }

     .faq-btn.collapsed .chev {
         transform: rotate(180deg);
     }

     /* bas */
     /* L'état par défaut (non .collapsed) est 'ouvert' → chevron vers le haut */

     @media(max-width: 460px) {
         .hero-wrap {
             height: 775px;
             background-size: cover;
             background-position: calc(50% + 200px) center;
             margin-bottom: 0;
         }

         .hero-title {
             font-size: 28px;
         }

         .btn-order-main {
             display: none;
         }

         .h2,
         h2 {
             font-size: 32px !important;
         }

         .tired-title {
             font-size: 32px;
         }

         .num {
             width: 34px;
             height: 34px;
             border-radius: 50%;
             background: #18b5bd;
             color: #fff;
             font-weight: 700;
             font-size: .95rem;
             display: inline-flex;
             align-items: center;
             justify-content: center;
             box-shadow: 0 6px 14px rgba(0, 0, 0, .2);
         }

         .badge-dot {
             display: none;
         }

         .orbit,
         .orbit-en {
             width: 360px;
             height: 400px;
             margin: 0 auto;
         }
     }
