/* CCN Technologies - accueil v2 (prototype) : styles ajoutes, sans modifier site.css */

/* ---------- Heros en diaporama ---------- */
.hero2{background:var(--hero-bg);color:var(--hero-text);position:relative;overflow:hidden}
.hero2 .container{padding-top:36px;padding-bottom:40px}
.hero2-track{position:relative;min-height:470px}
.hero2-slide{position:absolute;inset:0;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:48px;align-items:center;
  opacity:0;visibility:hidden;transform:translateY(8px);transition:opacity .6s ease,transform .6s ease,visibility 0s linear .6s}
.hero2-slide.is-active{position:relative;opacity:1;visibility:visible;transform:none;transition:opacity .6s ease,transform .6s ease}
.hero2-slide[hidden]{display:none}
.hero2 h1,.hero2 .hero2-title{font-family:var(--font-head);color:var(--hero-heading);font-size:clamp(32px,4.2vw,52px);line-height:1.08;margin:0 0 18px;font-weight:800}
.hero2 .lead{font-size:19px;color:var(--hero-muted);max-width:600px;margin:0 0 22px}
.hero2-media{display:flex;align-items:center;justify-content:center;height:420px}
.hero2-media img{max-width:100%;max-height:400px;width:auto;height:auto;object-fit:contain;filter:drop-shadow(0 24px 40px rgba(15,58,79,.14))}
.hero2-media.device img{border-radius:22px;width:100%;height:380px;object-fit:cover;object-position:50% 58%;box-shadow:var(--shadow-lg);filter:none}
.hero2-price{display:inline-flex;align-items:baseline;gap:6px;background:var(--pricetag-bg);color:var(--pricetag-text);border:1px solid var(--border);
  border-radius:99px;padding:8px 16px;font-size:15px;margin-bottom:22px;box-shadow:var(--card-shadow)}
.hero2-price strong{color:var(--pricetag-strong);font-family:var(--font-head);font-size:19px}
.hero2-nav{display:flex;align-items:center;gap:14px;margin-top:6px}
.hero2-dots{display:flex;gap:8px}
.hero2-dots button{width:34px;height:6px;border-radius:99px;border:0;background:var(--border-strong);cursor:pointer;padding:0;position:relative;overflow:hidden}
.hero2-dots button.is-active{background:var(--primary)}
.hero2-arrows{display:flex;gap:8px;margin-left:auto}
.hero2-arrows button{width:40px;height:40px;border-radius:50%;border:1px solid var(--border-strong);background:#fff;color:var(--heading);cursor:pointer;font-size:18px;line-height:1}
.hero2-search{margin-top:26px;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:48px;align-items:start}
.hero2-search .domain-search{margin:0}
.hero2-search .tlds{margin-top:10px}

/* Diapositive de campagne (Black Friday / Noel) : affichee uniquement pendant les dates */
.hero2-slide.campaign{border-radius:24px;padding:42px 44px;background:radial-gradient(120% 140% at 85% 20%,#2a2a33 0%,#111114 55%,#0b0b0d 100%);color:#e9e9ee;margin:0 -8px}
.hero2-slide.campaign .eyebrow{color:#f2b833}
.hero2-slide.campaign .hero2-title{color:#fff}
.hero2-slide.campaign .lead{color:#c9c9d2}
.hero2-slide.campaign .btn-primary{background:#f2b833;color:#141414;border-color:#f2b833}
.hero2-slide.campaign .btn-secondary{color:#fff;border-color:rgba(255,255,255,.35);background:transparent}
.hero2-slide.campaign.noel{background:radial-gradient(120% 140% at 85% 20%,#b3122d 0%,#7d0b1f 55%,#4f0613 100%)}
.hero2-slide.campaign.noel .eyebrow{color:#ffd9de}
.hero2-slide.campaign.noel .btn-primary{background:#fff;color:#7d0b1f;border-color:#fff}
.camp-big{font-family:var(--font-head);font-weight:800;font-size:clamp(84px,11vw,150px);line-height:.9;color:#f2b833;letter-spacing:-.04em;text-align:center}
.campaign.noel .camp-big{color:#fff}
.camp-big small{display:block;font-size:22px;letter-spacing:.2em;text-transform:uppercase;color:#c9c9d2;margin-top:14px;font-weight:700}
.camp-count{display:flex;gap:10px;margin:0 0 24px}
.camp-count div{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);border-radius:12px;padding:10px 12px;min-width:66px;text-align:center}
.camp-count b{display:block;font-family:var(--font-head);font-size:28px;color:#fff;line-height:1}
.camp-count span{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:#bdbdc7}

/* ---------- Bandeau de confiance ---------- */
.trust-strip{background:#fff;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}
.trust-strip .container{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px 28px;padding-top:18px;padding-bottom:18px}
.trust-item{display:flex;align-items:center;gap:10px;color:var(--heading);font-weight:600;font-size:15px;text-decoration:none}
.trust-item small{display:block;font-weight:400;color:var(--muted);font-size:13px}
.trust-item .stars{color:#f5a623;letter-spacing:2px;font-size:16px}
.trust-item img{height:34px;width:auto;display:block}
.trust-item img.tp{height:22px}
.trust-item .ico{width:34px;height:34px;border-radius:10px;background:var(--icon-bg);color:var(--icon-color);display:flex;align-items:center;justify-content:center}

/* ---------- Tuiles produits harmonisees ---------- */
.cards-uniform .card .thumb{height:180px;background:var(--thumb-bg)}
.cards-uniform .card .thumb img{height:150px;max-height:150px;width:auto;max-width:86%;object-fit:contain}
.cards-uniform .card{transition:transform .2s ease,box-shadow .2s ease}
.cards-uniform .card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}
.cards-uniform .card .price-line{margin-top:auto}

/* ---------- Tuiles technologies harmonisees ---------- */
.tech-grid .card{align-items:flex-start}
.tech-grid .logo-box{height:72px;width:100%;display:flex;align-items:center;justify-content:flex-start;margin-bottom:6px;overflow:hidden}
.tech-grid .logo-box img{height:64px;max-height:64px;max-width:170px;width:auto;object-fit:contain;object-position:left center}

/* ---------- Derniers articles automatiques ---------- */
.post-card{position:relative}
.post-card .thumb{height:200px}
.post-card .thumb img{width:100%;height:100%;object-fit:cover}
.post-card .badge-new{position:absolute;top:14px;left:14px;background:var(--primary);color:var(--primary-ink);font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;padding:5px 10px;border-radius:99px;z-index:2}
.posts-note{font-size:13px;color:var(--muted);margin-top:14px}

@media (max-width:900px){
  .hero2-slide,.hero2-search{grid-template-columns:1fr;gap:20px}
  .hero2-track{min-height:0}
  .hero2-media{height:220px;order:-1}
  .hero2-media img{max-height:210px}
  .hero2-media.device img{height:220px}
  .hero2-slide.campaign{padding:28px 22px;margin:0}
  .camp-big{font-size:72px}
  .trust-strip .container{justify-content:center}
  .hero2 .hero-points{display:none}
  .hero2 .lead{font-size:17px}
}
@media (prefers-reduced-motion:reduce){.hero2-slide{transition:none}}
