/* ═══════════════════════ SERVICES ═══════════════════════ */
#services { position: relative; padding: 50px 0; background: var(--bg); overflow: hidden; }

.services-grid { display: grid; grid-template-columns: repeat(auto-fit,minmax(280px,1fr)); gap: 28px; margin-bottom: 80px; }

.service-card {
  position: relative; padding: 36px 32px;
  border: 1px solid rgba(255,255,255,.07); border-radius: var(--r);
  background: linear-gradient(to bottom, var(--w05), transparent);
  overflow: hidden; transition: border-color .5s, box-shadow .5s; cursor: default;
}

.service-card:nth-child(1) {
  background: linear-gradient(to bottom, rgba(8, 8, 8, 0.85), rgba(8, 8, 8, 0.75)), url('../Ressources/hf_20260224_015611_93c40fa6-cdda-4d5b-bc9e-8010b862fb55.jpeg');
  background-size: cover;
  background-position: center;
}

.service-card:nth-child(2) {
  background: linear-gradient(to bottom, rgba(8, 8, 8, 0.85), rgba(8, 8, 8, 0.75)), url('../Ressources/hf_20260224_020845_624ec259-85b2-4f8c-9b16-6bbd52dc9337.jpeg');
  background-size: cover;
  background-position: center;
}

.service-card:nth-child(3) {
  background: linear-gradient(to bottom, rgba(8, 8, 8, 0.85), rgba(8, 8, 8, 0.75)), url('../Ressources/hf_20260224_021216_5605e2e0-5656-40a4-a0c6-9391ed77d8b4.jpeg');
  background-size: cover;
  background-position: center;
}
.service-card:hover { border-color: var(--g30); box-shadow: 0 0 40px rgba(212,175,55,.07); }

.card-ornament { position: absolute; font-family: var(--serif); color: rgba(212,175,55,.15); transition: color .5s; pointer-events: none; }
.card-ornament.top-right { top: 16px; right: 20px; font-size: 20px; }
.card-ornament.bot-left  { bottom: 14px; left: 18px; font-size: 13px; }
.service-card:hover .card-ornament { color: var(--g30); }

.card-top-line { position: absolute; top: 0; left: 0; height: 1px; width: 0; background: linear-gradient(90deg, var(--gold), transparent); transition: width .7s; }
.service-card:hover .card-top-line { width: 100%; }

.service-card-header {
  display: flex;
  align-items: center;
  gap: 20px;
  margin-bottom: 20px;
}

.service-icon {
  width: 64px; height: 64px; border-radius: 14px;
  background: linear-gradient(135deg, var(--g10), rgba(212,175,55,.05));
  border: 1px solid rgba(212,175,55,.1);
  display: flex; align-items: center; justify-content: center;
  transition: transform .5s, background .5s;
  flex-shrink: 0;
}
.service-card:hover .service-icon { transform: scale(1.1); background: linear-gradient(135deg, var(--g20), var(--g10)); }
.service-icon svg { width: 28px; height: 28px; color: var(--gold); }

.service-card h3 { font-family: var(--serif); font-size: 1.2rem; font-weight: 500; color: #fff; margin: 0; transition: color .3s; }
.service-card:hover h3 { color: var(--gold-light); }
.service-card p { font-size: .875rem; color: var(--w40); line-height: 1.7; }

.event-tags { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 20px; }
.event-tags span {
  padding: 4px 12px; font-size: 10px; letter-spacing: .15em; text-transform: uppercase;
  color: rgba(255, 255, 255, 0.9); border: 1px solid rgba(255, 255, 255, 0.3); border-radius: 999px; transition: all .3s;
  background: rgba(255, 255, 255, 0.1);
}
.service-card:hover .event-tags span { border-color: rgba(255, 255, 255, 0.5); color: #fff; background: rgba(255, 255, 255, 0.15); }

/* Preference box */
.pref-box {
  position: relative; max-width: 680px; margin: 0 auto; padding: 40px 44px;
  border: 1px solid var(--g20); border-radius: var(--r);
  background: linear-gradient(135deg, rgba(212,175,55,.05), transparent 60%);
}
.pref-corners .corner { position: absolute; width: 28px; height: 28px; }
.corner.tl { top:-1px; left:-1px; border-top:1px solid var(--g30); border-left:1px solid var(--g30); border-radius:var(--r) 0 0 0; }
.corner.tr { top:-1px; right:-1px; border-top:1px solid var(--g30); border-right:1px solid var(--g30); border-radius:0 var(--r) 0 0; }
.corner.bl { bottom:-1px; left:-1px; border-bottom:1px solid var(--g30); border-left:1px solid var(--g30); border-radius:0 0 0 var(--r); }
.corner.br { bottom:-1px; right:-1px; border-bottom:1px solid var(--g30); border-right:1px solid var(--g30); border-radius:0 0 var(--r) 0; }

.pref-header { display: flex; align-items: center; gap: 12px; margin-bottom: 28px; }
.pref-icon { width: 20px; height: 20px; color: var(--gold); }
.pref-header h3 { font-family: var(--serif); font-size: 1.15rem; font-weight: 500; }
.pref-groups { display: flex; flex-direction: column; gap: 20px; }
.pref-group { display: flex; flex-direction: column; gap: 10px; }
.pref-label { font-size: 10px; letter-spacing: .35em; text-transform: uppercase; color: var(--w40); }
.pref-btns { display: flex; gap: 8px; flex-wrap: wrap; }
.pref-btn {
  padding: 8px 16px; border-radius: 999px; border: 1px solid rgba(255,255,255,.1);
  background: transparent; color: var(--w40); font-size: 12px; font-family: var(--sans); cursor: pointer; transition: all .3s;
}
.pref-btn:hover { border-color: rgba(255,255,255,.3); color: var(--w60); }
.pref-btn.active { border-color: var(--gold); background: var(--g10); color: var(--gold); box-shadow: 0 0 12px var(--g20); }
