:root{
  --biee-blue:#082bdc;
  --biee-blue-2:#1644f5;
  --biee-red:#ef171f;
  --biee-navy:#09213f;
  --biee-teal:#0d4f6c;
  --biee-ink:#17243a;
  --biee-muted:#64748b;
  --biee-soft:#f5f8ff;
  --biee-line:#e5eaf2;
  --biee-white:#ffffff;
  --biee-shadow:0 16px 45px rgba(9,33,63,.10);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--biee-ink);background:#fff;line-height:1.65}
h1,h2,h3,h4,h5,h6,.navbar-brand{font-family:Montserrat,Inter,sans-serif;letter-spacing:-.02em}
a{color:var(--biee-blue);text-decoration:none}a:hover{color:#041ea8}
.topbar{background:var(--biee-navy);color:#dce7f7}.topbar a{color:#dce7f7}.topbar a:hover{color:#fff}
.main-navbar{transition:.25s ease;border-bottom:1px solid rgba(9,33,63,.06)}.main-navbar.nav-scrolled{box-shadow:0 12px 32px rgba(9,33,63,.10)!important}
.brand-lockup{display:flex;align-items:center;padding:.2rem 0}.brand-lockup img{height:58px;width:auto;object-fit:contain}.navbar .nav-link{font-weight:600;color:#27364d;padding:.9rem .62rem!important;position:relative}.navbar .nav-link:hover,.navbar .nav-link.active{color:var(--biee-blue)}.navbar .nav-link.active:after{content:"";position:absolute;left:.62rem;right:.62rem;bottom:.45rem;height:2px;border-radius:999px;background:var(--biee-red)}
.btn{font-weight:700;border-radius:.8rem;padding:.68rem 1rem}.btn-lg{padding:.86rem 1.25rem}.btn-brand{background:linear-gradient(135deg,var(--biee-blue),var(--biee-blue-2));border-color:var(--biee-blue);color:#fff;box-shadow:0 8px 22px rgba(8,43,220,.18)}.btn-brand:hover{background:#061fb9;border-color:#061fb9;color:#fff;transform:translateY(-1px)}.btn-outline-brand{border:1px solid var(--biee-blue);color:var(--biee-blue);background:#fff}.btn-outline-brand:hover{background:var(--biee-blue);color:#fff}.btn-danger-soft{background:#fff0f1;color:var(--biee-red);border:1px solid #ffd6d8}.btn-danger-soft:hover{background:var(--biee-red);color:#fff}
.account-link{width:42px;height:42px;display:grid;place-items:center;border-radius:50%;font-size:1.35rem;color:var(--biee-blue);background:#edf2ff}.account-link:hover{background:var(--biee-blue);color:#fff}
.dropdown-menu{border:0;border-radius:1rem;box-shadow:0 18px 50px rgba(9,33,63,.16);padding:.65rem}.mega-menu{min-width:320px}.mega-menu .dropdown-item{display:flex;gap:.85rem;align-items:flex-start;border-radius:.75rem;padding:.85rem}.mega-menu .dropdown-item:hover{background:#f4f7ff;color:var(--biee-blue)}.mega-menu .dropdown-item i{font-size:1.2rem;color:var(--biee-red);width:28px}.mega-menu .dropdown-item span{display:flex;flex-direction:column}.mega-menu .dropdown-item small{color:#718096;font-weight:400;margin-top:.05rem}

/* Homepage carousel */
.home-carousel,.home-carousel .carousel-inner,.home-carousel .carousel-item{min-height:680px}.home-carousel .carousel-item{position:relative;background:#071a31}.carousel-visual{position:absolute;inset:0;background-size:cover;background-position:center;transform:scale(1.01)}.carousel-visual:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,20,42,.96) 0%,rgba(5,20,42,.84) 42%,rgba(5,20,42,.38) 74%,rgba(5,20,42,.18) 100%)}.carousel-content{position:relative;z-index:2;min-height:680px;display:flex;align-items:center;color:#fff;padding-top:3rem;padding-bottom:3rem}.carousel-content .eyebrow{display:inline-flex;align-items:center;gap:.55rem;text-transform:uppercase;font-size:.78rem;letter-spacing:.12em;font-weight:800;background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.20);border-radius:999px;padding:.55rem .85rem}.carousel-content h1,.carousel-content h2{font-size:clamp(2.5rem,5vw,5rem);line-height:1.04;font-weight:800;max-width:900px;margin:1.2rem 0}.carousel-content p{font-size:1.12rem;max-width:730px;color:#e7eef8}.carousel-actions{display:flex;gap:.8rem;flex-wrap:wrap;margin-top:1.8rem}.btn-hero-primary{background:var(--biee-red);border-color:var(--biee-red);color:#fff}.btn-hero-primary:hover{background:#c90e15;border-color:#c90e15;color:#fff}.btn-hero-outline{border:1px solid rgba(255,255,255,.7);color:#fff;background:rgba(255,255,255,.06)}.btn-hero-outline:hover{background:#fff;color:var(--biee-navy)}.carousel-indicators [data-bs-target]{width:32px;height:4px;border-radius:999px;border:0}.carousel-control-prev,.carousel-control-next{width:6%}.carousel-trust{display:flex;gap:1.35rem;flex-wrap:wrap;margin-top:2.2rem;color:#dce7f7;font-size:.92rem}.carousel-trust span{display:flex;align-items:center;gap:.4rem}.carousel-trust i{color:#6fe0a5}

.section-pad{padding:5.5rem 0}.section-soft{background:linear-gradient(180deg,#f7f9ff,#f2f6fd)}.section-dark{background:var(--biee-navy);color:#fff}.section-kicker{text-transform:uppercase;font-weight:800;letter-spacing:.12em;color:var(--biee-red);font-size:.78rem}.section-title{font-size:clamp(2rem,3vw,3.15rem);font-weight:800;line-height:1.12;margin:.45rem 0 1rem}.section-lead{color:var(--biee-muted);font-size:1.05rem;max-width:720px}.section-dark .section-lead{color:#c9d7e9}

.platform-strip{position:relative;z-index:5;margin-top:-52px}.platform-strip .panel{background:#fff;border-radius:1.25rem;box-shadow:var(--biee-shadow);border:1px solid rgba(9,33,63,.05);padding:1.1rem}.platform-action{height:100%;padding:1rem;border-radius:1rem;display:flex;gap:.85rem;align-items:center;color:var(--biee-ink);transition:.25s}.platform-action:hover{background:#f4f7ff;transform:translateY(-2px);color:var(--biee-blue)}.platform-action .icon{flex:0 0 48px;width:48px;height:48px;display:grid;place-items:center;border-radius:.85rem;background:#edf2ff;color:var(--biee-blue);font-size:1.25rem}.platform-action.red .icon{background:#fff0f1;color:var(--biee-red)}.platform-action strong{display:block}.platform-action small{display:block;color:var(--biee-muted);margin-top:.08rem}

.card-lift{border:1px solid var(--biee-line);border-radius:1.15rem;overflow:hidden;background:#fff;box-shadow:0 10px 30px rgba(12,42,66,.06);transition:.25s ease}.card-lift:hover{transform:translateY(-6px);box-shadow:0 20px 42px rgba(12,42,66,.13);border-color:#d8e1f1}.card-media{height:210px;object-fit:cover;width:100%;background:#eef3fb}.card-body{padding:1.35rem}.icon-box{width:58px;height:58px;border-radius:1rem;display:grid;place-items:center;background:#edf2ff;color:var(--biee-blue);font-size:1.5rem}.category-pill{display:inline-flex;align-items:center;border-radius:999px;padding:.36rem .65rem;font-size:.75rem;font-weight:800;background:#edf2ff;color:var(--biee-blue)}.availability-pill{display:inline-flex;align-items:center;gap:.35rem;border-radius:999px;padding:.36rem .65rem;font-size:.75rem;font-weight:800}.availability-pill.available{background:#eaf9f0;color:#18794e}.availability-pill.unavailable,.availability-pill.maintenance{background:#fff4e5;color:#9a6700}
.metric-card{border:1px solid var(--biee-line);border-radius:1.1rem;padding:1.4rem;background:#fff}.metric-card .metric-icon{width:46px;height:46px;display:grid;place-items:center;border-radius:.85rem;background:#edf2ff;color:var(--biee-blue);font-size:1.25rem}.metric-card h3{font-size:2rem;margin:.75rem 0 .1rem}.metric-card small{color:var(--biee-muted)}

.page-hero{position:relative;overflow:hidden;background:linear-gradient(120deg,#071d39 0%,#0b3ac7 74%,#1644f5 100%);color:#fff;padding:5.2rem 0 4.6rem}.page-hero:after{content:"";position:absolute;width:340px;height:340px;border-radius:50%;right:-80px;top:-120px;background:rgba(239,23,31,.22);filter:blur(2px)}.page-hero .container{position:relative;z-index:2}.page-hero h1{font-size:clamp(2.2rem,4vw,4rem);font-weight:800}.page-hero p{max-width:820px;color:#dce7f7}.page-hero .badge{background:rgba(255,255,255,.12)!important;border:1px solid rgba(255,255,255,.18);color:#fff!important}

.split-feature{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:center}.feature-visual{min-height:430px;border-radius:1.35rem;background-size:cover;background-position:center;position:relative;overflow:hidden;box-shadow:var(--biee-shadow)}.feature-visual:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,rgba(9,33,63,.72))}.feature-badge{position:absolute;z-index:2;left:1.2rem;bottom:1.2rem;background:#fff;border-radius:1rem;padding:1rem 1.2rem;box-shadow:0 12px 35px rgba(0,0,0,.12);max-width:260px}.feature-badge strong{display:block;color:var(--biee-blue)}
.process-step{position:relative;padding:1.4rem 1.2rem 1.4rem 4.7rem}.process-step .num{position:absolute;left:0;top:1.35rem;width:54px;height:54px;border-radius:1rem;display:grid;place-items:center;background:var(--biee-blue);color:#fff;font-family:Montserrat,sans-serif;font-weight:800}.process-step h5{margin-bottom:.35rem}.process-step p{color:var(--biee-muted);margin:0}
.testimonial-card{height:100%;padding:1.55rem;border:1px solid var(--biee-line);border-radius:1.15rem;background:#fff}.testimonial-card .quote-icon{font-size:2rem;color:var(--biee-red)}
.cta-panel{position:relative;overflow:hidden;border-radius:1.5rem;background:linear-gradient(115deg,#081f3b,#0b37c8);color:#fff;padding:3rem}.cta-panel:after{content:"";position:absolute;width:280px;height:280px;border-radius:50%;right:-70px;top:-100px;background:var(--biee-red);opacity:.16}.cta-panel>*{position:relative;z-index:1}

.form-control,.form-select{border-radius:.8rem;border-color:#dce3ed;padding:.78rem .95rem}.form-control:focus,.form-select:focus{border-color:#96aafc;box-shadow:0 0 0 .2rem rgba(8,43,220,.10)}.table{--bs-table-bg:transparent}.table thead th{color:#637083;font-size:.78rem;text-transform:uppercase;letter-spacing:.04em;border-bottom-width:1px}.alert{border-radius:.9rem}

.footer{background:#071a31;color:#c7d4e6}.footer .footer-logo{background:#fff;border-radius:1rem;padding:.55rem;width:150px;height:auto}.footer a{display:block;color:#c7d4e6;text-decoration:none;margin:.42rem 0}.footer a:hover{color:#fff}.footer h5,.footer h6{color:#fff}.footer hr{border-color:rgba(255,255,255,.12)}.wa-float{position:fixed;right:20px;bottom:20px;width:58px;height:58px;border-radius:50%;display:grid;place-items:center;background:#25d366;color:#fff;font-size:1.7rem;box-shadow:0 8px 24px rgba(0,0,0,.2);z-index:1030}.wa-float:hover{color:#fff;transform:translateY(-2px)}

.admin-sidebar{min-height:100vh;background:#071a31}.admin-sidebar a{display:block;color:#dbe9f5;text-decoration:none;padding:.72rem .9rem;border-radius:.65rem;margin:.08rem 0}.admin-sidebar a:hover{background:rgba(255,255,255,.08);color:#fff}.admin-sidebar .admin-logo{display:block;background:#fff;padding:.55rem;border-radius:.8rem;margin-bottom:1rem}.admin-sidebar .admin-logo img{width:100%;height:74px;object-fit:contain}

[data-reveal]{opacity:0;transform:translateY(18px);transition:opacity .6s ease,transform .6s ease}[data-reveal].is-visible{opacity:1;transform:none}

@media(max-width:1199px){.brand-lockup img{height:50px}.navbar .nav-link{padding:.65rem .5rem!important}.main-navbar .navbar-collapse{padding:1rem 0 1.2rem}.mega-menu{min-width:100%}.account-link{margin:.5rem 0}.home-carousel,.home-carousel .carousel-inner,.home-carousel .carousel-item,.carousel-content{min-height:610px}}
@media(max-width:991px){.platform-strip{margin-top:0;padding-top:1.2rem}.split-feature{grid-template-columns:1fr}.feature-visual{min-height:360px}.carousel-control-prev,.carousel-control-next{display:none}}
@media(max-width:767px){.home-carousel,.home-carousel .carousel-inner,.home-carousel .carousel-item,.carousel-content{min-height:610px}.carousel-visual:after{background:linear-gradient(90deg,rgba(5,20,42,.95),rgba(5,20,42,.78))}.carousel-content h1,.carousel-content h2{font-size:2.45rem}.carousel-content p{font-size:1rem}.section-pad{padding:4rem 0}.page-hero{padding:4rem 0 3.5rem}.cta-panel{padding:2rem}.card-media{height:180px}.brand-lockup img{height:46px}}

/* =========================================================
   V4 — Alignement strict du positionnement, menu et slider
   avec les sections 4, 5 et 6.1 du cahier des charges BIEE TECH
   ========================================================= */
.biee-shell{max-width:1720px;margin:0 auto;padding-left:24px;padding-right:24px}
.main-navbar{min-height:86px}
.brand-lockup{margin-right:1.25rem;flex:0 0 auto}
.brand-lockup img{height:66px;width:auto;max-width:190px;object-fit:contain}
.biee-main-menu{gap:0}
.biee-main-menu .nav-link{font-family:Inter,sans-serif;font-size:.70rem;line-height:1.15;font-weight:700;letter-spacing:.012em;color:#263448!important;padding:.78rem .42rem!important;white-space:nowrap;border-radius:.45rem}
.biee-main-menu .nav-link:hover,.biee-main-menu .nav-link.active{color:var(--biee-blue)!important;background:#f1f5ff}
.biee-main-menu .nav-quote{margin:0 .25rem}
.btn-nav-quote{font-size:.69rem!important;line-height:1.2;padding:.72rem .72rem!important;white-space:nowrap;box-shadow:0 8px 18px rgba(8,43,220,.18)}
.biee-main-menu .language-link{padding-left:.35rem!important;padding-right:.35rem!important}
.biee-main-menu .account-link{width:36px;height:36px;font-size:1.1rem}

.home-carousel,.home-carousel .carousel-inner,.home-carousel .carousel-item,.carousel-content{min-height:690px}
.home-carousel .carousel-item{overflow:hidden}
.carousel-visual{transition:transform 7s ease}
.carousel-item.active .carousel-visual{transform:scale(1.055)}
.carousel-visual:after{background:linear-gradient(90deg,rgba(4,18,37,.97) 0%,rgba(4,18,37,.90) 37%,rgba(4,18,37,.60) 65%,rgba(4,18,37,.22) 100%)}
.carousel-content{padding-top:5rem;padding-bottom:6rem}
.carousel-content .eyebrow{background:rgba(255,255,255,.11);backdrop-filter:blur(6px);font-size:.79rem}
.carousel-content h1,.carousel-content h2{font-size:clamp(2.65rem,4.6vw,4.9rem);max-width:980px;letter-spacing:-.035em}
.carousel-content p{font-size:1.15rem;line-height:1.75;max-width:800px}
.carousel-actions .btn{min-width:168px;font-weight:700;border-radius:.72rem;padding:.92rem 1.25rem}
.carousel-trust{margin-top:2rem;padding-top:1.25rem;border-top:1px solid rgba(255,255,255,.17);max-width:780px}
.carousel-indicators{bottom:30px}
.carousel-indicators [data-bs-target]{height:5px;width:42px;opacity:.45}
.carousel-indicators .active{opacity:1;background-color:var(--biee-red)}

.positioning-section{padding:5.3rem 0 4.5rem;background:#fff}
.positioning-heading{max-width:950px;margin:0 auto 3rem}
.positioning-heading .section-lead{max-width:850px}
.positioning-grid{--bs-gutter-x:.85rem}
.position-card{height:100%;min-height:218px;display:flex;flex-direction:column;padding:1.4rem 1.2rem;border:1px solid #e0e7f1;border-radius:1.05rem;background:#fff;color:var(--biee-ink);text-decoration:none;box-shadow:0 8px 24px rgba(9,33,63,.055);transition:.25s ease}
.position-card:hover{transform:translateY(-5px);border-color:#b9c9ff;box-shadow:0 18px 38px rgba(9,33,63,.12);color:var(--biee-ink)}
.position-icon{width:54px;height:54px;display:grid;place-items:center;border-radius:1rem;background:linear-gradient(135deg,#edf2ff,#f8faff);color:var(--biee-blue);font-size:1.42rem;margin-bottom:1.1rem;border:1px solid #dfe7ff}
.position-card:nth-child(even) .position-icon{color:var(--biee-red);background:#fff2f3;border-color:#ffdfe1}
.position-card strong{font-family:Montserrat,sans-serif;font-size:1rem;line-height:1.35;margin-bottom:.55rem}
.position-card small{font-size:.86rem;line-height:1.55;color:var(--biee-muted)}

.values-band{background:linear-gradient(110deg,#071a31,#0b2d57);border-top:4px solid var(--biee-red);color:#fff;padding:1.15rem 0}
.values-list{display:flex;align-items:center;justify-content:center;gap:.65rem 1.5rem;flex-wrap:wrap}
.values-list span{display:inline-flex;align-items:center;gap:.42rem;font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.045em;white-space:nowrap}
.values-list i{color:#ff4b51;font-size:.92rem}

.platform-strip-v4{margin-top:0;padding:2.2rem 0 0;background:#f6f8fc}
.platform-strip-v4 .panel{box-shadow:0 15px 40px rgba(9,33,63,.10)}
.platform-strip-v4 + .section-pad{padding-top:4.7rem}

@media (max-width:1599.98px) and (min-width:1400px){
  .biee-shell{padding-left:14px;padding-right:14px}
  .brand-lockup{margin-right:.55rem}.brand-lockup img{height:57px;max-width:168px}
  .biee-main-menu .nav-link{font-size:.64rem;padding:.72rem .31rem!important}
  .btn-nav-quote{font-size:.62rem!important;padding:.68rem .55rem!important}
  .biee-main-menu .account-link{width:34px;height:34px}
}
@media(max-width:1399.98px){
  .biee-shell{padding-left:18px;padding-right:18px}
  .main-navbar .navbar-collapse{max-height:calc(100vh - 120px);overflow-y:auto;padding:1rem 0 1.25rem}
  .biee-main-menu .nav-link{font-size:.84rem;padding:.72rem .8rem!important}
  .biee-main-menu .nav-quote{margin:.35rem .75rem .45rem}
  .btn-nav-quote{display:inline-flex;font-size:.78rem!important;padding:.8rem 1rem!important}
  .biee-main-menu .account-link{margin:.4rem .8rem}
}
@media(max-width:991.98px){
  .home-carousel,.home-carousel .carousel-inner,.home-carousel .carousel-item,.carousel-content{min-height:620px}
  .carousel-content{padding-top:4rem;padding-bottom:5rem}
  .positioning-section{padding:4rem 0 3.5rem}
}
@media(max-width:767.98px){
  .biee-shell{padding-left:14px;padding-right:14px}
  .brand-lockup img{height:52px;max-width:160px}
  .home-carousel,.home-carousel .carousel-inner,.home-carousel .carousel-item,.carousel-content{min-height:650px}
  .carousel-content h1,.carousel-content h2{font-size:2.35rem}
  .carousel-content p{line-height:1.6}
  .carousel-actions .btn{width:100%}
  .carousel-trust{gap:.65rem;margin-top:1.35rem}
  .carousel-trust span{width:100%}
  .position-card{min-height:0}
  .values-list{justify-content:flex-start;gap:.7rem 1rem}
}

/* =========================================================
   V4.1 — Panier e-commerce toujours visible
   ========================================================= */
.nav-utility-item{display:flex;align-items:center}
.cart-link,.biee-main-menu .cart-link{
  position:relative;width:36px;height:36px;display:grid;place-items:center;
  border-radius:50%;font-size:1.08rem;color:var(--biee-blue);background:#edf2ff;
  transition:.2s ease;text-decoration:none;
}
.cart-link:hover,.cart-link.active{background:var(--biee-blue);color:#fff}
.cart-badge{
  position:absolute;right:-7px;top:-8px;min-width:20px;height:20px;padding:0 5px;
  border-radius:999px;display:flex;align-items:center;justify-content:center;
  background:var(--biee-red);color:#fff;border:2px solid #fff;
  font:700 .66rem/1 Inter,sans-serif;box-shadow:0 4px 10px rgba(239,23,31,.3)
}
.utility-label{margin-left:.65rem;font-size:.82rem;font-weight:700;white-space:nowrap}
.account-link{position:relative}
.account-link .utility-label{display:none}
.cart-floating{
  position:fixed;right:18px;bottom:90px;z-index:1035;display:flex;align-items:center;gap:.65rem;
  padding:.78rem 1rem;border-radius:999px;background:var(--biee-navy);color:#fff!important;
  box-shadow:0 12px 32px rgba(9,33,63,.28);font-weight:800;text-decoration:none;
  border:1px solid rgba(255,255,255,.14)
}
.cart-floating:hover{transform:translateY(-2px);background:var(--biee-blue);color:#fff}
.cart-floating i{font-size:1.2rem}
.cart-floating .float-count{
  min-width:24px;height:24px;padding:0 6px;border-radius:999px;background:var(--biee-red);color:#fff;
  display:grid;place-items:center;font-size:.72rem
}
.cart-product-thumb{width:58px;height:58px;object-fit:cover;border-radius:.7rem;border:1px solid var(--biee-line);background:#eef3fb}
.cart-summary-card{border:1px solid var(--biee-line);border-radius:1.1rem;background:#fff;box-shadow:0 10px 30px rgba(12,42,66,.06)}
.btn-cart-add{display:flex;align-items:center;justify-content:center;gap:.4rem}

@media(max-width:1399.98px){
  .nav-utility-item{display:block}
  .biee-main-menu .cart-link,.biee-main-menu .account-link{
    width:auto;height:auto;display:flex;align-items:center;justify-content:flex-start;
    margin:.35rem .8rem;padding:.65rem .8rem;border-radius:.75rem;background:#edf2ff
  }
  .biee-main-menu .cart-link .utility-label,.biee-main-menu .account-link .utility-label{display:inline!important}
  .cart-badge{position:static;margin-left:auto;border:0;min-width:22px}
}
@media(max-width:575.98px){
  .cart-floating{right:14px;bottom:86px;padding:.72rem .85rem}
  .cart-floating .float-text{display:none}
}
