
:root{
  --hf-navy:#071b51;
  --hf-navy2:#061643;
  --hf-blue:#1358e8;
  --hf-green:#08a83e;
  --hf-bg:#ffffff;
  --hf-ink:#08183d;
  --hf-muted:#62708a;
  --hf-line:#e1e8f2;
  --hf-soft:#f6f8fc;
}
*{box-sizing:border-box}
html,body{margin:0;background:#fff!important}
body.emb-topbar-pad{padding-top:70px!important}
.hf{font-family:Inter,Arial,sans-serif;color:var(--hf-ink);background:#fff;min-height:100vh}
.hf a{text-decoration:none}.hf button{font:inherit}
.hf-shell{width:min(1180px,calc(100% - 40px));margin:auto}

/* HERO */
.hf-hero{
  position:relative;width:min(1200px,calc(100% - 32px));height:355px;margin:12px auto 0;
  border-radius:18px;overflow:hidden;background:#f4f6f9;border:1px solid #edf0f5
}
.hf-hero-bg{
  position:absolute;inset:0;background:
  linear-gradient(90deg,rgba(255,255,255,.99) 0%,rgba(255,255,255,.92) 35%,rgba(255,255,255,.18) 58%,rgba(255,255,255,0) 100%),
  url('/img/home/food-hero.jpg') center right/cover no-repeat
}
.hf-hero-copy{position:absolute;left:56px;top:48px;z-index:2;max-width:520px}
.hf-kicker{font-size:9px;font-weight:900;letter-spacing:1.4px;color:var(--hf-blue)}
.hf-hero h1{font:800 37px/1.08 Inter,Arial,sans-serif;letter-spacing:-1.2px;margin:8px 0 18px;color:var(--hf-navy)}
.hf-hero h1 em{font-style:normal;color:var(--hf-blue)}
.hf-hero p{font-size:14px;line-height:1.55;color:#1e3159;margin:0}
.hf-hero-actions{display:flex;gap:12px;margin-top:22px}
.hf-btn{height:46px;border-radius:10px;padding:0 18px;display:inline-flex;align-items:center;justify-content:center;font-size:11px;font-weight:900}
.hf-btn.primary{background:var(--hf-navy);color:#fff!important}
.hf-btn.outline{border:1px solid var(--hf-blue);color:var(--hf-blue)!important;background:#fff}
.hf-arrow{
  position:absolute;top:50%;transform:translateY(-50%);z-index:4;width:40px;height:40px;border-radius:50%;
  border:1px solid var(--hf-line);background:#fff;color:var(--hf-navy);font-size:27px;box-shadow:0 8px 20px rgba(8,24,61,.09)
}
.hf-arrow.left{left:-1px}.hf-arrow.right{right:-1px}
.hf-dots{position:absolute;left:50%;bottom:10px;transform:translateX(-50%);display:flex;gap:5px;z-index:3}
.hf-dots i{width:8px;height:8px;border-radius:50%;background:#d5dce7}.hf-dots i.on{background:var(--hf-blue)}

/* TICKER */
.hf-ticker{margin-top:10px;height:45px;background:linear-gradient(90deg,#06184d,#0b2c77,#06184d);overflow:hidden;color:#fff}
.hf-ticker-track{height:100%;display:flex;align-items:center;gap:18px;width:max-content;white-space:nowrap;animation:hfTicker 28s linear infinite;font-size:11px;font-weight:800}
.hf-ticker-track strong{color:#ffd71b}.hf-ticker-track i{font-style:normal;opacity:.6}
@keyframes hfTicker{from{transform:translateX(0)}to{transform:translateX(-33.333%)}}

/* ORDER BLOCK */
.hf-order{display:grid;grid-template-columns:1.45fr .78fr .78fr;gap:28px;align-items:stretch;padding:28px 0 24px}
.hf-order-copy{padding:8px 4px}
.hf-overline{display:block;font-size:9px;font-weight:900;color:var(--hf-blue);letter-spacing:.5px;margin-bottom:8px}
.hf-order h2{font:800 29px/1.08 Inter,Arial,sans-serif;letter-spacing:-.8px;margin:0;color:var(--hf-navy)}
.hf-order-copy>p{font-size:11px;line-height:1.65;color:#2c3f65;margin:15px 0 18px;max-width:500px}
.hf-mini-benefits{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.hf-mini-benefits>div{min-height:58px;border:1px solid var(--hf-line);border-radius:10px;padding:10px;display:flex;gap:8px;align-items:center;background:#fff}
.hf-mini-benefits>div>span{font-size:21px}
.hf-mini-benefits p{margin:0}.hf-mini-benefits b,.hf-mini-benefits small{display:block}.hf-mini-benefits b{font-size:7.5px}.hf-mini-benefits small{font-size:6.5px;color:var(--hf-muted);margin-top:2px}

.hf-contact-card{border-radius:13px;border:1px solid var(--hf-line);min-height:198px;padding:18px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;background:#fff}
.hf-contact-card.whatsapp{background:linear-gradient(180deg,#f8fffa,#f4faf6);border-color:#d4eadb}
.hf-contact-card.call{background:linear-gradient(180deg,#fafcff,#f5f8ff);border-color:#d7e2ff}
.hf-contact-icon{font-size:42px;line-height:1}
.hf-contact-card.whatsapp .hf-contact-icon{color:var(--hf-green)}.hf-contact-card.call .hf-contact-icon{color:var(--hf-blue)}
.hf-contact-card h3{font-size:14px;line-height:1.22;margin:12px 0 4px;color:var(--hf-navy)}
.hf-contact-card p{margin:0;color:var(--hf-muted);font-size:9px}
.hf-contact-card strong{color:var(--hf-blue);font-size:11px;margin-top:4px}
.hf-contact-card>b{margin-top:auto;width:100%;height:38px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:9px}
.hf-contact-card.whatsapp>b{background:var(--hf-green);color:#fff}.hf-contact-card.call>b{background:var(--hf-blue);color:#fff}

/* MENU */
.hf-menu{padding:0 0 22px}
.hf-section-head{display:flex;align-items:center;justify-content:space-between;margin:3px 0 12px}
.hf-section-head h2{font:800 20px Inter,Arial,sans-serif;margin:0;color:var(--hf-navy)}
.hf-section-head>a{border:1px solid var(--hf-line);border-radius:9px;padding:10px 13px;color:var(--hf-ink)!important;font-size:8px;font-weight:900;background:#fff}
.hf-grid{display:grid;gap:10px}.hf-grid-5{grid-template-columns:repeat(5,minmax(0,1fr))}.hf-grid-6{grid-template-columns:repeat(6,minmax(0,1fr));margin-top:12px}
.hf-food-card{border:1px solid var(--hf-line);border-radius:11px;overflow:hidden;background:#fff;box-shadow:0 5px 14px rgba(8,24,61,.04)}
.hf-food-photo{height:112px;overflow:hidden;background:#edf1f5}.hf-grid-6 .hf-food-photo{height:94px}
.hf-food-photo img{width:100%;height:100%;object-fit:cover;display:block;transition:.3s}
.hf-food-card:hover .hf-food-photo img{transform:scale(1.035)}
.hf-food-body{padding:9px}
.hf-food-body h3{font-size:10px;line-height:1.18;margin:0;color:var(--hf-navy);min-height:24px}
.hf-portion{display:block;margin-top:5px;color:#56637b;font-size:7.5px}
.hf-food-price{display:block;margin-top:5px;color:var(--hf-blue);font-size:10px}
.hf-add{width:100%;height:28px;margin-top:8px;border:0;border-radius:5px;background:var(--hf-navy);color:#fff!important;display:flex;align-items:center;justify-content:center;font-size:7.5px;font-weight:900;cursor:pointer}
.hf-add.added{background:#177044}
.hf-food-actions{display:grid;grid-template-columns:1fr 1.08fr;gap:5px;margin-top:6px}
.hf-food-actions a{height:26px;border-radius:5px;display:flex;align-items:center;justify-content:center;font-size:6.8px;font-weight:900}
.hf-food-actions .call{border:1px solid #6c96ff;color:#1559e8!important;background:#fff}
.hf-food-actions .wa{border:1px solid #5ac778;color:#078b32!important;background:#fff}

.hf-empty{text-align:center;border:1px solid var(--hf-line);border-radius:12px;padding:42px;background:#fff}.hf-empty>span{font-size:40px}.hf-empty h3{margin:8px 0 4px}.hf-empty p{margin:0;color:var(--hf-muted);font-size:10px}

/* TRUST */
.hf-trust{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--hf-line);border-radius:12px;background:#fff;margin:2px 0 12px;padding:12px 10px}
.hf-trust>div{display:flex;gap:9px;align-items:center;padding:5px 15px;border-right:1px solid var(--hf-line)}
.hf-trust>div:last-child{border-right:0}
.hf-trust>div>span{width:35px;height:35px;border-radius:50%;background:#f2f6fd;color:var(--hf-blue);display:grid;place-items:center;font-size:18px;flex:0 0 auto}
.hf-trust p{margin:0}.hf-trust b,.hf-trust small{display:block}.hf-trust b{font-size:8px}.hf-trust small{font-size:7px;color:var(--hf-muted);margin-top:3px;line-height:1.4}

/* HELP */
.hf-help{min-height:84px;background:linear-gradient(100deg,#06194e,#0a2d7c);border-radius:12px;margin-bottom:22px;padding:12px 18px;display:grid;grid-template-columns:1fr 230px 230px;gap:20px;align-items:center;color:#fff}
.hf-help-copy{display:flex;gap:13px;align-items:center}.hf-help-copy>span{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.12);font-size:26px}
.hf-help h3{margin:0;color:#fff!important;font-size:15px}.hf-help p{margin:4px 0;color:#fff!important;font-size:9px;opacity:.8}.hf-help-copy b{color:#ffd719!important;font-size:9px}
.hf-help-wa,.hf-help-call{height:54px;border-radius:9px;display:flex;align-items:center;justify-content:center;gap:10px;font-weight:900}
.hf-help-wa{background:#08a83e;color:#fff!important;font-size:14px}.hf-help-call{background:#fff;color:var(--hf-blue)!important;font-size:17px}
.hf-help-call span b,.hf-help-call span small{display:block}.hf-help-call span b{font-size:13px}.hf-help-call span small{font-size:10px;margin-top:2px}

/* mobile order + toast */
.hf-mobile-order{display:none}
.hf-toast{position:fixed;left:50%;bottom:96px;transform:translate(-50%,20px);opacity:0;pointer-events:none;z-index:2000;background:var(--hf-navy);color:#fff;padding:10px 15px;border-radius:10px;font-size:9px;font-weight:900;box-shadow:0 12px 25px rgba(8,24,61,.2);transition:.2s}
.hf-toast.show{opacity:1;transform:translate(-50%,0)}

@media(max-width:900px){
  body.emb-topbar-pad{padding-top:62px!important;padding-bottom:74px!important}
  .hf-shell{width:calc(100% - 20px)}
  .hf-hero{width:calc(100% - 12px);height:385px;margin-top:7px;border-radius:15px}
  .hf-hero-bg{background:
    linear-gradient(180deg,rgba(255,255,255,.15) 0%,rgba(255,255,255,.32) 35%,rgba(255,255,255,.96) 66%,#fff 100%),
    url('/img/home/food-hero.jpg') center top/cover no-repeat}
  .hf-hero-copy{left:20px;right:20px;top:auto;bottom:35px;max-width:none}
  .hf-kicker{font-size:7px}
  .hf-hero h1{font-size:31px;line-height:1.04;margin:5px 0 10px}
  .hf-hero p{font-size:11px;line-height:1.45}
  .hf-hero-actions{margin-top:14px;gap:7px}.hf-btn{height:40px;padding:0 12px;font-size:8px}
  .hf-arrow{width:34px;height:34px;font-size:22px}.hf-dots{bottom:10px}

  .hf-ticker{height:39px}.hf-ticker-track{font-size:9px;gap:13px}

  .hf-order{grid-template-columns:1fr 1fr;gap:10px;padding:20px 0 18px}
  .hf-order-copy{grid-column:1/-1}
  .hf-order h2{font-size:25px}.hf-order-copy>p{font-size:10px;margin:11px 0 14px}
  .hf-mini-benefits{gap:6px}.hf-mini-benefits>div{padding:8px 6px}.hf-mini-benefits>div>span{font-size:17px}.hf-mini-benefits b{font-size:6.5px}.hf-mini-benefits small{font-size:5.5px}
  .hf-contact-card{min-height:164px;padding:13px}.hf-contact-icon{font-size:33px}.hf-contact-card h3{font-size:11px}.hf-contact-card strong{font-size:9px}.hf-contact-card>b{height:34px;font-size:7px}

  .hf-section-head h2{font-size:17px}.hf-section-head>a{font-size:7px;padding:8px}
  .hf-grid-5,.hf-grid-6{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:8px}
  .hf-food-photo,.hf-grid-6 .hf-food-photo{height:120px}
  .hf-food-body{padding:8px}.hf-food-body h3{font-size:10px}.hf-portion{font-size:7px}.hf-food-price{font-size:10px}
  .hf-add{height:31px;font-size:7.5px}.hf-food-actions a{height:29px;font-size:7px}

  .hf-trust{grid-template-columns:1fr 1fr;padding:7px}.hf-trust>div{border-right:0;border-bottom:1px solid var(--hf-line);padding:9px 6px}.hf-trust>div:nth-last-child(-n+2){border-bottom:0}.hf-trust b{font-size:7.5px}.hf-trust small{font-size:6.5px}

  .hf-help{grid-template-columns:1fr 1fr;gap:8px;padding:12px;margin-bottom:70px}.hf-help-copy{grid-column:1/-1}.hf-help-copy>span{width:42px;height:42px;font-size:21px}.hf-help h3{font-size:12px}.hf-help-wa,.hf-help-call{height:46px;font-size:11px}.hf-help-call span b{font-size:10px}.hf-help-call span small{font-size:8px}

  .hf-mobile-order{position:fixed;display:grid;grid-template-columns:1fr 1fr;gap:7px;left:10px;right:10px;bottom:8px;z-index:1500;padding:7px;background:rgba(255,255,255,.97);border:1px solid var(--hf-line);border-radius:16px;box-shadow:0 12px 30px rgba(8,24,61,.17);backdrop-filter:blur(14px)}
  .hf-mobile-order a{height:42px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:9px;font-weight:900}.hf-mobile-order a:first-child{background:var(--hf-green);color:#fff!important}.hf-mobile-order a:last-child{background:var(--hf-blue);color:#fff!important}
}

@media(max-width:380px){
  .hf-hero h1{font-size:28px}.hf-food-photo,.hf-grid-6 .hf-food-photo{height:108px}.hf-mini-benefits{grid-template-columns:1fr}
}


/* =========================================================
   HOME FOOD — LISIBILITÉ / TICKER / PANIER V3
   ========================================================= */

/* Ticker: force le contraste même avec theme-clair.js */
.hf-ticker{
  min-height:52px !important;
  height:52px !important;
  background:linear-gradient(90deg,#06184d 0%,#0b2c77 50%,#06184d 100%) !important;
  border-top:1px solid rgba(174,203,236,.18) !important;
  border-bottom:1px solid rgba(174,203,236,.18) !important;
}
.hf-ticker,
.hf-ticker *{
  color:#fff !important;
  opacity:1 !important;
  text-shadow:none !important;
}
.hf-ticker-track{
  min-height:52px !important;
  font-size:13px !important;
  font-weight:850 !important;
  letter-spacing:.01em !important;
  gap:22px !important;
}
.hf-ticker-track strong{
  color:#ffd91a !important;
  font-size:13px !important;
  font-weight:950 !important;
}
.hf-ticker-track i{
  color:#AECBEC !important;
  opacity:.9 !important;
}

/* Commande rapide */
.hf-overline{
  font-size:11px !important;
}
.hf-order h2{
  font-size:34px !important;
  line-height:1.07 !important;
}
.hf-order-copy>p{
  font-size:14px !important;
  line-height:1.65 !important;
}
.hf-mini-benefits>div{
  min-height:72px !important;
  padding:12px 13px !important;
}
.hf-mini-benefits>div>span{
  font-size:25px !important;
}
.hf-mini-benefits b{
  font-size:10px !important;
  line-height:1.25 !important;
}
.hf-mini-benefits small{
  font-size:9px !important;
  line-height:1.3 !important;
}

/* Cartes WhatsApp / Appel */
.hf-contact-card{
  min-height:224px !important;
  padding:20px !important;
}
.hf-contact-icon{
  font-size:48px !important;
}
.hf-contact-card h3{
  font-size:18px !important;
  line-height:1.22 !important;
}
.hf-contact-card p{
  font-size:11px !important;
}
.hf-contact-card strong{
  font-size:14px !important;
  letter-spacing:.01em !important;
}
.hf-contact-card>b{
  height:44px !important;
  font-size:11px !important;
  border-radius:10px !important;
}

/* Section plats */
.hf-section-head{
  margin-top:10px !important;
  margin-bottom:16px !important;
}
.hf-section-head h2{
  font-size:25px !important;
}
.hf-section-head>a{
  font-size:10px !important;
  padding:11px 14px !important;
}

/* Les cartes gagnent en présence sans casser la grille */
.hf-food-card{
  border-radius:14px !important;
  box-shadow:0 8px 20px rgba(8,24,61,.065) !important;
}
.hf-food-photo,
.hf-grid-6 .hf-food-photo{
  height:145px !important;
}
.hf-food-body{
  padding:13px !important;
}
.hf-food-body h3{
  font-size:14px !important;
  line-height:1.22 !important;
  min-height:34px !important;
  font-weight:850 !important;
  letter-spacing:-.12px !important;
}
.hf-portion{
  margin-top:7px !important;
  font-size:10px !important;
  line-height:1.2 !important;
}
.hf-food-price{
  margin-top:7px !important;
  font-size:15px !important;
  font-weight:950 !important;
}

/* Bouton panier — vraie icône et label très lisible */
.hf-add{
  min-height:41px !important;
  height:41px !important;
  margin-top:11px !important;
  border-radius:9px !important;
  gap:8px !important;
  font-size:11.5px !important;
  font-weight:950 !important;
  background:linear-gradient(180deg,#0a235e,#071a45) !important;
  color:#fff !important;
  box-shadow:0 7px 15px rgba(7,26,69,.14) !important;
}
.hf-add:hover{
  background:#102f74 !important;
  transform:translateY(-1px);
}
.hf-add.added{
  background:#147a3e !important;
}
.hf-cart-icon{
  width:18px !important;
  height:18px !important;
  display:block !important;
  fill:none !important;
  stroke:currentColor !important;
  stroke-width:1.9 !important;
  stroke-linecap:round !important;
  stroke-linejoin:round !important;
  flex:0 0 auto !important;
}
.hf-add span{
  color:#fff !important;
  font-size:inherit !important;
  font-weight:inherit !important;
}

/* Appeler + WhatsApp */
.hf-food-actions{
  gap:7px !important;
  margin-top:8px !important;
}
.hf-food-actions a{
  min-height:36px !important;
  height:36px !important;
  border-radius:8px !important;
  gap:5px !important;
  font-size:9.5px !important;
  font-weight:900 !important;
}
.hf-food-actions .call{
  border:1.5px solid #1761e8 !important;
  color:#1761e8 !important;
  background:#fff !important;
}
.hf-food-actions .wa{
  border:1.5px solid #1aaf4a !important;
  color:#0a9239 !important;
  background:#f8fff9 !important;
}
.hf-call-ico{
  color:#1761e8 !important;
  font-size:12px !important;
}
.hf-wa-ico{
  width:12px !important;
  height:12px !important;
  display:inline-grid !important;
  place-items:center !important;
  border-radius:50% !important;
  background:#17aa48 !important;
  color:#fff !important;
  font-size:0 !important;
}
.hf-wa-ico::after{
  content:"";
  width:5px;
  height:5px;
  border:1.5px solid #fff;
  border-radius:50%;
}

/* Réassurance */
.hf-trust b{
  font-size:10px !important;
}
.hf-trust small{
  font-size:8.5px !important;
}

/* Empêche theme-clair de ternir les zones marines */
.hf-btn.primary,
.hf-add,
.hf-ticker,
.hf-help{
  background-color:#071a45 !important;
}
.hf-btn.primary,
.hf-btn.primary *,
.hf-add,
.hf-add *,
.hf-ticker,
.hf-ticker *,
.hf-help,
.hf-help *{
  color:#fff !important;
}
.hf-ticker strong,
.hf-help-copy b{
  color:#ffd91a !important;
}

/* Mobile */
@media(max-width:900px){
  .hf-ticker,
  .hf-ticker-track{
    min-height:46px !important;
    height:46px !important;
  }
  .hf-ticker-track{
    font-size:11px !important;
    gap:16px !important;
  }
  .hf-ticker-track strong{
    font-size:11px !important;
  }

  .hf-overline{font-size:9.5px !important}
  .hf-order h2{font-size:28px !important}
  .hf-order-copy>p{font-size:12px !important}

  .hf-mini-benefits b{font-size:8.5px !important}
  .hf-mini-benefits small{font-size:7.5px !important}

  .hf-contact-card{min-height:182px !important}
  .hf-contact-icon{font-size:38px !important}
  .hf-contact-card h3{font-size:13px !important}
  .hf-contact-card strong{font-size:10px !important}

  .hf-section-head h2{font-size:20px !important}

  .hf-food-photo,
  .hf-grid-6 .hf-food-photo{
    height:142px !important;
  }
  .hf-food-body{padding:10px !important}
  .hf-food-body h3{
    font-size:12px !important;
    min-height:30px !important;
  }
  .hf-portion{font-size:8.5px !important}
  .hf-food-price{font-size:13px !important}

  .hf-add{
    height:39px !important;
    min-height:39px !important;
    font-size:9.5px !important;
    gap:6px !important;
  }
  .hf-cart-icon{width:16px !important;height:16px !important}
  .hf-food-actions a{
    height:34px !important;
    min-height:34px !important;
    font-size:8px !important;
  }
}


/* =========================================================
   HERO + BAS DE PAGE PREMIUM V4
   ========================================================= */

/* HERO */
.hf-hero.hf-hero-premium{
  width:min(1320px,calc(100% - 28px)) !important;
  height:430px !important;
  margin:14px auto 0 !important;
  border-radius:22px !important;
  overflow:hidden !important;
  position:relative !important;
  border:1px solid rgba(15,30,48,.08) !important;
  box-shadow:0 16px 42px rgba(15,30,48,.10) !important;
  background:#071a45 !important;
}
.hf-hero-premium .hf-hero-media{
  position:absolute !important;
  inset:0 !important;
  background:url('/img/home/food-hero.jpg') center right/cover no-repeat !important;
}
.hf-hero-premium .hf-hero-shade{
  position:absolute !important;
  inset:0 !important;
  background:
    linear-gradient(90deg,
      #06184d 0%,
      #06184d 24%,
      rgba(6,24,77,.95) 34%,
      rgba(6,24,77,.72) 44%,
      rgba(6,24,77,.14) 62%,
      rgba(6,24,77,0) 100%) !important;
}
.hf-hero-premium .hf-hero-copy{
  left:72px !important;
  top:50% !important;
  bottom:auto !important;
  transform:translateY(-50%) !important;
  max-width:560px !important;
  z-index:4 !important;
}
.hf-hero-pills{
  display:flex !important;
  align-items:center !important;
  gap:8px !important;
  margin-bottom:17px !important;
}
.hf-hero-pills span{
  padding:7px 12px !important;
  border-radius:999px !important;
  background:rgba(15,62,128,.55) !important;
  border:1px solid rgba(174,203,236,.16) !important;
  color:#fff !important;
  font-size:11px !important;
  font-weight:900 !important;
  letter-spacing:.3px !important;
}
.hf-hero-pills i{
  color:#AECBEC !important;
  font-style:normal !important;
}
.hf-hero-premium h1{
  margin:0 0 22px !important;
  font:800 44px/1.07 Inter,Arial,sans-serif !important;
  letter-spacing:-1.5px !important;
  color:#fff !important;
}
.hf-hero-premium h1 em{
  color:#ffd91a !important;
  font-style:normal !important;
}
.hf-hero-premium h1 span{
  color:#fff !important;
}
.hf-hero-premium p{
  margin:0 !important;
  color:#fff !important;
  font-size:17px !important;
  line-height:1.55 !important;
  opacity:.95 !important;
}
.hf-hero-premium .hf-hero-actions{
  margin-top:28px !important;
  gap:16px !important;
}
.hf-hero-premium .hf-btn{
  min-height:58px !important;
  height:58px !important;
  padding:0 24px !important;
  border-radius:12px !important;
  font-size:14px !important;
  font-weight:950 !important;
}
.hf-hero-premium .hf-btn.primary{
  background:#fff !important;
  color:#071a45 !important;
  box-shadow:0 10px 24px rgba(0,0,0,.13) !important;
}
.hf-hero-premium .hf-btn.primary *{
  color:#071a45 !important;
}
.hf-hero-premium .hf-btn.call{
  background:#1761e8 !important;
  border:1px solid #1761e8 !important;
  color:#fff !important;
  box-shadow:0 10px 24px rgba(23,97,232,.25) !important;
}
.hf-hero-premium .hf-btn.call *{
  color:#fff !important;
}
.hf-btn-ico{
  font-size:18px !important;
  margin-right:7px !important;
}
.hf-hero-premium .hf-arrow{
  width:48px !important;
  height:48px !important;
  font-size:30px !important;
  color:#071a45 !important;
  background:#fff !important;
  border:0 !important;
  box-shadow:0 10px 30px rgba(0,0,0,.18) !important;
}
.hf-hero-premium .hf-arrow.left{left:20px !important}
.hf-hero-premium .hf-arrow.right{right:20px !important}
.hf-hero-premium .hf-dots{
  bottom:18px !important;
  gap:8px !important;
}
.hf-hero-premium .hf-dots i{
  width:10px !important;
  height:10px !important;
  background:#fff !important;
  opacity:.8 !important;
}
.hf-hero-premium .hf-dots i.on{
  background:#1761e8 !important;
  opacity:1 !important;
}

/* BANDEAU */
.hf-ticker{
  margin-top:14px !important;
  height:54px !important;
  background:linear-gradient(90deg,#06184d,#0b2d78,#06184d) !important;
}
.hf-ticker-track{
  min-height:54px !important;
  font-size:13px !important;
}
.hf-ticker-track span,
.hf-ticker-track strong{
  color:#fff !important;
}
.hf-ticker-track strong{
  color:#ffd91a !important;
}

/* TRUST */
.hf-trust.hf-trust-premium{
  margin:24px auto 18px !important;
  padding:22px 24px !important;
  border-radius:18px !important;
  border:1px solid #dce5f0 !important;
  box-shadow:0 10px 26px rgba(8,24,61,.045) !important;
  background:#fff !important;
}
.hf-trust-premium>div{
  padding:0 28px !important;
  min-height:72px !important;
  gap:16px !important;
}
.hf-trust-premium .hf-trust-icon{
  width:54px !important;
  height:54px !important;
  border-radius:50% !important;
  background:#eef4ff !important;
  color:#1761e8 !important;
  font-size:26px !important;
  box-shadow:0 7px 16px rgba(23,97,232,.10) !important;
}
.hf-trust-premium b{
  font-size:13px !important;
  color:#071a45 !important;
}
.hf-trust-premium small{
  font-size:11px !important;
  line-height:1.5 !important;
  color:#52617a !important;
}
.hf-trust-premium strong{
  color:#071a45 !important;
  font-weight:900 !important;
}

/* HELP PREMIUM */
.hf-help.hf-help-premium{
  min-height:160px !important;
  margin:0 auto 32px !important;
  padding:18px 22px !important;
  grid-template-columns:180px 1fr 315px 315px !important;
  gap:22px !important;
  align-items:center !important;
  border-radius:20px !important;
  background:
    radial-gradient(circle at 12% 30%,rgba(45,94,180,.26),transparent 26%),
    linear-gradient(100deg,#06184d,#0b2d78 55%,#06184d) !important;
  box-shadow:0 18px 38px rgba(6,24,77,.18) !important;
  overflow:hidden !important;
}
.hf-help-rider{
  height:140px !important;
  display:flex !important;
  align-items:flex-end !important;
  justify-content:center !important;
}
.hf-help-rider img{
  width:160px !important;
  height:140px !important;
  object-fit:cover !important;
  object-position:center !important;
  border-radius:22px !important;
  border:3px solid rgba(255,255,255,.2) !important;
  box-shadow:0 12px 30px rgba(0,0,0,.24) !important;
}
.hf-help-premium .hf-help-copy{
  display:block !important;
}
.hf-help-premium .hf-help-copy h3{
  margin:0 !important;
  color:#fff !important;
  font-size:24px !important;
  line-height:1.15 !important;
}
.hf-help-premium .hf-help-copy p{
  margin:8px 0 6px !important;
  color:#fff !important;
  font-size:15px !important;
  opacity:.9 !important;
}
.hf-help-premium .hf-help-copy b{
  color:#ffd91a !important;
  font-size:15px !important;
}
.hf-help-premium .hf-help-wa,
.hf-help-premium .hf-help-call{
  min-height:88px !important;
  height:88px !important;
  border-radius:14px !important;
  padding:0 24px !important;
  justify-content:flex-start !important;
  gap:16px !important;
  box-shadow:0 12px 30px rgba(0,0,0,.16) !important;
}
.hf-help-premium .hf-help-wa{
  background:#10ad42 !important;
  color:#fff !important;
}
.hf-help-premium .hf-help-call{
  background:#fff !important;
  color:#1761e8 !important;
}
.hf-help-wa-icon,
.hf-help-call-icon{
  width:52px !important;
  height:52px !important;
  display:grid !important;
  place-items:center !important;
  border-radius:50% !important;
  font-size:28px !important;
}
.hf-help-wa-icon{
  border:3px solid #fff !important;
  color:#fff !important;
}
.hf-help-call-icon{
  background:#eef4ff !important;
  color:#1761e8 !important;
}
.hf-help-premium .hf-help-wa span b,
.hf-help-premium .hf-help-wa span small,
.hf-help-premium .hf-help-call span b,
.hf-help-premium .hf-help-call span small{
  display:block !important;
}
.hf-help-premium .hf-help-wa span b{
  color:#fff !important;
  font-size:20px !important;
}
.hf-help-premium .hf-help-wa span small{
  color:#fff !important;
  font-size:11px !important;
  margin-top:4px !important;
  opacity:.9 !important;
}
.hf-help-premium .hf-help-call span b{
  color:#1761e8 !important;
  font-size:17px !important;
}
.hf-help-premium .hf-help-call span small{
  color:#1761e8 !important;
  font-size:16px !important;
  margin-top:3px !important;
  font-weight:900 !important;
}

/* MOBILE */
@media(max-width:900px){
  .hf-hero.hf-hero-premium{
    width:calc(100% - 12px) !important;
    height:500px !important;
    border-radius:16px !important;
  }
  .hf-hero-premium .hf-hero-media{
    background-position:center top !important;
  }
  .hf-hero-premium .hf-hero-shade{
    background:
      linear-gradient(180deg,
        rgba(6,24,77,.06) 0%,
        rgba(6,24,77,.20) 32%,
        rgba(6,24,77,.92) 62%,
        #06184d 100%) !important;
  }
  .hf-hero-premium .hf-hero-copy{
    left:20px !important;
    right:20px !important;
    top:auto !important;
    bottom:48px !important;
    transform:none !important;
  }
  .hf-hero-pills{margin-bottom:11px !important}
  .hf-hero-pills span{font-size:8px !important;padding:5px 8px !important}
  .hf-hero-premium h1{
    font-size:34px !important;
    margin-bottom:13px !important;
  }
  .hf-hero-premium p{
    font-size:12px !important;
  }
  .hf-hero-premium .hf-hero-actions{
    margin-top:17px !important;
    gap:7px !important;
  }
  .hf-hero-premium .hf-btn{
    height:43px !important;
    min-height:43px !important;
    padding:0 11px !important;
    font-size:9px !important;
  }
  .hf-hero-premium .hf-arrow{
    width:38px !important;
    height:38px !important;
    font-size:24px !important;
  }
  .hf-hero-premium .hf-arrow.left{left:8px !important}
  .hf-hero-premium .hf-arrow.right{right:8px !important}

  .hf-trust.hf-trust-premium{
    grid-template-columns:1fr 1fr !important;
    padding:10px !important;
  }
  .hf-trust-premium>div{
    min-height:85px !important;
    padding:10px !important;
    gap:9px !important;
    border-bottom:1px solid #e4eaf2 !important;
  }
  .hf-trust-premium .hf-trust-icon{
    width:42px !important;
    height:42px !important;
    font-size:20px !important;
  }
  .hf-trust-premium b{font-size:9px !important}
  .hf-trust-premium small{font-size:7.5px !important}

  .hf-help.hf-help-premium{
    min-height:0 !important;
    grid-template-columns:86px 1fr !important;
    gap:12px !important;
    padding:14px !important;
    margin-bottom:82px !important;
  }
  .hf-help-rider{
    height:92px !important;
  }
  .hf-help-rider img{
    width:84px !important;
    height:92px !important;
    border-radius:16px !important;
  }
  .hf-help-premium .hf-help-copy h3{font-size:16px !important}
  .hf-help-premium .hf-help-copy p{font-size:10px !important}
  .hf-help-premium .hf-help-copy b{font-size:10px !important}

  .hf-help-premium .hf-help-wa,
  .hf-help-premium .hf-help-call{
    min-height:58px !important;
    height:58px !important;
    padding:0 12px !important;
    gap:9px !important;
  }
  .hf-help-premium .hf-help-wa{
    grid-column:1/2 !important;
  }
  .hf-help-premium .hf-help-call{
    grid-column:2/3 !important;
  }
  .hf-help-wa-icon,.hf-help-call-icon{
    width:34px !important;
    height:34px !important;
    font-size:18px !important;
  }
  .hf-help-premium .hf-help-wa span b{font-size:12px !important}
  .hf-help-premium .hf-help-wa span small{font-size:7px !important}
  .hf-help-premium .hf-help-call span b{font-size:10px !important}
  .hf-help-premium .hf-help-call span small{font-size:9px !important}
}


/* =========================================================
   HERO PLEINE LARGEUR + CARROUSEL ANIMÉ V5
   ========================================================= */

/* Vrai bord-à-bord sous la navbar */
.hf-hero.hf-hero-premium.hf-hero-full{
  width:100vw !important;
  max-width:none !important;
  height:500px !important;
  margin:0 0 0 calc(50% - 50vw) !important;
  border-radius:0 !important;
  border-left:0 !important;
  border-right:0 !important;
  box-shadow:none !important;
  overflow:hidden !important;
  background:#06184d !important;
}

/* Contenu aligné sur la même grille que la navbar */
.hf-hero-inner{
  position:relative !important;
  z-index:5 !important;
  width:min(1280px,calc(100% - 80px)) !important;
  height:100% !important;
  margin:0 auto !important;
}
.hf-hero-full .hf-hero-copy{
  position:absolute !important;
  left:0 !important;
  top:50% !important;
  transform:translateY(-50%) !important;
  max-width:600px !important;
}

/* Couches de slides */
.hf-slides,
.hf-slide{
  position:absolute !important;
  inset:0 !important;
}
.hf-slide{
  opacity:0 !important;
  background-size:cover !important;
  background-position:center right !important;
  transform:scale(1.05) !important;
  transition:opacity 1.05s ease,transform 6.5s ease !important;
  will-change:opacity,transform !important;
}
.hf-slide.is-active{
  opacity:1 !important;
  transform:scale(1.0) !important;
  z-index:1 !important;
}

/* Voile marine beaucoup plus progressif */
.hf-hero-full .hf-hero-shade{
  z-index:2 !important;
  background:
    linear-gradient(90deg,
      #05163f 0%,
      #06184d 18%,
      rgba(6,24,77,.96) 31%,
      rgba(6,24,77,.78) 42%,
      rgba(6,24,77,.34) 57%,
      rgba(6,24,77,.08) 72%,
      rgba(6,24,77,0) 100%) !important;
}

/* halos premium animés */
.hf-hero-glow{
  position:absolute !important;
  z-index:3 !important;
  border-radius:50% !important;
  filter:blur(80px) !important;
  pointer-events:none !important;
  opacity:.45 !important;
}
.hf-hero-glow.glow-one{
  width:300px !important;
  height:300px !important;
  left:18% !important;
  top:8% !important;
  background:rgba(93,140,205,.32) !important;
  animation:hfGlowOne 8s ease-in-out infinite alternate !important;
}
.hf-hero-glow.glow-two{
  width:240px !important;
  height:240px !important;
  left:35% !important;
  bottom:-80px !important;
  background:rgba(33,91,170,.28) !important;
  animation:hfGlowTwo 10s ease-in-out infinite alternate !important;
}
@keyframes hfGlowOne{
  from{transform:translate3d(-10px,-8px,0) scale(.95)}
  to{transform:translate3d(30px,20px,0) scale(1.12)}
}
@keyframes hfGlowTwo{
  from{transform:translate3d(0,10px,0)}
  to{transform:translate3d(45px,-18px,0)}
}

/* Animation texte à chaque changement */
.hf-copy-enter{
  animation:hfCopyEnter .65s cubic-bezier(.2,.75,.25,1) both !important;
}
@keyframes hfCopyEnter{
  from{opacity:.25;transform:translateY(-46%) translateX(-15px)}
  to{opacity:1;transform:translateY(-50%) translateX(0)}
}

/* flèches davantage intégrées */
.hf-hero-full .hf-arrow{
  z-index:8 !important;
  width:52px !important;
  height:52px !important;
  background:rgba(255,255,255,.96) !important;
  transition:transform .18s ease,box-shadow .18s ease !important;
}
.hf-hero-full .hf-arrow:hover{
  transform:translateY(-50%) scale(1.06) !important;
  box-shadow:0 14px 32px rgba(0,0,0,.22) !important;
}
.hf-hero-full .hf-arrow.left{left:28px !important}
.hf-hero-full .hf-arrow.right{right:28px !important}

/* points cliquables */
.hf-hero-full .hf-dots{
  z-index:9 !important;
  bottom:22px !important;
}
.hf-hero-full .hf-dots button{
  width:10px !important;
  height:10px !important;
  padding:0 !important;
  border:0 !important;
  border-radius:50% !important;
  background:rgba(255,255,255,.72) !important;
  cursor:pointer !important;
  transition:width .2s ease,background .2s ease,border-radius .2s ease !important;
}
.hf-hero-full .hf-dots button.on{
  width:28px !important;
  border-radius:999px !important;
  background:#1761e8 !important;
}

/* Hero text sizing for full-width composition */
.hf-hero-full h1{
  font-size:50px !important;
  max-width:610px !important;
}
.hf-hero-full p{
  font-size:18px !important;
}
.hf-hero-full .hf-btn{
  min-height:60px !important;
  height:60px !important;
  font-size:14px !important;
}

/* Bandeau colle directement au hero */
.hf-hero-full + .hf-ticker{
  margin-top:0 !important;
}

/* Mobile */
@media(max-width:900px){
  .hf-hero.hf-hero-premium.hf-hero-full{
    width:100vw !important;
    height:540px !important;
    margin-left:calc(50% - 50vw) !important;
    border-radius:0 !important;
  }
  .hf-hero-inner{
    width:calc(100% - 36px) !important;
  }
  .hf-slide{
    background-position:center top !important;
  }
  .hf-hero-full .hf-hero-shade{
    background:
      linear-gradient(180deg,
        rgba(6,24,77,.04) 0%,
        rgba(6,24,77,.12) 30%,
        rgba(6,24,77,.72) 53%,
        rgba(6,24,77,.97) 70%,
        #06184d 100%) !important;
  }
  .hf-hero-full .hf-hero-copy{
    left:0 !important;
    right:0 !important;
    top:auto !important;
    bottom:54px !important;
    transform:none !important;
  }
  .hf-copy-enter{
    animation:hfCopyEnterMobile .6s ease both !important;
  }
  @keyframes hfCopyEnterMobile{
    from{opacity:.2;transform:translateY(14px)}
    to{opacity:1;transform:translateY(0)}
  }
  .hf-hero-full h1{
    font-size:36px !important;
    max-width:none !important;
  }
  .hf-hero-full p{
    font-size:12px !important;
  }
  .hf-hero-full .hf-btn{
    height:44px !important;
    min-height:44px !important;
    font-size:9px !important;
  }
  .hf-hero-full .hf-arrow{
    width:40px !important;
    height:40px !important;
  }
  .hf-hero-full .hf-arrow.left{left:8px !important}
  .hf-hero-full .hf-arrow.right{right:8px !important}
  .hf-hero-glow{
    display:none !important;
  }
}

/* Respect accessibilité */
@media(prefers-reduced-motion:reduce){
  .hf-slide,
  .hf-hero-glow,
  .hf-copy-enter{
    animation:none !important;
    transition:none !important;
  }
}
