/* ─── PAGE HERO ─── */
.page-hero {
  position:relative; padding:64px 0 40px; text-align:center; overflow:hidden;
  background:
    radial-gradient(700px 380px at 50% -30%, color-mix(in srgb, var(--accent) 18%, transparent), transparent 65%);
  border-bottom:1px solid var(--border);
}
.page-hero h1 { font-size:clamp(32px,5vw,52px); margin:14px 0 14px; }
.page-hero p { max-width:640px; margin:0 auto; color:var(--text-2); font-size:16px; }

/* ─── PRESTATIONS (page) ─── */
.presta-list { display:flex; flex-direction:column; gap:22px; max-width:920px; margin:0 auto; }
.presta-row {
  display:grid; grid-template-columns:120px 1fr; gap:26px; align-items:flex-start;
  background:var(--bg-2); border:1px solid var(--border); border-radius:18px; padding:30px;
}
.presta-row.reverse { grid-template-columns:120px 1fr; }
.presta-ic-col { display:flex; flex-direction:column; align-items:center; gap:8px; }
.presta-ic {
  width:74px; height:74px; border-radius:18px; display:inline-flex; align-items:center; justify-content:center;
  background:color-mix(in srgb, var(--accent) 14%, transparent); color:var(--accent);
}
.presta-num { font-family:'Archivo',sans-serif; font-weight:900; font-size:22px; color:var(--border-2); }
.presta-body h2 { font-size:24px; margin-bottom:10px; }
.presta-desc { color:var(--text-2); }
.presta-details { list-style:none; display:grid; grid-template-columns:1fr 1fr; gap:8px 22px; margin:18px 0; }
.presta-details li { display:flex; align-items:flex-start; gap:9px; font-size:13.5px; color:var(--text); }
.presta-details [data-lucide] { color:var(--accent); flex-shrink:0; margin-top:3px; }
.presta-foot { display:flex; align-items:center; justify-content:space-between; gap:16px; flex-wrap:wrap; margin-top:8px; padding-top:18px; border-top:1px solid var(--border); }
.presta-price { font-family:'Archivo',sans-serif; font-weight:800; font-size:18px; color:var(--accent); }

/* ─── CONTACT ─── */
.contact-grid { display:grid; grid-template-columns:1.4fr 1fr; gap:30px; align-items:stretch; }
.contact-cards { display:flex; flex-direction:column; gap:14px; }
.contact-card {
  display:flex; align-items:center; gap:16px; padding:20px 22px; border-radius:14px;
  background:var(--bg-2); border:1px solid var(--border); transition:.2s;
}
.contact-card:not(.static):hover { border-color:var(--accent); transform:translateY(-2px); }
.contact-card .contact-ic {
  width:50px; height:50px; border-radius:12px; flex-shrink:0;
  display:inline-flex; align-items:center; justify-content:center;
  background:color-mix(in srgb, var(--accent) 14%, transparent); color:var(--accent);
}
.contact-card.highlight { background:linear-gradient(120deg, var(--breton), var(--accent-soft)); border:none; color:#fff; }
.contact-card.highlight .contact-ic { background:rgba(255,255,255,.18); color:#fff; }
.contact-card.highlight .contact-hint, .contact-card.highlight .contact-label { color:rgba(255,255,255,.78); }
.contact-card > div { flex:1; }
.contact-label { font-size:12px; letter-spacing:.05em; text-transform:uppercase; color:var(--text-3); }
.contact-value { font-family:'Archivo',sans-serif; font-weight:700; font-size:16px; margin-top:2px; }
.contact-hint { font-size:12.5px; color:var(--text-2); margin-top:3px; }
.contact-card [data-lucide]:last-child { color:var(--text-3); }
.contact-card.highlight [data-lucide]:last-child { color:#fff; }

.contact-aside { background:var(--bg-2); border:1px solid var(--border); border-radius:16px; padding:26px; display:flex; flex-direction:column; }
.contact-aside h3 { font-size:18px; margin-bottom:16px; }
.contact-presta { list-style:none; display:flex; flex-direction:column; flex:1; justify-content:space-between; gap:11px; margin-bottom:22px; }
.contact-presta li { display:flex; align-items:center; justify-content:space-between; gap:12px; font-size:14px; padding-bottom:11px; border-bottom:1px solid var(--border); }
.contact-presta li:last-child { border-bottom:none; }
.contact-presta span { display:inline-flex; align-items:center; gap:9px; }
.contact-presta [data-lucide] { color:var(--accent); }
.contact-presta em { font-style:normal; font-weight:600; color:var(--accent); font-size:13px; }

/* ─── LEGAL ─── */
.legal { max-width:780px; margin:0 auto; }
.legal h2 { font-size:21px; margin:32px 0 12px; }
.legal h2:first-child { margin-top:0; }
.legal p { color:var(--text-2); margin-bottom:8px; }
.legal a { color:var(--accent); }
.cookie-table { border:1px solid var(--border); border-radius:12px; overflow:hidden; margin:18px 0; }
.cookie-row { display:grid; grid-template-columns:1.4fr 2.6fr 1fr; gap:16px; padding:13px 16px; border-bottom:1px solid var(--border); font-size:13.5px; }
.cookie-row:last-child { border-bottom:none; }
.cookie-row.head { background:var(--bg-2); font-weight:700; color:var(--text); font-size:12px; letter-spacing:.04em; text-transform:uppercase; }
.cookie-row code { font-size:12.5px; color:var(--accent); background:var(--bg-3); padding:2px 6px; border-radius:5px; }
