/* ═══════════════════════════════════════════
   css/main.css — Le Faucon Digital
═══════════════════════════════════════════ */

/* ── NAV ── */
nav { position:sticky;top:0;z-index:200;background:rgba(13,15,26,.97);backdrop-filter:blur(20px);border-bottom:1px solid var(--bord-d);padding:0 5%;height:74px;display:flex;align-items:center;justify-content:space-between;transition:box-shadow .3s; }
nav.sc { box-shadow:0 4px 32px rgba(185,27,120,.18); }
.nav-logo { display:flex;align-items:center;gap:12px;text-decoration:none; }
.nav-logo img { height:46px;width:auto; }
.nav-logo-txt .l1 { font-size:15px;font-weight:900;letter-spacing:.07em;color:#fff;display:block;line-height:1.1; }
.nav-logo-txt .l2 { font-size:10px;font-weight:300;letter-spacing:.22em;color:var(--fuchsia);display:block; }
.nav-links { display:flex;gap:32px;list-style:none; }
.nav-links a { color:var(--muted);font-size:11px;font-weight:600;letter-spacing:.09em;text-transform:uppercase;text-decoration:none;transition:color .2s;position:relative; }
.nav-links a::after { content:'';position:absolute;bottom:-5px;left:0;right:0;height:2px;background:var(--grad);transform:scaleX(0);transform-origin:left;transition:transform .3s; }
.nav-links a:hover { color:#fff; }
.nav-links a:hover::after { transform:scaleX(1); }
.nav-r { display:flex;align-items:center;gap:12px; }
.btn-lang { color:var(--muted);font-size:11px;font-weight:700;letter-spacing:.1em;border:1px solid var(--bord-d);padding:8px 13px;cursor:pointer;background:transparent;font-family:'Poppins',sans-serif;transition:color .2s,border-color .2s; }
.btn-lang:hover { color:#fff;border-color:rgba(185,27,120,.5); }
.btn-cta { background:var(--grad);color:#fff;border:none;padding:11px 26px;font-family:'Poppins',sans-serif;font-weight:700;font-size:11px;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;display:inline-block;transition:opacity .2s,transform .2s,box-shadow .2s; }
.btn-cta:hover { opacity:.86;transform:translateY(-2px);box-shadow:0 8px 24px rgba(185,27,120,.38); }
.nav-toggle { display:none;flex-direction:column;gap:5px;background:transparent;border:none;padding:6px;cursor:pointer; }
.nav-toggle span { width:24px;height:2px;background:#fff;display:block;transition:all .3s; }

/* ── HERO ── */
.hero { min-height:100vh;background:var(--nuit);display:grid;grid-template-columns:1fr 1fr;align-items:center;padding:90px 5% 70px;position:relative;overflow:hidden; }
.hero-bg-grid { position:absolute;inset:0;pointer-events:none;opacity:.04;background-image:linear-gradient(var(--fuchsia) 1px,transparent 1px),linear-gradient(90deg,var(--fuchsia) 1px,transparent 1px);background-size:52px 52px;animation:bgMove 20s linear infinite; }
.hero-glow { position:absolute;right:-140px;top:50%;transform:translateY(-50%);width:700px;height:700px;pointer-events:none;background:radial-gradient(circle,rgba(185,27,120,.15) 0%,rgba(155,51,127,.06) 45%,transparent 68%); }
.hero-glow2 { position:absolute;left:-80px;bottom:-80px;width:380px;height:380px;pointer-events:none;background:radial-gradient(circle,rgba(28,36,75,.95) 0%,transparent 65%); }
#ptcl { position:absolute;inset:0;pointer-events:none;overflow:hidden; }
.pt { position:absolute;width:5px;height:5px;background:var(--fuchsia);border-radius:50%;animation:particle var(--d) ease-out var(--dl) infinite;opacity:0; }
.hero-eyebrow { display:inline-flex;align-items:center;gap:10px;background:rgba(185,27,120,.1);border:1px solid rgba(185,27,120,.38);color:var(--fuchsia2);font-size:10px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;padding:8px 18px;margin-bottom:26px;animation:fadeInUp .6s .1s ease both; }
.pdot { width:8px;height:8px;background:var(--fuchsia);border-radius:50%;animation:pulse 2s infinite; }
h1.h1 { font-size:clamp(2.8rem,5vw,5.2rem);font-weight:900;line-height:1.04;color:#fff;margin-bottom:6px;animation:fadeInUp .6s .22s ease both; }
h1.h1 .grd { font-style:italic;font-weight:300;background:linear-gradient(135deg,#E040A0,#B91B78,#9B337F);background-size:200% auto;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:shimmer 5s linear infinite; }
.hero-sub { font-size:15px;font-weight:400;line-height:1.82;color:var(--muted);max-width:460px;margin:22px 0 38px;animation:fadeInUp .6s .34s ease both; }
.hero-sub strong { color:#fff;font-weight:700; }
.hero-btns { display:flex;gap:14px;margin-bottom:54px;animation:fadeInUp .6s .46s ease both;flex-wrap:wrap; }
.btn-hero { background:var(--grad);color:#fff;border:none;padding:17px 34px;font-family:'Poppins',sans-serif;font-weight:700;font-size:13px;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;position:relative;overflow:hidden;transition:transform .25s,box-shadow .25s;display:inline-block; }
.btn-hero::after { content:'';position:absolute;inset:0;background:rgba(255,255,255,.15);transform:translateX(-100%) skewX(-15deg);transition:transform .4s; }
.btn-hero:hover { transform:translateY(-3px);box-shadow:0 16px 40px rgba(185,27,120,.42);color:#fff; }
.btn-hero:hover::after { transform:translateX(100%) skewX(-15deg); }
.btn-ghost-hero { background:transparent;color:#fff;border:1px solid rgba(255,255,255,.22);padding:17px 34px;font-family:'Poppins',sans-serif;font-weight:600;font-size:13px;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;transition:border-color .2s,background .2s;display:inline-block; }
.btn-ghost-hero:hover { border-color:var(--fuchsia);background:rgba(185,27,120,.08);color:#fff; }
.hero-stats { display:flex;gap:36px;animation:fadeInUp .6s .58s ease both;flex-wrap:wrap; }
.hstat { border-left:3px solid var(--fuchsia);padding-left:16px; }
.hstat-n { font-size:34px;font-weight:900;color:#fff;line-height:1; }
.hstat-n span { color:var(--fuchsia); }
.hstat-l { font-size:10px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-top:3px; }

/* Hero right — phone */
.hero-right { display:flex;justify-content:center;align-items:center;position:relative;height:560px;animation:fadeInRight .9s .3s ease both; }
.phone-wrap { position:relative;width:262px;z-index:5; }
.phone { background:linear-gradient(160deg,#1E2545,#0D0F1A);border:2px solid rgba(155,51,127,.42);border-radius:38px;padding:14px;box-shadow:0 32px 80px rgba(0,0,0,.65),inset 0 1px 0 rgba(255,255,255,.07);animation:floatUp 5s ease-in-out infinite; }
.pscreen { background:var(--bleu);border-radius:28px;overflow:hidden;min-height:490px; }
.pnotch { height:28px;background:var(--nuit);display:flex;align-items:center;justify-content:center; }
.pbar { width:62px;height:6px;background:rgba(255,255,255,.14);border-radius:3px; }
.pcontent { padding:16px; }
.pheader { background:var(--grad);margin:-16px -16px 14px;padding:14px 16px; }
.plogo { height:22px;width:auto;filter:brightness(0) invert(1); }
.ptag { font-size:7px;font-weight:600;color:rgba(255,255,255,.78);margin-top:6px;letter-spacing:.06em; }
.pcard { background:rgba(255,255,255,.06);border:1px solid rgba(155,51,127,.25);padding:10px;margin-bottom:8px; }
.pcard-t { font-size:8px;font-weight:700;color:#fff;margin-bottom:3px; }
.pcard-d { font-size:7px;color:var(--muted);line-height:1.5; }
.pstats { display:flex;gap:8px;margin-top:10px; }
.ps { flex:1;background:rgba(185,27,120,.15);border:1px solid rgba(185,27,120,.3);padding:8px;text-align:center; }
.ps-n { font-size:14px;font-weight:900;color:var(--fuchsia); }
.ps-l { font-size:6px;font-weight:600;color:var(--muted);letter-spacing:.08em;text-transform:uppercase; }
.pbtn { display:block;background:var(--grad);color:#fff;text-align:center;padding:10px;margin-top:10px;font-size:8px;font-weight:700;letter-spacing:.1em;text-transform:uppercase; }
.orbit-wrap { position:absolute;inset:0;pointer-events:none; }
.o-ring1 { position:absolute;inset:20px;border:1px dashed rgba(155,51,127,.2);border-radius:50%;animation:rotate 28s linear infinite; }
.o-ring2 { position:absolute;inset:55px;border:1px solid rgba(185,27,120,.1);border-radius:50%;animation:rotateRev 18s linear infinite; }
.o-dot { position:absolute;width:10px;height:10px;background:var(--fuchsia);border-radius:50%;top:-5px;left:50%;transform:translateX(-50%);animation:blink 2.5s ease infinite; }
.o-dot2 { position:absolute;width:7px;height:7px;background:var(--violet);border-radius:50%;bottom:-4px;right:18%; }
.badge-f { position:absolute;background:var(--blanc);border:1px solid var(--gris2);box-shadow:0 8px 32px rgba(0,0,0,.14);padding:12px 16px;min-width:155px;z-index:10; }
.bf1 { top:55px;right:-28px;animation:floatUp 4.5s ease-in-out infinite; }
.bf2 { bottom:75px;left:-38px;animation:floatDown 5.5s ease-in-out infinite; }
.bf-v { font-size:22px;font-weight:900;color:var(--texte);line-height:1; }
.bf-v span { color:var(--fuchsia); }
.bf-l { font-size:9px;font-weight:600;color:var(--gris-txt);letter-spacing:.08em;text-transform:uppercase;margin-top:3px; }
.bf-bar { height:3px;background:var(--gris2);margin-top:8px; }
.bf-fill { height:3px;background:var(--grad);width:74%; }

/* ── CLIENTS ── */
.clients { background:linear-gradient(135deg,#1C244B,#2A3566);border-top:1px solid var(--bord-d);border-bottom:1px solid var(--bord-d);padding:22px 5%;display:flex;align-items:center;gap:26px;overflow:hidden; }
.cl-lbl { font-size:9px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--muted);white-space:nowrap; }
.cl-sep { width:1px;height:30px;background:var(--bord-d);flex-shrink:0; }
.cl-track { display:flex;gap:56px;flex:1;overflow:hidden; }
.cl-n { font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:rgba(245,240,248,.18);white-space:nowrap;transition:color .3s;cursor:default; }
.cl-n:hover { color:rgba(185,27,120,.7); }

/* ── SECTIONS ── */
section { padding:90px 5%; }
.sec-tag { display:inline-block;font-size:9px;font-weight:700;letter-spacing:.28em;text-transform:uppercase;color:var(--fuchsia);background:rgba(185,27,120,.1);border:1px solid rgba(185,27,120,.3);padding:6px 14px;margin-bottom:14px; }
.sec-h2 { font-size:clamp(2rem,3.5vw,3rem);font-weight:900;color:var(--texte);line-height:1.1;margin-bottom:10px; }
.sec-h2.light { color:#fff; }
.sec-h2 em { font-style:italic;font-weight:300;color:var(--violet); }
.sec-p { font-size:14px;color:var(--gris-txt);line-height:1.75;max-width:520px; }
.sec-p.light { color:var(--muted); }
.sec-hd { display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:56px;flex-wrap:wrap;gap:20px; }
.link-all { display:inline-flex;align-items:center;gap:8px;font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--fuchsia);text-decoration:none;border-bottom:2px solid rgba(185,27,120,.3);padding-bottom:2px;white-space:nowrap;transition:border-color .2s,gap .2s; }
.link-all:hover { border-color:var(--fuchsia);gap:14px; }

/* SECTIONS COMMUNES */
section{padding:90px 5%;}
.sec-tag{display:inline-block;font-size:9px;font-weight:700;letter-spacing:.28em;text-transform:uppercase;color:var(--fuchsia);background:rgba(185,27,120,.1);border:1px solid rgba(185,27,120,.3);padding:6px 14px;margin-bottom:14px;}
.sec-h2{font-size:clamp(2rem,3.5vw,3rem);font-weight:900;color:#fff;line-height:1.1;margin-bottom:10px;}
.sec-h2 em{font-style:italic;font-weight:300;color:var(--violet);}
.sec-p{font-size:14px;color:var(--muted);line-height:1.75;max-width:520px;}
.sec-header{display:flex;justify-content:space-between;align-items:flex-end;flex-wrap:wrap;gap:20px;margin-bottom:52px;}
.see-all{display:inline-flex;align-items:center;gap:8px;font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--fuchsia);text-decoration:none;border-bottom:2px solid rgba(185,27,120,.3);padding-bottom:2px;transition:gap .2s,border-color .2s;white-space:nowrap;}
.see-all:hover{gap:14px;border-color:var(--fuchsia);}

/* EXPERTISES */
.exp-sec{background:var(--bleu);}
.exp-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:2px;background:rgba(155,51,127,.12);}
.exp-card{background:linear-gradient(145deg,#141830,#1C244B);padding:44px 36px;position:relative;overflow:hidden;transition:transform .3s,box-shadow .3s;cursor:default;}
.exp-card:hover{transform:translateY(-5px);box-shadow:0 24px 56px rgba(0,0,0,.4);}
.exp-card::before{content:'';position:absolute;top:0;left:0;right:0;height:4px;background:var(--grad);transform:scaleX(0);transform-origin:left;transition:transform .4s;}
.exp-card:hover::before{transform:scaleX(1);}
.exp-num{position:absolute;top:28px;right:28px;font-size:88px;font-weight:900;font-style:italic;color:rgba(185,27,120,.05);line-height:1;transition:color .3s;}
.exp-card:hover .exp-num{color:rgba(185,27,120,.12);}
.exp-icon{width:54px;height:54px;background:var(--grad);display:flex;align-items:center;justify-content:center;margin-bottom:22px;}
.exp-icon svg{width:24px;height:24px;}
.exp-name{font-size:22px;font-weight:800;color:#fff;margin-bottom:12px;}
.exp-desc{font-size:13px;color:var(--muted);line-height:1.8;margin-bottom:20px;}
.exp-tags{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:22px;}
.exp-tag{font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;background:rgba(185,27,120,.1);color:var(--fuchsia2);border:1px solid rgba(185,27,120,.25);padding:5px 12px;}
.exp-link{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--fuchsia);text-decoration:none;transition:gap .2s;}
.exp-card:hover .exp-link{gap:12px;}

/* ── ABOUT ── */
.about-sec { background:var(--blanc);border-top:1px solid var(--gris2);display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center; }
.about-sub { font-size:9px;font-weight:700;letter-spacing:.28em;text-transform:uppercase;color:var(--fuchsia);margin-bottom:14px; }
.about-h2 { font-size:clamp(1.9rem,3vw,2.8rem);font-weight:900;color:var(--texte);line-height:1.15;margin-bottom:20px; }
.about-h2 em { font-style:italic;font-weight:300;color:var(--violet); }
.about-p { font-size:14px;color:var(--gris-txt);line-height:1.85;margin-bottom:14px; }
.about-p strong { color:var(--texte);font-weight:700; }
.about-pts { margin-top:22px;display:flex;flex-direction:column;gap:13px; }
.apt { display:flex;align-items:flex-start;gap:12px; }
.apt-dot { width:10px;height:10px;background:var(--grad);border-radius:50%;flex-shrink:0;margin-top:5px; }
.apt-txt { font-size:13px;font-weight:600;color:var(--texte); }
.about-cards { display:grid;grid-template-columns:1fr 1fr;gap:14px; }
.ac { background:var(--gris);border:1px solid var(--gris2);padding:26px 20px;transition:border-color .2s,transform .2s,box-shadow .2s; }
.ac:hover { border-color:rgba(185,27,120,.35);transform:translateY(-4px);box-shadow:0 12px 32px rgba(185,27,120,.08); }
.ac.dark { background:var(--bleu);border-color:var(--bleu); }
.ac-n { font-size:42px;font-weight:900;line-height:1;margin-bottom:6px;color:var(--fuchsia); }
.ac.dark .ac-n { color:var(--fuchsia2); }
.ac-l { font-size:11px;font-weight:600;color:var(--gris-txt); }
.ac.dark .ac-l { color:var(--muted); }

/* ── PROCESS ── */
.process-sec { background:var(--nuit);border-top:1px solid var(--bord-d); } 
.steps { display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-top:56px; }
.step { padding:32px 24px;border:1px solid rgba(155,51,127,.15);border-right:none;position:relative;transition:background .3s,border-color .3s;overflow:hidden; }
.step:last-child { border-right:1px solid rgba(155,51,127,.15); }
.step:hover { background:rgba(155,51,127,.06);border-color:rgba(185,27,120,.38); }
.step::after { content:'';position:absolute;bottom:0;left:0;right:0;height:3px;background:var(--grad);transform:scaleX(0);transform-origin:left;transition:transform .4s; }
.step:hover::after { transform:scaleX(1); }
.step-arrow { position:absolute;right:-17px;top:50%;transform:translateY(-50%);font-size:22px;color:var(--fuchsia);font-weight:900;z-index:2; }
.step:last-child .step-arrow { display:none; }
.step-ico { width:46px;height:46px;background:rgba(185,27,120,.12);border:1px solid rgba(185,27,120,.3);display:flex;align-items:center;justify-content:center;margin-bottom:20px; }
.step-ico svg { width:20px;height:20px; }
.step-num { font-size:72px;font-weight:900;font-style:italic;line-height:1;margin-bottom:20px;color:rgba(255,255,255,.15);transition:color .3s; }
.step:hover .step-num { color:rgba(185,27,120,.55); }
.step.active { background:rgba(185,27,120,.07);border-color:rgba(185,27,120,.4) !important; }
.step.active .step-num { color:rgba(185,27,120,.45); }
.step-t { font-size:15px;font-weight:800;color:#fff;margin-bottom:8px; }
.step-d { font-size:12px;color:var(--muted);line-height:1.75; }

/* ── PORTFOLIO ── */
.portfolio-sec { background:linear-gradient(145deg,#1C244B,#2A3566);border-top:1px solid var(--bord-d); }
.port-grid { display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:56px; }
.port-card { background:rgba(13,15,26,.7);border:1px solid var(--bord-d);overflow:hidden;transition:transform .3s,border-color .3s,box-shadow .3s;cursor:pointer; }
.port-card:hover { transform:translateY(-8px);border-color:rgba(185,27,120,.5);box-shadow:0 24px 60px rgba(0,0,0,.45); }
.port-thumb { height:175px;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center; }
.port-thumb img { width:100%;height:100%;object-fit:cover;transition:transform .4s; }
.port-card:hover .port-thumb img { transform:scale(1.08); }
.port-overlay { position:absolute;inset:0;background:rgba(185,27,120,.75);display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .3s; }
.port-card:hover .port-overlay { opacity:1; }
.port-see { color:#fff;font-size:11px;font-weight:700;letter-spacing:.15em;text-transform:uppercase; }
.port-info { padding:18px 20px 22px; }
.port-cat { font-size:9px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--fuchsia);margin-bottom:4px; }
.port-name { font-size:16px;font-weight:800;color:#fff;margin-bottom:3px; }
.port-desc { font-size:11px;color:var(--muted); }

/* ── OFFRES ── */
.offres-preview { background:var(--nuit); }
.off-grid { display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin-bottom:36px; }
.off-card { background:var(--blanc);border:1px solid var(--gris2);padding:34px 28px;position:relative;overflow:hidden;transition:transform .3s,box-shadow .3s,border-color .3s;cursor:pointer; }
.off-card:hover { transform:translateY(-6px);box-shadow:0 20px 50px rgba(28,36,75,.1);border-color:rgba(185,27,120,.35); }
.off-card::before { content:'';position:absolute;top:0;left:0;right:0;height:4px;background:var(--grad);transform:scaleX(0);transform-origin:left;transition:transform .4s; }
.off-card:hover::before { transform:scaleX(1); }
.off-num { position:absolute;bottom:-8px;right:14px;font-size:96px;font-weight:900;font-style:italic;color:rgba(185,27,120,.04);line-height:1; }
.off-icon { font-size:34px;margin-bottom:14px;display:block; }
.off-title { font-size:20px;font-weight:800;color:var(--texte);margin-bottom:6px; }
.off-sub { font-size:13px;color:var(--gris-txt);margin-bottom:16px;line-height:1.6; }
.off-price { display:flex;align-items:baseline;gap:4px;margin-bottom:16px; }
.off-e { font-size:34px;font-weight:900;color:var(--fuchsia); }
.off-unit { font-size:12px;color:var(--gris-txt);font-weight:600; }
.off-tags { display:flex;flex-wrap:wrap;gap:6px;margin-bottom:18px; }
.off-tag { font-size:9px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;background:rgba(185,27,120,.07);color:var(--fuchsia);border:1px solid rgba(185,27,120,.2);padding:4px 10px; }
.off-lnk { display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--fuchsia);transition:gap .2s; }
.off-card:hover .off-lnk { gap:12px; }
.off-cta-center { text-align:center; }
.btn-see-all { display:inline-flex;align-items:center;gap:10px;background:var(--grad);color:#fff;border:none;padding:16px 36px;font-family:'Poppins',sans-serif;font-weight:700;font-size:13px;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;transition:transform .2s,box-shadow .2s;text-decoration:none; }
.btn-see-all:hover { transform:translateY(-3px);box-shadow:0 14px 36px rgba(185,27,120,.38);color:#fff; }

/* ── TÉMOIGNAGES ── */
.testi-sec { background:var(--nuit);border-top:1px solid var(--bord-d); }
.testi-grid { display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:56px; }
.testi-card { background:linear-gradient(145deg,#1E2545,#161B35);border:1px solid var(--bord-d);padding:30px 26px;position:relative;transition:transform .3s,border-color .3s; }
.testi-card:hover { transform:translateY(-5px);border-color:rgba(185,27,120,.45); }
.testi-qm { position:absolute;top:14px;right:20px;font-size:76px;font-weight:900;line-height:1;color:rgba(185,27,120,.13); }
.testi-q { font-size:14px;font-style:italic;font-weight:400;color:var(--light);line-height:1.78;margin-bottom:22px; }
.testi-sep { height:1px;background:var(--bord-d);margin-bottom:14px; }
.testi-name { font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--fuchsia); }
.testi-role { font-size:11px;color:var(--muted);margin-top:2px; }

/* APERÇU OFFRES */
.offres-apercu{background:var(--nuit);border-top:1px solid var(--bord);}
.offres-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:2px;background:rgba(155,51,127,.12);}
.offre-card{background:linear-gradient(145deg,#141830,#1C244B);padding:32px 24px;position:relative;overflow:hidden;transition:transform .3s,background .3s;cursor:default;}
.offre-card:hover{transform:translateY(-5px);background:linear-gradient(145deg,#1a1f3d,#21305c);}
.offre-card::before{content:'';position:absolute;top:0;left:0;right:0;height:4px;background:var(--grad);transform:scaleX(0);transform-origin:left;transition:transform .4s;}
.offre-card:hover::before{transform:scaleX(1);}
.offre-emoji{font-size:28px;margin-bottom:14px;display:block;}
.offre-title{font-size:15px;font-weight:800;color:#fff;margin-bottom:6px;}
.offre-desc{font-size:11px;color:var(--muted);line-height:1.7;margin-bottom:18px;}
.offre-from{font-size:9px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-bottom:3px;}
.offre-price{font-size:28px;font-weight:900;color:var(--fuchsia);line-height:1;}
.offre-price span{font-size:13px;color:var(--muted);font-weight:500;}
.offre-link{display:inline-flex;align-items:center;gap:5px;margin-top:16px;font-size:10px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--fuchsia);transition:gap .2s;text-decoration:none;}
.offre-card:hover .offre-link{gap:10px;}
.offre-bg-num{position:absolute;bottom:-10px;right:10px;font-size:90px;font-weight:900;font-style:italic;color:rgba(185,27,120,.04);line-height:1;}

/* PACK HIGHLIGHT */
.pack-banner{background:var(--grad);background-size:200% 200%;animation:gradShift 8s ease infinite;padding:60px 5%;display:flex;align-items:center;justify-content:space-between;gap:32px;flex-wrap:wrap;border-top:1px solid var(--bord2);}
.pack-left .pack-pre{font-size:9px;font-weight:700;letter-spacing:.28em;text-transform:uppercase;color:rgba(255,255,255,.6);margin-bottom:10px;}
.pack-left h3{font-size:clamp(1.6rem,3vw,2.6rem);font-weight:900;color:#fff;line-height:1.1;margin-bottom:8px;}
.pack-left h3 em{font-style:italic;font-weight:300;}
.pack-left p{font-size:13px;color:rgba(255,255,255,.7);}
.pack-right{display:flex;flex-direction:column;align-items:flex-end;gap:12px;}
.pack-price{font-size:52px;font-weight:900;color:#fff;line-height:1;}
.pack-price span{font-size:16px;font-weight:400;color:rgba(255,255,255,.6);}
.pack-note{font-size:11px;color:rgba(255,255,255,.6);text-align:right;}
.btn-pack{background:#fff;color:var(--fuchsia);border:none;padding:16px 36px;font-family:'Poppins',sans-serif;font-weight:900;font-size:12px;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;transition:transform .2s,background .2s;white-space:nowrap;}
.btn-pack:hover{transform:translateY(-3px);background:var(--texte);}
.btn-pack-out{background:transparent;color:#fff;border:2px solid rgba(255,255,255,.4);padding:16px 36px;font-family:'Poppins',sans-serif;font-weight:700;font-size:12px;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;transition:border-color .2s;white-space:nowrap;}
.btn-pack-out:hover{border-color:#fff;}

/* ── BLOG ── */
.blog-sec{background:#F4F4F6;border-top:1px solid #E8E8F0;padding:90px 5%;}
.blog-hd{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:56px;flex-wrap:wrap;gap:20px;}
.blog-hd-left .sec-tag{display:inline-block;font-size:9px;font-weight:700;letter-spacing:.28em;text-transform:uppercase;color:var(--fuchsia);background:rgba(185,27,120,.1);border:1px solid rgba(185,27,120,.3);padding:6px 14px;margin-bottom:14px;}
.blog-h2{font-size:clamp(2rem,3.5vw,3rem);font-weight:900;color:#1A1A2E;line-height:1.1;margin-bottom:8px;}
.blog-h2 em{font-style:italic;font-weight:300;color:#D4348E;}
.blog-desc{font-size:14px;color:#6B6B80;line-height:1.75;max-width:460px;}
.blog-see-all{display:inline-flex;align-items:center;gap:8px;font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:#B91B78;text-decoration:none;border-bottom:2px solid rgba(185,27,120,.3);padding-bottom:2px;white-space:nowrap;transition:border-color .2s,gap .2s;}
.blog-see-all:hover{border-color:var(--fuchsia);gap:14px;}
.blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}
.blog-card{background:#FFFFFF;border:1px solid #E8E8F0;overflow:hidden;transition:transform .3s,border-color .3s,box-shadow .3s;text-decoration:none;color:inherit;display:flex;flex-direction:column;}
.blog-card:hover{transform:translateY(-7px);border-color:rgba(185,27,120,.4);box-shadow:0 20px 50px rgba(28,36,75,.12);}
.blog-thumb{height:170px;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.blog-cat-pill{position:absolute;top:14px;left:14px;background:var(--grad);color:#fff;font-size:8px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;padding:5px 12px;}
.blog-body{padding:22px 22px 26px;flex:1;display:flex;flex-direction:column;}
.blog-meta{display:flex;align-items:center;gap:10px;margin-bottom:12px;}
.blog-date{font-size:10px;font-weight:600;color:#9A93AF;letter-spacing:.06em;}
.blog-read{font-size:10px;font-weight:700;color:var(--fuchsia);background:rgba(185,27,120,.1);padding:3px 10px;}
.blog-title{font-size:17px;font-weight:800;color:#1A1A2E;margin-bottom:9px;line-height:1.35;transition:color .2s;}
.blog-card:hover .blog-title{color:var(--fuchsia);}
.blog-excerpt{font-size:12px;color:#6B6B80;line-height:1.72;margin-bottom:18px;flex:1;}
.blog-link{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--fuchsia);transition:gap .2s;}
.blog-card:hover .blog-link{gap:12px;}


/* ── CTA / CONTACT ── */
.cta-sec { background:linear-gradient(135deg,#9B337F 0%,#B91B78 55%,#7B2868 100%);background-size:200% 200%;animation:gradShift 8s ease infinite;padding:110px 5%;text-align:center;position:relative;overflow:hidden; }
.cta-sec::before { content:'';position:absolute;inset:0;pointer-events:none;background-image:radial-gradient(rgba(255,255,255,.06) 1px,transparent 1px);background-size:28px 28px; }
.cta-pre { font-size:10px;font-weight:700;letter-spacing:.3em;text-transform:uppercase;color:rgba(255,255,255,.6);margin-bottom:16px; }
.cta-h2 { font-size:clamp(2rem,4.5vw,4rem);font-weight:900;color:#fff;margin-bottom:12px;line-height:1.08; }
.cta-h2 em { font-style:italic;font-weight:300; }
.cta-sub { font-size:15px;color:rgba(255,255,255,.7);margin-bottom:42px;font-weight:400; }
.cta-form { max-width:560px;margin:0 auto; }
.cta-form-row { display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px; }
.cta-inp { width:100%;background:rgba(255,255,255,.13);border:1px solid rgba(255,255,255,.32);color:#fff;padding:16px 20px;font-family:'Poppins',sans-serif;font-size:14px;outline:none;margin-bottom:12px;display:block; }
.cta-inp::placeholder { color:rgba(255,255,255,.7); }
.cta-inp:focus { background:rgba(255,255,255,.2); }
select.cta-inp option { color:var(--texte);background:#fff; }
.cta-btn { background:#fff;color:var(--fuchsia);border:none;padding:18px 36px;font-family:'Poppins',sans-serif;font-weight:900;font-size:13px;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;transition:background .2s,transform .2s;display:block;width:100%;margin-top:4px; }
.cta-btn:hover { background:var(--gris);transform:translateY(-2px); }
.cta-feedback { margin-top:16px;font-size:13px;font-weight:600; }
.cta-feedback.success { color:#4ade80; }
.cta-feedback.error { color:#fca5a5; }
.cta-note { font-size:10px;color:rgba(255,255,255,.48);font-weight:600;letter-spacing:.06em;margin-top:18px; }


/* ── FOOTER ── */
footer { background:var(--nuit);border-top:1px solid var(--bord-d);padding:70px 5% 30px; }
.ft { display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:48px;margin-bottom:48px; }
.fl img { height:38px;margin-bottom:13px; }
.fp { font-size:12px;color:var(--muted);line-height:1.8;max-width:220px; }
.fh { font-size:9px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--fuchsia);margin-bottom:18px; }
.fla { list-style:none;display:flex;flex-direction:column;gap:10px; }
.fla a { font-size:12px;color:var(--muted);text-decoration:none;font-weight:500;transition:color .2s; }
.fla a:hover { color:#fff; }
.fb { border-top:1px solid var(--bord-d);padding-top:22px;display:flex;align-items:center;justify-content:space-between; }
.fc { font-size:11px;color:var(--muted); }
.fc strong { color:var(--fuchsia); }

/* ── BLOG SINGLE ── */
.single-post-wrap { max-width:740px;margin:60px auto;padding:0 5% 80px; }
.single-post-header { margin-bottom:40px; }
.single-cat-badge { display:inline-block;background:var(--grad);color:#fff;font-size:9px;font-weight:800;letter-spacing:.15em;text-transform:uppercase;padding:6px 14px;margin-bottom:18px; }
.single-post-title { font-size:clamp(2rem,4vw,3rem);font-weight:900;color:var(--texte);line-height:1.15;margin-bottom:16px; }
.single-post-meta { display:flex;align-items:center;gap:16px;font-size:12px;color:var(--gris-txt); }
.single-post-meta strong { color:var(--fuchsia); }
.single-post-content { font-size:16px;line-height:1.85;color:var(--texte); }
.single-post-content h2 { font-size:1.6rem;font-weight:800;margin:36px 0 14px; }
.single-post-content h3 { font-size:1.2rem;font-weight:700;margin:28px 0 10px; }
.single-post-content p { margin-bottom:18px; }
.single-post-content ul,.single-post-content ol { padding-left:24px;margin-bottom:18px; }
.single-post-content li { margin-bottom:8px; }
.single-post-content img { border-radius:4px;margin:24px 0; }
.single-post-content a { color:var(--fuchsia);text-decoration:underline; }
.single-post-content blockquote { border-left:4px solid var(--fuchsia);padding:16px 24px;background:var(--gris);margin:24px 0;font-style:italic; }

/* ── RESPONSIVE ── */
@media (max-width:1024px) {
  .hero { grid-template-columns:1fr; }
  .hero-right { display:none; }
  .about-sec { grid-template-columns:1fr; gap:40px; }
  .ft { grid-template-columns:1fr 1fr; }
}
@media (max-width:768px) {
  section { padding:60px 5%; }
  .nav-links { display:none; }
  .nav-links.open { display:flex;flex-direction:column;position:absolute;top:74px;left:0;right:0;background:rgba(13,15,26,.98);padding:20px 5%;gap:20px;border-bottom:1px solid var(--bord-d); }
  .nav-toggle { display:flex; }
  .exp-grid,.off-grid,.steps,.port-grid,.testi-grid,.blog-grid { grid-template-columns:1fr; }
  .steps { grid-template-columns:1fr 1fr; }
  .cta-form-row { grid-template-columns:1fr; }
  .about-cards { grid-template-columns:1fr 1fr; }
  .ft { grid-template-columns:1fr; gap:32px; }
  .hero-stats { gap:20px; }
}
@media (max-width:480px) {
  .hero-btns { flex-direction:column; }
  .steps { grid-template-columns:1fr; }
}

/* ═══════════════════════════════════════════
   PAGE OFFRES
═══════════════════════════════════════════ */
.page-hero{background:var(--nuit);padding:80px 5% 60px;text-align:center;position:relative;overflow:hidden;}
.page-hero-glow{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:600px;height:400px;background:radial-gradient(ellipse,rgba(185,27,120,.14) 0%,transparent 65%);pointer-events:none;}
.ph-tag{display:inline-flex;align-items:center;gap:8px;background:rgba(185,27,120,.1);border:1px solid rgba(185,27,120,.38);color:var(--fuchsia2);font-size:10px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;padding:7px 16px;margin-bottom:22px;}
.ph-h1{font-size:clamp(2.4rem,5vw,4.5rem);font-weight:900;color:#fff;line-height:1.06;margin-bottom:16px;}
.ph-h1 em{font-style:italic;font-weight:300;background:linear-gradient(135deg,#E040A0,#B91B78,#9B337F);background-size:200% auto;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:shimmer 5s linear infinite;}
.ph-sub{font-size:15px;color:var(--muted);max-width:560px;margin:0 auto 32px;line-height:1.8;}
.ph-filters{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;}
.pf{padding:10px 22px;border:1px solid rgba(155,51,127,.3);background:transparent;color:var(--muted);font-family:'Poppins',sans-serif;font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;transition:all .2s;}
.pf:hover,.pf.active{background:var(--grad);color:#fff;border-color:transparent;}

.off-sec{padding:80px 5%;}
.off-sec.dark{background:var(--nuit);border-top:1px solid var(--bord-d);}
.off-sec.light{background:var(--gris);border-top:1px solid var(--gris2);}
.off-sec.faq-sec{background:var(--blanc);border-top:1px solid var(--gris2);}
.off-sec.pack-sec{background:linear-gradient(135deg,#9B337F 0%,#B91B78 55%,#7B2868 100%);background-size:200% 200%;animation:gradShift 8s ease infinite;position:relative;overflow:hidden;}
.off-sec.pack-sec::before{content:'';position:absolute;inset:0;background-image:radial-gradient(rgba(255,255,255,.06) 1px,transparent 1px);background-size:28px 28px;pointer-events:none;}
.off-sec-hd{margin-bottom:48px;}
.off-sec-tag{font-size:10px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--fuchsia);margin-bottom:12px;}
.off-h2{font-size:clamp(1.8rem,3.5vw,3rem);font-weight:900;color:#fff;line-height:1.1;margin-bottom:8px;}
.off-h2.dark-txt{color:var(--texte);}
.off-h2 em{font-style:italic;font-weight:300;color:var(--violet);}
.off-sub{font-size:14px;color:var(--muted);line-height:1.75;max-width:480px;}
.off-sub.dark-txt{color:var(--gris-txt);}

/* Prix web */
.prix-web{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}
.pw-card{background:rgba(13,15,26,.65);border:1px solid var(--bord-d);padding:36px 28px;display:flex;flex-direction:column;position:relative;transition:transform .3s;}
.pw-card:hover{transform:translateY(-5px);}
.pw-card.featured{border:2px solid var(--fuchsia);transform:translateY(-8px);box-shadow:0 24px 60px rgba(185,27,120,.2);}
.pw-badge{position:absolute;top:0;right:0;background:var(--grad);color:#fff;font-size:9px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;padding:6px 14px;}
.pw-icon{width:48px;height:48px;background:var(--grad);display:flex;align-items:center;justify-content:center;margin-bottom:18px;}
.pw-icon svg{width:22px;height:22px;}
.pw-name{font-size:18px;font-weight:800;color:#fff;margin-bottom:4px;}
.pw-for{font-size:12px;color:var(--muted);margin-bottom:22px;}
.pw-price-wrap{border-bottom:1px solid var(--bord-d);padding-bottom:22px;margin-bottom:22px;}
.pw-from{font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);}
.pw-price{font-size:44px;font-weight:900;color:var(--fuchsia);line-height:1;margin:4px 0;}
.pw-price span{font-size:16px;font-weight:500;color:var(--muted);}
.pw-delay{font-size:11px;color:var(--muted);}
.pw-features{list-style:none;display:flex;flex-direction:column;gap:10px;flex:1;margin-bottom:24px;}
.pwf{display:flex;align-items:flex-start;gap:10px;font-size:13px;color:var(--light);}
.pwf-dot{color:var(--fuchsia);font-weight:900;flex-shrink:0;}
.pwf.pwf-off{opacity:.4;}
.pwf.pwf-off .pwf-dot{color:var(--muted);}
.pw-btn{display:block;text-align:center;background:var(--grad);color:#fff;border:none;padding:14px;font-family:'Poppins',sans-serif;font-weight:700;font-size:12px;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;text-decoration:none;transition:opacity .2s;}
.pw-btn:hover{opacity:.85;color:#fff;}
.pw-btn.ghost{background:transparent;border:1px solid rgba(185,27,120,.4);color:var(--fuchsia2);}
.pw-btn.ghost:hover{background:rgba(185,27,120,.1);}

/* Secteurs grid */
.secteurs-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px;}
.sec-card{background:var(--blanc);border:1px solid var(--gris2);overflow:hidden;transition:transform .3s,box-shadow .3s,border-color .3s;}
.sec-card:hover{transform:translateY(-4px);box-shadow:0 18px 48px rgba(28,36,75,.1);border-color:rgba(185,27,120,.35);}
.sc-hd{padding:26px 28px 18px;display:flex;align-items:center;gap:16px;border-bottom:1px solid var(--gris2);}
.sc-emoji{font-size:34px;width:56px;height:56px;background:var(--gris);display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.sc-title{font-size:20px;font-weight:900;color:var(--texte);margin-bottom:2px;}
.sc-sub2{font-size:12px;color:var(--gris-txt);}
.sc-body{padding:22px 28px 0;}
.sc-items{display:flex;flex-direction:column;gap:10px;margin-bottom:20px;}
.sc-item{display:flex;align-items:flex-start;gap:12px;}
.sc-item-dot{width:22px;height:22px;background:var(--grad);flex-shrink:0;display:flex;align-items:center;justify-content:center;margin-top:1px;}
.sc-item-dot::after{content:'✓';color:#fff;font-size:11px;font-weight:900;}
.sc-item-name{font-size:13px;font-weight:700;color:var(--texte);line-height:1.3;}
.sc-item-desc{font-size:11px;color:var(--gris-txt);margin-top:1px;}
.sc-price-row{display:flex;align-items:center;justify-content:space-between;background:var(--gris);padding:16px 28px;margin:0 -28px;}
.sc-price-lbl{font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--gris-txt);}
.sc-price-val{font-size:22px;font-weight:900;color:var(--fuchsia);}
.sc-cta{font-size:10px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--fuchsia);background:transparent;border:1px solid rgba(185,27,120,.4);padding:8px 16px;cursor:pointer;font-family:'Poppins',sans-serif;text-decoration:none;transition:background .2s,color .2s;}
.sc-cta:hover{background:var(--grad);color:#fff;border-color:transparent;}

/* Community & SEO */
.cm-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:48px;}
.cm-card{background:rgba(13,15,26,.65);border:1px solid var(--bord-d);padding:34px 28px;text-align:center;transition:transform .3s,border-color .3s;}
.cm-card:hover{transform:translateY(-5px);border-color:rgba(185,27,120,.45);}
.cm-icon{font-size:40px;margin-bottom:14px;}
.cm-name{font-size:18px;font-weight:800;color:#fff;margin-bottom:10px;}
.cm-price{font-size:22px;font-weight:900;color:var(--fuchsia);margin-bottom:20px;}
.cm-price span{font-size:13px;font-weight:400;color:var(--muted);}
.cm-features{list-style:none;text-align:left;display:flex;flex-direction:column;gap:8px;margin-bottom:24px;}
.cm-features li{font-size:13px;color:var(--light);padding-left:18px;position:relative;}
.cm-features li::before{content:'→';position:absolute;left:0;color:var(--fuchsia);font-weight:700;}
.cm-btn{display:block;background:var(--grad);color:#fff;padding:13px;font-family:'Poppins',sans-serif;font-weight:700;font-size:12px;letter-spacing:.08em;text-transform:uppercase;text-decoration:none;transition:opacity .2s;}
.cm-btn:hover{opacity:.85;color:#fff;}

/* Pack grid */
.pack-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:16px;max-width:900px;margin-left:auto;margin-right:auto;}
.pack-item{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);padding:20px 16px;text-align:center;}
.pack-item-total{background:rgba(255,255,255,.2);border-color:rgba(255,255,255,.45);}
.pack-icon{font-size:28px;margin-bottom:10px;display:block;}
.pack-item-name{font-size:12px;font-weight:700;color:#fff;margin-bottom:4px;}
.pack-item-val{font-size:20px;font-weight:900;color:#fff;}
.pack-item-val span{font-size:11px;font-weight:400;color:rgba(255,255,255,.65);}

/* FAQ */
.faq-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;}
.faq-item{border:1px solid var(--gris2);padding:26px 22px;transition:border-color .2s;}
.faq-item:hover{border-color:rgba(185,27,120,.35);}
.faq-q{font-size:15px;font-weight:700;color:var(--texte);margin-bottom:10px;display:flex;align-items:flex-start;gap:10px;}
.faq-q::before{content:'Q';background:var(--grad);color:#fff;font-size:9px;font-weight:900;padding:3px 7px;flex-shrink:0;margin-top:3px;letter-spacing:.06em;}
.faq-a{font-size:13px;color:var(--gris-txt);line-height:1.75;}

/* ═══════════════════════════════════════════
   PAGE BLOG
═══════════════════════════════════════════ */

html{scroll-behavior:smooth;}
body{font-family:'Poppins',sans-serif;background:var(--blanc);color:var(--texte);overflow-x:hidden;}
@keyframes fadeInUp{from{opacity:0;transform:translateY(32px)}to{opacity:1;transform:translateY(0)}}
@keyframes shimmer{0%{background-position:200% center}100%{background-position:-200% center}}
@keyframes gradShift{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}
@keyframes pulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.3;transform:scale(1.6)}}
.rv{opacity:0;transform:translateY(28px);transition:opacity .7s ease,transform .7s ease;}
.rv.on{opacity:1;transform:translateY(0);}

.blog-page-hero{background:var(--nuit);padding:80px 5% 60px;text-align:center;position:relative;overflow:hidden;}
.bph-glow{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:500px;height:300px;background:radial-gradient(ellipse,rgba(185,27,120,.13) 0%,transparent 65%);pointer-events:none;}
.bph-h1{font-size:clamp(2.4rem,4.5vw,4rem);font-weight:900;color:#fff;line-height:1.08;margin-bottom:14px;}
.bph-h1 em{font-style:italic;font-weight:300;background:linear-gradient(135deg,#E040A0,#B91B78);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;}
.bph-sub{font-size:15px;color:var(--muted);max-width:520px;margin:0 auto 28px;line-height:1.8;}
.bph-cats{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;}
.bph-cat{padding:8px 20px;border:1px solid rgba(155,51,127,.3);background:transparent;color:var(--muted);font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;text-decoration:none;transition:all .2s;}
.bph-cat:hover,.bph-cat.active{background:var(--grad);color:#fff;border-color:transparent;}
.blog-page-sec{padding:80px 5%;}
.blog-page-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-bottom:56px;}
.blog-card-link{text-decoration:none;color:inherit;display:block;}
.blog-pagination{text-align:center;margin-bottom:60px;}
.blog-pagination .page-numbers{display:inline-block;padding:10px 16px;margin:0 4px;border:1px solid var(--gris2);font-weight:700;font-size:13px;color:var(--gris-txt);text-decoration:none;transition:all .2s;}
.blog-pagination .page-numbers:hover,.blog-pagination .page-numbers.current{background:var(--grad);color:#fff;border-color:transparent;}
.blog-newsletter{background:var(--bleu);border:1px solid var(--bord-d);padding:48px;text-align:center;max-width:600px;margin:0 auto;}
.bn-icon{font-size:40px;margin-bottom:14px;}
.bn-title{font-size:22px;font-weight:800;color:#fff;margin-bottom:10px;}
.bn-sub{font-size:14px;color:var(--muted);margin-bottom:24px;}
.bn-form{display:flex;max-width:400px;margin:0 auto;}
.bn-inp{flex:1;background:rgba(255,255,255,.08);border:1px solid var(--bord-d);border-right:none;color:#fff;padding:14px 18px;font-family:'Poppins',sans-serif;font-size:13px;outline:none;}
.bn-inp::placeholder{color:rgba(255,255,255,.35);}
.bn-btn{background:var(--grad);color:#fff;border:none;padding:14px 22px;font-family:'Poppins',sans-serif;font-weight:700;font-size:12px;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;white-space:nowrap;}

/* CTA */
.cta-sec{background:linear-gradient(135deg,#9B337F 0%,#B91B78 55%,#7B2868 100%);background-size:200% 200%;animation:gradShift 8s ease infinite;padding:80px 5%;text-align:center;position:relative;overflow:hidden;}
.cta-sec::before{content:'';position:absolute;inset:0;background-image:radial-gradient(rgba(255,255,255,.07) 1px,transparent 1px);background-size:28px 28px;pointer-events:none;}
.cta-pre{font-size:10px;font-weight:700;letter-spacing:.3em;text-transform:uppercase;color:rgba(255,255,255,.65);margin-bottom:14px;}
.cta-h2{font-size:clamp(2rem,4vw,3.5rem);font-weight:900;color:#fff;margin-bottom:10px;line-height:1.08;}
.cta-h2 em{font-style:italic;font-weight:300;}
.cta-sub{font-size:15px;color:rgba(255,255,255,.88);margin-bottom:30px;font-weight:500;}
.cta-form{display:flex;max-width:440px;margin:0 auto 18px;}
.cta-inp{flex:1;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.32);border-right:none;color:#fff;padding:15px 18px;font-family:'Poppins',sans-serif;font-size:13px;outline:none;}
.cta-inp::placeholder{color:rgba(255,255,255,.45);}
.cta-btn{background:#fff;color:#B91B78;border:none;padding:15px 24px;font-family:'Poppins',sans-serif;font-weight:900;font-size:12px;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;white-space:nowrap;}
.cta-chips{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;}
.cta-chip{background:rgba(255,255,255,.18);border:1px solid rgba(255,255,255,.32);color:#fff;font-size:12px;font-weight:600;padding:8px 18px;}


/* ═══════════════════════════════════════════
   PAGE CONTACT
═══════════════════════════════════════════ */
<style>
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box;}
:root{
  --nuit:#0D0F1A;
  --bleu:#1C244B;
  --bleu2:#2A3566;
  --bleu3:#3D4F8A;
  --violet:#9B337F;
  --fuchsia:#B91B78;
  --fuchsia2:#D4348E;
  --prune:#7B2868;
  --texte:#F5F0F8;
  --muted:#9A93AF;
  --dim:#5C547A;
  --bord:rgba(155,51,127,0.22);
  --bord2:rgba(185,27,120,0.45);
  --grad:linear-gradient(135deg,#9B337F 0%,#B91B78 100%);
  --surf:linear-gradient(145deg,#1E2545,#161B35);
}
html{scroll-behavior:smooth;}
body{font-family:'Poppins',sans-serif;background:var(--nuit);color:var(--texte);overflow-x:hidden;}

@keyframes fadeInUp{from{opacity:0;transform:translateY(36px)}to{opacity:1;transform:translateY(0)}}
@keyframes fadeInLeft{from{opacity:0;transform:translateX(-44px)}to{opacity:1;transform:translateX(0)}}
@keyframes fadeInRight{from{opacity:0;transform:translateX(44px)}to{opacity:1;transform:translateX(0)}}
@keyframes floatUp{0%,100%{transform:translateY(0)}50%{transform:translateY(-12px)}}
@keyframes floatDown{0%,100%{transform:translateY(0)}50%{transform:translateY(9px)}}
@keyframes rotate{to{transform:rotate(360deg)}}
@keyframes rotateRev{to{transform:rotate(-360deg)}}
@keyframes pulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.3;transform:scale(1.6)}}
@keyframes shimmer{0%{background-position:200% center}100%{background-position:-200% center}}
@keyframes gradShift{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}
@keyframes particle{0%{transform:translateY(0) scale(1);opacity:.7}100%{transform:translateY(-120px) scale(0);opacity:0}}
@keyframes barSlide{from{width:0}to{width:100%}}
@keyframes blink{0%,100%{box-shadow:0 0 10px rgba(185,27,120,.5)}50%{box-shadow:0 0 24px rgba(185,27,120,.9)}}
@keyframes countUp{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}

.reveal{opacity:0;transform:translateY(30px);transition:opacity .72s ease,transform .72s ease;}
.reveal.on{opacity:1;transform:translateY(0);}
.rl{opacity:0;transform:translateX(-36px);transition:opacity .72s ease,transform .72s ease;}
.rl.on{opacity:1;transform:translateX(0);}
.rr{opacity:0;transform:translateX(36px);transition:opacity .72s ease,transform .72s ease;}
.rr.on{opacity:1;transform:translateX(0);}
.rs{opacity:0;transform:scale(.9);transition:opacity .65s ease,transform .65s ease;}
.rs.on{opacity:1;transform:scale(1);}
.d1{transition-delay:.1s}.d2{transition-delay:.2s}.d3{transition-delay:.3s}
.d4{transition-delay:.4s}.d5{transition-delay:.5s}.d6{transition-delay:.6s}

/* NAV */
nav{position:sticky;top:0;z-index:200;background:rgba(13,15,26,.97);backdrop-filter:blur(20px);border-bottom:1px solid var(--bord);padding:0 5%;height:72px;display:flex;align-items:center;justify-content:space-between;transition:box-shadow .3s;}
nav.sc{box-shadow:0 4px 28px rgba(185,27,120,.18);}
.nav-logo{display:flex;align-items:center;gap:12px;text-decoration:none;}
.nav-logo img{height:44px;width:auto;}
.nav-logo-txt .l1{font-size:15px;font-weight:900;letter-spacing:.07em;color:#fff;display:block;line-height:1.1;}
.nav-logo-txt .l2{font-size:10px;font-weight:300;letter-spacing:.22em;color:var(--fuchsia);display:block;}
.nav-links{display:flex;gap:32px;list-style:none;}
.nav-links a{color:var(--muted);font-size:11px;font-weight:600;letter-spacing:.09em;text-transform:uppercase;text-decoration:none;transition:color .2s;position:relative;}
.nav-links a::after{content:'';position:absolute;bottom:-5px;left:0;right:0;height:2px;background:var(--grad);transform:scaleX(0);transform-origin:left;transition:transform .3s;}
.nav-links a:hover{color:#fff;}.nav-links a:hover::after{transform:scaleX(1);}
.nav-right{display:flex;align-items:center;gap:10px;}
.btn-ghost-nav{color:var(--muted);font-size:11px;font-weight:700;letter-spacing:.1em;border:1px solid var(--bord);padding:8px 14px;cursor:pointer;background:transparent;font-family:'Poppins',sans-serif;transition:color .2s,border-color .2s;}
.btn-ghost-nav:hover{color:#fff;border-color:var(--bord2);}
.btn-cta-nav{background:var(--grad);color:#fff;border:none;padding:11px 24px;font-family:'Poppins',sans-serif;font-weight:700;font-size:11px;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;transition:opacity .2s,transform .2s,box-shadow .2s;}
.btn-cta-nav:hover{opacity:.86;transform:translateY(-2px);box-shadow:0 8px 22px rgba(185,27,120,.38);}

/* HERO */
.hero{min-height:100vh;background:var(--nuit);display:grid;grid-template-columns:1fr 1fr;align-items:center;padding:88px 5% 70px;position:relative;overflow:hidden;}
.hero-grid-bg{position:absolute;inset:0;pointer-events:none;opacity:.04;background-image:linear-gradient(var(--fuchsia) 1px,transparent 1px),linear-gradient(90deg,var(--fuchsia) 1px,transparent 1px);background-size:52px 52px;}
.hero-glow{position:absolute;right:-120px;top:50%;transform:translateY(-50%);width:680px;height:680px;pointer-events:none;background:radial-gradient(circle,rgba(185,27,120,.15) 0%,rgba(155,51,127,.07) 44%,transparent 68%);}
.hero-glow2{position:absolute;left:-90px;bottom:-90px;width:360px;height:360px;pointer-events:none;background:radial-gradient(circle,rgba(28,36,75,.92) 0%,transparent 65%);}
.particles-wrap{position:absolute;inset:0;pointer-events:none;overflow:hidden;}
.pt{position:absolute;width:4px;height:4px;background:var(--fuchsia);border-radius:50%;animation:particle 5s ease-out infinite;}

.hero-eyebrow{display:inline-flex;align-items:center;gap:10px;background:rgba(185,27,120,.1);border:1px solid rgba(185,27,120,.38);color:var(--fuchsia2);font-size:10px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;padding:7px 16px;margin-bottom:26px;animation:fadeInUp .65s .1s ease both;}
.pulse-dot{width:8px;height:8px;background:var(--fuchsia);border-radius:50%;animation:pulse 2s infinite;flex-shrink:0;}
h1.ht{font-size:clamp(2.8rem,5.2vw,5.4rem);font-weight:900;line-height:1.04;color:#fff;animation:fadeInUp .65s .22s ease both;}
h1.ht .grd{font-style:italic;font-weight:300;background:linear-gradient(135deg,#E040A0,#B91B78,#9B337F);background-size:200% auto;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:shimmer 5s linear infinite;}
.hero-sub{font-size:15px;font-weight:400;line-height:1.82;color:var(--muted);max-width:460px;margin:22px 0 36px;animation:fadeInUp .65s .34s ease both;}
.hero-sub strong{color:#fff;font-weight:700;}
.hero-btns{display:flex;gap:14px;margin-bottom:52px;animation:fadeInUp .65s .46s ease both;}
.btn-hero{background:var(--grad);color:#fff;border:none;padding:17px 32px;font-family:'Poppins',sans-serif;font-weight:700;font-size:12px;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;position:relative;overflow:hidden;transition:transform .25s,box-shadow .25s;}
.btn-hero::after{content:'';position:absolute;inset:0;background:rgba(255,255,255,.15);transform:translateX(-100%) skewX(-15deg);transition:transform .4s;}
.btn-hero:hover{transform:translateY(-3px);box-shadow:0 16px 40px rgba(185,27,120,.4);}
.btn-hero:hover::after{transform:translateX(100%) skewX(-15deg);}
.btn-hero-out{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.22);padding:17px 32px;font-family:'Poppins',sans-serif;font-weight:600;font-size:12px;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;transition:border-color .2s,background .2s;}
.btn-hero-out:hover{border-color:var(--fuchsia);background:rgba(185,27,120,.08);}
.hero-stats{display:flex;gap:36px;animation:fadeInUp .65s .58s ease both;}
.hstat{border-left:3px solid var(--fuchsia);padding-left:16px;}
.hstat-n{font-size:34px;font-weight:900;color:#fff;line-height:1;}
.hstat-n span{color:var(--fuchsia);}
.hstat-l{font-size:10px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-top:3px;}

/* HERO RIGHT — phone */
.hero-right{display:flex;justify-content:center;align-items:center;position:relative;height:560px;animation:fadeInRight .9s .3s ease both;}
.phone-wrap{position:relative;width:255px;z-index:5;}
.phone-frame{background:linear-gradient(160deg,#1E2545,#0D0F1A);border:2px solid rgba(155,51,127,.4);border-radius:38px;padding:14px;box-shadow:0 32px 80px rgba(0,0,0,.6),0 0 0 1px rgba(155,51,127,.2),inset 0 1px 0 rgba(255,255,255,.07);animation:floatUp 5s ease-in-out infinite;}
.phone-screen{background:var(--bleu);border-radius:28px;overflow:hidden;}
.phone-notch{height:26px;background:var(--nuit);display:flex;align-items:center;justify-content:center;}
.phone-notch-bar{width:58px;height:5px;background:rgba(255,255,255,.14);border-radius:3px;}
.phone-content{padding:14px;}
.phone-header{background:var(--grad);margin:-14px -14px 12px;padding:14px;}
.phone-logo-row{display:flex;align-items:center;gap:8px;}
.phone-logo-row img{height:20px;filter:brightness(0) invert(1);}
.phone-tagline{font-size:7px;font-weight:600;color:rgba(255,255,255,.75);margin-top:5px;letter-spacing:.06em;}
.phone-card{background:rgba(255,255,255,.06);border:1px solid rgba(155,51,127,.25);padding:10px;margin-bottom:8px;}
.phone-card-title{font-size:8px;font-weight:700;color:#fff;margin-bottom:3px;}
.phone-card-desc{font-size:7px;color:var(--muted);line-height:1.5;}
.phone-stats{display:flex;gap:8px;margin:10px 0;}
.phone-stat{flex:1;background:rgba(185,27,120,.15);border:1px solid rgba(185,27,120,.3);padding:8px;text-align:center;}
.phone-stat-n{font-size:14px;font-weight:900;color:var(--fuchsia);}
.phone-stat-l{font-size:6px;font-weight:600;color:var(--muted);letter-spacing:.08em;text-transform:uppercase;}
.phone-btn{display:block;background:var(--grad);color:#fff;text-align:center;padding:10px;font-size:8px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;margin-top:8px;}

/* Float badges */
.badge-float{position:absolute;z-index:10;background:linear-gradient(145deg,#1E2545,#161B35);border:1px solid var(--bord);padding:14px 18px;min-width:160px;}
.bf1{top:40px;right:-20px;animation:floatUp 4.5s ease-in-out infinite;}
.bf2{bottom:60px;left:-30px;animation:floatDown 5.5s ease-in-out infinite;}
.bf-val{font-size:22px;font-weight:900;color:#fff;line-height:1;}
.bf-val span{color:var(--fuchsia);}
.bf-label{font-size:9px;font-weight:600;color:var(--muted);letter-spacing:.1em;text-transform:uppercase;margin-top:4px;}
.bf-bar{height:3px;background:rgba(155,51,127,.2);margin-top:10px;}
.bf-fill{height:3px;background:var(--grad);}

/* ORBIT */
.orbit-wrap{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;pointer-events:none;}
.orbit-ring-out{position:absolute;width:360px;height:360px;border:1px dashed rgba(155,51,127,.2);border-radius:50%;animation:rotate 28s linear infinite;}
.orbit-dot{position:absolute;width:10px;height:10px;background:var(--fuchsia);border-radius:50%;top:-5px;left:50%;transform:translateX(-50%);box-shadow:0 0 12px rgba(185,27,120,.7);animation:blink 2.5s ease infinite;}

/* CLIENTS BAND */
.clients-band{background:linear-gradient(135deg,var(--bleu),var(--bleu2));border-top:1px solid var(--bord);border-bottom:1px solid var(--bord);padding:22px 5%;display:flex;align-items:center;gap:28px;overflow:hidden;}
.cl-label{font-size:9px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--muted);white-space:nowrap;}
.cl-sep{width:1px;height:32px;background:var(--bord);flex-shrink:0;}
.cl-track{display:flex;gap:52px;flex:1;}
.cl-n{font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:rgba(245,240,248,.18);white-space:nowrap;transition:color .3s;cursor:default;}
.cl-n:hover{color:rgba(185,27,120,.7);}

/* SECTIONS COMMUNES */
section{padding:90px 5%;}
.sec-tag{display:inline-block;font-size:9px;font-weight:700;letter-spacing:.28em;text-transform:uppercase;color:var(--fuchsia);background:rgba(185,27,120,.1);border:1px solid rgba(185,27,120,.3);padding:6px 14px;margin-bottom:14px;}
.sec-h2{font-size:clamp(2rem,3.5vw,3rem);font-weight:900;color:#fff;line-height:1.1;margin-bottom:10px;}
.sec-h2 em{font-style:italic;font-weight:300;color:var(--violet);}
.sec-p{font-size:14px;color:var(--muted);line-height:1.75;max-width:520px;}
.sec-header{display:flex;justify-content:space-between;align-items:flex-end;flex-wrap:wrap;gap:20px;margin-bottom:52px;}
.see-all{display:inline-flex;align-items:center;gap:8px;font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--fuchsia);text-decoration:none;border-bottom:2px solid rgba(185,27,120,.3);padding-bottom:2px;transition:gap .2s,border-color .2s;white-space:nowrap;}
.see-all:hover{gap:14px;border-color:var(--fuchsia);}

/* EXPERTISES */
.exp-sec{background:var(--bleu);}
.exp-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:2px;background:rgba(155,51,127,.12);}
.exp-card{background:linear-gradient(145deg,#141830,#1C244B);padding:44px 36px;position:relative;overflow:hidden;transition:transform .3s,box-shadow .3s;cursor:default;}
.exp-card:hover{transform:translateY(-5px);box-shadow:0 24px 56px rgba(0,0,0,.4);}
.exp-card::before{content:'';position:absolute;top:0;left:0;right:0;height:4px;background:var(--grad);transform:scaleX(0);transform-origin:left;transition:transform .4s;}
.exp-card:hover::before{transform:scaleX(1);}
.exp-num{position:absolute;top:28px;right:28px;font-size:88px;font-weight:900;font-style:italic;color:rgba(185,27,120,.05);line-height:1;transition:color .3s;}
.exp-card:hover .exp-num{color:rgba(185,27,120,.12);}
.exp-icon{width:54px;height:54px;background:var(--grad);display:flex;align-items:center;justify-content:center;margin-bottom:22px;}
.exp-icon svg{width:24px;height:24px;}
.exp-name{font-size:22px;font-weight:800;color:#fff;margin-bottom:12px;}
.exp-desc{font-size:13px;color:var(--muted);line-height:1.8;margin-bottom:20px;}
.exp-tags{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:22px;}
.exp-tag{font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;background:rgba(185,27,120,.1);color:var(--fuchsia2);border:1px solid rgba(185,27,120,.25);padding:5px 12px;}
.exp-link{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--fuchsia);text-decoration:none;transition:gap .2s;}
.exp-card:hover .exp-link{gap:12px;}

/* ABOUT */
.about-sec{background:var(--nuit);border-top:1px solid var(--bord);display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center;}
.about-badge{display:inline-block;font-size:9px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--fuchsia2);background:rgba(185,27,120,.12);border:1px solid var(--bord2);padding:6px 14px;margin-bottom:18px;}
.about-h2{font-size:clamp(1.9rem,3vw,2.8rem);font-weight:900;color:#fff;line-height:1.15;margin-bottom:20px;}
.about-h2 em{font-style:italic;font-weight:300;color:var(--fuchsia2);}
.about-p{font-size:13px;color:var(--muted);line-height:1.85;margin-bottom:14px;}
.about-p strong{color:#fff;font-weight:700;}
.about-pts{display:flex;flex-direction:column;gap:14px;margin-top:20px;}
.apt{display:flex;align-items:flex-start;gap:12px;}
.apt-dot{width:10px;height:10px;background:var(--grad);border-radius:50%;flex-shrink:0;margin-top:4px;}
.apt-txt{font-size:13px;font-weight:600;color:#fff;}
.about-cards{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
.ac{background:linear-gradient(145deg,#1E2545,#161B35);border:1px solid var(--bord);padding:26px 22px;transition:border-color .2s,transform .2s;}
.ac:hover{border-color:var(--bord2);transform:translateY(-4px);}
.ac.dark{background:var(--bleu);border-color:var(--bleu2);}
.ac-n{font-size:42px;font-weight:900;color:var(--fuchsia);line-height:1;margin-bottom:6px;}
.ac-l{font-size:11px;font-weight:600;color:var(--muted);letter-spacing:.04em;}

/* PROCESS */
.process-sec{background:var(--bleu2);border-top:1px solid var(--bord);border-bottom:1px solid var(--bord);}
.steps-row{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-top:52px;}
.step{padding:30px 22px;border:1px solid rgba(155,51,127,.14);border-right:none;position:relative;transition:background .3s,border-color .3s;}
.step:last-child{border-right:1px solid rgba(155,51,127,.14);}
.step:hover{background:rgba(155,51,127,.06);border-color:rgba(185,27,120,.35);}
.step-arr{position:absolute;right:-18px;top:50%;transform:translateY(-50%);font-size:22px;color:var(--fuchsia);font-weight:900;z-index:2;}
.step:last-child .step-arr{display:none;}
.step-ico{width:48px;height:48px;background:rgba(185,27,120,.12);border:1px solid rgba(185,27,120,.3);display:flex;align-items:center;justify-content:center;margin-bottom:22px;}
.step-ico svg{width:22px;height:22px;}
.step-num{font-size:62px;font-weight:900;font-style:italic;color:rgba(185,27,120,.13);line-height:1;margin-bottom:18px;}
.step-t{font-size:15px;font-weight:800;color:#fff;margin-bottom:8px;}
.step-d{font-size:12px;color:var(--muted);line-height:1.75;}
.step.active{background:rgba(185,27,120,.07);border-color:rgba(185,27,120,.38);}
.step.active .step-num{color:rgba(185,27,120,.35);}

/* PORTFOLIO */
.portfolio-sec{background:var(--bleu);}
.portfolio-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;}
.port-card{background:linear-gradient(145deg,#141830,#1C244B);border:1px solid var(--bord);overflow:hidden;transition:transform .3s,border-color .3s,box-shadow .3s;cursor:pointer;}
.port-card:hover{transform:translateY(-8px);border-color:var(--bord2);box-shadow:0 24px 60px rgba(0,0,0,.5);}
.port-thumb{height:180px;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;}
.port-overlay{position:absolute;inset:0;background:rgba(185,27,120,.72);display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .3s;}
.port-card:hover .port-overlay{opacity:1;}
.port-see{color:#fff;font-size:11px;font-weight:700;letter-spacing:.15em;text-transform:uppercase;}
.port-info{padding:20px 20px 22px;}
.port-cat{font-size:9px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--fuchsia);margin-bottom:5px;}
.port-name{font-size:16px;font-weight:800;color:#fff;margin-bottom:4px;}
.port-desc{font-size:11px;color:var(--muted);}

/* TÉMOIGNAGES */
.testi-sec{background:var(--nuit);border-top:1px solid var(--bord);}
.testi-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}
.testi-card{background:linear-gradient(145deg,#1E2545,#161B35);border:1px solid var(--bord);padding:30px 26px;position:relative;transition:transform .3s,border-color .3s;}
.testi-card:hover{transform:translateY(-5px);border-color:var(--bord2);}
.testi-qm{position:absolute;top:16px;right:20px;font-size:76px;font-weight:900;color:rgba(185,27,120,.13);line-height:1;}
.testi-stars{display:flex;gap:4px;margin-bottom:16px;}
.star{width:14px;height:14px;background:var(--fuchsia);clip-path:polygon(50% 0%,61% 35%,98% 35%,68% 57%,79% 91%,50% 70%,21% 91%,32% 57%,2% 35%,39% 35%);}
.testi-q{font-size:13px;font-style:italic;color:#fff;line-height:1.75;margin-bottom:22px;}
.testi-sep{height:1px;background:var(--bord);margin-bottom:14px;}
.testi-name{font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--fuchsia);}
.testi-role{font-size:10px;color:var(--muted);margin-top:2px;}

/* APERÇU OFFRES */
.offres-apercu{background:var(--bleu2);border-top:1px solid var(--bord);}
.offres-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:2px;background:rgba(155,51,127,.12);}
.offre-card{background:linear-gradient(145deg,#141830,#1C244B);padding:32px 24px;position:relative;overflow:hidden;transition:transform .3s,background .3s;cursor:default;}
.offre-card:hover{transform:translateY(-5px);background:linear-gradient(145deg,#1a1f3d,#21305c);}
.offre-card::before{content:'';position:absolute;top:0;left:0;right:0;height:4px;background:var(--grad);transform:scaleX(0);transform-origin:left;transition:transform .4s;}
.offre-card:hover::before{transform:scaleX(1);}
.offre-emoji{font-size:28px;margin-bottom:14px;display:block;}
.offre-title{font-size:15px;font-weight:800;color:#fff;margin-bottom:6px;}
.offre-desc{font-size:11px;color:var(--muted);line-height:1.7;margin-bottom:18px;}
.offre-from{font-size:9px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-bottom:3px;}
.offre-price{font-size:28px;font-weight:900;color:var(--fuchsia);line-height:1;}
.offre-price span{font-size:13px;color:var(--muted);font-weight:500;}
.offre-link{display:inline-flex;align-items:center;gap:5px;margin-top:16px;font-size:10px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--fuchsia);transition:gap .2s;text-decoration:none;}
.offre-card:hover .offre-link{gap:10px;}
.offre-bg-num{position:absolute;bottom:-10px;right:10px;font-size:90px;font-weight:900;font-style:italic;color:rgba(185,27,120,.04);line-height:1;}

/* PACK HIGHLIGHT */
.pack-banner{background:var(--grad);background-size:200% 200%;animation:gradShift 8s ease infinite;padding:60px 5%;display:flex;align-items:center;justify-content:space-between;gap:32px;flex-wrap:wrap;border-top:1px solid var(--bord2);}
.pack-left .pack-pre{font-size:9px;font-weight:700;letter-spacing:.28em;text-transform:uppercase;color:rgba(255,255,255,.6);margin-bottom:10px;}
.pack-left h3{font-size:clamp(1.6rem,3vw,2.6rem);font-weight:900;color:#fff;line-height:1.1;margin-bottom:8px;}
.pack-left h3 em{font-style:italic;font-weight:300;}
.pack-left p{font-size:13px;color:rgba(255,255,255,.7);}
.pack-right{display:flex;flex-direction:column;align-items:flex-end;gap:12px;}
.pack-price{font-size:52px;font-weight:900;color:#fff;line-height:1;}
.pack-price span{font-size:16px;font-weight:400;color:rgba(255,255,255,.6);}
.pack-note{font-size:11px;color:rgba(255,255,255,.6);text-align:right;}
.btn-pack{background:#fff;color:var(--fuchsia);border:none;padding:16px 36px;font-family:'Poppins',sans-serif;font-weight:900;font-size:12px;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;transition:transform .2s,background .2s;white-space:nowrap;}
.btn-pack:hover{transform:translateY(-3px);background:var(--texte);}
.btn-pack-out{background:transparent;color:#fff;border:2px solid rgba(255,255,255,.4);padding:16px 36px;font-family:'Poppins',sans-serif;font-weight:700;font-size:12px;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;transition:border-color .2s;white-space:nowrap;}
.btn-pack-out:hover{border-color:#fff;}

/* CTA FINAL */
/* ── BLOG ── */
.blog-sec{background:#F4F4F6;border-top:1px solid #E8E8F0;padding:90px 5%;}
.blog-hd{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:56px;flex-wrap:wrap;gap:20px;}
.blog-hd-left .sec-tag{display:inline-block;font-size:9px;font-weight:700;letter-spacing:.28em;text-transform:uppercase;color:var(--fuchsia);background:rgba(185,27,120,.1);border:1px solid rgba(185,27,120,.3);padding:6px 14px;margin-bottom:14px;}
.blog-h2{font-size:clamp(2rem,3.5vw,3rem);font-weight:900;color:#1A1A2E;line-height:1.1;margin-bottom:8px;}
.blog-h2 em{font-style:italic;font-weight:300;color:#D4348E;}
.blog-desc{font-size:14px;color:#6B6B80;line-height:1.75;max-width:460px;}
.blog-see-all{display:inline-flex;align-items:center;gap:8px;font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:#B91B78;text-decoration:none;border-bottom:2px solid rgba(185,27,120,.3);padding-bottom:2px;white-space:nowrap;transition:border-color .2s,gap .2s;}
.blog-see-all:hover{border-color:var(--fuchsia);gap:14px;}
.blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}
.blog-card{background:#FFFFFF;border:1px solid #E8E8F0;overflow:hidden;transition:transform .3s,border-color .3s,box-shadow .3s;text-decoration:none;color:inherit;display:flex;flex-direction:column;}
.blog-card:hover{transform:translateY(-7px);border-color:rgba(185,27,120,.4);box-shadow:0 20px 50px rgba(28,36,75,.12);}
.blog-thumb{height:170px;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.blog-cat-pill{position:absolute;top:14px;left:14px;background:var(--grad);color:#fff;font-size:8px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;padding:5px 12px;}
.blog-body{padding:22px 22px 26px;flex:1;display:flex;flex-direction:column;}
.blog-meta{display:flex;align-items:center;gap:10px;margin-bottom:12px;}
.blog-date{font-size:10px;font-weight:600;color:#9A93AF;letter-spacing:.06em;}
.blog-read{font-size:10px;font-weight:700;color:var(--fuchsia);background:rgba(185,27,120,.1);padding:3px 10px;}
.blog-title{font-size:17px;font-weight:800;color:#1A1A2E;margin-bottom:9px;line-height:1.35;transition:color .2s;}
.blog-card:hover .blog-title{color:var(--fuchsia);}
.blog-excerpt{font-size:12px;color:#6B6B80;line-height:1.72;margin-bottom:18px;flex:1;}
.blog-link{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--fuchsia);transition:gap .2s;}
.blog-card:hover .blog-link{gap:12px;}
@media(max-width:900px){.blog-grid{grid-template-columns:1fr;}.blog-hd{flex-direction:column;align-items:flex-start;}}
.cta-sec{background:linear-gradient(135deg,#9B337F 0%,#B91B78 55%,#7B2868 100%);background-size:200% 200%;animation:gradShift 8s ease infinite;padding:100px 5%;text-align:center;position:relative;overflow:hidden;}
.cta-sec::before{content:'';position:absolute;inset:0;background-image:radial-gradient(rgba(255,255,255,.07) 1px,transparent 1px);background-size:28px 28px;pointer-events:none;}.cta-sec::after{content:'';position:absolute;width:500px;height:500px;border-radius:50%;background:rgba(255,255,255,.05);top:-250px;right:-150px;pointer-events:none;}
.cta-glow{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:600px;height:300px;background:radial-gradient(ellipse,rgba(155,51,127,.12) 0%,transparent 68%);pointer-events:none;}
.cta-pre{font-size:10px;font-weight:700;letter-spacing:.3em;text-transform:uppercase;color:rgba(255,255,255,.65);margin-bottom:16px;}
.cta-h2{font-size:clamp(2rem,4.5vw,4rem);font-weight:900;color:#fff;margin-bottom:12px;line-height:1.08;}
.cta-h2 em{font-style:italic;font-weight:300;background:linear-gradient(135deg,#E040A0,#B91B78);background-size:200% auto;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:shimmer 5s linear infinite;}
.cta-sub{font-size:15px;color:rgba(255,255,255,.88);margin-bottom:36px;font-weight:500;}
.cta-form{display:flex;max-width:460px;margin:0 auto 14px;}
.cta-inp{flex:1;background:rgba(255,255,255,.07);border:1px solid rgba(155,51,127,.35);border-right:none;color:#fff;padding:17px 20px;font-family:'Poppins',sans-serif;font-size:13px;outline:none;}
.cta-inp::placeholder{color:rgba(255,255,255,.3);}
.cta-inp:focus{background:rgba(255,255,255,.12);}
.cta-btn{background:#fff;color:#B91B78;border:none;padding:17px 26px;font-family:'Poppins',sans-serif;font-weight:900;font-size:12px;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;white-space:nowrap;transition:opacity .2s;}
.cta-btn:hover{background:#F4F4F6;transform:translateY(-2px);}
.cta-note{margin-top:22px;}
.cta-note-chips{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;}
.cta-note-chips span{background:rgba(255,255,255,.18);border:1px solid rgba(255,255,255,.32);color:#fff;font-size:12px;font-weight:600;padding:8px 18px;letter-spacing:.04em;cursor:pointer;transition:background .2s;}
.cta-note-chips span:hover{background:rgba(255,255,255,.3);}

/* FOOTER */
footer{background:var(--nuit);border-top:1px solid var(--bord);padding:70px 5% 28px;}
.footer-top{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:48px;margin-bottom:48px;}
.footer-logo{display:flex;align-items:center;gap:12px;text-decoration:none;margin-bottom:14px;}
.footer-logo img{height:38px;}
.footer-p{font-size:12px;color:var(--muted);line-height:1.8;max-width:220px;}
.footer-h{font-size:9px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--fuchsia);margin-bottom:18px;}
.footer-links{list-style:none;display:flex;flex-direction:column;gap:10px;}
.footer-links a{font-size:12px;color:var(--muted);text-decoration:none;font-weight:500;transition:color .2s;}
.footer-links a:hover{color:#fff;}
.footer-bottom{border-top:1px solid var(--bord);padding-top:22px;display:flex;align-items:center;justify-content:space-between;}
.footer-copy{font-size:11px;color:var(--dim);}
.footer-copy strong{color:var(--fuchsia);}
.footer-langs{display:flex;gap:16px;}
.footer-langs a{font-size:11px;color:var(--muted);text-decoration:none;font-weight:700;letter-spacing:.1em;transition:color .2s;}
.footer-langs a:hover{color:#fff;}

@media(max-width:900px){
  .hero,.about-sec{grid-template-columns:1fr;}
  .hero-right{display:none;}
  .exp-grid,.steps-row,.portfolio-grid,.testi-grid,.offres-grid{grid-template-columns:1fr;}
  .footer-top{grid-template-columns:1fr 1fr;}
  .pack-banner{flex-direction:column;text-align:center;}
  .pack-right{align-items:center;}
}

/* NAV MOBILE */
.nav-toggle{display:none;flex-direction:column;gap:5px;background:transparent;border:none;padding:6px;cursor:pointer;z-index:201;}
.nav-toggle span{width:24px;height:2px;background:#fff;display:block;}
.nav-links.open{display:flex!important;flex-direction:column;position:fixed;top:72px;left:0;right:0;background:rgba(13,15,26,.98);padding:24px 5%;gap:20px;border-bottom:1px solid rgba(155,51,127,.22);z-index:199;}
@media(max-width:768px){.nav-links{display:none;}.nav-toggle{display:flex;}.nav-r .btn-lang{display:none;}}
/* FEEDBACK */
.cta-feedback{margin-top:14px;font-size:13px;font-weight:600;padding:12px 20px;}
.cta-feedback.success{background:rgba(74,222,128,.15);color:#4ade80;border:1px solid rgba(74,222,128,.3);}
.cta-feedback.error{background:rgba(248,113,113,.15);color:#f87171;border:1px solid rgba(248,113,113,.3);}

.nav-links a.active{color:#fff;}
.nav-links a.active::after{transform:scaleX(1)!important;}
</style>

/* ═══════════════════════════════════════════
   PAGE GÉNÉRIQUE
═══════════════════════════════════════════ */
.generic-page{max-width:800px;margin:60px auto;padding:0 5% 80px;}
.gp-header{margin-bottom:40px;}
.gp-title{font-size:clamp(2rem,4vw,3rem);font-weight:900;color:var(--texte);line-height:1.15;margin-top:14px;}
.gp-content{font-size:16px;line-height:1.85;color:var(--texte);}
.gp-content h2{font-size:1.6rem;font-weight:800;margin:36px 0 14px;}
.gp-content h3{font-size:1.2rem;font-weight:700;margin:28px 0 10px;}
.gp-content p{margin-bottom:18px;}
.gp-content ul,.gp-content ol{padding-left:24px;margin-bottom:18px;}
.gp-content li{margin-bottom:8px;}
.gp-content a{color:var(--fuchsia);text-decoration:underline;}

/* Responsive additionnel */
@media(max-width:900px){
  .prix-web,.secteurs-grid,.cm-grid,.pack-grid,.faq-grid,.blog-page-grid{grid-template-columns:1fr;}
  .pw-card.featured{transform:none;}
}

/* ═══════════════════════════════════════════
   PAGE EXPERTISES
═══════════════════════════════════════════ */

<style>
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box;}
:root{
  --nuit:#0D0F1A;
  --bleu:#1C244B;
  --bleu2:#2A3566;
  --bleu3:#3D4F8A;
  --violet:#9B337F;
  --fuchsia:#B91B78;
  --fuchsia2:#D4348E;
  --prune:#7B2868;
  --texte:#F5F0F8;
  --muted:#9A93AF;
  --dim:#5C547A;
  --bord:rgba(155,51,127,0.22);
  --bord2:rgba(185,27,120,0.45);
  --grad:linear-gradient(135deg,#9B337F 0%,#B91B78 100%);
  --surf:linear-gradient(145deg,#1E2545,#161B35);
}
html{scroll-behavior:smooth;}
body{font-family:'Poppins',sans-serif;background:var(--nuit);color:var(--texte);overflow-x:hidden;}

@keyframes fadeInUp{from{opacity:0;transform:translateY(36px)}to{opacity:1;transform:translateY(0)}}
@keyframes fadeInLeft{from{opacity:0;transform:translateX(-44px)}to{opacity:1;transform:translateX(0)}}
@keyframes fadeInRight{from{opacity:0;transform:translateX(44px)}to{opacity:1;transform:translateX(0)}}
@keyframes floatUp{0%,100%{transform:translateY(0)}50%{transform:translateY(-12px)}}
@keyframes floatDown{0%,100%{transform:translateY(0)}50%{transform:translateY(9px)}}
@keyframes rotate{to{transform:rotate(360deg)}}
@keyframes rotateRev{to{transform:rotate(-360deg)}}
@keyframes pulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.3;transform:scale(1.6)}}
@keyframes shimmer{0%{background-position:200% center}100%{background-position:-200% center}}
@keyframes gradShift{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}
@keyframes particle{0%{transform:translateY(0) scale(1);opacity:.7}100%{transform:translateY(-120px) scale(0);opacity:0}}
@keyframes barSlide{from{width:0}to{width:100%}}
@keyframes blink{0%,100%{box-shadow:0 0 10px rgba(185,27,120,.5)}50%{box-shadow:0 0 24px rgba(185,27,120,.9)}}
@keyframes countUp{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}

.reveal{opacity:0;transform:translateY(30px);transition:opacity .72s ease,transform .72s ease;}
.reveal.on{opacity:1;transform:translateY(0);}
.rl{opacity:0;transform:translateX(-36px);transition:opacity .72s ease,transform .72s ease;}
.rl.on{opacity:1;transform:translateX(0);}
.rr{opacity:0;transform:translateX(36px);transition:opacity .72s ease,transform .72s ease;}
.rr.on{opacity:1;transform:translateX(0);}
.rs{opacity:0;transform:scale(.9);transition:opacity .65s ease,transform .65s ease;}
.rs.on{opacity:1;transform:scale(1);}
.d1{transition-delay:.1s}.d2{transition-delay:.2s}.d3{transition-delay:.3s}
.d4{transition-delay:.4s}.d5{transition-delay:.5s}.d6{transition-delay:.6s}

/* NAV */
nav{position:sticky;top:0;z-index:200;background:rgba(13,15,26,.97);backdrop-filter:blur(20px);border-bottom:1px solid var(--bord);padding:0 5%;height:72px;display:flex;align-items:center;justify-content:space-between;transition:box-shadow .3s;}
nav.sc{box-shadow:0 4px 28px rgba(185,27,120,.18);}
.nav-logo{display:flex;align-items:center;gap:12px;text-decoration:none;}
.nav-logo img{height:44px;width:auto;}
.nav-logo-txt .l1{font-size:15px;font-weight:900;letter-spacing:.07em;color:#fff;display:block;line-height:1.1;}
.nav-logo-txt .l2{font-size:10px;font-weight:300;letter-spacing:.22em;color:var(--fuchsia);display:block;}
.nav-links{display:flex;gap:32px;list-style:none;}
.nav-links a{color:var(--muted);font-size:11px;font-weight:600;letter-spacing:.09em;text-transform:uppercase;text-decoration:none;transition:color .2s;position:relative;}
.nav-links a::after{content:'';position:absolute;bottom:-5px;left:0;right:0;height:2px;background:var(--grad);transform:scaleX(0);transform-origin:left;transition:transform .3s;}
.nav-links a:hover{color:#fff;}.nav-links a:hover::after{transform:scaleX(1);}
.nav-right{display:flex;align-items:center;gap:10px;}
.btn-ghost-nav{color:var(--muted);font-size:11px;font-weight:700;letter-spacing:.1em;border:1px solid var(--bord);padding:8px 14px;cursor:pointer;background:transparent;font-family:'Poppins',sans-serif;transition:color .2s,border-color .2s;}
.btn-ghost-nav:hover{color:#fff;border-color:var(--bord2);}
.btn-cta-nav{background:var(--grad);color:#fff;border:none;padding:11px 24px;font-family:'Poppins',sans-serif;font-weight:700;font-size:11px;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;transition:opacity .2s,transform .2s,box-shadow .2s;}
.btn-cta-nav:hover{opacity:.86;transform:translateY(-2px);box-shadow:0 8px 22px rgba(185,27,120,.38);}

/* HERO */
.hero{min-height:100vh;background:var(--nuit);display:grid;grid-template-columns:1fr 1fr;align-items:center;padding:88px 5% 70px;position:relative;overflow:hidden;}
.hero-grid-bg{position:absolute;inset:0;pointer-events:none;opacity:.04;background-image:linear-gradient(var(--fuchsia) 1px,transparent 1px),linear-gradient(90deg,var(--fuchsia) 1px,transparent 1px);background-size:52px 52px;}
.hero-glow{position:absolute;right:-120px;top:50%;transform:translateY(-50%);width:680px;height:680px;pointer-events:none;background:radial-gradient(circle,rgba(185,27,120,.15) 0%,rgba(155,51,127,.07) 44%,transparent 68%);}
.hero-glow2{position:absolute;left:-90px;bottom:-90px;width:360px;height:360px;pointer-events:none;background:radial-gradient(circle,rgba(28,36,75,.92) 0%,transparent 65%);}
.particles-wrap{position:absolute;inset:0;pointer-events:none;overflow:hidden;}
.pt{position:absolute;width:4px;height:4px;background:var(--fuchsia);border-radius:50%;animation:particle 5s ease-out infinite;}

.hero-eyebrow{display:inline-flex;align-items:center;gap:10px;background:rgba(185,27,120,.1);border:1px solid rgba(185,27,120,.38);color:var(--fuchsia2);font-size:10px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;padding:7px 16px;margin-bottom:26px;animation:fadeInUp .65s .1s ease both;}
.pulse-dot{width:8px;height:8px;background:var(--fuchsia);border-radius:50%;animation:pulse 2s infinite;flex-shrink:0;}
h1.ht{font-size:clamp(2.8rem,5.2vw,5.4rem);font-weight:900;line-height:1.04;color:#fff;animation:fadeInUp .65s .22s ease both;}
h1.ht .grd{font-style:italic;font-weight:300;background:linear-gradient(135deg,#E040A0,#B91B78,#9B337F);background-size:200% auto;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:shimmer 5s linear infinite;}
.hero-sub{font-size:15px;font-weight:400;line-height:1.82;color:var(--muted);max-width:460px;margin:22px 0 36px;animation:fadeInUp .65s .34s ease both;}
.hero-sub strong{color:#fff;font-weight:700;}
.hero-btns{display:flex;gap:14px;margin-bottom:52px;animation:fadeInUp .65s .46s ease both;}
.btn-hero{background:var(--grad);color:#fff;border:none;padding:17px 32px;font-family:'Poppins',sans-serif;font-weight:700;font-size:12px;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;position:relative;overflow:hidden;transition:transform .25s,box-shadow .25s;}
.btn-hero::after{content:'';position:absolute;inset:0;background:rgba(255,255,255,.15);transform:translateX(-100%) skewX(-15deg);transition:transform .4s;}
.btn-hero:hover{transform:translateY(-3px);box-shadow:0 16px 40px rgba(185,27,120,.4);}
.btn-hero:hover::after{transform:translateX(100%) skewX(-15deg);}
.btn-hero-out{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.22);padding:17px 32px;font-family:'Poppins',sans-serif;font-weight:600;font-size:12px;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;transition:border-color .2s,background .2s;}
.btn-hero-out:hover{border-color:var(--fuchsia);background:rgba(185,27,120,.08);}
.hero-stats{display:flex;gap:36px;animation:fadeInUp .65s .58s ease both;}
.hstat{border-left:3px solid var(--fuchsia);padding-left:16px;}
.hstat-n{font-size:34px;font-weight:900;color:#fff;line-height:1;}
.hstat-n span{color:var(--fuchsia);}
.hstat-l{font-size:10px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-top:3px;}

/* HERO RIGHT — phone */
.hero-right{display:flex;justify-content:center;align-items:center;position:relative;height:560px;animation:fadeInRight .9s .3s ease both;}
.phone-wrap{position:relative;width:255px;z-index:5;}
.phone-frame{background:linear-gradient(160deg,#1E2545,#0D0F1A);border:2px solid rgba(155,51,127,.4);border-radius:38px;padding:14px;box-shadow:0 32px 80px rgba(0,0,0,.6),0 0 0 1px rgba(155,51,127,.2),inset 0 1px 0 rgba(255,255,255,.07);animation:floatUp 5s ease-in-out infinite;}
.phone-screen{background:var(--bleu);border-radius:28px;overflow:hidden;}
.phone-notch{height:26px;background:var(--nuit);display:flex;align-items:center;justify-content:center;}
.phone-notch-bar{width:58px;height:5px;background:rgba(255,255,255,.14);border-radius:3px;}
.phone-content{padding:14px;}
.phone-header{background:var(--grad);margin:-14px -14px 12px;padding:14px;}
.phone-logo-row{display:flex;align-items:center;gap:8px;}
.phone-logo-row img{height:20px;filter:brightness(0) invert(1);}
.phone-tagline{font-size:7px;font-weight:600;color:rgba(255,255,255,.75);margin-top:5px;letter-spacing:.06em;}
.phone-card{background:rgba(255,255,255,.06);border:1px solid rgba(155,51,127,.25);padding:10px;margin-bottom:8px;}
.phone-card-title{font-size:8px;font-weight:700;color:#fff;margin-bottom:3px;}
.phone-card-desc{font-size:7px;color:var(--muted);line-height:1.5;}
.phone-stats{display:flex;gap:8px;margin:10px 0;}
.phone-stat{flex:1;background:rgba(185,27,120,.15);border:1px solid rgba(185,27,120,.3);padding:8px;text-align:center;}
.phone-stat-n{font-size:14px;font-weight:900;color:var(--fuchsia);}
.phone-stat-l{font-size:6px;font-weight:600;color:var(--muted);letter-spacing:.08em;text-transform:uppercase;}
.phone-btn{display:block;background:var(--grad);color:#fff;text-align:center;padding:10px;font-size:8px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;margin-top:8px;}

/* Float badges */
.badge-float{position:absolute;z-index:10;background:linear-gradient(145deg,#1E2545,#161B35);border:1px solid var(--bord);padding:14px 18px;min-width:160px;}
.bf1{top:40px;right:-20px;animation:floatUp 4.5s ease-in-out infinite;}
.bf2{bottom:60px;left:-30px;animation:floatDown 5.5s ease-in-out infinite;}
.bf-val{font-size:22px;font-weight:900;color:#fff;line-height:1;}
.bf-val span{color:var(--fuchsia);}
.bf-label{font-size:9px;font-weight:600;color:var(--muted);letter-spacing:.1em;text-transform:uppercase;margin-top:4px;}
.bf-bar{height:3px;background:rgba(155,51,127,.2);margin-top:10px;}
.bf-fill{height:3px;background:var(--grad);}

/* ORBIT */
.orbit-wrap{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;pointer-events:none;}
.orbit-ring-out{position:absolute;width:360px;height:360px;border:1px dashed rgba(155,51,127,.2);border-radius:50%;animation:rotate 28s linear infinite;}
.orbit-dot{position:absolute;width:10px;height:10px;background:var(--fuchsia);border-radius:50%;top:-5px;left:50%;transform:translateX(-50%);box-shadow:0 0 12px rgba(185,27,120,.7);animation:blink 2.5s ease infinite;}

/* CLIENTS BAND */
.clients-band{background:linear-gradient(135deg,var(--bleu),var(--bleu2));border-top:1px solid var(--bord);border-bottom:1px solid var(--bord);padding:22px 5%;display:flex;align-items:center;gap:28px;overflow:hidden;}
.cl-label{font-size:9px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--muted);white-space:nowrap;}
.cl-sep{width:1px;height:32px;background:var(--bord);flex-shrink:0;}
.cl-track{display:flex;gap:52px;flex:1;}
.cl-n{font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:rgba(245,240,248,.18);white-space:nowrap;transition:color .3s;cursor:default;}
.cl-n:hover{color:rgba(185,27,120,.7);}

/* SECTIONS COMMUNES */
section{padding:90px 5%;}
.sec-tag{display:inline-block;font-size:9px;font-weight:700;letter-spacing:.28em;text-transform:uppercase;color:var(--fuchsia);background:rgba(185,27,120,.1);border:1px solid rgba(185,27,120,.3);padding:6px 14px;margin-bottom:14px;}
.sec-h2{font-size:clamp(2rem,3.5vw,3rem);font-weight:900;color:#fff;line-height:1.1;margin-bottom:10px;}
.sec-h2 em{font-style:italic;font-weight:300;color:var(--violet);}
.sec-p{font-size:14px;color:var(--muted);line-height:1.75;max-width:520px;}
.sec-header{display:flex;justify-content:space-between;align-items:flex-end;flex-wrap:wrap;gap:20px;margin-bottom:52px;}
.see-all{display:inline-flex;align-items:center;gap:8px;font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--fuchsia);text-decoration:none;border-bottom:2px solid rgba(185,27,120,.3);padding-bottom:2px;transition:gap .2s,border-color .2s;white-space:nowrap;}
.see-all:hover{gap:14px;border-color:var(--fuchsia);}

/* EXPERTISES */
.exp-sec{background:var(--bleu);}
.exp-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:2px;background:rgba(155,51,127,.12);}
.exp-card{background:linear-gradient(145deg,#141830,#1C244B);padding:44px 36px;position:relative;overflow:hidden;transition:transform .3s,box-shadow .3s;cursor:default;}
.exp-card:hover{transform:translateY(-5px);box-shadow:0 24px 56px rgba(0,0,0,.4);}
.exp-card::before{content:'';position:absolute;top:0;left:0;right:0;height:4px;background:var(--grad);transform:scaleX(0);transform-origin:left;transition:transform .4s;}
.exp-card:hover::before{transform:scaleX(1);}
.exp-num{position:absolute;top:28px;right:28px;font-size:88px;font-weight:900;font-style:italic;color:rgba(185,27,120,.05);line-height:1;transition:color .3s;}
.exp-card:hover .exp-num{color:rgba(185,27,120,.12);}
.exp-icon{width:54px;height:54px;background:var(--grad);display:flex;align-items:center;justify-content:center;margin-bottom:22px;}
.exp-icon svg{width:24px;height:24px;}
.exp-name{font-size:22px;font-weight:800;color:#fff;margin-bottom:12px;}
.exp-desc{font-size:13px;color:var(--muted);line-height:1.8;margin-bottom:20px;}
.exp-tags{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:22px;}
.exp-tag{font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;background:rgba(185,27,120,.1);color:var(--fuchsia2);border:1px solid rgba(185,27,120,.25);padding:5px 12px;}
.exp-link{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--fuchsia);text-decoration:none;transition:gap .2s;}
.exp-card:hover .exp-link{gap:12px;}

/* ABOUT */
.about-sec{background:var(--nuit);border-top:1px solid var(--bord);display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center;}
.about-badge{display:inline-block;font-size:9px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--fuchsia2);background:rgba(185,27,120,.12);border:1px solid var(--bord2);padding:6px 14px;margin-bottom:18px;}
.about-h2{font-size:clamp(1.9rem,3vw,2.8rem);font-weight:900;color:#fff;line-height:1.15;margin-bottom:20px;}
.about-h2 em{font-style:italic;font-weight:300;color:var(--fuchsia2);}
.about-p{font-size:13px;color:var(--muted);line-height:1.85;margin-bottom:14px;}
.about-p strong{color:#fff;font-weight:700;}
.about-pts{display:flex;flex-direction:column;gap:14px;margin-top:20px;}
.apt{display:flex;align-items:flex-start;gap:12px;}
.apt-dot{width:10px;height:10px;background:var(--grad);border-radius:50%;flex-shrink:0;margin-top:4px;}
.apt-txt{font-size:13px;font-weight:600;color:#fff;}
.about-cards{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
.ac{background:linear-gradient(145deg,#1E2545,#161B35);border:1px solid var(--bord);padding:26px 22px;transition:border-color .2s,transform .2s;}
.ac:hover{border-color:var(--bord2);transform:translateY(-4px);}
.ac.dark{background:var(--bleu);border-color:var(--bleu2);}
.ac-n{font-size:42px;font-weight:900;color:var(--fuchsia);line-height:1;margin-bottom:6px;}
.ac-l{font-size:11px;font-weight:600;color:var(--muted);letter-spacing:.04em;}

/* PROCESS */
.process-sec{background:var(--bleu2);border-top:1px solid var(--bord);border-bottom:1px solid var(--bord);}
.steps-row{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-top:52px;}
.step{padding:30px 22px;border:1px solid rgba(155,51,127,.14);border-right:none;position:relative;transition:background .3s,border-color .3s;}
.step:last-child{border-right:1px solid rgba(155,51,127,.14);}
.step:hover{background:rgba(155,51,127,.06);border-color:rgba(185,27,120,.35);}
.step-arr{position:absolute;right:-18px;top:50%;transform:translateY(-50%);font-size:22px;color:var(--fuchsia);font-weight:900;z-index:2;}
.step:last-child .step-arr{display:none;}
.step-ico{width:48px;height:48px;background:rgba(185,27,120,.12);border:1px solid rgba(185,27,120,.3);display:flex;align-items:center;justify-content:center;margin-bottom:22px;}
.step-ico svg{width:22px;height:22px;}
.step-num{font-size:62px;font-weight:900;font-style:italic;color:rgba(185,27,120,.13);line-height:1;margin-bottom:18px;}
.step-t{font-size:15px;font-weight:800;color:#fff;margin-bottom:8px;}
.step-d{font-size:12px;color:var(--muted);line-height:1.75;}
.step.active{background:rgba(185,27,120,.07);border-color:rgba(185,27,120,.38);}
.step.active .step-num{color:rgba(185,27,120,.35);}

/* PORTFOLIO */
.portfolio-sec{background:var(--bleu);}
.portfolio-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;}
.port-card{background:linear-gradient(145deg,#141830,#1C244B);border:1px solid var(--bord);overflow:hidden;transition:transform .3s,border-color .3s,box-shadow .3s;cursor:pointer;}
.port-card:hover{transform:translateY(-8px);border-color:var(--bord2);box-shadow:0 24px 60px rgba(0,0,0,.5);}
.port-thumb{height:180px;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;}
.port-overlay{position:absolute;inset:0;background:rgba(185,27,120,.72);display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .3s;}
.port-card:hover .port-overlay{opacity:1;}
.port-see{color:#fff;font-size:11px;font-weight:700;letter-spacing:.15em;text-transform:uppercase;}
.port-info{padding:20px 20px 22px;}
.port-cat{font-size:9px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--fuchsia);margin-bottom:5px;}
.port-name{font-size:16px;font-weight:800;color:#fff;margin-bottom:4px;}
.port-desc{font-size:11px;color:var(--muted);}

/* TÉMOIGNAGES */
.testi-sec{background:var(--nuit);border-top:1px solid var(--bord);}
.testi-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}
.testi-card{background:linear-gradient(145deg,#1E2545,#161B35);border:1px solid var(--bord);padding:30px 26px;position:relative;transition:transform .3s,border-color .3s;}
.testi-card:hover{transform:translateY(-5px);border-color:var(--bord2);}
.testi-qm{position:absolute;top:16px;right:20px;font-size:76px;font-weight:900;color:rgba(185,27,120,.13);line-height:1;}
.testi-stars{display:flex;gap:4px;margin-bottom:16px;}
.star{width:14px;height:14px;background:var(--fuchsia);clip-path:polygon(50% 0%,61% 35%,98% 35%,68% 57%,79% 91%,50% 70%,21% 91%,32% 57%,2% 35%,39% 35%);}
.testi-q{font-size:13px;font-style:italic;color:#fff;line-height:1.75;margin-bottom:22px;}
.testi-sep{height:1px;background:var(--bord);margin-bottom:14px;}
.testi-name{font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--fuchsia);}
.testi-role{font-size:10px;color:var(--muted);margin-top:2px;}

/* APERÇU OFFRES */
.offres-apercu{background:var(--bleu2);border-top:1px solid var(--bord);}
.offres-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:2px;background:rgba(155,51,127,.12);}
.offre-card{background:linear-gradient(145deg,#141830,#1C244B);padding:32px 24px;position:relative;overflow:hidden;transition:transform .3s,background .3s;cursor:default;}
.offre-card:hover{transform:translateY(-5px);background:linear-gradient(145deg,#1a1f3d,#21305c);}
.offre-card::before{content:'';position:absolute;top:0;left:0;right:0;height:4px;background:var(--grad);transform:scaleX(0);transform-origin:left;transition:transform .4s;}
.offre-card:hover::before{transform:scaleX(1);}
.offre-emoji{font-size:28px;margin-bottom:14px;display:block;}
.offre-title{font-size:15px;font-weight:800;color:#fff;margin-bottom:6px;}
.offre-desc{font-size:11px;color:var(--muted);line-height:1.7;margin-bottom:18px;}
.offre-from{font-size:9px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-bottom:3px;}
.offre-price{font-size:28px;font-weight:900;color:var(--fuchsia);line-height:1;}
.offre-price span{font-size:13px;color:var(--muted);font-weight:500;}
.offre-link{display:inline-flex;align-items:center;gap:5px;margin-top:16px;font-size:10px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--fuchsia);transition:gap .2s;text-decoration:none;}
.offre-card:hover .offre-link{gap:10px;}
.offre-bg-num{position:absolute;bottom:-10px;right:10px;font-size:90px;font-weight:900;font-style:italic;color:rgba(185,27,120,.04);line-height:1;}

/* PACK HIGHLIGHT */
.pack-banner{background:var(--grad);background-size:200% 200%;animation:gradShift 8s ease infinite;padding:60px 5%;display:flex;align-items:center;justify-content:space-between;gap:32px;flex-wrap:wrap;border-top:1px solid var(--bord2);}
.pack-left .pack-pre{font-size:9px;font-weight:700;letter-spacing:.28em;text-transform:uppercase;color:rgba(255,255,255,.6);margin-bottom:10px;}
.pack-left h3{font-size:clamp(1.6rem,3vw,2.6rem);font-weight:900;color:#fff;line-height:1.1;margin-bottom:8px;}
.pack-left h3 em{font-style:italic;font-weight:300;}
.pack-left p{font-size:13px;color:rgba(255,255,255,.7);}
.pack-right{display:flex;flex-direction:column;align-items:flex-end;gap:12px;}
.pack-price{font-size:52px;font-weight:900;color:#fff;line-height:1;}
.pack-price span{font-size:16px;font-weight:400;color:rgba(255,255,255,.6);}
.pack-note{font-size:11px;color:rgba(255,255,255,.6);text-align:right;}
.btn-pack{background:#fff;color:var(--fuchsia);border:none;padding:16px 36px;font-family:'Poppins',sans-serif;font-weight:900;font-size:12px;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;transition:transform .2s,background .2s;white-space:nowrap;}
.btn-pack:hover{transform:translateY(-3px);background:var(--texte);}
.btn-pack-out{background:transparent;color:#fff;border:2px solid rgba(255,255,255,.4);padding:16px 36px;font-family:'Poppins',sans-serif;font-weight:700;font-size:12px;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;transition:border-color .2s;white-space:nowrap;}
.btn-pack-out:hover{border-color:#fff;}

/* CTA FINAL */
/* ── BLOG ── */
.blog-sec{background:#F4F4F6;border-top:1px solid #E8E8F0;padding:90px 5%;}
.blog-hd{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:56px;flex-wrap:wrap;gap:20px;}
.blog-hd-left .sec-tag{display:inline-block;font-size:9px;font-weight:700;letter-spacing:.28em;text-transform:uppercase;color:var(--fuchsia);background:rgba(185,27,120,.1);border:1px solid rgba(185,27,120,.3);padding:6px 14px;margin-bottom:14px;}
.blog-h2{font-size:clamp(2rem,3.5vw,3rem);font-weight:900;color:#1A1A2E;line-height:1.1;margin-bottom:8px;}
.blog-h2 em{font-style:italic;font-weight:300;color:#D4348E;}
.blog-desc{font-size:14px;color:#6B6B80;line-height:1.75;max-width:460px;}
.blog-see-all{display:inline-flex;align-items:center;gap:8px;font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:#B91B78;text-decoration:none;border-bottom:2px solid rgba(185,27,120,.3);padding-bottom:2px;white-space:nowrap;transition:border-color .2s,gap .2s;}
.blog-see-all:hover{border-color:var(--fuchsia);gap:14px;}
.blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}
.blog-card{background:#FFFFFF;border:1px solid #E8E8F0;overflow:hidden;transition:transform .3s,border-color .3s,box-shadow .3s;text-decoration:none;color:inherit;display:flex;flex-direction:column;}
.blog-card:hover{transform:translateY(-7px);border-color:rgba(185,27,120,.4);box-shadow:0 20px 50px rgba(28,36,75,.12);}
.blog-thumb{height:170px;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.blog-cat-pill{position:absolute;top:14px;left:14px;background:var(--grad);color:#fff;font-size:8px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;padding:5px 12px;}
.blog-body{padding:22px 22px 26px;flex:1;display:flex;flex-direction:column;}
.blog-meta{display:flex;align-items:center;gap:10px;margin-bottom:12px;}
.blog-date{font-size:10px;font-weight:600;color:#9A93AF;letter-spacing:.06em;}
.blog-read{font-size:10px;font-weight:700;color:var(--fuchsia);background:rgba(185,27,120,.1);padding:3px 10px;}
.blog-title{font-size:17px;font-weight:800;color:#1A1A2E;margin-bottom:9px;line-height:1.35;transition:color .2s;}
.blog-card:hover .blog-title{color:var(--fuchsia);}
.blog-excerpt{font-size:12px;color:#6B6B80;line-height:1.72;margin-bottom:18px;flex:1;}
.blog-link{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--fuchsia);transition:gap .2s;}
.blog-card:hover .blog-link{gap:12px;}
@media(max-width:900px){.blog-grid{grid-template-columns:1fr;}.blog-hd{flex-direction:column;align-items:flex-start;}}
.cta-sec{background:linear-gradient(135deg,#9B337F 0%,#B91B78 55%,#7B2868 100%);background-size:200% 200%;animation:gradShift 8s ease infinite;padding:100px 5%;text-align:center;position:relative;overflow:hidden;}
.cta-sec::before{content:'';position:absolute;inset:0;background-image:radial-gradient(rgba(255,255,255,.07) 1px,transparent 1px);background-size:28px 28px;pointer-events:none;}.cta-sec::after{content:'';position:absolute;width:500px;height:500px;border-radius:50%;background:rgba(255,255,255,.05);top:-250px;right:-150px;pointer-events:none;}
.cta-glow{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:600px;height:300px;background:radial-gradient(ellipse,rgba(155,51,127,.12) 0%,transparent 68%);pointer-events:none;}
.cta-pre{font-size:10px;font-weight:700;letter-spacing:.3em;text-transform:uppercase;color:rgba(255,255,255,.65);margin-bottom:16px;}
.cta-h2{font-size:clamp(2rem,4.5vw,4rem);font-weight:900;color:#fff;margin-bottom:12px;line-height:1.08;}
.cta-h2 em{font-style:italic;font-weight:300;background:linear-gradient(135deg,#E040A0,#B91B78);background-size:200% auto;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:shimmer 5s linear infinite;}
.cta-sub{font-size:15px;color:rgba(255,255,255,.88);margin-bottom:36px;font-weight:500;}
.cta-form{display:flex;max-width:460px;margin:0 auto 14px;}
.cta-inp{flex:1;background:rgba(255,255,255,.07);border:1px solid rgba(155,51,127,.35);border-right:none;color:#fff;padding:17px 20px;font-family:'Poppins',sans-serif;font-size:13px;outline:none;}
.cta-inp::placeholder{color:rgba(255,255,255,.3);}
.cta-inp:focus{background:rgba(255,255,255,.12);}
.cta-btn{background:#fff;color:#B91B78;border:none;padding:17px 26px;font-family:'Poppins',sans-serif;font-weight:900;font-size:12px;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;white-space:nowrap;transition:opacity .2s;}
.cta-btn:hover{background:#F4F4F6;transform:translateY(-2px);}
.cta-note{margin-top:22px;}
.cta-note-chips{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;}
.cta-note-chips span{background:rgba(255,255,255,.18);border:1px solid rgba(255,255,255,.32);color:#fff;font-size:12px;font-weight:600;padding:8px 18px;letter-spacing:.04em;cursor:pointer;transition:background .2s;}
.cta-note-chips span:hover{background:rgba(255,255,255,.3);}

/* FOOTER */
footer{background:var(--nuit);border-top:1px solid var(--bord);padding:70px 5% 28px;}
.footer-top{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:48px;margin-bottom:48px;}
.footer-logo{display:flex;align-items:center;gap:12px;text-decoration:none;margin-bottom:14px;}
.footer-logo img{height:38px;}
.footer-p{font-size:12px;color:var(--muted);line-height:1.8;max-width:220px;}
.footer-h{font-size:9px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--fuchsia);margin-bottom:18px;}
.footer-links{list-style:none;display:flex;flex-direction:column;gap:10px;}
.footer-links a{font-size:12px;color:var(--muted);text-decoration:none;font-weight:500;transition:color .2s;}
.footer-links a:hover{color:#fff;}
.footer-bottom{border-top:1px solid var(--bord);padding-top:22px;display:flex;align-items:center;justify-content:space-between;}
.footer-copy{font-size:11px;color:var(--dim);}
.footer-copy strong{color:var(--fuchsia);}
.footer-langs{display:flex;gap:16px;}
.footer-langs a{font-size:11px;color:var(--muted);text-decoration:none;font-weight:700;letter-spacing:.1em;transition:color .2s;}
.footer-langs a:hover{color:#fff;}

@media(max-width:900px){
  .hero,.about-sec{grid-template-columns:1fr;}
  .hero-right{display:none;}
  .exp-grid,.steps-row,.portfolio-grid,.testi-grid,.offres-grid{grid-template-columns:1fr;}
  .footer-top{grid-template-columns:1fr 1fr;}
  .pack-banner{flex-direction:column;text-align:center;}
  .pack-right{align-items:center;}
}

/* NAV MOBILE */
.nav-toggle{display:none;flex-direction:column;gap:5px;background:transparent;border:none;padding:6px;cursor:pointer;z-index:201;}
.nav-toggle span{width:24px;height:2px;background:#fff;display:block;}
.nav-links.open{display:flex!important;flex-direction:column;position:fixed;top:72px;left:0;right:0;background:rgba(13,15,26,.98);padding:24px 5%;gap:20px;border-bottom:1px solid rgba(155,51,127,.22);z-index:199;}
@media(max-width:768px){.nav-links{display:none;}.nav-toggle{display:flex;}.nav-r .btn-lang{display:none;}}
/* FEEDBACK */
.cta-feedback{margin-top:14px;font-size:13px;font-weight:600;padding:12px 20px;}
.cta-feedback.success{background:rgba(74,222,128,.15);color:#4ade80;border:1px solid rgba(74,222,128,.3);}
.cta-feedback.error{background:rgba(248,113,113,.15);color:#f87171;border:1px solid rgba(248,113,113,.3);}
.nav-links a.active{color:#fff;}.nav-links a.active::after{transform:scaleX(1)!important;}</style>



/* ═══════════════════════════════════════════
   PAGE REALISATIONS
═══════════════════════════════════════════ */


*,*::before,*::after{margin:0;padding:0;box-sizing:border-box;}
:root{
  --nuit:#0D0F1A;
  --bleu:#1C244B;
  --bleu2:#2A3566;
  --bleu3:#3D4F8A;
  --violet:#9B337F;
  --fuchsia:#B91B78;
  --fuchsia2:#D4348E;
  --prune:#7B2868;
  --texte:#F5F0F8;
  --muted:#9A93AF;
  --dim:#5C547A;
  --bord:rgba(155,51,127,0.22);
  --bord2:rgba(185,27,120,0.45);
  --grad:linear-gradient(135deg,#9B337F 0%,#B91B78 100%);
  --surf:linear-gradient(145deg,#1E2545,#161B35);
}
html{scroll-behavior:smooth;}
body{font-family:'Poppins',sans-serif;background:var(--nuit);color:var(--texte);overflow-x:hidden;}

@keyframes fadeInUp{from{opacity:0;transform:translateY(36px)}to{opacity:1;transform:translateY(0)}}
@keyframes fadeInLeft{from{opacity:0;transform:translateX(-44px)}to{opacity:1;transform:translateX(0)}}
@keyframes fadeInRight{from{opacity:0;transform:translateX(44px)}to{opacity:1;transform:translateX(0)}}
@keyframes floatUp{0%,100%{transform:translateY(0)}50%{transform:translateY(-12px)}}
@keyframes floatDown{0%,100%{transform:translateY(0)}50%{transform:translateY(9px)}}
@keyframes rotate{to{transform:rotate(360deg)}}
@keyframes rotateRev{to{transform:rotate(-360deg)}}
@keyframes pulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.3;transform:scale(1.6)}}
@keyframes shimmer{0%{background-position:200% center}100%{background-position:-200% center}}
@keyframes gradShift{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}
@keyframes particle{0%{transform:translateY(0) scale(1);opacity:.7}100%{transform:translateY(-120px) scale(0);opacity:0}}
@keyframes barSlide{from{width:0}to{width:100%}}
@keyframes blink{0%,100%{box-shadow:0 0 10px rgba(185,27,120,.5)}50%{box-shadow:0 0 24px rgba(185,27,120,.9)}}
@keyframes countUp{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}

.reveal{opacity:0;transform:translateY(30px);transition:opacity .72s ease,transform .72s ease;}
.reveal.on{opacity:1;transform:translateY(0);}
.rl{opacity:0;transform:translateX(-36px);transition:opacity .72s ease,transform .72s ease;}
.rl.on{opacity:1;transform:translateX(0);}
.rr{opacity:0;transform:translateX(36px);transition:opacity .72s ease,transform .72s ease;}
.rr.on{opacity:1;transform:translateX(0);}
.rs{opacity:0;transform:scale(.9);transition:opacity .65s ease,transform .65s ease;}
.rs.on{opacity:1;transform:scale(1);}
.d1{transition-delay:.1s}.d2{transition-delay:.2s}.d3{transition-delay:.3s}
.d4{transition-delay:.4s}.d5{transition-delay:.5s}.d6{transition-delay:.6s}

/* NAV */
nav{position:sticky;top:0;z-index:200;background:rgba(13,15,26,.97);backdrop-filter:blur(20px);border-bottom:1px solid var(--bord);padding:0 5%;height:72px;display:flex;align-items:center;justify-content:space-between;transition:box-shadow .3s;}
nav.sc{box-shadow:0 4px 28px rgba(185,27,120,.18);}
.nav-logo{display:flex;align-items:center;gap:12px;text-decoration:none;}
.nav-logo img{height:44px;width:auto;}
.nav-logo-txt .l1{font-size:15px;font-weight:900;letter-spacing:.07em;color:#fff;display:block;line-height:1.1;}
.nav-logo-txt .l2{font-size:10px;font-weight:300;letter-spacing:.22em;color:var(--fuchsia);display:block;}
.nav-links{display:flex;gap:32px;list-style:none;}
.nav-links a{color:var(--muted);font-size:11px;font-weight:600;letter-spacing:.09em;text-transform:uppercase;text-decoration:none;transition:color .2s;position:relative;}
.nav-links a::after{content:'';position:absolute;bottom:-5px;left:0;right:0;height:2px;background:var(--grad);transform:scaleX(0);transform-origin:left;transition:transform .3s;}
.nav-links a:hover{color:#fff;}.nav-links a:hover::after{transform:scaleX(1);}
.nav-right{display:flex;align-items:center;gap:10px;}
.btn-ghost-nav{color:var(--muted);font-size:11px;font-weight:700;letter-spacing:.1em;border:1px solid var(--bord);padding:8px 14px;cursor:pointer;background:transparent;font-family:'Poppins',sans-serif;transition:color .2s,border-color .2s;}
.btn-ghost-nav:hover{color:#fff;border-color:var(--bord2);}
.btn-cta-nav{background:var(--grad);color:#fff;border:none;padding:11px 24px;font-family:'Poppins',sans-serif;font-weight:700;font-size:11px;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;transition:opacity .2s,transform .2s,box-shadow .2s;}
.btn-cta-nav:hover{opacity:.86;transform:translateY(-2px);box-shadow:0 8px 22px rgba(185,27,120,.38);}

/* HERO */
.hero{min-height:100vh;background:var(--nuit);display:grid;grid-template-columns:1fr 1fr;align-items:center;padding:88px 5% 70px;position:relative;overflow:hidden;}
.hero-grid-bg{position:absolute;inset:0;pointer-events:none;opacity:.04;background-image:linear-gradient(var(--fuchsia) 1px,transparent 1px),linear-gradient(90deg,var(--fuchsia) 1px,transparent 1px);background-size:52px 52px;}
.hero-glow{position:absolute;right:-120px;top:50%;transform:translateY(-50%);width:680px;height:680px;pointer-events:none;background:radial-gradient(circle,rgba(185,27,120,.15) 0%,rgba(155,51,127,.07) 44%,transparent 68%);}
.hero-glow2{position:absolute;left:-90px;bottom:-90px;width:360px;height:360px;pointer-events:none;background:radial-gradient(circle,rgba(28,36,75,.92) 0%,transparent 65%);}
.particles-wrap{position:absolute;inset:0;pointer-events:none;overflow:hidden;}
.pt{position:absolute;width:4px;height:4px;background:var(--fuchsia);border-radius:50%;animation:particle 5s ease-out infinite;}

.hero-eyebrow{display:inline-flex;align-items:center;gap:10px;background:rgba(185,27,120,.1);border:1px solid rgba(185,27,120,.38);color:var(--fuchsia2);font-size:10px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;padding:7px 16px;margin-bottom:26px;animation:fadeInUp .65s .1s ease both;}
.pulse-dot{width:8px;height:8px;background:var(--fuchsia);border-radius:50%;animation:pulse 2s infinite;flex-shrink:0;}
h1.ht{font-size:clamp(2.8rem,5.2vw,5.4rem);font-weight:900;line-height:1.04;color:#fff;animation:fadeInUp .65s .22s ease both;}
h1.ht .grd{font-style:italic;font-weight:300;background:linear-gradient(135deg,#E040A0,#B91B78,#9B337F);background-size:200% auto;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:shimmer 5s linear infinite;}
.hero-sub{font-size:15px;font-weight:400;line-height:1.82;color:var(--muted);max-width:460px;margin:22px 0 36px;animation:fadeInUp .65s .34s ease both;}
.hero-sub strong{color:#fff;font-weight:700;}
.hero-btns{display:flex;gap:14px;margin-bottom:52px;animation:fadeInUp .65s .46s ease both;}
.btn-hero{background:var(--grad);color:#fff;border:none;padding:17px 32px;font-family:'Poppins',sans-serif;font-weight:700;font-size:12px;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;position:relative;overflow:hidden;transition:transform .25s,box-shadow .25s;}
.btn-hero::after{content:'';position:absolute;inset:0;background:rgba(255,255,255,.15);transform:translateX(-100%) skewX(-15deg);transition:transform .4s;}
.btn-hero:hover{transform:translateY(-3px);box-shadow:0 16px 40px rgba(185,27,120,.4);}
.btn-hero:hover::after{transform:translateX(100%) skewX(-15deg);}
.btn-hero-out{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.22);padding:17px 32px;font-family:'Poppins',sans-serif;font-weight:600;font-size:12px;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;transition:border-color .2s,background .2s;}
.btn-hero-out:hover{border-color:var(--fuchsia);background:rgba(185,27,120,.08);}
.hero-stats{display:flex;gap:36px;animation:fadeInUp .65s .58s ease both;}
.hstat{border-left:3px solid var(--fuchsia);padding-left:16px;}
.hstat-n{font-size:34px;font-weight:900;color:#fff;line-height:1;}
.hstat-n span{color:var(--fuchsia);}
.hstat-l{font-size:10px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-top:3px;}

/* HERO RIGHT — phone */
.hero-right{display:flex;justify-content:center;align-items:center;position:relative;height:560px;animation:fadeInRight .9s .3s ease both;}
.phone-wrap{position:relative;width:255px;z-index:5;}
.phone-frame{background:linear-gradient(160deg,#1E2545,#0D0F1A);border:2px solid rgba(155,51,127,.4);border-radius:38px;padding:14px;box-shadow:0 32px 80px rgba(0,0,0,.6),0 0 0 1px rgba(155,51,127,.2),inset 0 1px 0 rgba(255,255,255,.07);animation:floatUp 5s ease-in-out infinite;}
.phone-screen{background:var(--bleu);border-radius:28px;overflow:hidden;}
.phone-notch{height:26px;background:var(--nuit);display:flex;align-items:center;justify-content:center;}
.phone-notch-bar{width:58px;height:5px;background:rgba(255,255,255,.14);border-radius:3px;}
.phone-content{padding:14px;}
.phone-header{background:var(--grad);margin:-14px -14px 12px;padding:14px;}
.phone-logo-row{display:flex;align-items:center;gap:8px;}
.phone-logo-row img{height:20px;filter:brightness(0) invert(1);}
.phone-tagline{font-size:7px;font-weight:600;color:rgba(255,255,255,.75);margin-top:5px;letter-spacing:.06em;}
.phone-card{background:rgba(255,255,255,.06);border:1px solid rgba(155,51,127,.25);padding:10px;margin-bottom:8px;}
.phone-card-title{font-size:8px;font-weight:700;color:#fff;margin-bottom:3px;}
.phone-card-desc{font-size:7px;color:var(--muted);line-height:1.5;}
.phone-stats{display:flex;gap:8px;margin:10px 0;}
.phone-stat{flex:1;background:rgba(185,27,120,.15);border:1px solid rgba(185,27,120,.3);padding:8px;text-align:center;}
.phone-stat-n{font-size:14px;font-weight:900;color:var(--fuchsia);}
.phone-stat-l{font-size:6px;font-weight:600;color:var(--muted);letter-spacing:.08em;text-transform:uppercase;}
.phone-btn{display:block;background:var(--grad);color:#fff;text-align:center;padding:10px;font-size:8px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;margin-top:8px;}

/* Float badges */
.badge-float{position:absolute;z-index:10;background:linear-gradient(145deg,#1E2545,#161B35);border:1px solid var(--bord);padding:14px 18px;min-width:160px;}
.bf1{top:40px;right:-20px;animation:floatUp 4.5s ease-in-out infinite;}
.bf2{bottom:60px;left:-30px;animation:floatDown 5.5s ease-in-out infinite;}
.bf-val{font-size:22px;font-weight:900;color:#fff;line-height:1;}
.bf-val span{color:var(--fuchsia);}
.bf-label{font-size:9px;font-weight:600;color:var(--muted);letter-spacing:.1em;text-transform:uppercase;margin-top:4px;}
.bf-bar{height:3px;background:rgba(155,51,127,.2);margin-top:10px;}
.bf-fill{height:3px;background:var(--grad);}

/* ORBIT */
.orbit-wrap{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;pointer-events:none;}
.orbit-ring-out{position:absolute;width:360px;height:360px;border:1px dashed rgba(155,51,127,.2);border-radius:50%;animation:rotate 28s linear infinite;}
.orbit-dot{position:absolute;width:10px;height:10px;background:var(--fuchsia);border-radius:50%;top:-5px;left:50%;transform:translateX(-50%);box-shadow:0 0 12px rgba(185,27,120,.7);animation:blink 2.5s ease infinite;}

/* CLIENTS BAND */
.clients-band{background:linear-gradient(135deg,var(--bleu),var(--bleu2));border-top:1px solid var(--bord);border-bottom:1px solid var(--bord);padding:22px 5%;display:flex;align-items:center;gap:28px;overflow:hidden;}
.cl-label{font-size:9px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--muted);white-space:nowrap;}
.cl-sep{width:1px;height:32px;background:var(--bord);flex-shrink:0;}
.cl-track{display:flex;gap:52px;flex:1;}
.cl-n{font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:rgba(245,240,248,.18);white-space:nowrap;transition:color .3s;cursor:default;}
.cl-n:hover{color:rgba(185,27,120,.7);}

/* SECTIONS COMMUNES */
section{padding:90px 5%;}
.sec-tag{display:inline-block;font-size:9px;font-weight:700;letter-spacing:.28em;text-transform:uppercase;color:var(--fuchsia);background:rgba(185,27,120,.1);border:1px solid rgba(185,27,120,.3);padding:6px 14px;margin-bottom:14px;}
.sec-h2{font-size:clamp(2rem,3.5vw,3rem);font-weight:900;color:#fff;line-height:1.1;margin-bottom:10px;}
.sec-h2 em{font-style:italic;font-weight:300;color:var(--violet);}
.sec-p{font-size:14px;color:var(--muted);line-height:1.75;max-width:520px;}
.sec-header{display:flex;justify-content:space-between;align-items:flex-end;flex-wrap:wrap;gap:20px;margin-bottom:52px;}
.see-all{display:inline-flex;align-items:center;gap:8px;font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--fuchsia);text-decoration:none;border-bottom:2px solid rgba(185,27,120,.3);padding-bottom:2px;transition:gap .2s,border-color .2s;white-space:nowrap;}
.see-all:hover{gap:14px;border-color:var(--fuchsia);}

/* EXPERTISES */
.exp-sec{background:var(--bleu);}
.exp-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:2px;background:rgba(155,51,127,.12);}
.exp-card{background:linear-gradient(145deg,#141830,#1C244B);padding:44px 36px;position:relative;overflow:hidden;transition:transform .3s,box-shadow .3s;cursor:default;}
.exp-card:hover{transform:translateY(-5px);box-shadow:0 24px 56px rgba(0,0,0,.4);}
.exp-card::before{content:'';position:absolute;top:0;left:0;right:0;height:4px;background:var(--grad);transform:scaleX(0);transform-origin:left;transition:transform .4s;}
.exp-card:hover::before{transform:scaleX(1);}
.exp-num{position:absolute;top:28px;right:28px;font-size:88px;font-weight:900;font-style:italic;color:rgba(185,27,120,.05);line-height:1;transition:color .3s;}
.exp-card:hover .exp-num{color:rgba(185,27,120,.12);}
.exp-icon{width:54px;height:54px;background:var(--grad);display:flex;align-items:center;justify-content:center;margin-bottom:22px;}
.exp-icon svg{width:24px;height:24px;}
.exp-name{font-size:22px;font-weight:800;color:#fff;margin-bottom:12px;}
.exp-desc{font-size:13px;color:var(--muted);line-height:1.8;margin-bottom:20px;}
.exp-tags{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:22px;}
.exp-tag{font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;background:rgba(185,27,120,.1);color:var(--fuchsia2);border:1px solid rgba(185,27,120,.25);padding:5px 12px;}
.exp-link{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--fuchsia);text-decoration:none;transition:gap .2s;}
.exp-card:hover .exp-link{gap:12px;}

/* ABOUT */
.about-sec{background:var(--nuit);border-top:1px solid var(--bord);display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center;}
.about-badge{display:inline-block;font-size:9px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--fuchsia2);background:rgba(185,27,120,.12);border:1px solid var(--bord2);padding:6px 14px;margin-bottom:18px;}
.about-h2{font-size:clamp(1.9rem,3vw,2.8rem);font-weight:900;color:#fff;line-height:1.15;margin-bottom:20px;}
.about-h2 em{font-style:italic;font-weight:300;color:var(--fuchsia2);}
.about-p{font-size:13px;color:var(--muted);line-height:1.85;margin-bottom:14px;}
.about-p strong{color:#fff;font-weight:700;}
.about-pts{display:flex;flex-direction:column;gap:14px;margin-top:20px;}
.apt{display:flex;align-items:flex-start;gap:12px;}
.apt-dot{width:10px;height:10px;background:var(--grad);border-radius:50%;flex-shrink:0;margin-top:4px;}
.apt-txt{font-size:13px;font-weight:600;color:#fff;}
.about-cards{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
.ac{background:linear-gradient(145deg,#1E2545,#161B35);border:1px solid var(--bord);padding:26px 22px;transition:border-color .2s,transform .2s;}
.ac:hover{border-color:var(--bord2);transform:translateY(-4px);}
.ac.dark{background:var(--bleu);border-color:var(--bleu2);}
.ac-n{font-size:42px;font-weight:900;color:var(--fuchsia);line-height:1;margin-bottom:6px;}
.ac-l{font-size:11px;font-weight:600;color:var(--muted);letter-spacing:.04em;}

/* PROCESS */
.process-sec{background:var(--bleu2);border-top:1px solid var(--bord);border-bottom:1px solid var(--bord);}
.steps-row{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-top:52px;}
.step{padding:30px 22px;border:1px solid rgba(155,51,127,.14);border-right:none;position:relative;transition:background .3s,border-color .3s;}
.step:last-child{border-right:1px solid rgba(155,51,127,.14);}
.step:hover{background:rgba(155,51,127,.06);border-color:rgba(185,27,120,.35);}
.step-arr{position:absolute;right:-18px;top:50%;transform:translateY(-50%);font-size:22px;color:var(--fuchsia);font-weight:900;z-index:2;}
.step:last-child .step-arr{display:none;}
.step-ico{width:48px;height:48px;background:rgba(185,27,120,.12);border:1px solid rgba(185,27,120,.3);display:flex;align-items:center;justify-content:center;margin-bottom:22px;}
.step-ico svg{width:22px;height:22px;}
.step-num{font-size:62px;font-weight:900;font-style:italic;color:rgba(185,27,120,.13);line-height:1;margin-bottom:18px;}
.step-t{font-size:15px;font-weight:800;color:#fff;margin-bottom:8px;}
.step-d{font-size:12px;color:var(--muted);line-height:1.75;}
.step.active{background:rgba(185,27,120,.07);border-color:rgba(185,27,120,.38);}
.step.active .step-num{color:rgba(185,27,120,.35);}

/* PORTFOLIO */
.portfolio-sec{background:var(--bleu);}
.portfolio-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;}
.port-card{background:linear-gradient(145deg,#141830,#1C244B);border:1px solid var(--bord);overflow:hidden;transition:transform .3s,border-color .3s,box-shadow .3s;cursor:pointer;}
.port-card:hover{transform:translateY(-8px);border-color:var(--bord2);box-shadow:0 24px 60px rgba(0,0,0,.5);}
.port-thumb{height:180px;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;}
.port-overlay{position:absolute;inset:0;background:rgba(185,27,120,.72);display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .3s;}
.port-card:hover .port-overlay{opacity:1;}
.port-see{color:#fff;font-size:11px;font-weight:700;letter-spacing:.15em;text-transform:uppercase;}
.port-info{padding:20px 20px 22px;}
.port-cat{font-size:9px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--fuchsia);margin-bottom:5px;}
.port-name{font-size:16px;font-weight:800;color:#fff;margin-bottom:4px;}
.port-desc{font-size:11px;color:var(--muted);}

/* TÉMOIGNAGES */
.testi-sec{background:var(--nuit);border-top:1px solid var(--bord);}
.testi-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}
.testi-card{background:linear-gradient(145deg,#1E2545,#161B35);border:1px solid var(--bord);padding:30px 26px;position:relative;transition:transform .3s,border-color .3s;}
.testi-card:hover{transform:translateY(-5px);border-color:var(--bord2);}
.testi-qm{position:absolute;top:16px;right:20px;font-size:76px;font-weight:900;color:rgba(185,27,120,.13);line-height:1;}
.testi-stars{display:flex;gap:4px;margin-bottom:16px;}
.star{width:14px;height:14px;background:var(--fuchsia);clip-path:polygon(50% 0%,61% 35%,98% 35%,68% 57%,79% 91%,50% 70%,21% 91%,32% 57%,2% 35%,39% 35%);}
.testi-q{font-size:13px;font-style:italic;color:#fff;line-height:1.75;margin-bottom:22px;}
.testi-sep{height:1px;background:var(--bord);margin-bottom:14px;}
.testi-name{font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--fuchsia);}
.testi-role{font-size:10px;color:var(--muted);margin-top:2px;}

/* APERÇU OFFRES */
.offres-apercu{background:var(--bleu2);border-top:1px solid var(--bord);}
.offres-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:2px;background:rgba(155,51,127,.12);}
.offre-card{background:linear-gradient(145deg,#141830,#1C244B);padding:32px 24px;position:relative;overflow:hidden;transition:transform .3s,background .3s;cursor:default;}
.offre-card:hover{transform:translateY(-5px);background:linear-gradient(145deg,#1a1f3d,#21305c);}
.offre-card::before{content:'';position:absolute;top:0;left:0;right:0;height:4px;background:var(--grad);transform:scaleX(0);transform-origin:left;transition:transform .4s;}
.offre-card:hover::before{transform:scaleX(1);}
.offre-emoji{font-size:28px;margin-bottom:14px;display:block;}
.offre-title{font-size:15px;font-weight:800;color:#fff;margin-bottom:6px;}
.offre-desc{font-size:11px;color:var(--muted);line-height:1.7;margin-bottom:18px;}
.offre-from{font-size:9px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-bottom:3px;}
.offre-price{font-size:28px;font-weight:900;color:var(--fuchsia);line-height:1;}
.offre-price span{font-size:13px;color:var(--muted);font-weight:500;}
.offre-link{display:inline-flex;align-items:center;gap:5px;margin-top:16px;font-size:10px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--fuchsia);transition:gap .2s;text-decoration:none;}
.offre-card:hover .offre-link{gap:10px;}
.offre-bg-num{position:absolute;bottom:-10px;right:10px;font-size:90px;font-weight:900;font-style:italic;color:rgba(185,27,120,.04);line-height:1;}

/* PACK HIGHLIGHT */
.pack-banner{background:var(--grad);background-size:200% 200%;animation:gradShift 8s ease infinite;padding:60px 5%;display:flex;align-items:center;justify-content:space-between;gap:32px;flex-wrap:wrap;border-top:1px solid var(--bord2);}
.pack-left .pack-pre{font-size:9px;font-weight:700;letter-spacing:.28em;text-transform:uppercase;color:rgba(255,255,255,.6);margin-bottom:10px;}
.pack-left h3{font-size:clamp(1.6rem,3vw,2.6rem);font-weight:900;color:#fff;line-height:1.1;margin-bottom:8px;}
.pack-left h3 em{font-style:italic;font-weight:300;}
.pack-left p{font-size:13px;color:rgba(255,255,255,.7);}
.pack-right{display:flex;flex-direction:column;align-items:flex-end;gap:12px;}
.pack-price{font-size:52px;font-weight:900;color:#fff;line-height:1;}
.pack-price span{font-size:16px;font-weight:400;color:rgba(255,255,255,.6);}
.pack-note{font-size:11px;color:rgba(255,255,255,.6);text-align:right;}
.btn-pack{background:#fff;color:var(--fuchsia);border:none;padding:16px 36px;font-family:'Poppins',sans-serif;font-weight:900;font-size:12px;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;transition:transform .2s,background .2s;white-space:nowrap;}
.btn-pack:hover{transform:translateY(-3px);background:var(--texte);}
.btn-pack-out{background:transparent;color:#fff;border:2px solid rgba(255,255,255,.4);padding:16px 36px;font-family:'Poppins',sans-serif;font-weight:700;font-size:12px;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;transition:border-color .2s;white-space:nowrap;}
.btn-pack-out:hover{border-color:#fff;}

/* CTA FINAL */
/* ── BLOG ── */
.blog-sec{background:#F4F4F6;border-top:1px solid #E8E8F0;padding:90px 5%;}
.blog-hd{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:56px;flex-wrap:wrap;gap:20px;}
.blog-hd-left .sec-tag{display:inline-block;font-size:9px;font-weight:700;letter-spacing:.28em;text-transform:uppercase;color:var(--fuchsia);background:rgba(185,27,120,.1);border:1px solid rgba(185,27,120,.3);padding:6px 14px;margin-bottom:14px;}
.blog-h2{font-size:clamp(2rem,3.5vw,3rem);font-weight:900;color:#1A1A2E;line-height:1.1;margin-bottom:8px;}
.blog-h2 em{font-style:italic;font-weight:300;color:#D4348E;}
.blog-desc{font-size:14px;color:#6B6B80;line-height:1.75;max-width:460px;}
.blog-see-all{display:inline-flex;align-items:center;gap:8px;font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:#B91B78;text-decoration:none;border-bottom:2px solid rgba(185,27,120,.3);padding-bottom:2px;white-space:nowrap;transition:border-color .2s,gap .2s;}
.blog-see-all:hover{border-color:var(--fuchsia);gap:14px;}
.blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}
.blog-card{background:#FFFFFF;border:1px solid #E8E8F0;overflow:hidden;transition:transform .3s,border-color .3s,box-shadow .3s;text-decoration:none;color:inherit;display:flex;flex-direction:column;}
.blog-card:hover{transform:translateY(-7px);border-color:rgba(185,27,120,.4);box-shadow:0 20px 50px rgba(28,36,75,.12);}
.blog-thumb{height:170px;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.blog-cat-pill{position:absolute;top:14px;left:14px;background:var(--grad);color:#fff;font-size:8px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;padding:5px 12px;}
.blog-body{padding:22px 22px 26px;flex:1;display:flex;flex-direction:column;}
.blog-meta{display:flex;align-items:center;gap:10px;margin-bottom:12px;}
.blog-date{font-size:10px;font-weight:600;color:#9A93AF;letter-spacing:.06em;}
.blog-read{font-size:10px;font-weight:700;color:var(--fuchsia);background:rgba(185,27,120,.1);padding:3px 10px;}
.blog-title{font-size:17px;font-weight:800;color:#1A1A2E;margin-bottom:9px;line-height:1.35;transition:color .2s;}
.blog-card:hover .blog-title{color:var(--fuchsia);}
.blog-excerpt{font-size:12px;color:#6B6B80;line-height:1.72;margin-bottom:18px;flex:1;}
.blog-link{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--fuchsia);transition:gap .2s;}
.blog-card:hover .blog-link{gap:12px;}
@media(max-width:900px){.blog-grid{grid-template-columns:1fr;}.blog-hd{flex-direction:column;align-items:flex-start;}}
.cta-sec{background:linear-gradient(135deg,#9B337F 0%,#B91B78 55%,#7B2868 100%);background-size:200% 200%;animation:gradShift 8s ease infinite;padding:100px 5%;text-align:center;position:relative;overflow:hidden;}
.cta-sec::before{content:'';position:absolute;inset:0;background-image:radial-gradient(rgba(255,255,255,.07) 1px,transparent 1px);background-size:28px 28px;pointer-events:none;}.cta-sec::after{content:'';position:absolute;width:500px;height:500px;border-radius:50%;background:rgba(255,255,255,.05);top:-250px;right:-150px;pointer-events:none;}
.cta-glow{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:600px;height:300px;background:radial-gradient(ellipse,rgba(155,51,127,.12) 0%,transparent 68%);pointer-events:none;}
.cta-pre{font-size:10px;font-weight:700;letter-spacing:.3em;text-transform:uppercase;color:rgba(255,255,255,.65);margin-bottom:16px;}
.cta-h2{font-size:clamp(2rem,4.5vw,4rem);font-weight:900;color:#fff;margin-bottom:12px;line-height:1.08;}
.cta-h2 em{font-style:italic;font-weight:300;background:linear-gradient(135deg,#E040A0,#B91B78);background-size:200% auto;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:shimmer 5s linear infinite;}
.cta-sub{font-size:15px;color:rgba(255,255,255,.88);margin-bottom:36px;font-weight:500;}
.cta-form{display:flex;max-width:460px;margin:0 auto 14px;}
.cta-inp{flex:1;background:rgba(255,255,255,.07);border:1px solid rgba(155,51,127,.35);border-right:none;color:#fff;padding:17px 20px;font-family:'Poppins',sans-serif;font-size:13px;outline:none;}
.cta-inp::placeholder{color:rgba(255,255,255,.3);}
.cta-inp:focus{background:rgba(255,255,255,.12);}
.cta-btn{background:#fff;color:#B91B78;border:none;padding:17px 26px;font-family:'Poppins',sans-serif;font-weight:900;font-size:12px;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;white-space:nowrap;transition:opacity .2s;}
.cta-btn:hover{background:#F4F4F6;transform:translateY(-2px);}
.cta-note{margin-top:22px;}
.cta-note-chips{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;}
.cta-note-chips span{background:rgba(255,255,255,.18);border:1px solid rgba(255,255,255,.32);color:#fff;font-size:12px;font-weight:600;padding:8px 18px;letter-spacing:.04em;cursor:pointer;transition:background .2s;}
.cta-note-chips span:hover{background:rgba(255,255,255,.3);}

/* FOOTER */
footer{background:var(--nuit);border-top:1px solid var(--bord);padding:70px 5% 28px;}
.footer-top{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:48px;margin-bottom:48px;}
.footer-logo{display:flex;align-items:center;gap:12px;text-decoration:none;margin-bottom:14px;}
.footer-logo img{height:38px;}
.footer-p{font-size:12px;color:var(--muted);line-height:1.8;max-width:220px;}
.footer-h{font-size:9px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--fuchsia);margin-bottom:18px;}
.footer-links{list-style:none;display:flex;flex-direction:column;gap:10px;}
.footer-links a{font-size:12px;color:var(--muted);text-decoration:none;font-weight:500;transition:color .2s;}
.footer-links a:hover{color:#fff;}
.footer-bottom{border-top:1px solid var(--bord);padding-top:22px;display:flex;align-items:center;justify-content:space-between;}
.footer-copy{font-size:11px;color:var(--dim);}
.footer-copy strong{color:var(--fuchsia);}
.footer-langs{display:flex;gap:16px;}
.footer-langs a{font-size:11px;color:var(--muted);text-decoration:none;font-weight:700;letter-spacing:.1em;transition:color .2s;}
.footer-langs a:hover{color:#fff;}

@media(max-width:900px){
  .hero,.about-sec{grid-template-columns:1fr;}
  .hero-right{display:none;}
  .exp-grid,.steps-row,.portfolio-grid,.testi-grid,.offres-grid{grid-template-columns:1fr;}
  .footer-top{grid-template-columns:1fr 1fr;}
  .pack-banner{flex-direction:column;text-align:center;}
  .pack-right{align-items:center;}
}

/* NAV MOBILE */
.nav-toggle{display:none;flex-direction:column;gap:5px;background:transparent;border:none;padding:6px;cursor:pointer;z-index:201;}
.nav-toggle span{width:24px;height:2px;background:#fff;display:block;}
.nav-links.open{display:flex!important;flex-direction:column;position:fixed;top:72px;left:0;right:0;background:rgba(13,15,26,.98);padding:24px 5%;gap:20px;border-bottom:1px solid rgba(155,51,127,.22);z-index:199;}
@media(max-width:768px){.nav-links{display:none;}.nav-toggle{display:flex;}.nav-r .btn-lang{display:none;}}
/* FEEDBACK */
.cta-feedback{margin-top:14px;font-size:13px;font-weight:600;padding:12px 20px;}
.cta-feedback.success{background:rgba(74,222,128,.15);color:#4ade80;border:1px solid rgba(74,222,128,.3);}
.cta-feedback.error{background:rgba(248,113,113,.15);color:#f87171;border:1px solid rgba(248,113,113,.3);}
.nav-links a.active{color:#fff;}.nav-links a.active::after{transform:scaleX(1)!important;}


