*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{
  --p:#3D1A6E;--pm:#5B2D9E;--pl:#F0EBF8;--pm2:#EDE6F8;
  --o:#E8520A;--ol:#FFF0E8;--c:#00AECC;--cl:#E5F7FB;
  --tx:#1a1a1a;--txm:#5a5856;--bg:#FAFAF8;--w:#fff;--bd:#E2E0D8;
  --sh:0 4px 24px rgba(61,26,110,.10);--shl:0 12px 48px rgba(61,26,110,.18)
}
html{scroll-behavior:smooth;overflow-x:hidden}
body{font-family:"Tajawal",sans-serif;background:var(--bg);color:var(--tx);line-height:1.7;overflow-x:hidden}
::-webkit-scrollbar{width:5px}
::-webkit-scrollbar-track{background:var(--p)}
::-webkit-scrollbar-thumb{background:var(--o);border-radius:3px}

/* ─── NAV ─── */
.nav{position:sticky;top:0;z-index:100;background:#fff;padding:12px 32px;display:flex;align-items:center;justify-content:space-between;box-shadow:0 1px 0 var(--bd),0 2px 12px rgba(0,0,0,.06)}
.logo-img-nav{height:40px;display:block}
.logo-fallback{font-family:"Tajawal",sans-serif;font-weight:900;letter-spacing:.04em;display:inline-flex;align-items:center;gap:6px;text-decoration:none}
.logo-fallback .l-arc{color:var(--pm)}.logo-fallback .l-ml{color:var(--o);font-size:.75em}
.nav-links{display:flex;align-items:center;gap:6px;list-style:none;flex:1;justify-content:center}
.nav-links a{color:var(--tx);text-decoration:none;font-size:.88rem;font-weight:700;padding:7px 12px;border-radius:8px;transition:color .2s,background .2s;white-space:nowrap}
.nav-links a:hover,.nav-links a.active{color:var(--pm);background:var(--pl)}
.nav-actions{display:flex;align-items:center;gap:10px}
.btn-purple{background:var(--pm);color:#fff;border:none;border-radius:20px;padding:10px 22px;font-family:"Tajawal",sans-serif;font-size:.9rem;font-weight:700;cursor:pointer;text-decoration:none;display:inline-block;transition:all .2s}
.btn-purple:hover{background:var(--p)}
.btn-outline{background:transparent;color:var(--p);border:1.5px solid var(--p);border-radius:20px;padding:9px 20px;font-family:"Tajawal",sans-serif;font-size:.9rem;font-weight:700;cursor:pointer;text-decoration:none;display:inline-block;transition:all .2s}
.btn-outline:hover{background:var(--pl)}
.nav-burger{display:none;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:38px;height:38px;border:none;background:none;cursor:pointer;padding:4px;border-radius:8px}
.nav-burger span{display:block;width:22px;height:2px;background:var(--p);border-radius:2px;transition:transform .3s,opacity .3s}
.nav-burger.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.nav-burger.open span:nth-child(2){opacity:0}
.nav-burger.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.nav-drawer{display:none;position:fixed;top:65px;right:0;left:0;background:#fff;box-shadow:0 8px 24px rgba(0,0,0,.12);z-index:99;padding:16px 20px 24px;border-top:1px solid var(--bd)}
.nav-drawer.open{display:block}
.nav-drawer ul{list-style:none;display:flex;flex-direction:column;gap:4px;margin-bottom:16px}
.nav-drawer ul li a{display:block;padding:11px 14px;color:var(--tx);text-decoration:none;font-size:.95rem;font-weight:700;border-radius:10px;transition:background .2s,color .2s}
.nav-drawer ul li a:hover{background:var(--pl);color:var(--pm)}
.nav-drawer-btns{display:flex;gap:10px}
.nav-drawer-btns a{flex:1;text-align:center;padding:11px}
.nav-arrow{font-size:.7rem;opacity:.6;margin-right:2px;display:inline-block;transition:transform .2s}
.nav-dropdown{position:relative}.nav-dropdown>a{cursor:pointer}
.nav-drop-menu{position:absolute;top:calc(100%+8px);right:0;background:#fff;border-radius:14px;box-shadow:0 8px 36px rgba(61,26,110,.15);min-width:170px;list-style:none;padding:8px 0;opacity:0;visibility:hidden;transform:translateY(-6px);transition:opacity .22s,transform .22s,visibility .22s;z-index:200;border:1px solid rgba(61,26,110,.08)}
.nav-dropdown:hover .nav-drop-menu,.nav-dropdown.open .nav-drop-menu{opacity:1;visibility:visible;transform:translateY(0)}
.nav-drop-menu li{list-style:none}
.nav-drop-menu li a{display:block;padding:11px 18px;color:#3D1A6E;font-size:.88rem;font-weight:500;text-decoration:none;transition:background .18s,color .18s}
.nav-drop-menu li a:hover{background:#F0EBF8;color:#E8520A}
.nav-drop-menu li:not(:last-child){border-bottom:1px solid #f3eef9}
.nav-dropdown.open>a .nav-arrow{transform:rotate(180deg)}
.mobile-sub-levels a{font-size:.82rem !important;color:#7a6090 !important;padding:7px 16px 7px 28px !important}

/* ─── REVEAL ─── */
.reveal{opacity:0;transform:translateY(32px);transition:opacity .7s ease,transform .7s ease}
.reveal.visible{opacity:1;transform:none}
.reveal-left{opacity:0;transform:translateX(40px);transition:opacity .7s ease,transform .7s ease}
.reveal-left.visible{opacity:1;transform:none}
.reveal-right{opacity:0;transform:translateX(-40px);transition:opacity .7s ease,transform .7s ease}
.reveal-right.visible{opacity:1;transform:none}

/* ─── LABELS ─── */
.lbl{display:inline-block;background:var(--pl);color:var(--pm);font-size:.72rem;font-weight:800;padding:4px 16px;border-radius:20px;letter-spacing:.5px}
.lbl-wrap{text-align:center;margin-bottom:10px}
.sec-title{font-size:clamp(1.6rem,3.5vw,2.4rem);font-weight:900;color:var(--p);text-align:center;line-height:1.3;margin-bottom:10px}
.sec-sub{font-size:.95rem;color:var(--txm);text-align:center;max-width:580px;margin:0 auto}

/* ═══ 1. HERO ═══ */
.hero-centres{
  min-height:65vh;
  background:linear-gradient(145deg,#1a0a36 0%,var(--p) 45%,#2a0e58 70%,#1a0a36 100%);
  position:relative;overflow:hidden;
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  text-align:center;padding:100px 24px 60px;
}
.hero-centres::before{
  content:'';position:absolute;inset:0;
  background:radial-gradient(ellipse 80% 60% at 50% 0%,rgba(91,45,158,.5),transparent 70%),
             radial-gradient(ellipse 40% 40% at 80% 80%,rgba(232,82,10,.2),transparent 60%);
}
.floating-orb{position:absolute;border-radius:50%;filter:blur(60px);pointer-events:none;animation:orbFloat 8s ease-in-out infinite}
.orb1{width:400px;height:400px;background:rgba(91,45,158,.3);top:-100px;right:-100px;animation-delay:0s}
.orb2{width:300px;height:300px;background:rgba(232,82,10,.2);bottom:-80px;left:-80px;animation-delay:-3s}
@keyframes orbFloat{0%,100%{transform:translate(0,0) scale(1)}33%{transform:translate(20px,-30px) scale(1.05)}66%{transform:translate(-15px,20px) scale(.95)}}
@keyframes pulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.5)}}

.hero-centres .hero-tag{
  display:inline-flex;align-items:center;gap:6px;
  background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);
  color:rgba(255,255,255,.85);font-size:.75rem;font-weight:700;
  padding:6px 18px;border-radius:50px;margin-bottom:24px;
  backdrop-filter:blur(8px);position:relative;z-index:2
}
.hero-centres .hero-tag .dot{width:6px;height:6px;border-radius:50%;background:var(--o);animation:pulse 2s infinite}
.hero-centres h1{
  font-size:clamp(2.2rem,5vw,3.6rem);font-weight:900;color:#fff;
  line-height:1.2;margin-bottom:18px;position:relative;z-index:2
}
.hero-centres h1 em{
  font-style:normal;
  background:linear-gradient(90deg,var(--o),#FFB347);
  -webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text
}
.hero-centres .lead{
  font-size:1rem;color:rgba(255,255,255,.75);
  max-width:540px;line-height:1.8;margin:0 auto 40px;position:relative;z-index:2
}
.hero-stats{display:flex;gap:40px;justify-content:center;flex-wrap:wrap;position:relative;z-index:2;margin-bottom:44px}
.hstat{text-align:center}
.hstat-num{font-size:2rem;font-weight:900;color:#fff;line-height:1}
.hstat-num span{color:var(--o)}
.hstat-label{font-size:.72rem;color:rgba(255,255,255,.6);font-weight:600}
.hero-cta-row{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;position:relative;z-index:2}
.btn-hero-white{background:#fff;color:var(--p);border:none;border-radius:50px;padding:14px 34px;font-family:"Tajawal",sans-serif;font-size:1rem;font-weight:800;text-decoration:none;transition:all .22s;box-shadow:0 8px 28px rgba(0,0,0,.2)}
.btn-hero-white:hover{background:var(--pl);transform:translateY(-3px)}
.btn-hero-ghost{background:transparent;color:#fff;border:2px solid rgba(255,255,255,.4);border-radius:50px;padding:12px 30px;font-family:"Tajawal",sans-serif;font-size:1rem;font-weight:800;text-decoration:none;transition:all .22s}
.btn-hero-ghost:hover{border-color:#fff;background:rgba(255,255,255,.08)}
/* hero wave removed */

/* ═══ 2. CENTRES MAP ═══ */
.centres-sec{background:var(--bg);padding:80px 24px}
.ct-layout{
  display:grid;grid-template-columns:1fr 1fr;
  gap:0;max-width:1100px;margin:0 auto;
  border-radius:20px;overflow:hidden;
  box-shadow:0 8px 40px rgba(61,26,110,.10);
  height:560px
}
.ct-map-col{position:relative;height:100%;background:#e8e4e0}
.ct-map-col iframe{position:absolute;inset:0;width:100%;height:100%;border:none}
.ct-list-col{
  background:var(--w);height:100%;overflow-y:scroll;
  padding:8px 0;scrollbar-width:auto;scrollbar-color:var(--pm) var(--pm2)
}
.ct-list-col::-webkit-scrollbar{width:10px}
.ct-list-col::-webkit-scrollbar-track{background:var(--pm2);border-radius:0}
.ct-list-col::-webkit-scrollbar-thumb{background:var(--pm);border-radius:8px;border:2px solid var(--pm2)}
.ct-card{
  padding:16px 20px;cursor:pointer;border-bottom:1px solid var(--bd);
  transition:background .2s;position:relative
}
.ct-card:hover{background:var(--pl)}
.ct-card.active{background:var(--pm2);border-right:3px solid var(--pm)}
.ct-card-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px}
.ct-card-name{font-size:1rem;font-weight:900;color:var(--p)}
.ct-card-badge{font-size:.65rem;font-weight:800;padding:3px 10px;border-radius:20px}
.ct-card-badge.open{background:#DCFCE7;color:#16a34a}
.ct-card-badge.soon{background:var(--pm2);color:var(--pm)}
.ct-card-addr{font-size:.78rem;color:var(--txm);margin-bottom:4px;display:flex;align-items:center;gap:4px}
.ct-card-hours{font-size:.75rem;color:var(--pm);font-weight:700;display:flex;align-items:center;gap:4px}
.ct-card-actions{display:flex;gap:8px;margin-top:10px;flex-wrap:wrap}
.ct-card-tel{
  display:inline-flex;align-items:center;gap:5px;
  font-size:.75rem;font-weight:700;color:var(--p);
  background:var(--pl);border-radius:20px;padding:4px 12px;
  text-decoration:none;transition:background .2s
}
.ct-card-tel:hover{background:var(--pm2)}
.ct-card-tel svg{width:12px;height:12px;stroke:var(--pm)}
.ct-card-cta{
  display:inline-flex;align-items:center;gap:5px;
  font-size:.75rem;font-weight:700;color:#fff;
  background:var(--pm);border-radius:20px;padding:4px 12px;
  text-decoration:none;transition:background .2s
}
.ct-card-cta:hover{background:var(--p)}
.ct-card-soon-overlay{position:absolute;inset:0;background:rgba(255,255,255,.55);display:flex;align-items:center;justify-content:center;backdrop-filter:blur(1px);pointer-events:none}
.ct-soon-badge{background:var(--pm);color:#fff;font-size:.75rem;font-weight:900;padding:6px 20px;border-radius:20px}

/* ═══ 3. PACK PRÉSENTIEL ═══ */
.benefits-sec{
  background:linear-gradient(160deg,#F5F0FC 0%,#FAFAF8 50%,#FFF4EE 100%);
  padding:80px 24px;
}
.pack-layout{
  max-width:1100px;margin:40px auto 0;
  display:grid;grid-template-columns:1.1fr 1fr;gap:48px;align-items:center;
}
.pack-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.pack-item{
  border-radius:18px;padding:22px 18px;
  display:flex;flex-direction:column;gap:10px;
  transition:transform .22s,box-shadow .22s;
  border:1.5px solid transparent;
}
.pack-item:hover{transform:translateY(-4px);box-shadow:0 10px 30px rgba(0,0,0,.09)}
.pi-blue  {background:#E5F7FB;border-color:#B8E8F4}
.pi-yellow{background:#FFF8E7;border-color:#FFE4A0}
.pi-cream {background:#FFF4EE;border-color:#FFD4B8}
.pi-purple{background:#F0EBF8;border-color:#CDB8F0}
.pi-green {background:#E8F8F0;border-color:#A8E8CC}
.pi-pink  {background:#FDE8F0;border-color:#F4B8D0}
.pack-item-icon{font-size:1.8rem;line-height:1}
.pack-item h4{font-size:.88rem;font-weight:900;color:var(--p);line-height:1.3;margin:0}
.pack-item p{font-size:.76rem;color:var(--txm);line-height:1.6;margin:0}
.pack-badge{
  display:inline-flex;align-items:center;gap:8px;
  background:var(--pm);color:#fff;
  font-size:.78rem;font-weight:800;padding:5px 16px;
  border-radius:20px;margin-bottom:18px;
}
.pack-right h2{
  font-size:clamp(1.8rem,3.5vw,2.6rem);font-weight:900;
  color:var(--p);line-height:1.25;margin-bottom:14px;
}
.pack-right h2 span{color:var(--o)}
.pack-right>p{font-size:.92rem;color:var(--txm);line-height:1.8;margin-bottom:22px}
.pack-checklist{list-style:none;padding:0;display:flex;flex-direction:column;gap:10px;margin-bottom:28px}
.pack-checklist li{
  display:flex;align-items:flex-start;gap:10px;
  font-size:.88rem;font-weight:700;color:var(--p);line-height:1.4;
}
.pack-checklist li::before{
  content:'✓';display:flex;align-items:center;justify-content:center;
  width:22px;height:22px;border-radius:50%;flex-shrink:0;
  background:var(--pm);color:#fff;font-size:.72rem;font-weight:900;margin-top:1px;
}
.pack-cta{
  display:inline-block;background:var(--o);color:#fff;
  border-radius:50px;padding:14px 36px;
  font-family:"Tajawal",sans-serif;font-size:1rem;font-weight:800;
  text-decoration:none;transition:all .22s;
  box-shadow:0 6px 24px rgba(232,82,10,.35);
}
.pack-cta:hover{background:#d44a08;transform:translateY(-3px)}

/* ═══ 3b. OFFRES / TARIFS ═══ */
.offres-sec{background:var(--w);padding:80px 24px}
.offres-grid{
  max-width:1000px;margin:40px auto 0;
  display:grid;grid-template-columns:repeat(3,1fr);gap:20px;
}
.offre-card{
  border-radius:24px;padding:36px 26px 32px;
  border:2px solid var(--bd);
  display:flex;flex-direction:column;
  position:relative;overflow:hidden;
  transition:transform .22s,box-shadow .22s;
  background:var(--w);
}
.offre-card:hover{transform:translateY(-6px);box-shadow:var(--shl)}
.offre-card.popular{border-color:var(--pm);box-shadow:0 8px 40px rgba(91,45,158,.18)}
.popular-badge{
  position:absolute;top:0;left:50%;transform:translateX(-50%);
  background:var(--pm);color:#fff;
  font-size:.68rem;font-weight:900;padding:4px 18px;
  border-radius:0 0 12px 12px;letter-spacing:.5px;
}
.offre-level{font-size:.72rem;font-weight:800;color:var(--pm);letter-spacing:.8px;margin-bottom:6px}
.offre-grades{font-size:1.15rem;font-weight:900;color:var(--p);margin-bottom:18px;line-height:1.2}
.offre-price-row{
  display:flex;align-items:baseline;gap:6px;
  margin-bottom:24px;padding-bottom:20px;border-bottom:2px solid var(--bd);
}
.offre-price{font-size:2.6rem;font-weight:900;color:var(--p);line-height:1}
.offre-currency{font-size:1rem;font-weight:700;color:var(--txm)}
.offre-period{font-size:.8rem;color:var(--txm);font-weight:600}
.offre-list{list-style:none;padding:0;display:flex;flex-direction:column;gap:9px;flex:1}
.offre-list li{display:flex;align-items:flex-start;gap:9px;font-size:.8rem;color:var(--txm);line-height:1.5}
.offre-list li .oi{
  width:18px;height:18px;border-radius:50%;flex-shrink:0;
  background:var(--pl);display:flex;align-items:center;justify-content:center;
  font-size:.6rem;font-weight:900;color:var(--pm);margin-top:1px;
}
.offre-card.popular .offre-list li .oi{background:var(--pm);color:#fff}
.offre-btn{
  display:block;text-align:center;margin-top:24px;
  background:var(--pl);color:var(--pm);border-radius:50px;
  padding:12px 20px;font-family:"Tajawal",sans-serif;
  font-size:.9rem;font-weight:800;text-decoration:none;
  transition:all .22s;border:2px solid transparent;
}
.offre-btn:hover{background:var(--pm2);border-color:var(--pm)}
.offre-card.popular .offre-btn{background:var(--pm);color:#fff}
.offre-card.popular .offre-btn:hover{background:var(--p)}

/* ═══ 4. WORKSHOPS ═══ */
.workshops-sec{background:var(--bg);padding:80px 24px}
.wk-grid{
  display:grid;grid-template-columns:repeat(3,1fr);
  gap:24px;max-width:1060px;margin:44px auto 0
}
.wk-card{
  background:var(--w);border-radius:20px;overflow:hidden;
  box-shadow:var(--sh);transition:transform .28s,box-shadow .28s;
  display:flex;flex-direction:column
}
.wk-card:hover{transform:translateY(-6px);box-shadow:var(--shl)}
.wk-img{
  height:180px;position:relative;overflow:hidden;flex-shrink:0
}
.wk-img img{width:100%;height:100%;object-fit:cover;transition:transform .4s}
.wk-card:hover .wk-img img{transform:scale(1.06)}
.wk-img-placeholder{
  width:100%;height:100%;
  display:flex;align-items:center;justify-content:center;
  font-size:3.5rem
}
.wk-free-badge{
  position:absolute;top:12px;right:12px;
  background:#fff;color:var(--o);font-size:.65rem;font-weight:900;
  padding:4px 12px;border-radius:20px;
  box-shadow:0 2px 8px rgba(0,0,0,.15)
}
.wk-body{padding:20px;flex:1;display:flex;flex-direction:column}
.wk-icon-row{display:flex;align-items:center;gap:8px;margin-bottom:8px}
.wk-icon{font-size:1.4rem}
.wk-title{font-size:.95rem;font-weight:900;color:var(--p);line-height:1.3}
.wk-desc{font-size:.8rem;color:var(--txm);line-height:1.65;margin-bottom:12px;flex:1}
.wk-meta{display:flex;flex-wrap:wrap;gap:6px;margin-top:auto}
.wk-tag{
  font-size:.68rem;font-weight:700;padding:3px 10px;border-radius:20px;
  background:var(--pl);color:var(--pm)
}
.wk-info-row{display:flex;gap:10px;flex-wrap:wrap;margin-top:10px;padding-top:10px;border-top:1px solid var(--bd)}
.wk-info{font-size:.72rem;color:var(--txm);display:flex;align-items:center;gap:4px}

/* ═══ 5. ILONA ═══ */
.ilona-sec{padding:0 24px 80px;background:var(--bg)}
/* Banner hero */
.ilona-hero{
  max-width:1100px;margin:0 auto 40px;
  border-radius:24px;overflow:hidden;position:relative;
  min-height:200px;display:flex;flex-direction:column;
  align-items:center;justify-content:center;
  text-align:center;padding:48px 32px;
  background:linear-gradient(145deg,#1a0a36 0%,var(--p) 50%,#2a0e58 100%);
}
.ilona-hero-img{
  position:absolute;inset:0;width:100%;height:100%;
  object-fit:cover;opacity:.28;
}
.ilona-hero-overlay{
  position:absolute;inset:0;
  background:linear-gradient(135deg,rgba(26,10,54,.65) 0%,rgba(61,26,110,.55) 100%);
}
.ilona-hero-content{position:relative;z-index:1}
.ilona-hero h2{
  font-size:clamp(1.6rem,3.5vw,2.4rem);font-weight:900;
  color:#fff;line-height:1.3;margin-bottom:12px;
}
.ilona-hero h2 span{color:#FFB347}
.ilona-hero p{font-size:.95rem;color:rgba(255,255,255,.82);max-width:580px;margin:0 auto;line-height:1.7}
/* 4 cards row */
.ilona-cards{
  max-width:1100px;margin:0 auto;
  display:grid;grid-template-columns:repeat(4,1fr);gap:16px;
}
.ilona-card{
  border-radius:22px;padding:32px 22px 28px;
  position:relative;overflow:hidden;min-height:240px;
  display:flex;flex-direction:column;justify-content:space-between;
  transition:transform .22s,box-shadow .22s;cursor:default;
}
.ilona-card:hover{transform:translateY(-6px);box-shadow:0 16px 48px rgba(0,0,0,.18)}
.ilona-card-title{font-size:1.05rem;font-weight:900;color:#fff;line-height:1.35;margin-bottom:auto}
.ilona-card-desc{font-size:.83rem;color:rgba(255,255,255,.88);line-height:1.7;margin-top:20px}
/* Card watermark — Archipel "A" shape */
.ilona-card-wm{
  position:absolute;bottom:-10px;left:-10px;
  width:110px;height:110px;opacity:.15;pointer-events:none;
  color:#fff;
}
/* Card colors */
.ic-cyan{background:linear-gradient(145deg,#00AECC,#00C4E6)}
.ic-purple{background:linear-gradient(145deg,#7B44C6,#5B2D9E)}
.ic-orange{background:linear-gradient(145deg,#E8520A,#FF7A3D)}
.ic-coral{background:linear-gradient(145deg,#F45858,#FF7070)}
@media(max-width:768px){.ilona-cards{grid-template-columns:1fr 1fr}}
@media(max-width:480px){.ilona-cards{grid-template-columns:1fr}.ilona-hero{min-height:160px;padding:36px 20px}}

/* ═══ 5b. PROFILS D'APPRENTISSAGE ═══ */
.profils-sec{
  background:linear-gradient(160deg,#F5F0FC 0%,#FAFAF8 50%,#F0F9FB 100%);
  padding:80px 24px;
}
.profils-grid{
  max-width:1100px;margin:40px auto 0;
  display:grid;grid-template-columns:1fr 1fr;gap:20px;
}
.profil-card{
  border-radius:24px;padding:32px 28px;
  position:relative;overflow:hidden;
  transition:transform .22s,box-shadow .22s;
}
.profil-card:hover{transform:translateY(-5px);box-shadow:0 14px 44px rgba(0,0,0,.10)}
/* Card bg colors */
.pc-yellow{background:#FFF8E7;border:1.5px solid #FFE8A0}
.pc-blue{background:#E8F7FD;border:1.5px solid #A8E4F4}
.pc-purple{background:#F0EBF8;border:1.5px solid #CDB8F0}
.pc-green{background:#E8F8F0;border:1.5px solid #A8E8CC}
/* Card header */
.profil-header{display:flex;align-items:center;gap:14px;margin-bottom:16px}
.profil-icon{
  width:52px;height:52px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  font-size:1.6rem;flex-shrink:0;
}
.pi-yellow{background:#FFE0A0}
.pi-blue{background:#A8DDF0}
.pi-purple{background:#C8ACEA}
.pi-green{background:#8CDDB4}
.profil-title{font-size:1.1rem;font-weight:900;color:var(--p)}
/* Quote */
.profil-quote{
  font-size:.9rem;font-weight:700;font-style:italic;
  line-height:1.5;margin-bottom:16px;
}
.pq-yellow{color:#C87800}
.pq-blue{color:#006E99}
.pq-purple{color:var(--pm)}
.pq-green{color:#1A7D52}
/* Bullets */
.profil-list{list-style:none;padding:0}
.profil-list li{
  font-size:.85rem;color:var(--txm);line-height:1.7;
  padding-right:22px;position:relative;
}
.profil-list li::before{
  content:'👉';font-size:.75rem;
  position:absolute;right:0;top:2px;
}
@media(max-width:768px){.profils-grid{grid-template-columns:1fr}}

/* ═══ 6. TÉMOIGNAGES VIDEO CAROUSEL ═══ */
.testi-sec{
  background:linear-gradient(160deg,#FFF8E7 0%,#FFF0E8 100%);
  padding:80px 24px;
}
/* Carousel */
.testi-carousel-wrap{position:relative;max-width:1100px;margin:40px auto 0;padding:0 52px;direction:ltr}
.testi-overflow{overflow:hidden}
.testi-track{display:flex;gap:16px;transition:transform .45s cubic-bezier(.4,0,.2,1);will-change:transform}
/* Video card */
.testi-card{
  flex:0 0 calc((100% - 32px)/3);min-width:0;
  border-radius:18px;overflow:hidden;background:var(--w);
  box-shadow:0 8px 32px rgba(232,82,10,.10);
  transition:transform .2s;direction:rtl;
  border-top:4px solid var(--o);
}
.testi-card:hover{transform:translateY(-6px)}
.testi-thumb-wrap{
  position:relative;width:100%;aspect-ratio:16/9;
  background:#1a1a2e;overflow:hidden;cursor:pointer;
  display:flex;align-items:center;justify-content:center;
}
.testi-thumb-wrap .cover-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .35s}
.testi-card:hover .cover-img{transform:scale(1.05)}
.testi-thumb-wrap .overlay{
  position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(232,82,10,.04) 0%,rgba(61,26,110,.5) 100%);
}
.cover-placeholder{
  position:absolute;inset:0;
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  background:linear-gradient(160deg,#C44008 0%,#E8520A 100%);gap:8px;
}
.cover-placeholder .cp-emoji{font-size:2.4rem}
.cover-placeholder .cp-name{color:#fff;font-size:.8rem;font-weight:700;text-align:center;padding:0 10px}
.play-btn{
  position:relative;z-index:2;width:52px;height:52px;
  background:rgba(255,255,255,.93);border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  font-size:1.2rem;transition:transform .2s;box-shadow:0 4px 18px rgba(0,0,0,.28);
}
.testi-card:hover .play-btn{transform:scale(1.12)}
/* Quote body */
.testi-card-body{padding:16px 18px}
.testi-stars-row{color:#f59e0b;font-size:.88rem;margin-bottom:8px}
.testi-quote{
  font-size:.86rem;color:var(--tx);line-height:1.7;margin-bottom:12px;
  font-style:italic;border-right:3px solid var(--o);padding-right:12px;
}
.testi-author-row{display:flex;align-items:center;gap:10px}
.testi-ava{
  width:36px;height:36px;border-radius:50%;
  background:rgba(232,82,10,.12);border:2px solid var(--o);
  display:flex;align-items:center;justify-content:center;font-size:1rem;flex-shrink:0;
}
.testi-aname{font-size:.84rem;font-weight:900;color:var(--p)}
.testi-ainfo{font-size:.73rem;color:var(--txm);font-weight:600;margin-top:1px}
/* Arrows */
.testi-arrow{
  position:absolute;top:38%;transform:translateY(-50%);
  width:42px;height:42px;border-radius:50%;
  background:var(--w);border:2px solid rgba(232,82,10,.2);cursor:pointer;
  box-shadow:0 2px 10px rgba(61,26,110,.15);
  font-size:1rem;display:flex;align-items:center;justify-content:center;
  color:var(--p);transition:background .2s,color .2s,transform .2s;z-index:5;
}
.testi-arrow:hover{background:var(--o);color:#fff;border-color:var(--o);transform:translateY(-50%) scale(1.08)}
.testi-arrow:disabled{opacity:.3;cursor:not-allowed;pointer-events:none}
.testi-arrow.ta-prev{left:0}
.testi-arrow.ta-next{right:0}
/* Dots */
.testi-dots{display:flex;justify-content:center;gap:8px;margin-top:22px}
.testi-dot{width:9px;height:9px;border-radius:50%;border:none;cursor:pointer;background:rgba(232,82,10,.2);transition:background .25s,transform .25s}
.testi-dot.active{background:var(--o);transform:scale(1.4)}
/* Video Modal */
.modal-bg{display:none;position:fixed;inset:0;background:rgba(0,0,0,.88);z-index:500;align-items:center;justify-content:center;padding:20px}
.modal-bg.open{display:flex}
.modal-box{background:#000;border-radius:12px;overflow:hidden;max-width:720px;width:100%;position:relative}
.modal-close{position:absolute;top:10px;left:10px;background:rgba(255,255,255,.18);border:none;color:#fff;width:34px;height:34px;border-radius:50%;font-size:1.1rem;cursor:pointer;z-index:10;display:flex;align-items:center;justify-content:center}
.modal-iframe{width:100%;aspect-ratio:16/9;border:none;display:block}
/* Responsive */
@media(max-width:700px){.testi-carousel-wrap{padding:0 40px}.testi-card{flex:0 0 calc((100% - 16px)/2)}}
@media(max-width:440px){.testi-card{flex:0 0 100%}}

/* ═══ 6. TEAM SPOTLIGHT (univers visuel Archipel) ═══ */
.team-sec{
  background:linear-gradient(160deg,#F5F0FC 0%,#FAFAF8 48%,#FFF4EE 100%);
  padding:80px 24px;position:relative;overflow:hidden;
}
/* SVG déco section-level */
.team-sec-deco{position:absolute;pointer-events:none;z-index:0}
.team-sec-wheel{top:-30px;left:3%;width:210px;color:var(--pm);opacity:.10}
.team-sec-ring{bottom:-24px;right:2%;width:170px;color:var(--o);opacity:.13}

/* Tabs par centre */
.centre-tabs{
  display:flex;gap:10px;justify-content:center;flex-wrap:wrap;
  margin:32px 0 36px;position:relative;z-index:1;
}
.centre-tab{
  background:var(--w);color:var(--pm);
  border:2px solid rgba(91,45,158,.15);
  border-radius:30px;padding:10px 24px;
  font-family:"Tajawal",sans-serif;font-size:.85rem;font-weight:800;
  cursor:pointer;transition:all .22s;
  box-shadow:0 2px 10px rgba(61,26,110,.07);
}
.centre-tab:hover:not(.active){
  background:var(--pm2);border-color:rgba(91,45,158,.3);
  transform:translateY(-2px);box-shadow:0 6px 18px rgba(61,26,110,.12);
}
.centre-tab.active{
  background:var(--pm);color:#fff;border-color:var(--pm);
  box-shadow:0 6px 24px rgba(91,45,158,.35);transform:translateY(-3px);
}
.centre-tab .ct-dot{
  display:inline-block;width:7px;height:7px;border-radius:50%;
  background:#4CAF50;margin-left:6px;margin-bottom:1px;vertical-align:middle;
}
/* Panels par centre */
.team-centre-panel{display:none}
.team-centre-panel.active{display:block}

/* ── Spotlight card ── */
.team-spotlight{
  max-width:1100px;margin:0 auto;
  background:var(--w);
  border-radius:28px;
  box-shadow:0 12px 56px rgba(61,26,110,.14);
  border:1.5px solid rgba(91,45,158,.10);
  overflow:hidden;position:relative;
  display:grid;grid-template-columns:1fr 1.15fr;
  min-height:480px;align-items:stretch;
}
/* Photo column — fond violet dégradé */
.spot-photo-col{
  background:linear-gradient(180deg,#EDE6F8 0%,#D8CCF0 100%);
  position:relative;
  display:flex;align-items:flex-end;justify-content:center;
  min-height:480px;overflow:hidden;padding:0 20px;
}
/* Ship wheel watermark in photo col */
.spot-wheel-deco{
  position:absolute;top:12px;right:12px;width:88px;
  color:var(--pm);opacity:.18;pointer-events:none;z-index:0;
}
.spot-photo{
  max-height:460px;width:auto;max-width:100%;display:block;margin:0 auto;
  position:relative;z-index:1;
  filter:drop-shadow(0 12px 32px rgba(61,26,110,.18));
  transition:opacity .22s ease;
}
.spot-photo-ph{
  font-size:9rem;display:flex;align-items:flex-end;justify-content:center;
  height:100%;min-height:380px;padding-bottom:20px;
  position:relative;z-index:1;transition:opacity .22s ease;
}
/* Info column */
.spot-info-col{
  padding:50px 48px 50px 32px;
  position:relative;z-index:1;
  border-right:4px solid var(--o);
}
/* Orange life-ring deco in info col */
.spot-ring-deco{
  position:absolute;bottom:-24px;left:-24px;width:110px;
  color:var(--o);opacity:.10;pointer-events:none;z-index:0;
}
.spot-role-en{
  display:inline-block;
  font-size:.72rem;font-weight:800;color:var(--pm);
  letter-spacing:.9px;text-transform:uppercase;
  background:var(--pl);padding:3px 14px;border-radius:20px;
  margin-bottom:12px;
}
.spot-name{
  font-size:clamp(1.8rem,3.2vw,2.6rem);font-weight:900;
  color:var(--p);line-height:1.2;margin-bottom:8px;
  transition:opacity .22s ease;
}
.spot-role-ar{
  display:block;font-size:.95rem;font-weight:800;
  color:var(--o);margin-bottom:22px;
}
.spot-bio{font-size:.9rem;color:var(--txm);line-height:1.9;max-width:380px}
/* Arrows */
.spot-nav{
  position:absolute;top:50%;transform:translateY(-50%);z-index:10;
  width:46px;height:46px;border-radius:50%;
  background:var(--w);border:2px solid var(--bd);
  display:flex;align-items:center;justify-content:center;
  cursor:pointer;font-size:1.1rem;color:var(--p);
  box-shadow:0 4px 16px rgba(0,0,0,.12);transition:all .2s;
}
.spot-nav:hover{background:var(--p);color:#fff;border-color:var(--p);transform:translateY(-50%) scale(1.08)}
.spot-nav:disabled{opacity:.2;cursor:not-allowed;pointer-events:none}
.spot-nav-prev{right:-22px}
.spot-nav-next{left:-22px}

/* ── Thumbnail strip ── */
.spot-strip-section{max-width:1100px;margin:18px auto 0;padding:0 24px;position:relative;z-index:1}
.spot-strip-overflow{overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none;padding:8px 0}
.spot-strip-overflow::-webkit-scrollbar{display:none}
.spot-strip{display:flex;gap:12px;width:max-content}
.spot-thumb{
  display:flex;flex-direction:column;align-items:center;gap:6px;
  cursor:pointer;padding:12px 10px 14px;
  border-radius:20px;
  background:var(--w);
  border:2px solid var(--bd);
  border-top:3px solid transparent;
  box-shadow:0 2px 8px rgba(0,0,0,.06);
  transition:all .22s;width:96px;flex:0 0 96px;
}
.spot-thumb:hover{
  background:var(--pl);border-color:rgba(91,45,158,.25);
  transform:translateY(-4px);box-shadow:0 8px 20px rgba(61,26,110,.10);
}
.spot-thumb.active{
  background:var(--pl);
  border-color:rgba(91,45,158,.25);
  border-top-color:var(--pm);
  transform:translateY(-6px);
  box-shadow:0 10px 28px rgba(91,45,158,.18);
}
.spot-thumb-img{
  width:62px;height:62px;border-radius:14px;
  object-fit:cover;object-position:top;
  border:2px solid var(--bd);transition:border-color .2s;
}
.spot-thumb.active .spot-thumb-img{border-color:var(--pm)}
.spot-thumb-ph{
  width:62px;height:62px;border-radius:14px;
  background:var(--pl);display:flex;align-items:center;justify-content:center;
  font-size:1.7rem;border:2px solid var(--bd);flex-shrink:0;
}
.spot-thumb.active .spot-thumb-ph{border-color:var(--pm)}
.spot-thumb-name{font-size:.62rem;font-weight:800;color:var(--p);text-align:center;line-height:1.3;max-width:84px}
.spot-thumb-sub{font-size:.55rem;color:var(--txm);text-align:center;font-weight:600;line-height:1.2;max-width:84px}

/* ── Coming soon ── */
.centre-soon-box{
  max-width:560px;margin:56px auto;text-align:center;
  background:var(--w);border-radius:28px;padding:56px 36px;
  box-shadow:0 10px 44px rgba(61,26,110,.10);
  border:1.5px solid rgba(91,45,158,.10);
  position:relative;overflow:hidden;
}
.centre-soon-box .csb-ring{
  position:absolute;top:-28px;right:-28px;width:130px;
  color:var(--o);opacity:.12;pointer-events:none;
}
.centre-soon-box .csi{font-size:3.6rem;margin-bottom:16px;display:block;position:relative;z-index:1}
.centre-soon-box h3{font-size:1.4rem;font-weight:900;color:var(--p);margin-bottom:10px;position:relative;z-index:1}
.centre-soon-box p{color:var(--txm);font-size:.9rem;line-height:1.8;position:relative;z-index:1}

/* Responsive */
@media(max-width:768px){
  .team-spotlight{grid-template-columns:1fr;min-height:auto}
  .spot-photo-col{min-height:260px;order:1;padding:0 10px;border-right:none}
  .spot-photo{max-height:240px}
  .spot-photo-ph{min-height:200px}
  .spot-info-col{padding:24px 20px;order:2;border-right:none;border-top:4px solid var(--o)}
  .spot-bio{max-width:100%}
  .spot-nav{display:none}
  .team-sec-wheel{width:130px}
  .team-sec-ring{width:110px}
}
@media(max-width:480px){
  .spot-thumb{width:80px;flex:0 0 80px;padding:8px 6px}
  .spot-thumb-img,.spot-thumb-ph{width:52px;height:52px;border-radius:12px}
}

/* ═══ 7. CTA FINAL ═══ */
.final-cta{
  background:linear-gradient(135deg,#1a0a36,var(--p),#2a0e58);
  padding:100px 24px;text-align:center;position:relative;overflow:hidden
}
.final-cta::before{
  content:'';position:absolute;inset:0;
  background:radial-gradient(ellipse 70% 70% at 50% 50%,rgba(91,45,158,.4),transparent)
}
.final-cta-inner{position:relative;z-index:1;max-width:640px;margin:0 auto}
.cta-tag{
  display:inline-block;background:rgba(232,82,10,.2);
  border:1px solid rgba(232,82,10,.4);color:var(--o);
  font-size:.75rem;font-weight:800;padding:5px 18px;border-radius:20px;margin-bottom:20px
}
.final-cta h2{font-size:clamp(1.8rem,4.5vw,2.8rem);font-weight:900;color:#fff;line-height:1.25;margin-bottom:14px}
.final-cta h2 span{background:linear-gradient(90deg,var(--o),#FFB347);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.final-cta p{color:rgba(255,255,255,.72);font-size:.95rem;line-height:1.7;margin-bottom:32px}
.cta-buttons{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;margin-bottom:20px}
.cta-main{background:var(--o);color:#fff;border:none;border-radius:50px;padding:15px 38px;font-family:"Tajawal",sans-serif;font-size:1rem;font-weight:800;text-decoration:none;transition:all .22s;box-shadow:0 8px 28px rgba(232,82,10,.4)}
.cta-main:hover{background:#d44a08;transform:translateY(-3px)}
.cta-sec{background:rgba(255,255,255,.1);color:#fff;border:2px solid rgba(255,255,255,.3);border-radius:50px;padding:13px 34px;font-family:"Tajawal",sans-serif;font-size:1rem;font-weight:800;text-decoration:none;transition:all .22s;backdrop-filter:blur(4px)}
.cta-sec:hover{background:rgba(255,255,255,.18);border-color:rgba(255,255,255,.6)}
.cta-note{font-size:.76rem;color:rgba(255,255,255,.4)}

/* FOOTER */
.footer{background:#0f0620;color:rgba(255,255,255,.6);text-align:center;padding:32px 24px;font-size:.84rem}
.logo-img-footer{height:34px;display:block;filter:brightness(0) invert(1);margin:0 auto 12px}
.footer-logo-text{font-family:"Tajawal",sans-serif;font-weight:900;font-size:1.1rem;color:#fff;letter-spacing:.06em}
.footer-logo-text span{color:var(--o)}
.footer a{color:#D4B8F0;text-decoration:none}

/* RESPONSIVE */
@media(max-width:768px){
  .nav{padding:10px 16px}
  .nav-links,.nav-actions{display:none}
  .nav-burger{display:flex}
  .ct-layout{grid-template-columns:1fr;height:auto}
  .ct-map-col{height:300px;position:relative}
  .ct-list-col{height:340px}
  .pack-layout{grid-template-columns:1fr;gap:32px}
  .pack-grid{grid-template-columns:1fr 1fr}
  .offres-grid{grid-template-columns:1fr;max-width:420px;margin-left:auto;margin-right:auto}
  .wk-grid{grid-template-columns:1fr 1fr}
  .testi-grid{grid-template-columns:1fr}
  .testi-big{grid-column:1}

  .cta-buttons{flex-direction:column;align-items:center}
  .cta-main,.cta-sec{width:100%;max-width:320px;text-align:center}
}
@media(max-width:480px){
  .pack-grid{grid-template-columns:1fr}
  .wk-grid{grid-template-columns:1fr}
  .centre-tabs{gap:6px}
  .centre-tab{font-size:.78rem;padding:7px 14px}
  .hero-stats{gap:20px}
  .hstat-num{font-size:1.6rem}
}
