/* =========================================================
   SCONTISTA — RESTYLING "CARTELLINO" v3
   Livello sopra style.css. Per tornare al vecchio look:
   togli l'enqueue di 'scontista-modern' in functions.php.
   ========================================================= */

:root,
body.sc-dark {
  --bg:#14121C;
  --bg2:#1D1A27;
  --bg3:#272335;
  --bg4:#302B40;
  --border:#2E293D;
  --border2:#3D3752;
  --text:#F4F2F8;
  --text2:#B3ADC4;
  --text3:#7F7894;
  --text4:#5A546B;
  --accent:#FF6B35;
  --accent2:#FF8A5C;
  --accent-dim:rgba(255,107,53,0.14);
  --accent-border:rgba(255,107,53,0.35);
  --tag:#FFD447;
  --tag-ink:#2B2100;
  --save:#3DD9A0;
  --r:14px;
  --rl:22px;
  --fd:'Bricolage Grotesque','Outfit',sans-serif;
  --ink-header:#0E0C14;
}

body.sc-light {
  --bg:#F7F6FA;
  --bg2:#FFFFFF;
  --bg3:#F0EEF5;
  --bg4:#E7E4EE;
  --border:#E4E1EB;
  --border2:#D3CFDD;
  --text:#1B1726;
  --text2:#4F4960;
  --text3:#857F96;
  --text4:#B5B0C2;
  --accent:#F05A22;
  --accent2:#D94C17;
  --accent-dim:rgba(240,90,34,0.10);
  --accent-border:rgba(240,90,34,0.28);
  --tag:#FFD447;
  --tag-ink:#2B2100;
  --save:#12A36F;
}

body {
  background:var(--bg);
  color:var(--text);
}

::selection { background:var(--tag); color:var(--tag-ink); }

:focus-visible {
  outline:2px solid var(--tag);
  outline-offset:3px;
  border-radius:6px;
}

/* ---------- Tipografia display ---------- */
.sc-peek-card__title,
.sc-post-card__title,
.sc-section__title,
.sc-single__title,
.sc-offer-box__now,
.sc-sidebar-widget__title,
.deal-product__price,
.deal-product-price,
.deals-product-title,
.deals-product-price {
  font-family:var(--fd) !important;
  letter-spacing:-0.02em;
}

/* ---------- Header ---------- */
.sc-header {
  background:rgba(14,12,20,0.82) !important;
  -webkit-backdrop-filter:saturate(160%) blur(14px);
  backdrop-filter:saturate(160%) blur(14px);
  border-bottom:1px solid rgba(255,255,255,0.06) !important;
  border-radius:0 0 20px 20px !important;
  box-shadow:0 10px 30px rgba(8,6,14,0.35) !important;
}
.sc-nav a, .sc-nav-link {
  font-weight:500 !important;
  color:rgba(255,255,255,0.78) !important;
  border-radius:999px !important;
  padding:0 14px !important;
  height:34px !important;
}
.sc-nav a:hover, .sc-nav-link:hover {
  color:#fff !important;
  background:rgba(255,255,255,0.07) !important;
}
.sc-nav a.active {
  color:#fff !important;
  background:var(--accent) !important;
}
.sc-hbtn {
  border-radius:999px !important;
  background:rgba(255,255,255,0.06) !important;
  color:rgba(255,255,255,0.85) !important;
}
.sc-hbtn:hover { background:rgba(255,255,255,0.12) !important; }

/* ---------- Hero peek ---------- */
.sc-peek-card {
  border-radius:var(--rl) !important;
  height:220px !important;
}
.sc-peek-card__grad {
  background:linear-gradient(to top, rgba(14,12,20,0.94) 0%, rgba(14,12,20,0.45) 45%, rgba(14,12,20,0) 75%) !important;
}
.sc-peek-card__content { padding:16px 18px !important; }
.sc-peek-card__title {
  font-size:18px !important;
  font-weight:700 !important;
  line-height:1.2 !important;
  text-wrap:balance;
}
.sc-peek-card__meta { color:rgba(255,255,255,0.7) !important; font-size:11.5px !important; }
.sc-peek-dot { border-radius:999px !important; }
.sc-peek-dot.active { background:var(--tag) !important; }
.sc-deals-arrow {
  background:var(--tag) !important;
  color:var(--tag-ink) !important;
  box-shadow:0 6px 18px rgba(255,212,71,0.28) !important;
}
.sc-peek-arrow {
  background:var(--accent) !important;
  color:#fff !important;
  box-shadow:0 6px 18px rgba(255,107,53,0.32) !important;
}
.sc-peek-dot.active { background:var(--accent) !important; }

.sc-peek-card { transition:box-shadow .25s, transform .4s ease, opacity .4s ease !important; }
.sc-peek-card img, .sc-peek-card__bg { transition:transform .6s ease; }
.sc-peek-card:hover {
  box-shadow:0 0 0 2px var(--accent-border), 0 14px 36px rgba(255,107,53,0.14);
}
.sc-peek-card:hover img, .sc-peek-card:hover .sc-peek-card__bg { transform:scale(1.035); }

/* ---------- Frecce: stessa geometria per hero e offerte ---------- */
.sc-peek-fade-wrap, .sc-deals-strip { position:relative !important; }
.sc-peek-arrow, .sc-deals-arrow {
  position:absolute !important;
  width:40px !important;
  height:40px !important;
  margin:0 !important;
  transform:translateY(-50%) !important;
  z-index:20 !important;
}
.sc-peek-arrow--prev, .sc-deals-arrow--prev { left:-20px !important; right:auto !important; }
.sc-peek-arrow--next, .sc-deals-arrow--next { right:-20px !important; left:auto !important; }
/* hero: centrate sulle card (420px), non su card + pallini */
.sc-peek-arrow { top:110px !important; }
.sc-deals-arrow { top:50% !important; }
.sc-peek-arrow:hover, .sc-deals-arrow:hover { transform:translateY(-50%) scale(1.06) !important; }
@media (max-width:600px) { .sc-peek-arrow { top:85px !important; } }

/* ---------- Pillole categoria ---------- */
.sc-cat-pill {
  border-radius:999px !important;
  font-weight:600 !important;
  padding:4px 11px !important;
  font-size:11.5px !important;
}

/* ---------- Titoli di sezione: sottolineatura "cartellino" ---------- */
.sc-section__title,
.sc-sidebar-widget__title {
  font-weight:700 !important;
  position:relative;
  padding-bottom:8px;
}
.sc-section__title::after,
.sc-sidebar-widget__title::after {
  content:"";
  position:absolute;
  left:0;
  bottom:0;
  width:34px;
  height:5px;
  border-radius:3px;
  background:var(--tag);
}
/* ---------- Card promo: forma a cartellino con foro ---------- */
.sc-promo-card {
  position:relative;
  border-radius:16px !important;
  padding:14px 18px 14px 26px !important;
  background:var(--bg2) !important;
  border:1px solid var(--border) !important;
  transition:border-color .2s, transform .2s;
}
.sc-promo-card::before {
  content:"";
  position:absolute;
  left:10px;
  top:50%;
  width:7px;
  height:7px;
  margin-top:-3.5px;
  border-radius:50%;
  background:var(--bg);
  box-shadow:inset 0 0 0 1px var(--border2);
}
.sc-promo-card:hover { border-color:var(--tag) !important; transform:translateY(-2px); }
.sc-promo-card__label {
  text-transform:none !important;
  letter-spacing:0 !important;
  font-weight:600 !important;
  font-size:11.5px !important;
}

/* ---------- Card articoli ---------- */
.sc-post-cards { gap:18px !important; }
.sc-post-card {
  background:var(--bg2) !important;
  border:1px solid var(--border) !important;
  border-radius:var(--rl) !important;
  padding:10px;
  gap:4px !important;
  transition:border-color .2s, transform .2s !important;
}
.sc-post-card:hover {
  border-color:var(--accent-border) !important;
  box-shadow:0 0 0 1px var(--accent-border), 0 10px 28px rgba(255,107,53,0.10);
  transform:translateY(-2px) !important;
}
.sc-post-card__img {
  border-radius:14px !important;
  height:170px !important;
}
.sc-post-card__body { padding:10px 16px !important; }
.sc-post-card__title {
  font-size:19px !important;
  font-weight:700 !important;
  line-height:1.25 !important;
  text-wrap:balance;
}
.sc-post-card__meta {
  display:flex;
  align-items:center;
  gap:10px;
  font-size:12.5px !important;
  color:var(--text3) !important;
}

/* ---------- Box offerta negli articoli: cartellino ---------- */
.sc-offer-box {
  background:var(--bg2) !important;
  border:1px solid var(--border2) !important;
  border-radius:var(--rl) !important;
}
.sc-offer-box__now { color:var(--accent) !important; font-weight:800 !important; }
.sc-offer-box__disc {
  background:var(--tag) !important;
  color:var(--tag-ink) !important;
  font-family:var(--fd) !important;
  font-weight:800 !important;
  border:none !important;
  border-radius:6px 999px 999px 6px !important;
  padding:4px 12px 4px 10px !important;
  transform:rotate(-3deg);
  display:inline-block;
}
.sc-offer-box__save { color:var(--save) !important; }
.sc-offer-box__cta {
  border-radius:999px !important;
  font-weight:700 !important;
}

/* ---------- Striscia offerte ---------- */
.sc-deals-strip #deals#deals .deal-product {
  background:var(--bg2) !important;
  border-radius:18px !important;
  transition:border-color .2s, transform .2s;
}
.sc-deals-strip #deals#deals .deal-product-link:hover .deal-product {
  border-color:var(--tag) !important;
  transform:translateY(-3px);
}
.deal-product__tag {
  position:absolute;
  right:8px;
  bottom:8px;
  background:var(--tag);
  color:var(--tag-ink);
  font-family:var(--fd);
  font-weight:800;
  font-size:13px;
  line-height:1;
  padding:6px 10px 6px 12px;
  border-radius:4px 999px 999px 4px;
  transform:rotate(-4deg);
  box-shadow:0 4px 10px rgba(0,0,0,0.25);
}
.deal-product__tag:empty { display:none; }

/* ---------- Singolo articolo ---------- */
.sc-single__title {
  font-size:clamp(28px, 4vw, 40px) !important;
  font-weight:800 !important;
  line-height:1.12 !important;
  text-wrap:balance;
}
.sc-single__content { font-size:17px; line-height:1.75; }
.sc-single__content h2, .sc-single__content h3 {
  font-family:var(--fd);
  letter-spacing:-0.015em;
}
.sc-single__content a {
  color:var(--accent);
  text-decoration:underline;
  text-decoration-thickness:2px;
  text-underline-offset:3px;
  text-decoration-color:var(--accent-border);
}
.sc-single__content a:hover { text-decoration-color:var(--accent); }
.sc-single__thumb { border-radius:var(--rl) !important; overflow:hidden; }

/* ---------- Sidebar ---------- */
.sc-sidebar-widget {
  background:var(--bg2) !important;
  border:1px solid var(--border) !important;
  border-radius:var(--rl) !important;
}

/* ---------- Banner Telegram ---------- */
.sc-tg-banner {
  border-radius:var(--rl) !important;
  background:#229ED9 !important;
}
.sc-tg-banner__cta { border-radius:999px !important; font-weight:700 !important; }

/* ---------- Bottoni generici ---------- */
.sc-load-more {
  border-radius:999px !important;
  background:var(--accent) !important;
  border:1px solid var(--accent) !important;
  color:#fff !important;
  font-weight:700 !important;
  box-shadow:0 6px 18px rgba(255,107,53,0.28);
  transition:background .2s, transform .2s, box-shadow .2s;
}
.sc-load-more:hover {
  background:var(--accent2) !important;
  transform:translateY(-1px);
  box-shadow:0 10px 26px rgba(255,107,53,0.36);
}
.sc-load-more:disabled { opacity:.7; transform:none; }

/* ---------- Footer ---------- */
.sc-footer {
  background:var(--ink-header) !important;
  border-top:1px solid rgba(255,255,255,0.06) !important;
  border-radius:28px 28px 0 0 !important;
  margin-top:72px !important;
}

/* ---------- Liquid glass: stesso materiale dell'header ---------- */
:root { --glass-bg:rgba(20,18,28,0.62); --glass-line:rgba(255,255,255,0.10); --glass-blur:saturate(170%) blur(18px); }

/* Ricerca a tutto schermo: vetro al posto del nero pieno */
#sc-search-overlay {
  background:rgba(14,12,20,0.55) !important;
  -webkit-backdrop-filter:saturate(160%) blur(22px);
  backdrop-filter:saturate(160%) blur(22px);
}
.sc-search-inner {
  background:var(--glass-bg);
  border:1px solid var(--glass-line) !important;
  border-radius:999px;
  padding:14px 24px !important;
  -webkit-backdrop-filter:var(--glass-blur);
  backdrop-filter:var(--glass-blur);
}
.sc-search-inner:focus-within { border-color:var(--tag) !important; }


/* Menu mobile: overlay a schermo intero, stesso trattamento della ricerca */
#sc-mobile-overlay {
  background:rgba(14,12,20,0.55) !important;
  -webkit-backdrop-filter:saturate(160%) blur(22px);
  backdrop-filter:saturate(160%) blur(22px);
}
#sc-mobile-menu {
  position:fixed !important;
  inset:0 !important;
  left:0 !important;
  width:100% !important;
  max-width:none !important;
  height:100% !important;
  background:rgba(14,12,20,0.55) !important;
  -webkit-backdrop-filter:saturate(160%) blur(22px);
  backdrop-filter:saturate(160%) blur(22px);
  border:none !important;
  border-radius:0 !important;
  box-shadow:none !important;
  display:flex;
  align-items:flex-start;
  justify-content:center;
  overflow-y:auto;
  padding:100px 20px 40px;
  transform:none !important;
  opacity:0;
  visibility:hidden;
  transition:opacity .2s ease;
  z-index:9999 !important;
}
#sc-mobile-menu.open { opacity:1; visibility:visible; }
.sc-mobile-menu__close {
  position:fixed; top:20px; right:24px;
  background:none; border:none; color:rgba(255,255,255,0.6);
  font-size:28px; line-height:1; cursor:pointer; z-index:10000;
}
.sc-mobile-menu__close:hover { color:#fff; }
.sc-mobile-menu__inner { width:100%; max-width:520px; }
.sc-mobile-menu__quicklinks {
  display:flex; gap:10px; margin-bottom:32px;
}
.sc-mobile-menu__quicklink {
  flex:1;
  display:flex; flex-direction:column; align-items:center; gap:6px;
  padding:16px 8px;
  border-radius:16px;
  background:rgba(255,255,255,0.06);
  border:1px solid var(--glass-line);
  color:rgba(255,255,255,0.85);
  font-size:12.5px; font-weight:600;
  text-decoration:none; cursor:pointer; font-family:inherit;
}
.sc-mobile-menu__quicklink.active { background:var(--accent); border-color:var(--accent); color:#fff; }
.sc-mobile-menu__quicklink:hover { text-decoration:none; background:rgba(255,255,255,0.1); }
.sc-mobile-menu__cats-title {
  color:rgba(255,255,255,0.4); font-size:12px; font-weight:700;
  text-transform:uppercase; letter-spacing:.5px; margin-bottom:12px;
}
.sc-mobile-menu__cats { display:flex; flex-wrap:wrap; gap:10px; }
.sc-mobile-menu__cat.sc-cat-pill {
  font-size:14px !important; padding:10px 18px !important;
}

/* Etichetta categoria sopra le foto dell'hero: vetro, leggibile su qualsiasi immagine */
.sc-peek-card .sc-cat-pill {
  background:rgba(255,255,255,0.14) !important;
  border-color:rgba(255,255,255,0.22) !important;
  color:#fff !important;
  -webkit-backdrop-filter:blur(10px);
  backdrop-filter:blur(10px);
}

/* Riflesso sottile sul bordo superiore dell'header, come una lastra */
.sc-header { box-shadow:inset 0 1px 0 rgba(255,255,255,0.06), 0 10px 30px rgba(8,6,14,0.35) !important; }

/* Browser senza supporto al blur: fondo pieno, niente trasparenze illeggibili */
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))) {
  .sc-header { background:#0E0C14 !important; }
  #sc-search-overlay { background:rgba(14,12,20,0.96) !important; }
  #sc-mobile-menu { background:#16131F !important; }
  .sc-search-inner { background:#1D1A27; }
  .sc-peek-card .sc-cat-pill { background:rgba(14,12,20,0.75) !important; }
}

/* ---------- Performance ---------- */
/* Il browser salta il rendering delle card fuori schermo finché non ci arrivi */
.sc-post-card { content-visibility:auto; contain-intrinsic-size:auto 200px; }
.sc-footer { content-visibility:auto; contain-intrinsic-size:auto 400px; }

.sc-single__meta { display:flex; align-items:center; flex-wrap:wrap; gap:8px; }

/* ---------- Disclaimer sopra e sotto la pagina offerte standalone ---------- */
.sc-offers-disclaimers {
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  align-items:baseline;
  gap:4px 16px;
  margin:16px 0 20px;
  text-align:center;
}
.sc-offers-disclaimer {
  margin:0 !important;
  font-size:13px !important;
  color:var(--text2) !important;
  opacity:.9;
}
@media (max-width:560px) {
  .sc-offers-disclaimers { flex-direction:column; gap:2px; }
}

/* ---------- Accessibilità movimento ---------- */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    transition:none !important;
    animation:none !important;
    scroll-behavior:auto !important;
  }
}

@media (max-width:600px) {
  .sc-peek-card { height:170px !important; }
  .sc-peek-card__title { font-size:16px !important; }
  .sc-post-card { padding:8px; }
  .sc-post-card__img { height:190px !important; }
}

/* ---------- Meno spazio tra lo slider in alto e la striscia offerte ---------- */
.sc-hero-slider-wrap { margin-bottom:8px !important; }
