/* Zones v19 – harmonisé Home/Services (sans dépendre du header) */
.zones-v19{ padding-top: 40px; padding-bottom: 60px; }
.z19-hero{ display:grid; grid-template-columns: 1.15fr .85fr; gap: 18px; align-items:start; margin-bottom: 26px; }
.z19-kicker{ margin:0 0 8px; font-weight:800; letter-spacing:.12em; text-transform:uppercase; color: rgba(0,229,255,.85); font-size:.78rem; }
.z19-lead{ color: rgba(255,255,255,.70); line-height:1.65; margin: 0 0 16px; max-width: 62ch; }
.z19-cta{ display:flex; gap:10px; flex-wrap:wrap; margin-bottom: 12px; }
.z19-chips{ display:flex; flex-wrap:wrap; gap:8px; }
.z19-chip{ display:inline-flex; padding:.5rem .75rem; border-radius:999px; background: rgba(255,255,255,.04); border:1px solid rgba(255,255,255,.10);
  color: rgba(255,255,255,.82); text-decoration:none; font-weight:700; transition: transform .18s ease, border-color .18s ease, background .18s ease; }
@media(hover:hover){ .z19-chip:hover{ transform: translateY(-2px); border-color: rgba(0,229,255,.28); background: rgba(0,229,255,.08);} }

.z19-panel-card{ background: linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.03));
  border:1px solid rgba(255,255,255,.10); border-radius:18px; padding:16px; box-shadow: 0 26px 80px rgba(0,0,0,.60); }
.z19-panel-card h2{ margin:0 0 10px; font-size:1.05rem; }
.z19-panel-card ul{ margin:0 0 14px; padding-left:18px; color: rgba(255,255,255,.72); line-height:1.6; }
.z19-panel-actions{ display:flex; gap:10px; flex-wrap:wrap; }

.z19-head h2{ margin: 0 0 8px; font-size:1.55rem; }
.z19-head p{ margin:0 0 16px; color: rgba(255,255,255,.70); }

.z19-grid{ display:grid; grid-template-columns: repeat(4, 1fr); gap: 14px; }
.z19-card{ position:relative; background: linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,.03));
  border:1px solid rgba(255,255,255,.10); border-radius:18px; padding:16px; overflow:hidden;
  display:flex; flex-direction:column; justify-content:space-between; min-height: 148px;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease, filter .18s ease; }
.z19-card::before{ content:""; position:absolute; inset:0; pointer-events:none; opacity:0;
  background: radial-gradient(650px 220px at 15% 10%, rgba(0,229,255,.18), rgba(0,229,255,0) 60%);
  transition: opacity .18s ease; }
.z19-card-top{ position:relative; display:flex; gap:12px; align-items:flex-start; }
.z19-ico{ width:44px; height:44px; border-radius:14px; background: rgba(0,229,255,.12);
  border:1px solid rgba(0,229,255,.24); display:flex; align-items:center; justify-content:center; box-shadow: 0 18px 50px rgba(0,0,0,.45); }
.z19-card h3{ margin:0 0 6px; font-size:1.05rem; }
.z19-card p{ margin:0; color: rgba(255,255,255,.70); line-height:1.5; }

.z19-card-bottom{ position:relative; display:flex; justify-content:space-between; align-items:center; gap:10px; margin-top: 14px; }
.z19-badge{ display:inline-flex; padding:.4rem .65rem; border-radius:999px; background: rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.10); color: rgba(255,255,255,.78); font-weight:700; font-size:.82rem; }
.z19-link{ color: rgba(0,229,255,.92); font-weight:800; text-decoration:none; white-space:nowrap; }
@media(hover:hover){
  .z19-card:hover{ transform: translateY(-6px); border-color: rgba(0,229,255,.28); box-shadow: 0 26px 80px rgba(0,0,0,.62); filter: brightness(1.03); }
  .z19-card:hover::before{ opacity:1; }
  .z19-link:hover{ text-decoration: underline; }
}

.z19-note{ margin-top: 18px; background: linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.03));
  border:1px solid rgba(255,255,255,.10); border-radius:18px; padding:16px; box-shadow: 0 26px 80px rgba(0,0,0,.60); }
.z19-note h3{ margin:0 0 8px; font-size:1.12rem; }
.z19-note p{ margin:0 0 12px; color: rgba(255,255,255,.70); line-height:1.6; }
.z19-note-actions{ display:flex; gap:10px; flex-wrap:wrap; }

@media (max-width: 1100px){ .z19-grid{ grid-template-columns: repeat(2, 1fr);} }
@media (max-width: 980px){ .z19-hero{ grid-template-columns: 1fr; } }
@media (max-width: 560px){
  .z19-grid{ grid-template-columns: 1fr; }
  .z19-card-bottom{ flex-direction:column; align-items:flex-start; }
  .z19-link{ white-space:normal; }
}
