/* ============================================================
   eMB CONNECT — Page d'accueil (super-app) · CSS isolé
   Scopé sous .emb-home pour ne jamais entrer en conflit
   ============================================================ */
@import url('https://fonts.googleapis.com/css2?family=Bricolage+Grotesque:opsz,wght@12..96,600;12..96,700;12..96,800&family=Inter:wght@400;500;600;700;800&display=swap');

.emb-home{
  --food:#E8362A; --shop:#1DB954; --drive:#34A8E0; --stay:#15205B; --livr:#F39314;
  --accent:#34A8E0;
  --bg:#FBFBFD; --card:#fff; --encre:#0B0E13; --gris:#86868B; --line:#EDEDF0;
  --fd:'Bricolage Grotesque',sans-serif; --fb:'Inter',sans-serif;
  font-family:var(--fb); color:var(--encre); background:var(--bg);
  -webkit-font-smoothing:antialiased;
}
.emb-home *{box-sizing:border-box}
.emb-home img{max-width:100%;display:block}
.emb-home a{text-decoration:none;color:inherit}

/* ===== HERO ===== */
.emb-home .eh-hero{
  position:relative;overflow:hidden;
  background:linear-gradient(140deg,#0B0E13 0%,#15205B 55%,#1a2d6b 100%);
  color:#fff;padding:64px 40px 72px;
}
.emb-home .eh-hero::after{
  content:'';position:absolute;top:-80px;right:-60px;width:340px;height:340px;
  border-radius:50%;background:radial-gradient(circle,rgba(52,168,224,.35),transparent 70%);
}
.emb-home .eh-inner{max-width:1180px;margin:0 auto;position:relative;z-index:2}
.emb-home .eh-kicker{
  display:inline-block;font-size:13px;font-weight:700;letter-spacing:.5px;
  background:rgba(255,255,255,.12);padding:7px 15px;border-radius:30px;margin-bottom:20px;
  backdrop-filter:blur(8px);
}
.emb-home .eh-hero h1{
  font-family:var(--fd);font-weight:800;font-size:56px;line-height:1.02;
  letter-spacing:-1.8px;max-width:760px;margin:0;
}
.emb-home .eh-hero h1 .grad{
  background:linear-gradient(110deg,#34A8E0,#1DB954 60%,#F39314);
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;
}
.emb-home .eh-hero p{font-size:18px;color:rgba(255,255,255,.8);margin:20px 0 0;max-width:560px;line-height:1.55}

/* ===== CARTE DE RECHERCHE ===== */
.emb-home .eh-search{
  margin:34px auto 0;max-width:1180px;background:#fff;border-radius:22px;
  padding:18px;box-shadow:0 24px 60px rgba(0,0,0,.22);
  display:grid;grid-template-columns:1.4fr 1fr 1fr auto;gap:14px;align-items:end;
}
.emb-home .eh-fld{display:flex;flex-direction:column;gap:6px}
.emb-home .eh-fld label{font-size:12px;font-weight:700;color:var(--gris);text-transform:uppercase;letter-spacing:.4px}
.emb-home .eh-fld select,.emb-home .eh-fld input{
  border:1px solid var(--line);background:#F7F8FA;border-radius:12px;padding:13px 14px;
  font-size:14px;font-family:var(--fb);font-weight:500;color:var(--encre);outline:none;width:100%;
}
.emb-home .eh-fld select:focus,.emb-home .eh-fld input:focus{border-color:var(--drive);background:#fff}
.emb-home .eh-duo{display:flex;gap:8px}
.emb-home .eh-btn-search{
  background:var(--drive);color:#fff;border:none;border-radius:13px;padding:15px 26px;
  font-weight:700;font-size:15px;font-family:var(--fb);cursor:pointer;white-space:nowrap;
  display:flex;align-items:center;gap:8px;transition:.15s;height:fit-content;
}
.emb-home .eh-btn-search:hover{background:#2691c8;transform:translateY(-2px)}

/* autocomplete */
.emb-home .eh-ac{position:relative;max-width:440px;margin:14px auto 0}
.emb-home .eh-ac input{
  width:100%;border:1px solid var(--line);border-radius:30px;padding:13px 20px;
  font-size:14px;font-family:var(--fb);outline:none;background:rgba(255,255,255,.95);
}
.emb-home .eh-ac-drop{
  display:none;position:absolute;top:100%;left:0;right:0;background:#fff;
  border:1px solid var(--line);border-radius:14px;box-shadow:0 12px 40px rgba(0,0,0,.18);
  z-index:50;max-height:360px;overflow-y:auto;margin-top:6px;
}

/* ===== SECTION GÉNÉRIQUE ===== */
.emb-home .eh-sec{max-width:1180px;margin:0 auto;padding:56px 40px}
.emb-home .eh-sechead{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:30px;gap:20px;flex-wrap:wrap}
.emb-home .eh-sechead .eh-tt{flex:1;min-width:240px}
.emb-home .eh-badge{display:inline-block;font-size:12px;font-weight:700;padding:5px 13px;border-radius:30px;margin-bottom:12px}
.emb-home .eh-sechead h2{font-family:var(--fd);font-weight:800;font-size:36px;letter-spacing:-1px;line-height:1;margin:0}
.emb-home .eh-sechead p{color:var(--gris);font-size:15px;margin:10px 0 0;max-width:620px;line-height:1.5}
.emb-home .eh-seelink{font-weight:700;font-size:14px;color:var(--encre);display:inline-flex;align-items:center;gap:6px;white-space:nowrap}

/* couleurs de badge par module */
.emb-home .b-drive{background:rgba(52,168,224,.12);color:var(--drive)}
.emb-home .b-stay{background:rgba(21,32,91,.1);color:var(--stay)}
.emb-home .b-food{background:rgba(232,54,42,.1);color:var(--food)}

/* ===== "COMMENT ÇA MARCHE" ===== */
.emb-home .eh-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.emb-home .eh-step{background:#fff;border:1px solid var(--line);border-radius:20px;padding:28px;transition:.2s}
.emb-home .eh-step:hover{transform:translateY(-4px);box-shadow:0 18px 40px rgba(0,0,0,.07)}
.emb-home .eh-step .eh-num{width:46px;height:46px;border-radius:13px;display:flex;align-items:center;justify-content:center;font-size:22px;margin-bottom:16px}
.emb-home .eh-step h3{font-family:var(--fd);font-size:19px;font-weight:700;margin:0 0 8px}
.emb-home .eh-step p{color:var(--gris);font-size:14px;line-height:1.55;margin:0}

/* ===== GRILLE DE CARTES (véhicules / logements / restos) ===== */
.emb-home .eh-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.emb-home .eh-cardx{
  background:#fff;border:1px solid var(--line);border-radius:22px;overflow:hidden;
  transition:transform .3s cubic-bezier(.2,.7,.2,1),box-shadow .3s;display:block;
}
.emb-home .eh-cardx:hover{transform:translateY(-6px);box-shadow:0 26px 54px rgba(0,0,0,.12)}
.emb-home .eh-cardx .eh-ph{position:relative;height:200px;background:#F2F4F7;overflow:hidden}
.emb-home .eh-cardx .eh-ph img{width:100%;height:100%;object-fit:cover;transition:transform .4s}
.emb-home .eh-cardx:hover .eh-ph img{transform:scale(1.06)}
.emb-home .eh-cardx .eh-ph .eh-noimg{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:54px}
.emb-home .eh-tag{position:absolute;top:12px;left:12px;font-size:11px;font-weight:700;padding:5px 11px;border-radius:30px;color:#fff;backdrop-filter:blur(6px)}
.emb-home .eh-tag.t-drive{background:rgba(52,168,224,.92)}
.emb-home .eh-tag.t-stay{background:rgba(21,32,91,.92)}
.emb-home .eh-tag.t-food{background:rgba(232,54,42,.92)}
.emb-home .eh-fav{position:absolute;top:10px;right:10px;width:34px;height:34px;border-radius:50%;background:rgba(255,255,255,.9);border:none;cursor:pointer;font-size:15px;display:flex;align-items:center;justify-content:center}
.emb-home .eh-note{position:absolute;bottom:12px;left:12px;background:rgba(0,0,0,.7);color:#fff;font-size:12px;font-weight:700;padding:4px 9px;border-radius:20px;display:flex;align-items:center;gap:4px}
.emb-home .eh-cardx .eh-body{padding:18px}
.emb-home .eh-cardx .eh-loc{font-size:12.5px;color:var(--gris);display:flex;align-items:center;gap:5px;margin-bottom:6px}
.emb-home .eh-cardx .eh-nm{font-family:var(--fd);font-size:18px;font-weight:700;line-height:1.15;margin:0 0 10px}
.emb-home .eh-specs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}
.emb-home .eh-spec{font-size:12px;font-weight:600;color:#4a5160;background:#F2F4F7;padding:5px 10px;border-radius:9px;display:flex;align-items:center;gap:5px}
.emb-home .eh-foot{display:flex;align-items:center;justify-content:space-between;gap:10px}
.emb-home .eh-price{font-family:var(--fd);font-weight:800;font-size:19px}
.emb-home .eh-price small{font-size:12px;font-weight:500;color:var(--gris)}
.emb-home .eh-cta{font-size:13px;font-weight:700;color:#fff;padding:9px 16px;border-radius:11px;white-space:nowrap}
.emb-home .eh-cta.c-drive{background:var(--drive)}
.emb-home .eh-cta.c-stay{background:var(--stay)}
.emb-home .eh-cta.c-food{background:var(--food)}
.emb-home .eh-empty{grid-column:1/-1;text-align:center;padding:48px;color:var(--gris);background:#fff;border-radius:20px;border:1px solid var(--line)}

/* bouton "voir tout" */
.emb-home .eh-seeall{text-align:center;margin-top:34px}
.emb-home .eh-bigbtn{display:inline-flex;align-items:center;gap:9px;padding:14px 30px;border-radius:14px;font-weight:700;font-size:15px;color:#fff;transition:.15s}
.emb-home .eh-bigbtn:hover{transform:translateY(-2px)}
.emb-home .bb-drive{background:var(--drive)}
.emb-home .bb-stay{background:var(--stay)}
.emb-home .bb-food{background:var(--food)}

/* alternance de fond */
.emb-home .eh-band{background:#F4F6FB}

/* ===== "POURQUOI EMB" ===== */
.emb-home .eh-why{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.emb-home .eh-whycard{text-align:center;background:#fff;border:1px solid var(--line);border-radius:22px;padding:34px 24px;transition:.2s}
.emb-home .eh-whycard:hover{transform:translateY(-4px);box-shadow:0 18px 44px rgba(0,0,0,.08)}
.emb-home .eh-whyic{width:72px;height:72px;border-radius:20px;margin:0 auto 18px;display:flex;align-items:center;justify-content:center;font-size:34px}
.emb-home .eh-whycard h5{font-family:var(--fd);font-size:20px;font-weight:700;margin:0 0 10px}
.emb-home .eh-whycard p{color:var(--gris);font-size:14px;line-height:1.55;margin:0 0 18px}
.emb-home .eh-whybtn{display:inline-block;font-size:13px;font-weight:700;padding:10px 20px;border-radius:11px;border:1.5px solid var(--line);color:var(--encre);transition:.15s}
.emb-home .eh-whybtn:hover{border-color:currentColor}

/* ============================================================
   RESPONSIVE / MOBILE
   ============================================================ */
@media (max-width: 900px){
  .emb-home .eh-search{grid-template-columns:1fr 1fr;gap:12px}
  .emb-home .eh-search .eh-btn-search{grid-column:1/-1;justify-content:center}
  .emb-home .eh-grid,.emb-home .eh-steps,.emb-home .eh-why{grid-template-columns:repeat(2,1fr)}
}
@media (max-width: 600px){
  .emb-home .eh-hero{padding:44px 20px 54px}
  .emb-home .eh-hero h1{font-size:38px;letter-spacing:-1.2px}
  .emb-home .eh-hero p{font-size:16px}
  .emb-home .eh-search{grid-template-columns:1fr;margin-top:24px;padding:14px;border-radius:18px}
  .emb-home .eh-duo{flex-direction:row}
  .emb-home .eh-sec{padding:40px 18px}
  .emb-home .eh-sechead h2{font-size:28px}
  .emb-home .eh-grid,.emb-home .eh-steps,.emb-home .eh-why{grid-template-columns:1fr}
  .emb-home .eh-step,.emb-home .eh-whycard{padding:24px}
}

/* ============================================================
   HERO SLIDER PLEIN ÉCRAN + BANDE NAVIGATION 5 MODULES
   ============================================================ */
.emb-home .eh-slider{position:relative;height:78vh;min-height:520px;max-height:760px;overflow:hidden;color:#fff}
.emb-home .eh-slide{position:absolute;inset:0;opacity:0;transition:opacity 1s ease;background-size:cover;background-position:center}
.emb-home .eh-slide.on{opacity:1;z-index:2}
.emb-home .eh-slide::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(11,14,19,.45) 0%,rgba(11,14,19,.55) 55%,rgba(11,14,19,.85) 100%)}
.emb-home .eh-slide-inner{position:relative;z-index:3;height:100%;display:flex;flex-direction:column;justify-content:center;max-width:1180px;margin:0 auto;padding:0 40px}
.emb-home .eh-slide .eh-kicker{display:inline-block;font-size:13px;font-weight:700;background:rgba(255,255,255,.15);padding:7px 15px;border-radius:30px;margin-bottom:18px;backdrop-filter:blur(8px);width:fit-content}
.emb-home .eh-slide h1{font-family:var(--fd);font-weight:800;font-size:52px;line-height:1.05;letter-spacing:-1.6px;max-width:680px;margin:0}
.emb-home .eh-slide p{font-size:17px;color:rgba(255,255,255,.88);margin:16px 0 0;max-width:520px;line-height:1.5}
.emb-home .eh-dots{position:absolute;bottom:158px;left:50%;transform:translateX(-50%);z-index:5;display:flex;gap:8px}
.emb-home .eh-dots button{width:9px;height:9px;border-radius:50%;border:none;background:rgba(255,255,255,.4);cursor:pointer;padding:0;transition:.2s}
.emb-home .eh-dots button.on{background:#fff;width:24px;border-radius:5px}

/* carte recherche flottante (chevauche le bas du slider) */
.emb-home .eh-search{position:relative;z-index:6;margin:-72px auto 0}

/* bande de navigation rapide 5 modules */
.emb-home .eh-quicknav{max-width:1180px;margin:36px auto 0;padding:0 40px;display:grid;grid-template-columns:repeat(5,1fr);gap:14px}
.emb-home .eh-qn-item{background:#fff;border:1px solid var(--line);border-radius:18px;padding:20px 14px;text-align:center;text-decoration:color;transition:.2s;display:flex;flex-direction:column;align-items:center;gap:8px}
.emb-home .eh-qn-item:hover{transform:translateY(-4px);box-shadow:0 16px 34px rgba(0,0,0,.08);border-color:transparent}
.emb-home .eh-qn-ic{width:52px;height:52px;border-radius:15px;display:flex;align-items:center;justify-content:center;font-size:26px}
.emb-home .eh-qn-item span{font-weight:700;font-size:14px;color:var(--encre)}
.emb-home .eh-qn-item small{font-size:11.5px;color:var(--gris);font-weight:500}

/* ===== SHOP (bento) sur la home ===== */
.emb-home .eh-shopgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.emb-home .eh-shopcard{background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden;text-decoration:none;display:block;transition:.25s}
.emb-home .eh-shopcard:hover{transform:translateY(-5px);box-shadow:0 20px 40px rgba(0,0,0,.1)}
.emb-home .eh-shopcard .ph{height:140px;background:#F2F4F7;display:flex;align-items:center;justify-content:center;font-size:46px;overflow:hidden}
.emb-home .eh-shopcard .ph img{width:100%;height:100%;object-fit:cover}
.emb-home .eh-shopcard .bd{padding:14px}
.emb-home .eh-shopcard .nm{font-weight:700;font-size:14px;margin-bottom:4px}
.emb-home .eh-shopcard .pr{font-weight:800;color:var(--shop);font-size:15px}

/* ===== LIVRAISON vitrine ===== */
.emb-home .eh-livr{background:linear-gradient(120deg,#F39314,#d97a00);border-radius:28px;padding:46px;display:grid;grid-template-columns:1.2fr 1fr;gap:30px;align-items:center;color:#fff;overflow:hidden;position:relative}
.emb-home .eh-livr::after{content:'📦';position:absolute;right:-10px;bottom:-30px;font-size:200px;opacity:.12}
.emb-home .eh-livr h2{font-family:var(--fd);font-weight:800;font-size:32px;margin:0 0 12px;position:relative;z-index:2}
.emb-home .eh-livr p{font-size:15px;color:rgba(255,255,255,.92);max-width:440px;line-height:1.55;position:relative;z-index:2}
.emb-home .eh-livr-stats{display:flex;gap:24px;margin-top:20px;position:relative;z-index:2}
.emb-home .eh-livr-stats div{text-align:left}
.emb-home .eh-livr-stats b{display:block;font-size:24px;font-weight:800}
.emb-home .eh-livr-stats span{font-size:12px;opacity:.85}
.emb-home .eh-livr-cta{background:#fff;color:#F39314;font-weight:700;padding:13px 26px;border-radius:13px;text-decoration:none;display:inline-flex;align-items:center;gap:8px;margin-top:22px;position:relative;z-index:2}
.emb-home .eh-livr-visual{font-size:120px;text-align:center;position:relative;z-index:2}

@media (max-width:980px){
  .emb-home .eh-quicknav{grid-template-columns:repeat(3,1fr)}
  .emb-home .eh-shopgrid{grid-template-columns:repeat(2,1fr)}
  .emb-home .eh-livr{grid-template-columns:1fr;padding:30px;text-align:center}
  .emb-home .eh-livr-stats{justify-content:center}
  .emb-home .eh-livr-visual{display:none}
}
@media (max-width:600px){
  .emb-home .eh-slider{height:64vh;min-height:460px}
  .emb-home .eh-slide h1{font-size:32px;letter-spacing:-1px}
  .emb-home .eh-dots{bottom:200px}
  .emb-home .eh-quicknav{grid-template-columns:repeat(2,1fr);padding:0 18px}
}
