/* Page « Premium » : offre, tableau comparatif */

.prem-hero { position: relative; overflow: hidden; border-radius: 18px; padding: 26px 22px; display: flex; flex-direction: column; gap: 12px; align-items: flex-start;
  background: linear-gradient(140deg, var(--accent) 0%, color-mix(in srgb, var(--accent) 62%, #000) 100%); color: var(--accent-ink); }
.prem-hero h2 { font-family: var(--f-display); font-size: 30px; line-height: 1.15; margin: 0; max-width: 22ch; }
.prem-badge { font-size: 11.5px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; padding: 4px 10px; border-radius: 99px; background: color-mix(in srgb, var(--accent-ink) 18%, transparent); }
.prem-sub { margin: 0; font-size: 16px; opacity: .92; max-width: 46ch; }
.prem-price { display: flex; align-items: baseline; gap: 6px; }
.prem-price b { font-family: var(--f-display); font-size: 46px; line-height: 1; }
.prem-price span { font-size: 18px; font-weight: 600; }
.prem-price small { font-size: 15px; opacity: .85; }
.prem-coffee { margin: 0; font-size: 14px; opacity: .9; }
.prem-list { list-style: none; margin: 4px 0; padding: 0; display: flex; flex-direction: column; gap: 8px; font-size: 15.5px; }
.prem-list li { display: flex; gap: 10px; align-items: flex-start; }
.prem-list li::before { content: "✓"; flex: none; width: 22px; height: 22px; border-radius: 50%; display: inline-flex; align-items: center; justify-content: center; font-size: 13px; font-weight: 700; background: var(--accent-ink); color: var(--accent); }
.prem-hero .btn.big { font-size: 17px; padding: 13px 22px; background: var(--accent-ink); color: var(--accent); border-color: var(--accent-ink); font-weight: 700; }
.prem-hero .btn.big:hover { filter: brightness(.96); }
.prem-active { margin: 0; font-weight: 600; font-size: 16px; }
.prem-secure { margin: 0; font-size: 12.5px; opacity: .85; }
table.compare { width: 100%; border-collapse: collapse; font-size: 14.5px; }
table.compare th, table.compare td { padding: 9px 10px; border-bottom: 1px solid var(--line); text-align: center; }
table.compare th:first-child, table.compare td:first-child { text-align: left; color: var(--muted); }
table.compare thead th { font-size: 12px; letter-spacing: .06em; text-transform: uppercase; color: var(--muted); }
table.compare .hl { background: var(--accent-soft); color: var(--ink); font-weight: 600; }
table.compare thead .hl { color: var(--accent); }
