/* Accueil Bamtex — styles de page (chargé uniquement sur la home). */

.bx-eyebrow--light{color:var(--bx-green-light);}
.bx-eyebrow--terra{color:var(--bx-terracotta);}

/* ---------------- HERO ---------------- */
.bx-hero{position:relative;min-height:100svh;display:flex;align-items:center;justify-content:center;text-align:center;overflow:hidden;}
.bx-hero__bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;animation:bxzoom 14s ease-out both;}
.bx-hero__overlay{position:absolute;inset:0;background:linear-gradient(to bottom,rgba(14,20,15,.74),rgba(14,20,15,.6) 42%,rgba(14,20,15,.82)),radial-gradient(75% 65% at 50% 42%,rgba(20,28,21,.12),rgba(12,18,13,.62));}
.bx-hero__inner{position:relative;z-index:2;padding:132px 24px 96px;max-width:1000px;}
.bx-hero__eyebrow{margin:0;font-size:clamp(12px,1.2vw,13.5px);letter-spacing:.28em;text-transform:uppercase;font-weight:700;color:var(--bx-green-hero);}
.bx-hero__title{font-family:var(--bx-serif);font-weight:400;font-size:clamp(46px,8.4vw,104px);line-height:.98;margin:18px 0 0;color:#fff;letter-spacing:.5px;text-shadow:0 2px 30px rgba(0,0,0,.35);}
.bx-hero__lead{max-width:50ch;margin:24px auto 0;font-size:clamp(17px,1.7vw,21px);color:#eef2e8;}
.bx-hero__lead b{color:#fff;}
.bx-hero__cta{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;margin-top:34px;}
.bx-hero__cta .bx-btn{font-size:17px;padding:19px 38px;}
.bx-btn--ghost{background:rgba(255,255,255,.14);color:#fff;border:1.5px solid rgba(255,255,255,.55);backdrop-filter:blur(6px);}
.bx-btn--ghost:hover{background:rgba(255,255,255,.24);color:#fff;}
.bx-hero__badges{display:flex;gap:10px 26px;justify-content:center;flex-wrap:wrap;margin-top:38px;font-size:14px;font-weight:600;color:#e4ebdc;}
@keyframes bxzoom{from{transform:scale(1.12);}to{transform:scale(1);}}

/* ---------------- RÉASSURANCE ---------------- */
.bx-trust{background:#fff;border-top:1px solid var(--bx-border);border-bottom:1px solid var(--bx-border);}
.bx-trust__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:22px;padding-top:26px;padding-bottom:26px;}
.bx-trust__item{display:flex;align-items:center;gap:12px;}
.bx-trust__num{flex:none;width:38px;height:38px;border-radius:50%;background:var(--bx-green-tint);display:grid;place-items:center;font-size:18px;color:var(--bx-green-deep);font-weight:800;}
.bx-trust__t{font-weight:700;font-size:15px;}
.bx-trust__s{font-size:13.5px;color:var(--bx-muted);}

/* ---------------- GAMME ---------------- */
.bx-gamme__title{font-size:clamp(32px,4.6vw,54px);margin:12px 0 10px;}
.bx-gamme__intro{max-width:60ch;margin:0 0 34px;font-size:17px;color:var(--bx-text-2);}
.bx-gamme__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:18px;}
/* Le composant .bx-pcard est défini globalement dans app.css (réutilisé par la boutique). */

/* ---------------- BANDEAU CADEAU ---------------- */
.bx-gift{padding:0 24px clamp(20px,3vw,34px);}
.bx-gift__inner{max-width:var(--bx-container);margin:0 auto;background:linear-gradient(105deg,#c9683f,#b4562f 58%,#8f421f);border-radius:22px;padding:clamp(26px,3.4vw,42px);display:flex;align-items:center;gap:26px;flex-wrap:wrap;color:#fff;}
.bx-gift__emoji{flex:none;font-size:clamp(46px,5vw,64px);line-height:1;}
.bx-gift__text{flex:1;min-width:250px;}
.bx-gift__text h2{color:#fff;font-size:clamp(28px,3.4vw,42px);margin:0 0 8px;}
.bx-gift__text p{margin:0;font-size:16.5px;color:#fbeee7;max-width:56ch;}
.bx-gift__cta{background:#fff;color:#8f421f;flex:none;font-weight:800;font-size:16px;padding:16px 30px;}
.bx-gift__cta:hover{background:#fdf3ed;color:#8f421f;}

/* ---------------- GUIDE / QUIZ ---------------- */
.bx-guide{background:var(--bx-forest);color:#f2efe4;}
.bx-guide__inner{max-width:1000px;margin:0 auto;padding-left:24px;padding-right:24px;}
.bx-guide__title{color:#fff;font-size:clamp(32px,4.6vw,54px);margin:12px 0 30px;}
.bx-guide__qs{display:grid;gap:22px;}
.bx-guide__q>p{margin:0 0 12px;font-weight:700;font-size:16px;}
.bx-guide__opts{display:flex;gap:10px;flex-wrap:wrap;}
.bx-guide__opts button{background:var(--bx-ink);color:#f2efe4;font-family:inherit;font-weight:600;font-size:15px;padding:13px 20px;border-radius:999px;border:2px solid var(--bx-border-dark);cursor:pointer;transition:border-color .2s ease;}
.bx-guide__opts button:hover{border-color:var(--bx-green-light);}
.bx-guide__opts button.is-active{border-color:var(--bx-green-light);}
.bx-guide__reco{margin-top:32px;background:var(--bx-cream);color:var(--bx-ink);border-radius:18px;padding:26px;display:flex;gap:24px;align-items:center;flex-wrap:wrap;animation:bxfade .4s ease both;}
.bx-guide__reco[hidden]{display:none;}
.bx-guide__reco>div{flex:1;min-width:240px;}
.bx-guide__reco h3{margin:8px 0;font-size:38px;}
.bx-guide__reco p{margin:0;font-size:16px;color:var(--bx-text-2);max-width:46ch;}
@keyframes bxfade{from{opacity:0;transform:translateY(10px);}to{opacity:1;transform:none;}}

/* ---------------- TECHNOLOGIES ---------------- */
.bx-tech__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:40px;align-items:center;}
.bx-tech h2{font-size:clamp(32px,4.6vw,54px);margin:12px 0 18px;}
.bx-tech__lead{margin:0 0 26px;font-size:17px;color:var(--bx-text-2);max-width:52ch;}
.bx-tech__list{display:grid;gap:16px;}
.bx-tech__list>div{border-left:3px solid var(--bx-green);padding-left:16px;}
.bx-tech__list b{font-size:16px;}
.bx-tech__list p{margin:4px 0 0;font-size:15px;color:var(--bx-text-2);}
.bx-tech__visual{border-radius:20px;overflow:hidden;box-shadow:var(--bx-shadow-visual);}
.bx-tech__visual img{width:100%;height:100%;min-height:340px;object-fit:cover;}

/* ---------------- FABRICATION ---------------- */
.bx-fab{background:#fff;border-top:1px solid var(--bx-border);}
.bx-fab__head{max-width:60ch;margin-bottom:26px;}
.bx-fab__head h2{font-size:clamp(32px,4.6vw,54px);margin:12px 0 16px;}
.bx-fab__head p{margin:0;font-size:17px;color:var(--bx-text-2);}
.bx-fab__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px;}
.bx-fab__img{border-radius:16px;overflow:hidden;}
.bx-fab__img img{width:100%;height:340px;object-fit:cover;}
.bx-fab__stats{background:var(--bx-cream);border-radius:16px;padding:26px;display:flex;flex-direction:column;justify-content:center;gap:18px;}
.bx-fab__stats span{font-family:var(--bx-serif);font-size:40px;line-height:1;}
.bx-fab__stats p{margin:0;font-size:15px;color:var(--bx-text-2);}

/* ---------------- AVIS ---------------- */
.bx-avis h2{font-size:clamp(32px,4.6vw,54px);margin:12px 0 30px;}
.bx-avis__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:18px;}
.bx-avis__card{margin:0;background:#fff;border:1px solid var(--bx-border);border-radius:18px;padding:24px;}
.bx-stars{color:var(--bx-terracotta);font-size:15px;letter-spacing:2px;}
.bx-avis__card p{margin:12px 0 18px;font-size:16.5px;color:#28302a;}
.bx-avis__card footer{font-size:14px;color:var(--bx-muted);}
.bx-avis__card footer b{color:var(--bx-ink);}

/* ---------------- FAQ ---------------- */
.bx-faq{background:var(--bx-cream-2);}
.bx-faq__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:46px;}
.bx-faq__intro h2{font-size:clamp(30px,4vw,46px);margin:12px 0 16px;}
.bx-faq__intro p{margin:0;font-size:16.5px;color:var(--bx-text-2);max-width:40ch;}
.bx-faq__list{display:grid;gap:12px;}
.bx-faq__item{background:#fff;border:1px solid var(--bx-border);border-radius:14px;padding:18px 20px;}
.bx-faq__item summary{font-weight:700;font-size:16.5px;}
.bx-faq__item p{margin:12px 0 0;font-size:15.5px;color:var(--bx-text-2);}

/* ---------------- NEWSLETTER ---------------- */
.bx-news{background:var(--bx-green);color:#fff;padding:clamp(44px,5vw,70px) 24px;}
.bx-news__inner{max-width:900px;margin:0 auto;text-align:center;}
.bx-news h2{color:#fff;font-size:clamp(28px,3.6vw,42px);margin:0 0 12px;}
.bx-news p{margin:0 0 24px;font-size:17px;color:#f0f7e4;}
.bx-news__form{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;}
.bx-news__form input{font-family:inherit;font-size:16px;padding:15px 20px;border-radius:999px;border:none;min-width:260px;flex:0 1 340px;color:var(--bx-ink);}

/* ---------------- Responsive ---------------- */
@media (max-width:860px){
  .bx-hero__inner{padding-top:120px;}
}
