/* ============================================================
   LIRS — offers.css · stili per le pagine-servizio e le offerte
   Coerente con style.css (navy / magenta / ciano).
   ============================================================ */

/* feature list su sfondo chiaro (override per le pagine servizio) */
section:not(.dark) .feat-list{list-style:none;display:grid;gap:14px;margin-top:8px}
section:not(.dark) .feat-list li{display:flex;gap:12px;align-items:baseline;color:var(--ink);font-weight:500}
section:not(.dark) .feat-list li::before{content:"●";color:var(--c,var(--magenta));font-size:.7rem;flex:0 0 auto}

/* ── griglia offerte ─────────────────────────────────────── */
.offers-grid{
  display:grid;grid-template-columns:repeat(auto-fit,minmax(248px,1fr));
  gap:20px;margin-top:46px;align-items:stretch;
}
.offer{
  position:relative;display:flex;flex-direction:column;
  background:rgba(255,255,255,.05);border:1px solid var(--line-dark);
  border-radius:18px;padding:30px 26px 26px;overflow:hidden;
  transition:transform .25s ease,background .25s ease,box-shadow .25s ease,border-color .25s ease;
}
.offer::before{
  content:"";position:absolute;top:0;left:0;right:0;height:4px;
  background:var(--c,var(--magenta));transform:scaleX(0);transform-origin:left;transition:transform .35s;
}
.offer:hover{transform:translateY(-6px);background:rgba(255,255,255,.08);box-shadow:0 20px 50px rgba(0,0,0,.4)}
.offer:hover::before{transform:scaleX(1)}
.offer.is-hot{
  border-color:color-mix(in srgb,var(--c) 60%,transparent);
  background:linear-gradient(180deg,color-mix(in srgb,var(--c) 14%,transparent),rgba(255,255,255,.05));
  box-shadow:0 18px 44px rgba(0,0,0,.35);
}
.offer.is-hot::before{transform:scaleX(1)}

.hot{
  position:absolute;top:16px;right:16px;z-index:2;
  font-family:var(--font-mono);font-size:.56rem;letter-spacing:.14em;text-transform:uppercase;
  color:#fff;background:var(--c,var(--magenta));border-radius:999px;padding:6px 12px;
  box-shadow:0 6px 16px color-mix(in srgb,var(--c) 50%,transparent);
}

.o-head{display:flex;flex-direction:column;gap:4px;padding-bottom:16px;margin-bottom:16px;border-bottom:1px solid var(--line-dark)}
.o-name{font-family:var(--font-display);font-weight:800;font-size:1.5rem;color:#fff;letter-spacing:-.01em}
.o-sub{font-family:var(--font-mono);font-size:.64rem;letter-spacing:.16em;text-transform:uppercase;color:var(--c,var(--magenta))}
.o-who{color:#9FB6C9;font-size:.9rem;margin-bottom:16px}

.o-feats{list-style:none;display:grid;gap:11px;margin-bottom:24px;flex:1}
.o-feats li{position:relative;padding-left:26px;color:#C7D8E6;font-size:.9rem;line-height:1.45}
.o-feats li::before{
  content:"";position:absolute;left:0;top:6px;width:15px;height:8px;
  border-left:2px solid var(--c,var(--magenta));border-bottom:2px solid var(--c,var(--magenta));
  transform:rotate(-45deg);
}

.o-cta{
  display:inline-flex;align-items:center;justify-content:center;
  font-family:var(--font-display);font-weight:600;font-size:.9rem;text-decoration:none;
  border:1px solid var(--c,var(--magenta));color:#fff;border-radius:999px;padding:13px 22px;
  transition:background .2s,transform .2s,box-shadow .2s;margin-top:auto;
}
.offer:hover .o-cta,.offer.is-hot .o-cta{background:var(--c,var(--magenta));box-shadow:0 10px 26px color-mix(in srgb,var(--c) 45%,transparent)}
.o-cta:hover{transform:translateY(-2px)}

.offers-note{margin-top:26px;font-size:.82rem;color:#7E97AB;max-width:70ch}

/* ── servizi correlati ───────────────────────────────────── */
.rel-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}
.rel-card{
  display:flex;align-items:center;gap:14px;text-decoration:none;color:var(--ink);
  background:#fff;border:1px solid var(--line);border-radius:14px;padding:18px 20px;
  transition:transform .25s,box-shadow .25s,border-color .25s;
}
.rel-card:hover{transform:translateY(-4px);box-shadow:0 14px 32px rgba(13,43,69,.12);border-color:var(--c,var(--magenta))}
.rel-card .ico{
  width:42px;height:42px;border-radius:11px;flex:0 0 auto;display:grid;place-items:center;font-size:1.15rem;
  background:color-mix(in srgb,var(--c) 16%,transparent);
  border:1px solid color-mix(in srgb,var(--c) 38%,transparent);color:var(--c)
}
.rel-card b{font-family:var(--font-display);font-weight:600;font-size:.98rem;flex:1}
.rel-card .go{color:var(--c,var(--magenta));font-size:1.1rem;transition:transform .25s}
.rel-card:hover .go{transform:translateX(4px)}

@media(max-width:760px){
  .offers-grid{grid-template-columns:1fr}
  .rel-grid{grid-template-columns:1fr}
}
