<link rel="preconnect" href="https://fonts.googleapis.com">
  <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
  <link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap" rel="stylesheet">
 /* === RESET === */
    *,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
    html{scroll-behavior:smooth}
    body{font-family:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;line-height:1.6;color:#1f2937;background:#fff;overflow-x:hidden}
    img{max-width:100%;height:auto;display:block}
    a{text-decoration:none;color:inherit}
    button{border:none;background:none;cursor:pointer;font-family:inherit}

    /* === CONTAINER === */
    .container{max-width:1280px;margin:0 auto;padding:0 1rem}
    @media(min-width:640px){.container{padding:0 1.5rem}}

    /* === UTILITIES === */
    .text-center{text-align:center}
    .hidden{display:none}
    .desktop-only{display:none}
    @media(min-width:640px){.desktop-only{display:inline}.mobile-only{display:none}}

    /* === ANIMATIONS === */
    @keyframes pulse-glow{0%,100%{box-shadow:0 0 0 0 rgba(225,29,72,0.4)}50%{box-shadow:0 0 20px 10px rgba(225,29,72,0.2)}}
    @keyframes blink{0%,50%{opacity:1}51%,100%{opacity:0}}
    @keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-20px)}}
    @keyframes bounce{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}
    @keyframes fadeIn{from{opacity:0}to{opacity:1}}
    @keyframes strikethrough{from{width:0}to{width:100%}}
    .animate-pulse-glow{animation:pulse-glow 2s ease-in-out infinite}
    .animate-blink{animation:blink 1s step-end infinite}
    .animate-float{animation:float 6s ease-in-out infinite}
    .animate-bounce{animation:bounce 2s ease-in-out infinite}
    .strikethrough-anim{position:relative;display:inline-block}
    .strikethrough-anim::after{content:'';position:absolute;left:0;top:50%;width:100%;height:2px;background:#9ca3af;animation:strikethrough 0.3s ease-out forwards}
    .scroll-fade-up{opacity:0;transform:translateY(30px);transition:opacity 0.6s,transform 0.6s}
    .scroll-fade-up.visible{opacity:1;transform:translateY(0)}
    .scroll-scale{opacity:0;transform:scale(0.95);transition:opacity 0.6s,transform 0.6s}
    .scroll-scale.visible{opacity:1;transform:scale(1)}
    .delay-100{transition-delay:0.1s}.delay-200{transition-delay:0.2s}.delay-300{transition-delay:0.3s}
    .delay-400{transition-delay:0.4s}.delay-500{transition-delay:0.5s}.delay-600{transition-delay:0.6s}

    /* === HEADER === */
    .header{position:fixed;top:0;left:0;right:0;z-index:50;background:rgba(255,255,255,0.9);backdrop-filter:blur(12px);border-bottom:1px solid #f3f4f6}
    .header-content{display:flex;align-items:center;justify-content:space-between;padding:0.75rem 1rem}
    @media(min-width:640px){.header-content{padding:1rem 1.5rem}}
    .logo{font-size:1.25rem;font-weight:700;background:linear-gradient(to right,#e11d48,#ec4899);-webkit-background-clip:text;-webkit-text-fill-color:transparent}
    @media(min-width:640px){.logo{font-size:1.5rem}}

    /* === BUTTONS === */
    .btn{display:inline-flex;align-items:center;justify-content:center;padding:0.625rem 1rem;font-size:0.875rem;font-weight:600;border-radius:9999px;transition:all 0.3s}
    .btn-primary{background:#e11d48;color:#fff}
    .btn-primary:hover{background:#be123c;transform:scale(1.05)}
    .btn-lg{padding:1rem 2rem;font-size:1rem}
    @media(min-width:640px){.btn{padding:0.625rem 2rem}.btn-lg{padding:1.25rem 3rem;font-size:1.125rem}}

    /* === HERO === */
    .hero{position:relative;min-height:100vh;display:flex;align-items:center;overflow:hidden;padding-top:5rem;padding-bottom:4rem}
    @media(min-width:640px){.hero{padding-top:6rem}}
    .hero-bg{position:absolute;inset:0;background:linear-gradient(to bottom right,#f9fafb,#fff1f2)}
    .hero-grid{position:absolute;inset:0;display:grid;grid-template-columns:repeat(4,1fr);gap:0.5rem;padding:1rem;opacity:0.1}
    @media(min-width:640px){.hero-grid{grid-template-columns:repeat(6,1fr);gap:1rem;padding:3rem}}
    .hero-grid-item{aspect-ratio:1;background:#d1d5db;border-radius:0.5rem}
    .hero-content{position:relative;z-index:10;width:100%;max-width:64rem;margin:0 auto;padding:0 1rem}
    @media(min-width:1024px){.hero-content{padding:0 2rem}}
    .hero-inner{display:flex;flex-direction:column;align-items:center;gap:2rem}
    @media(min-width:1024px){.hero-inner{flex-direction:row;gap:5rem}}
    .hero-text{text-align:center;flex:1}
    @media(min-width:1024px){.hero-text{text-align:left}}
    .hero-title{font-size:2.25rem;font-weight:700;margin-bottom:1rem;line-height:1.1}
    @media(min-width:640px){.hero-title{font-size:3rem}}
    @media(min-width:768px){.hero-title{font-size:3.75rem}}
    @media(min-width:1024px){.hero-title{font-size:4.5rem}}
    .hero-title-main{display:block;min-height:1.2em}
    .hero-subtitle-block{display:block;font-size:1.25rem;margin-top:0.5rem}
    @media(min-width:640px){.hero-subtitle-block{font-size:1.5rem}}
    @media(min-width:768px){.hero-subtitle-block{font-size:1.875rem}}
    @media(min-width:1024px){.hero-subtitle-block{font-size:2.25rem}}
    .hero-line{display:block;color:#e11d48;transition:opacity 0.2s}.hero-line span{position:relative;display:inline}
    .hero-line.struck{color:#9ca3af}
    .hero-line.magic span,.hero-line span.magic{background:linear-gradient(to right,#e11d48,#ec4899);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
    .hero-description{font-size:1rem;color:#4b5563;margin-bottom:1.5rem;max-width:32rem;margin-left:auto;margin-right:auto}
    @media(min-width:1024px){.hero-description{margin-left:0;margin-top:4rem}}
    .hero-cta-wrapper{display:flex;flex-direction:column;align-items:center;gap:1rem}
    @media(min-width:640px){.hero-cta-wrapper{flex-direction:row}}
    @media(min-width:1024px){.hero-cta-wrapper{justify-content:flex-start}}
    .hero-social-proof{margin-top:1.5rem;font-size:0.75rem;color:#6b7280;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:0.5rem}
    @media(min-width:640px){.hero-social-proof{font-size:0.875rem}}
    @media(min-width:1024px){.hero-social-proof{justify-content:flex-start}}
    .hero-star{width:1rem;height:1rem;color:#eab308;fill:currentColor}
    .hero-france{display:inline-flex;align-items:center;gap:0.25rem}
    .hero-france img{width:1rem;height:1rem}
    .hero-video-wrapper{flex-shrink:0;width:100%;max-width:280px}
    @media(min-width:640px){.hero-video-wrapper{max-width:320px}}
    @media(min-width:1024px){.hero-video-wrapper{max-width:360px}}
    .hero-video-container{position:relative;aspect-ratio:3/4;border-radius:1rem;box-shadow:0 25px 50px -12px rgba(0,0,0,0.25);overflow:hidden;background:#F5F0EA}
    @media(min-width:640px){.hero-video-container{border-radius:1.5rem}}
    .hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transform:scale(1.05)}
    .hero-corner{position:absolute;width:2rem;height:2rem;border:2px solid #e11d48}
    .hero-corner.tl{top:0.75rem;left:0.75rem;border-right:none;border-bottom:none;border-radius:0.5rem 0 0 0}
    .hero-corner.tr{top:0.75rem;right:0.75rem;border-left:none;border-bottom:none;border-radius:0 0.5rem 0 0}
    .hero-corner.bl{bottom:0.75rem;left:0.75rem;border-right:none;border-top:none;border-radius:0 0 0 0.5rem}
    .hero-corner.br{bottom:0.75rem;right:0.75rem;border-left:none;border-top:none;border-radius:0 0 0.5rem 0}
    .scroll-indicator{position:absolute;bottom:1.5rem;left:50%;transform:translateX(-50%)}
    @media(min-width:640px){.scroll-indicator{bottom:2.5rem}}
    .scroll-indicator-inner{width:1.5rem;height:2.5rem;border:2px solid #e11d48;border-radius:9999px;display:flex;align-items:flex-start;justify-content:center;padding:0.5rem}
    .scroll-indicator-dot{width:0.375rem;height:0.75rem;background:#e11d48;border-radius:9999px}

    /* === SECTIONS === */
    .section{padding:4rem 0}
    @media(min-width:640px){.section{padding:6rem 0}}
    .section-gradient{background:linear-gradient(to bottom,#f9fafb,#fff)}
    .section-title{font-size:1.875rem;font-weight:700;text-align:center;margin-bottom:1rem}
    @media(min-width:640px){.section-title{font-size:2.25rem}}
    @media(min-width:1024px){.section-title{font-size:3rem}}
    .section-subtitle{font-size:1rem;color:#4b5563;text-align:center;margin-bottom:2.5rem;max-width:48rem;margin-left:auto;margin-right:auto}
    @media(min-width:640px){.section-subtitle{font-size:1.125rem}}

    /* === VIDEO SECTION === */
    .video-section{padding:3rem 0 5rem;background:linear-gradient(to bottom,#fff,#f9fafb,#fff);overflow:hidden}
    @media(min-width:640px){.video-section{padding:5rem 0 7rem}}
    @media(min-width:1024px){.video-section{padding:7rem 0}}
    .video-wrapper{position:relative;max-width:72rem;margin:0 auto}
    .video-desktop{display:none;position:relative;border-radius:1.5rem;overflow:hidden;box-shadow:0 25px 50px -12px rgba(0,0,0,0.25);background:#000}
    @media(min-width:1024px){.video-desktop{display:block}}
    .video-desktop video{width:100%;aspect-ratio:16/9;object-fit:cover;display:block;transform:scale(1.01)}
    .video-card{position:absolute;right:1.5rem;top:50%;transform:translateY(-50%);width:20rem;background:rgba(255,255,255,0.9);backdrop-filter:blur(12px);border-radius:1rem;padding:1.5rem;box-shadow:0 20px 25px -5px rgba(0,0,0,0.1)}
    .video-step-text{min-height:5rem;display:flex;align-items:center;justify-content:center}
    .video-step-text p{font-size:1.25rem;font-weight:600;color:#1f2937;text-align:center}
    .video-dots{display:flex;justify-content:center;gap:0.5rem;margin-top:1rem}
    .video-dot{width:0.75rem;height:0.75rem;border-radius:9999px;background:#d1d5db;transition:all 0.3s;cursor:pointer}
    .video-dot.active{background:#e11d48;transform:scale(1.25)}
    .video-dot.past{background:#fda4af}
    .video-mobile{display:block;position:relative;border-radius:1rem;overflow:hidden;box-shadow:0 20px 25px -5px rgba(0,0,0,0.1)}
    @media(min-width:1024px){.video-mobile{display:none}}
    .video-mobile video{width:100%;aspect-ratio:9/16;object-fit:cover}
    .video-mobile-card{margin-top:1.5rem;background:linear-gradient(to right,#fff1f2,#fce7f3);border-radius:1rem;padding:1.5rem;border:1px solid #fecdd3}
    @media(min-width:1024px){.video-mobile-card{display:none}}
    .video-progress{margin-top:1rem;max-width:56rem;margin-left:auto;margin-right:auto}
    .video-progress-bar{height:0.25rem;background:#e5e7eb;border-radius:9999px;overflow:hidden}
    .video-progress-fill{height:100%;background:linear-gradient(to right,#f43f5e,#ec4899);transition:width 0.1s}

    /* === DIAPORAMA === */
    .diaporama-section{padding:4rem 0;background:linear-gradient(to bottom,#f9fafb,#fff);overflow:hidden}
    @media(min-width:640px){.diaporama-section{padding:6rem 0}}
    .diaporama-card{border-radius:1rem;overflow:hidden;box-shadow:0 20px 25px -5px rgba(0,0,0,0.1);background:#FFF1F2;max-width:72rem;margin:0 auto}
    @media(min-width:640px){.diaporama-card{border-radius:1.5rem}}
    .diaporama-inner{display:flex;flex-direction:column}
    @media(min-width:1024px){.diaporama-inner{flex-direction:row}}
    .diaporama-text{flex:1;padding:1.5rem;display:flex;flex-direction:column;justify-content:center}
    @media(min-width:640px){.diaporama-text{padding:2.5rem}}
    @media(min-width:1024px){.diaporama-text{padding:4rem}}
    .diaporama-title{font-size:1.5rem;font-weight:700;margin-bottom:1rem;color:#111827}
    @media(min-width:640px){.diaporama-title{font-size:1.875rem}}
    @media(min-width:1024px){.diaporama-title{font-size:3rem;margin-bottom:2.5rem}}
    .diaporama-description{font-size:1rem;color:#4b5563;margin-bottom:1.5rem;max-width:28rem}
    @media(min-width:1024px){.diaporama-description{margin-bottom:3rem}}
    .diaporama-pill{display:inline-flex;align-items:center;gap:0.5rem;padding:0.5rem 1rem;border-radius:9999px;font-size:0.875rem;font-weight:600;box-shadow:0 4px 6px -1px rgba(0,0,0,0.1);margin-bottom:1.5rem;width:fit-content}
    .diaporama-pill.finition{background:#fff;color:#1f2937}
    .diaporama-pill.format{background:#1f2937;color:#fff}
    .diaporama-pill-dot{width:0.75rem;height:0.75rem;border-radius:9999px}
    .diaporama-image-wrapper{flex:1;display:flex;align-items:flex-end;justify-content:center;position:relative;min-height:350px}
    @media(min-width:640px){.diaporama-image-wrapper{min-height:450px}}
    @media(min-width:1024px){.diaporama-image-wrapper{min-height:500px}}
    .diaporama-image{width:100%;height:100%;object-fit:contain;object-position:bottom;transition:opacity 0.5s}
    .diaporama-nav{position:absolute;top:50%;transform:translateY(-50%);width:3.5rem;height:3.5rem;border-radius:9999px;background:rgba(255,255,255,0.95);border:1px solid #e5e7eb;display:flex;align-items:center;justify-content:center;box-shadow:0 20px 25px -5px rgba(0,0,0,0.1);transition:all 0.3s;z-index:20}
    .diaporama-nav:hover{background:#fff1f2;border-color:#fecdd3;transform:translateY(-50%) scale(1.1)}
    .diaporama-nav.prev{left:0.5rem}
    @media(min-width:640px){.diaporama-nav.prev{left:1rem}}
    .diaporama-nav.next{right:0.5rem}
    @media(min-width:640px){.diaporama-nav.next{right:1rem}}
    .diaporama-nav svg{width:1.5rem;height:1.5rem;color:#374151}
    .diaporama-dots{display:none;gap:0.5rem;margin-top:2rem}
    @media(min-width:1024px){.diaporama-dots{display:flex}}
    .diaporama-dots-mobile{display:flex;justify-content:center;gap:0.5rem;padding-bottom:1.5rem}
    @media(min-width:1024px){.diaporama-dots-mobile{display:none}}
    .diaporama-dot{width:0.75rem;height:0.75rem;border-radius:9999px;background:rgba(156,163,175,0.5);transition:all 0.3s;cursor:pointer}
    .diaporama-dot.active{background:#e11d48;transform:scale(1.25)}

    /* === STEPS === */
    .steps-section{padding:4rem 0;background:linear-gradient(to bottom,#f9fafb,#fff)}
    @media(min-width:640px){.steps-section{padding:6rem 0}}
    .steps-grid{display:grid;grid-template-columns:1fr;gap:1.5rem;max-width:72rem;margin:0 auto}
    @media(min-width:768px){.steps-grid{grid-template-columns:repeat(3,1fr);gap:2rem}}
    @media(min-width:1024px){.steps-grid{gap:3rem}}
    .step-card{padding:1.5rem;text-align:center;background:#f3f4f6;border-radius:1rem;transition:all 0.3s}
    @media(min-width:640px){.step-card{padding:2rem}}
    @media(min-width:1024px){.step-card{padding:2.5rem}}
    .step-card:hover{background:#fff;transform:scale(1.02);box-shadow:0 25px 50px -12px rgba(0,0,0,0.15)}
    .step-icon{display:flex;justify-content:center;margin-bottom:1rem}
    @media(min-width:640px){.step-icon{margin-bottom:1.5rem}}
    .step-icon img{width:6rem;height:6rem;object-fit:contain}
    @media(min-width:640px){.step-icon img{width:7rem;height:7rem}}
    @media(min-width:1024px){.step-icon img{width:8rem;height:8rem}}
    .step-title{font-size:1.25rem;font-weight:700;margin-bottom:0.75rem}
    @media(min-width:640px){.step-title{font-size:1.5rem}}
    .step-number{color:#e11d48}
    .step-description{font-size:0.875rem;color:#4b5563;line-height:1.6}
    @media(min-width:640px){.step-description{font-size:1rem}}
    .step-france{display:inline-block;width:1.25rem;height:1.25rem;vertical-align:middle}
    .steps-cta{text-align:center;margin-top:2.5rem}
    @media(min-width:640px){.steps-cta{margin-top:4rem}}

    /* === PRICING === */
    .pricing-section{padding:4rem 0;background:linear-gradient(to bottom,#f9fafb,#fff);overflow:hidden}
    @media(min-width:640px){.pricing-section{padding:6rem 0}}
    .pricing-stairs{max-width:56rem;margin:0 auto 2rem}
    .pricing-badge{display:inline-block;background:#374151;color:#fff;font-weight:600;padding:0.5rem 1rem;border-radius:9999px;font-size:0.875rem;margin-bottom:1.5rem}
    .pricing-stairs-grid{display:flex;flex-direction:column;gap:0.75rem}
    @media(min-width:640px){.pricing-stairs-grid{flex-direction:row;align-items:flex-end;gap:0}}
    .pricing-stair{width:100%;text-align:center;border-radius:1rem;padding:1rem 1.5rem;transition:all 0.3s}
    @media(min-width:640px){.pricing-stair{width:25%;border-radius:1rem 1rem 0 0;margin-left:-1px}}
    .pricing-stair:hover{transform:scale(1.02)}
    .pricing-stair.l1{background:#f3f4f6;min-height:140px}
    .pricing-stair.l2{background:#fff1f2;min-height:170px}
    .pricing-stair.l3{background:#ffe4e6;min-height:200px}
    .pricing-stair.l4{background:linear-gradient(to bottom right,#f43f5e,#ec4899);min-height:230px;box-shadow:0 20px 25px -5px rgba(0,0,0,0.1)}
    .pricing-label{font-size:0.75rem;font-weight:600;margin-bottom:0.5rem}
    .pricing-stair.l1 .pricing-label{color:#6b7280}
    .pricing-stair.l2 .pricing-label,.pricing-stair.l3 .pricing-label{color:#e11d48}
    .pricing-stair.l4 .pricing-label{color:rgba(255,255,255,0.9)}
    .pricing-discount{display:inline-block;font-weight:700;font-size:0.75rem;padding:0.125rem 0.5rem;border-radius:9999px;margin-bottom:0.5rem}
    .pricing-stair.l2 .pricing-discount{background:#fecdd3;color:#be123c}
    .pricing-stair.l3 .pricing-discount{background:#f43f5e;color:#fff}
    .pricing-stair.l4 .pricing-discount{background:#fff;color:#e11d48}
    .pricing-price{font-size:1.5rem;font-weight:700;margin-bottom:0.25rem}
    @media(min-width:640px){.pricing-price{font-size:1.875rem}}
    .pricing-stair.l1 .pricing-price,.pricing-stair.l2 .pricing-price,.pricing-stair.l3 .pricing-price{color:#1f2937}
    .pricing-stair.l4 .pricing-price{color:#fff}
    .pricing-unit{font-size:0.75rem}
    .pricing-stair.l1 .pricing-unit{color:#9ca3af}
    .pricing-stair.l2 .pricing-unit,.pricing-stair.l3 .pricing-unit{color:#6b7280}
    .pricing-stair.l4 .pricing-unit{color:rgba(255,255,255,0.8)}
    .pricing-savings{font-size:0.75rem;margin-top:0.25rem}
    .pricing-stair.l2 .pricing-savings,.pricing-stair.l3 .pricing-savings{color:#e11d48}
    .pricing-stair.l4 .pricing-savings{color:#fff;font-weight:600;font-size:0.875rem}
    .pricing-best{margin-top:0.75rem;display:inline-block;background:rgba(255,255,255,0.2);border-radius:9999px;padding:0.25rem 0.75rem;font-size:0.75rem;font-weight:700;color:#fff}
    .pricing-comparison{max-width:48rem;margin:0 auto 2rem}
    .pricing-comparison-inner{background:linear-gradient(to right,#f9fafb,#f3f4f6);border-radius:1rem;padding:1.25rem}
    @media(min-width:640px){.pricing-comparison-inner{padding:2rem}}
    .pricing-comparison-grid{display:flex;flex-direction:column;align-items:center;gap:1rem;text-align:center}
    @media(min-width:640px){.pricing-comparison-grid{flex-direction:row;gap:2rem}}
    .pricing-comparison-item{flex:1}
    .pricing-comparison-label{font-size:0.875rem;color:#6b7280;margin-bottom:0.25rem}
    .pricing-comparison-label.rose{color:#e11d48;font-weight:600}
    .pricing-comparison-price{font-size:1.5rem;font-weight:700}
    .pricing-comparison-price.old{color:#9ca3af;text-decoration:line-through}
    .pricing-comparison-price.new{color:#1f2937}
    .pricing-comparison-detail{font-size:0.75rem;color:#9ca3af}
    .pricing-comparison-detail.rose{color:#e11d48;font-weight:700}
    .pricing-vs{font-size:1.5rem;font-weight:700;color:#d1d5db}
    .pricing-features{display:flex;flex-wrap:wrap;justify-content:center;gap:1rem;margin-bottom:2rem;font-size:0.875rem;color:#4b5563}
    @media(min-width:640px){.pricing-features{gap:2rem}}
    .pricing-feature{display:flex;align-items:center;gap:0.5rem}
    .pricing-feature svg{width:1.25rem;height:1.25rem}
    .pricing-feature svg.rose{color:#f43f5e}
    .pricing-feature svg.yellow{color:#eab308}
    .pricing-toggle{display:flex;align-items:center;gap:0.5rem;margin:0 auto 3rem;background:#fff1f2;color:#e11d48;font-weight:600;font-size:0.875rem;padding:0.625rem 1.25rem;border-radius:9999px;transition:all 0.3s}
    .pricing-toggle:hover{background:#ffe4e6}
    .pricing-toggle svg{width:1rem;height:1rem;transition:transform 0.3s}
    .pricing-toggle.open svg{transform:rotate(180deg)}
    .pricing-table{max-width:32rem;margin:0 auto 2.5rem}
    .pricing-table-inner{background:#f9fafb;border-radius:1rem;padding:1rem 1.5rem;border:1px solid #e5e7eb}
    .pricing-table h4{font-weight:700;text-align:center;margin-bottom:1rem}
    .pricing-table table{width:100%;font-size:0.875rem}
    .pricing-table th{text-align:left;padding:0.5rem;font-weight:600;color:#4b5563;border-bottom:1px solid #e5e7eb}
    .pricing-table th:not(:first-child){text-align:center}
    .pricing-table td{padding:0.75rem 0.5rem;border-bottom:1px solid #f3f4f6}
    .pricing-table td:first-child{font-weight:500}
    .pricing-table td:not(:first-child){text-align:center}
    .pricing-table tr:last-child td{border-bottom:none}
    .pricing-table-note{font-size:0.75rem;color:#6b7280;text-align:center;margin-top:1rem}

    /* === TESTIMONIALS === */
    .testimonials-section{padding:4rem 0;background:linear-gradient(to bottom,#f9fafb,#fff);overflow:hidden}
    @media(min-width:640px){.testimonials-section{padding:6rem 0}}
    .testimonials-badge{font-size:0.875rem;font-weight:600;color:#e11d48;text-transform:uppercase;letter-spacing:0.05em;margin-bottom:0.75rem}
    .testimonials-hint{display:flex;justify-content:center;gap:0.5rem;margin-bottom:1rem;font-size:0.75rem;color:#6b7280}
    @media(min-width:1024px){.testimonials-hint{display:none}}
    .testimonials-wrapper{position:relative;padding:0 1rem}
    @media(min-width:640px){.testimonials-wrapper{padding:0 1.5rem}}
    @media(min-width:1024px){.testimonials-wrapper{padding:0 calc((100vw - 1400px) / 2)}}
    .testimonials-carousel{display:flex;gap:1.25rem;overflow-x:auto;padding-bottom:1rem;scroll-behavior:smooth;scroll-snap-type:x mandatory;-ms-overflow-style:none;scrollbar-width:none}
    @media(min-width:1024px){.testimonials-carousel{gap:1.5rem}}
    .testimonials-carousel::-webkit-scrollbar{display:none}
    .testimonial-card{flex-shrink:0;width:300px;background:#fff;border-radius:1rem;box-shadow:0 10px 15px -3px rgba(0,0,0,0.1);overflow:hidden;scroll-snap-align:start;transition:box-shadow 0.3s}
    @media(min-width:640px){.testimonial-card{width:350px}}
    @media(min-width:1024px){.testimonial-card{width:400px}}
    .testimonial-card:hover{box-shadow:0 20px 25px -5px rgba(0,0,0,0.1)}
    .testimonial-image{width:100%;height:auto}
    .testimonial-content{padding:1.25rem 1.5rem}
    .testimonial-text{color:#374151;font-style:italic;font-size:1rem;margin-bottom:0.75rem}
    @media(min-width:640px){.testimonial-text{font-size:1.125rem}}
    .testimonial-author{color:#e11d48;font-weight:600;font-size:0.875rem}
    @media(min-width:640px){.testimonial-author{font-size:1rem}}
    .carousel-nav{display:none;position:absolute;top:50%;transform:translateY(-50%);z-index:20;width:3.5rem;height:3.5rem;border-radius:9999px;background:rgba(255,255,255,0.95);border:1px solid #e5e7eb;box-shadow:0 20px 25px -5px rgba(0,0,0,0.1);align-items:center;justify-content:center;transition:all 0.3s}
    @media(min-width:1024px){.carousel-nav{display:flex}}
    .carousel-nav:hover{background:#fff1f2;border-color:#fecdd3;transform:translateY(-50%) scale(1.1)}
    .carousel-nav.prev{left:0.5rem}
    @media(min-width:1024px){.carousel-nav.prev{left:calc((100vw - 1400px) / 2 - 1.75rem)}}
    .carousel-nav.next{right:0.5rem}
    @media(min-width:1024px){.carousel-nav.next{right:calc((100vw - 1400px) / 2 - 1.75rem)}}
    .carousel-nav svg{width:1.5rem;height:1.5rem;color:#374151}
    .testimonials-note{text-align:center;font-size:0.875rem;color:#6b7280;margin-top:2rem}

    /* === FEATURES === */
    .features-section{padding:4rem 0 5rem;background:linear-gradient(to bottom,#f9fafb,#fff)}
    @media(min-width:640px){.features-section{padding:6rem 0 8rem}}
    .features-section .container{max-width:1400px}
    @media(min-width:1024px){.features-section .container{padding:0 calc((100vw - 1400px) / 2);max-width:none}}
    .features-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}
    @media(min-width:768px){.features-grid{gap:1.5rem}}
    @media(min-width:1024px){.features-grid{grid-template-columns:repeat(4,1fr);gap:2rem}}
    .feature-card{padding:1rem;text-align:center;background:#f3f4f6;border-radius:1rem;transition:all 0.3s}
    @media(min-width:640px){.feature-card{padding:1.5rem}}
    @media(min-width:1024px){.feature-card{padding:2rem}}
    .feature-card:hover{background:#fff;transform:scale(1.02);box-shadow:0 25px 50px -12px rgba(0,0,0,0.15)}
    .feature-icon{display:flex;justify-content:center;margin-bottom:0.75rem}
    @media(min-width:640px){.feature-icon{margin-bottom:1rem}}
    .feature-icon img{width:4rem;height:4rem;object-fit:contain}
    @media(min-width:640px){.feature-icon img{width:5rem;height:5rem}}
    @media(min-width:1024px){.feature-icon img{width:6rem;height:6rem}}
    .feature-title{font-size:1rem;font-weight:700;margin-bottom:0.5rem}
    @media(min-width:640px){.feature-title{font-size:1.125rem}}
    @media(min-width:1024px){.feature-title{font-size:1.25rem}}
    .feature-description{font-size:0.75rem;color:#4b5563}
    @media(min-width:640px){.feature-description{font-size:0.875rem}}
    @media(min-width:1024px){.feature-description{font-size:1rem}}

    /* === GALLERY === */
    .gallery-section{padding:4rem 0;background:linear-gradient(to bottom,#f9fafb,#fff);overflow:hidden}
    @media(min-width:640px){.gallery-section{padding:6rem 0}}
    .gallery-section .container{max-width:1400px}
    @media(min-width:1024px){.gallery-section .container{padding:0 calc((100vw - 1400px) / 2);max-width:none}}
    .gallery-grid{display:none;grid-template-columns:repeat(4,1fr);gap:2rem}
    @media(min-width:1024px){.gallery-grid{display:grid;gap:2rem}}
    .gallery-item{position:relative;border-radius:1rem;overflow:hidden;background:#f3f4f6;aspect-ratio:3/4;transition:all 0.3s}
    .gallery-item:hover{transform:scale(1.02);box-shadow:0 25px 50px -12px rgba(0,0,0,0.15)}
    .gallery-item img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform 0.5s}
    .gallery-item:hover img{transform:scale(1.05)}
    .gallery-pill{position:absolute;top:1rem;left:1rem;background:rgba(255,255,255,0.95);border-radius:9999px;padding:0.375rem 1rem;box-shadow:0 10px 15px -3px rgba(0,0,0,0.1);z-index:10}
    .gallery-pill span{font-size:0.875rem;font-weight:600;color:#e11d48}
    .gallery-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity 0.3s}
    .gallery-item:hover .gallery-overlay{opacity:1}
    .gallery-cta{background:#e11d48;color:#fff;font-weight:600;padding:0.75rem 1.5rem;border-radius:9999px;box-shadow:0 20px 25px -5px rgba(0,0,0,0.1);transition:all 0.3s;transform:translateY(1rem)}
    .gallery-item:hover .gallery-cta{transform:translateY(0)}
    .gallery-cta:hover{background:#be123c}
    .gallery-mobile{display:block}
    @media(min-width:1024px){.gallery-mobile{display:none}}
    .gallery-hint{display:flex;justify-content:center;gap:0.5rem;margin-bottom:1rem;font-size:0.75rem;color:#6b7280}
    .gallery-carousel{display:flex;gap:1rem;overflow-x:auto;padding-bottom:1rem;scroll-behavior:smooth;scroll-snap-type:x mandatory;-ms-overflow-style:none;scrollbar-width:none}
    .gallery-carousel::-webkit-scrollbar{display:none}
    .gallery-carousel-item{flex-shrink:0;width:300px;background:#fff;border-radius:1rem;box-shadow:0 10px 15px -3px rgba(0,0,0,0.1);overflow:hidden;scroll-snap-align:start}
    @media(min-width:640px){.gallery-carousel-item{width:350px}}
    .gallery-carousel-image{position:relative;aspect-ratio:3/4;overflow:hidden}
    .gallery-carousel-image img{width:100%;height:100%;object-fit:cover}
    .gallery-carousel-content{padding:1.25rem}
    .gallery-carousel-content span{display:inline-block;background:#e11d48;color:#fff;font-weight:600;padding:0.625rem 1.25rem;border-radius:9999px;font-size:0.875rem}

    /* === FAQ === */
    .faq-section{padding:4rem 0;background:linear-gradient(to bottom,#f9fafb,#fff)}
    @media(min-width:640px){.faq-section{padding:6rem 0}}
    .faq-badge{font-size:0.875rem;font-weight:600;color:#e11d48;text-transform:uppercase;letter-spacing:0.05em;margin-bottom:0.75rem}
    .faq-list{max-width:56rem;margin:0 auto;display:flex;flex-direction:column;gap:0.75rem}
    .faq-item{background:#f3f4f6;border-radius:0.75rem;overflow:hidden;transition:all 0.3s}
    .faq-item:hover{background:#e5e7eb}
    .faq-question{width:100%;padding:1.25rem 1.5rem;display:flex;align-items:center;justify-content:space-between;text-align:left}
    .faq-question span:first-child{font-weight:600;color:#1f2937;padding-right:1rem}
    .faq-icon{flex-shrink:0;width:1.5rem;height:1.5rem;display:flex;align-items:center;justify-content:center;border-radius:9999px;background:#ffe4e6;color:#e11d48;transition:transform 0.3s}
    .faq-item.open .faq-icon{transform:rotate(180deg)}
    .faq-answer{max-height:0;overflow:hidden;transition:max-height 0.3s}
    .faq-item.open .faq-answer{max-height:500px}
    .faq-answer-inner{padding:1.25rem 1.5rem;background:#fff;color:#4b5563;line-height:1.6}

    /* === FINAL CTA === */
    .final-cta{padding:4rem 0;background:linear-gradient(to bottom,#f9fafb,#fff 50%,#fff);position:relative;overflow:hidden}
    @media(min-width:640px){.final-cta{padding:6rem 0}}
    @media(min-width:1024px){.final-cta{padding:8rem 0}}
    .final-cta-bg{position:absolute;inset:0;opacity:0.6}
    .final-cta-bubble{position:absolute;border-radius:9999px}
    .final-cta-bubble.b1{top:2.5rem;left:2.5rem;width:5rem;height:5rem;background:#fecdd3}
    @media(min-width:640px){.final-cta-bubble.b1{width:8rem;height:8rem}}
    .final-cta-bubble.b2{bottom:5rem;right:5rem;width:8rem;height:8rem;background:#ffe4e6}
    @media(min-width:640px){.final-cta-bubble.b2{width:12rem;height:12rem}}
    .final-cta-bubble.b3{top:50%;left:25%;width:4rem;height:4rem;background:#fecdd3}
    .final-cta-bubble.b4{top:5rem;right:25%;width:3rem;height:3rem;background:#ffe4e6}
    .final-cta-bubble.b5{bottom:8rem;left:33%;width:3.5rem;height:3.5rem;background:#fecdd3}
    .final-cta-content{position:relative;z-index:10;max-width:48rem;margin:0 auto;text-align:center}
    .final-cta-title{font-size:1.875rem;font-weight:700;color:#111827;margin-bottom:2rem}
    @media(min-width:640px){.final-cta-title{font-size:3rem;margin-bottom:3rem}}
    @media(min-width:768px){.final-cta-title{font-size:3.75rem}}
    .final-cta-lines{display:flex;flex-direction:column;gap:0.75rem;margin-bottom:2rem}
    @media(min-width:640px){.final-cta-lines{gap:1rem;margin-bottom:2.5rem}}
    .final-cta-line{font-size:1.125rem;color:#4b5563}
    @media(min-width:640px){.final-cta-line{font-size:1.5rem}}
    .final-cta-question{font-size:1.25rem;font-weight:600;color:#1f2937;margin-bottom:2.5rem}
    @media(min-width:640px){.final-cta-question{font-size:1.875rem;margin-bottom:3.5rem}}
    .final-cta-btn{display:inline-flex;align-items:center;justify-content:center;background:#e11d48;color:#fff;font-size:1.125rem;font-weight:700;padding:1.25rem 2rem;border-radius:9999px;box-shadow:0 25px 50px -12px rgba(0,0,0,0.25);transition:all 0.3s}
    @media(min-width:640px){.final-cta-btn{font-size:1.5rem;padding:1.5rem 4rem}}
    .final-cta-btn:hover{background:#be123c;transform:scale(1.05)}
    .final-cta-ps{color:#6b7280;margin-top:2rem;font-size:0.875rem;font-style:italic;max-width:28rem;margin-left:auto;margin-right:auto}
    @media(min-width:640px){.final-cta-ps{margin-top:3rem;font-size:1rem}}

    /* === BACK TO TOP === */
    .back-to-top{position:fixed;bottom:1.5rem;right:1.5rem;z-index:50;width:3rem;height:3rem;background:#e11d48;color:#fff;border-radius:9999px;box-shadow:0 10px 15px -3px rgba(0,0,0,0.1);display:flex;align-items:center;justify-content:center;transition:all 0.3s;opacity:0;transform:translateY(1rem);pointer-events:none}
    .back-to-top.visible{opacity:1;transform:translateY(0);pointer-events:auto}
    .back-to-top:hover{background:#be123c}

    /* === FOOTER === */
    .footer{background:#111827;color:#fff}
    .footer-badges{border-bottom:1px solid #1f2937}
    .footer-badges-inner{padding:1.5rem 0;display:flex;flex-wrap:wrap;justify-content:center;gap:1.5rem}
    @media(min-width:640px){.footer-badges-inner{padding:2rem 0;gap:2.5rem}}
    .footer-badge{display:flex;align-items:center;gap:0.5rem}
    .footer-badge img,.footer-badge svg{width:1.25rem;height:1.25rem}
    @media(min-width:640px){.footer-badge img,.footer-badge svg{width:1.5rem;height:1.5rem}}
    .footer-badge span{font-size:0.875rem;color:#9ca3af}
    .footer-main{padding:2.5rem 0 3.5rem}
    @media(min-width:640px){.footer-main{padding:3.5rem 0}}
    .footer-grid{display:grid;grid-template-columns:1fr;gap:2rem;margin-bottom:2.5rem}
    @media(min-width:768px){.footer-grid{grid-template-columns:repeat(4,1fr);gap:3rem}}
    .footer-logo{font-size:1.25rem;font-weight:700;background:linear-gradient(to right,#f43f5e,#ec4899);-webkit-background-clip:text;-webkit-text-fill-color:transparent;margin-bottom:1rem}
    @media(min-width:640px){.footer-logo{font-size:1.5rem}}
    .footer-tagline{color:#9ca3af;font-size:0.875rem;line-height:1.6;margin-bottom:1rem}
    .footer-made{color:#6b7280;font-size:0.75rem;display:flex;align-items:center;gap:0.25rem}
    .footer-made img{width:1rem;height:1rem}
    .footer-column h4{font-weight:600;margin-bottom:1rem}
    .footer-column ul{list-style:none;display:flex;flex-direction:column;gap:0.5rem}
    .footer-column ul a{color:#9ca3af;font-size:0.875rem;transition:color 0.3s}
    .footer-column ul a:hover{color:#fff}
    .footer-contact-title{font-weight:600;margin-bottom:0.75rem;font-size:0.875rem;margin-top:1.5rem}
    .footer-contact-address{color:#9ca3af;font-size:0.875rem;display:flex;flex-direction:column;gap:0.25rem}
    .footer-contact-phone{color:#fb7185;margin-top:0.5rem;display:block;transition:color 0.3s}
    .footer-contact-phone:hover{color:#fda4af}
    .footer-payments{border-top:1px solid #1f2937;padding-top:2rem;padding-bottom:1.5rem}
    .footer-payments-inner{display:flex;flex-wrap:wrap;justify-content:center;gap:0.75rem}
    .footer-payments-label{font-size:0.75rem;color:#6b7280;margin-right:0.5rem}
    .payment-icon{background:#fff;border-radius:0.25rem;padding:0.375rem 0.75rem;display:flex;align-items:center;justify-content:center;font-size:0.875rem;font-weight:700}
    .payment-icon.visa{color:#1A1F71;font-style:italic}
    .payment-icon.stripe{background:#635bff;color:#fff}
    .payment-icon.apple{background:#000;color:#fff}
    .footer-copyright{border-top:1px solid #1f2937;padding-top:1.5rem;text-align:center;color:#6b7280;font-size:0.875rem}
/* FIX: les dots vidéo doivent être des ronds, sans style de bouton WP/thème */
#pixmywall-landing button.video-dot {
  appearance: none;
  -webkit-appearance: none;

  width: 10px !important;
  height: 10px !important;
  min-width: 10px !important;

  padding: 0 !important;
  margin: 0 6px !important;

  border: 0 !important;
  border-radius: 999px !important;

  background: #d1d5db !important; /* gris */
  box-shadow: none !important;
  outline: none !important;
  text-indent: -9999px; /* si jamais un thème met du texte */
  cursor: pointer;
}

/* état actif */
#pixmywall-landing button.video-dot.active,
#pixmywall-landing button.video-dot.current {
  background: #e11d48 !important; /* ton rouge/rose */
}

/* états passés/futurs si tu veux les distinguer */
#pixmywall-landing button.video-dot.past { background: #e11d48 !important; opacity: 0.9; }
#pixmywall-landing button.video-dot.future { background: #d1d5db !important; opacity: 1; }

/* supprime l'artefact noir (focus/hover/active) */
#pixmywall-landing button.video-dot:focus,
#pixmywall-landing button.video-dot:focus-visible,
#pixmywall-landing button.video-dot:hover,
#pixmywall-landing button.video-dot:active {
  outline: none !important;
  box-shadow: none !important;
  filter: none !important;
}

/* au cas où un thème ajoute des pseudo-éléments sur button */
#pixmywall-landing button.video-dot::before,
#pixmywall-landing button.video-dot::after {
  content: none !important;
}
/* ===== DIAPORAMA DOTS ===== */

#pixmywall-landing button.diaporama-dot {
  appearance: none;
  -webkit-appearance: none;

  width: 10px !important;
  height: 10px !important;
  min-width: 10px !important;

  padding: 0 !important;
  margin: 0 6px !important;

  border: 0 !important;
  border-radius: 999px !important;

  background: #d1d5db !important;
  box-shadow: none !important;
  outline: none !important;

  display: inline-block !important;
  cursor: pointer;
}

/* dot actif */
#pixmywall-landing button.diaporama-dot.active {
  background: #e11d48 !important;
}

/* supprime artefacts noir / focus WP */
#pixmywall-landing button.diaporama-dot:focus,
#pixmywall-landing button.diaporama-dot:focus-visible,
#pixmywall-landing button.diaporama-dot:hover,
#pixmywall-landing button.diaporama-dot:active {
  outline: none !important;
  box-shadow: none !important;
  filter: none !important;
}

#pixmywall-landing button.diaporama-dot::before,
#pixmywall-landing button.diaporama-dot::after {
  content: none !important;
}
/* ===== FAQ FIX HOVER ===== */

#pixmywall-landing .faq-question {
  background: #f9fafb;
  transition: background 0.2s ease;
}

#pixmywall-landing .faq-question:hover {
  background: #e5e7eb !important;
}

#pixmywall-landing .faq-question:focus,
#pixmywall-landing .faq-question:active {
  background: #e5e7eb !important;
  outline: none !important;
  box-shadow: none !important;
}
/* FOOTER ALIGN FIX */
#pixmywall-landing footer {
  align-items: flex-start !important;
}

#pixmywall-landing .footer-column {
  display: flex;
  flex-direction: column;
}

#pixmywall-landing .footer-column h4 {
  margin: 0 0 16px 0 !important;
}

#pixmywall-landing .footer-column ul {
  margin: 0 !important;
  padding: 0 !important;
}
/* Footer: neutralise styles globaux WP sur listes/titres */
#pixmywall-landing footer ul { list-style: none; }
#pixmywall-landing footer a { text-decoration: none; }





