:root{
  --bg:#08140f;
  --panel:#0c1020;
  --panel2:#121a30;
  --text:#f4f7ff;
  --muted:#b9c3e0;
  --line:rgba(255,255,255,.14);
  --line2:rgba(255,255,255,.24);
  --brand:#43d18d;
  --brand2:#9ef7cf;
  --ok:#8ff0c3;
  --shadow: 0 24px 70px rgba(0,0,0,.62);
  --radius: 18px;
  --nj-glass-border: rgba(130, 214, 176, 0.26);
  --nj-glass-border-strong: rgba(170, 245, 210, 0.42);
  --nj-glass-highlight: rgba(255, 255, 255, 0.1);
  --nj-glass-shadow: 0 20px 60px rgba(0, 0, 0, 0.42);
  --nj-glass-shadow-soft: 0 10px 28px rgba(0, 0, 0, 0.28);
  --nj-glass-blur: blur(16px) saturate(142%);
}
*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0;
  font-family: ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, "Apple Color Emoji","Segoe UI Emoji";
  background:
    radial-gradient(1200px 720px at 12% -8%, rgba(67,209,141,.24), transparent 58%),
    radial-gradient(980px 620px at 92% 4%, rgba(158,247,207,.14), transparent 52%),
    radial-gradient(680px 420px at 50% 110%, rgba(104,182,149,.14), transparent 66%),
    linear-gradient(160deg, #08140f, #0e221c 46%, #0a1915);
  color:var(--text);
  line-height:1.35;
}
a{color:inherit;text-decoration:none}
.container{max-width:1120px;margin:0 auto;padding:0 18px}

.topbar{
  position:sticky;top:0;z-index:20;
  backdrop-filter: var(--nj-glass-blur);
  -webkit-backdrop-filter: var(--nj-glass-blur);
  background: linear-gradient(180deg, rgba(15,38,30,.52), rgba(9,24,20,.38));
  border-bottom:1px solid var(--nj-glass-border);
  box-shadow: var(--nj-glass-shadow-soft);
}
.topbar,
.panel,
.card,
.trust,
.kicker{
  position:relative;
  isolation:isolate;
}
.panel::before,
.card::before,
.trust::before,
.kicker::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  border-radius:inherit;
  border-top:1px solid rgba(255,255,255,.14);
  background:linear-gradient(180deg, var(--nj-glass-highlight), transparent 42%);
}
.topbar__inner{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 0}
.brand{display:flex;align-items:center;gap:12px}
.brand__mark{
  width:44px;height:44px;border-radius:12px;
  display:grid;place-items:center;
  background: rgba(255,255,255,.94);
  box-shadow: 0 10px 22px rgba(0,0,0,.2);
  font-weight:800;
  overflow:hidden;
}
.brand__logo{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
}
.brand__text{display:flex;flex-direction:column}
.brand__name{font-weight:800;letter-spacing:.2px}
.brand__tagline{color:var(--muted);font-size:12.5px;margin-top:2px}
.nav{display:flex;gap:14px;flex-wrap:wrap}
.nav a{
  padding:10px 12px;border-radius:12px;
  border:1px solid transparent;
  color:var(--muted);
}
.nav a:hover{border-color:var(--line2);color:var(--text);background:rgba(255,255,255,.03)}

.hero{padding:28px 0 6px}
.hero__grid{display:grid;grid-template-columns: 1.15fr .85fr;gap:18px;align-items:stretch}
@media (max-width: 980px){.hero__grid{grid-template-columns:1fr}}
.kicker{
  display:inline-flex;align-items:center;gap:10px;
  padding:10px 12px;border:1px solid var(--nj-glass-border);
  border-radius:999px;background:linear-gradient(180deg, rgba(16, 38, 32, .4), rgba(10, 24, 20, .28));
  box-shadow: var(--nj-glass-shadow);
  color:var(--muted);font-size:13px
}
h1{font-size:44px;line-height:1.05;margin:14px 0 10px;letter-spacing:-.4px}
@media (max-width: 520px){h1{font-size:36px}}
.lead{color:var(--muted);font-size:16.5px;max-width:62ch}
.hero__actions{display:flex;gap:12px;flex-wrap:wrap;margin:18px 0 14px}
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:10px;
  padding:12px 14px;border-radius:14px;
  border:1px solid rgba(132, 216, 178, .32);
  background: linear-gradient(180deg, rgba(16, 40, 32, .4), rgba(10, 24, 20, .28));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.05), 0 4px 14px rgba(0,0,0,.2);
  color:var(--text);
  font-weight:650;
}
.btn--primary{
  border-color: rgba(116, 232, 182, .52);
  background: linear-gradient(135deg, rgba(67,209,141,.9), rgba(158,247,207,.64));
  color: #f2fff9;
  box-shadow: 0 14px 34px rgba(67,209,141,.24), 0 8px 24px rgba(158,247,207,.18);
}
.btn--ghost:hover{
  border-color: var(--nj-glass-border-strong);
  background: linear-gradient(180deg, rgba(30, 74, 60, .52), rgba(20, 44, 36, .38));
}
.btn--primary:hover{filter:saturate(1.05) brightness(1.03);transform:translateY(-1px)}
.hero__trust{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}
.trust{
  padding:10px 12px;border-radius:14px;border:1px solid var(--nj-glass-border);
  background:linear-gradient(180deg, rgba(16, 38, 32, .4), rgba(10, 24, 20, .28));
  box-shadow: var(--nj-glass-shadow);
}
.trust__num{font-weight:800}
.trust__txt{color:var(--muted);font-size:12.5px}

.hero__panel .panel{
  height:100%;
  border:1px solid var(--nj-glass-border);
  background: linear-gradient(180deg, rgba(22, 54, 44, .58), rgba(10, 24, 20, .42));
  border-radius: var(--radius);
  padding:16px;
  box-shadow: var(--nj-glass-shadow);
}
.panel__title{font-weight:800}
.panel__subtitle{color:var(--muted);font-size:13.5px;margin-top:6px}
.panel__hint{color:var(--muted);font-size:13px;margin-top:12px}

.section{padding:22px 0}
.section__head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:12px}
.section__head h1{margin:0;font-size:34px}
.section__head--hot{
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: 10px;
}
.section__head--hot .muted {
  max-width: 42rem;
  margin: 0;
}
.section__head--hot .btn {
  margin-top: 6px;
}
/* Reparti: titolo centrato, badge “caldo” in palette smeraldo (FOMO ma coerente col brand) */
.section__head--reparti{
  flex-direction:column;
  align-items:center;
  text-align:center;
  gap:10px;
  margin-bottom:14px;
}
.section__head--reparti .muted{
  max-width:40rem;
  margin:0;
}
.section__head--reparti .section-title--reparti{
  position:relative;
  isolation:isolate;
  font-size:clamp(20px, 4vw, 30px);
  font-weight:950;
  letter-spacing:.08em;
  text-transform:uppercase;
  line-height:1.12;
  margin:0;
  padding:11px 22px;
  border-radius:14px;
  border:2px solid rgba(94, 234, 212, .52);
  display:inline-block;
  max-width:100%;
  box-sizing:border-box;
  color:#f0fdf4;
  background:linear-gradient(145deg, #052e26 0%, #0d4d3a 46%, #115e59 100%);
  text-shadow:0 1px 0 rgba(0,0,0,.35);
  animation:repartiTitlePulse 1.35s ease-in-out infinite alternate;
  box-shadow:
    0 0 14px rgba(67, 209, 141, .38),
    0 0 28px rgba(20, 184, 166, .18),
    inset 0 1px 0 rgba(255, 255, 255, .12);
}
.section__head--reparti .section-title--reparti::after{
  content:"";
  position:absolute;
  inset:0;
  border-radius:inherit;
  pointer-events:none;
  background:linear-gradient(
    105deg,
    transparent 36%,
    rgba(255, 255, 255, .14) 48%,
    rgba(185, 255, 71, .12) 52%,
    transparent 64%
  );
  background-size:220% 100%;
  animation:repartiTitleShimmer 2.6s ease-in-out infinite;
  mix-blend-mode:overlay;
}
@keyframes repartiTitlePulse{
  from{
    border-color:rgba(94, 234, 212, .48);
    background:linear-gradient(145deg, #052e26 0%, #0d4d3a 48%, #115e59 100%);
    color:#ecfdf5;
    box-shadow:
      0 0 12px rgba(67, 209, 141, .32),
      0 0 26px rgba(45, 212, 191, .14),
      inset 0 1px 0 rgba(255, 255, 255, .1);
  }
  to{
    border-color:rgba(158, 247, 207, .78);
    background:linear-gradient(145deg, #0a3d33 0%, #127a5c 42%, #14b8a6 95%);
    color:#fff;
    box-shadow:
      0 0 22px rgba(67, 209, 141, .58),
      0 0 38px rgba(94, 234, 212, .26),
      inset 0 1px 0 rgba(255, 255, 255, .18);
  }
}
@keyframes repartiTitleShimmer{
  0%, 100%{ background-position: 160% 0; opacity: .35; }
  45%{ opacity: .95; }
  50%{ background-position: -60% 0; opacity: .85; }
}
@media (max-width: 520px){
  .section__head--reparti .section-title--reparti{ font-size: clamp(17px, 5.2vw, 24px); padding: 9px 16px; }
}
@media (prefers-reduced-motion: reduce){
  .section__head--reparti .section-title--reparti,
  .section__head--reparti .section-title--reparti::after{
    animation:none !important;
  }
  .section__head--reparti .section-title--reparti{
    box-shadow:0 0 16px rgba(67, 209, 141, .4), inset 0 1px 0 rgba(255, 255, 255, .12);
  }
}
.section__head-left{display:flex;align-items:center;gap:12px;min-width:0}
.section__img{
  width:92px;height:60px;flex:0 0 auto;
  border-radius:14px;
  border:1px solid rgba(255,255,255,.14);
  background:rgba(255,255,255,.02);
  box-shadow: 0 14px 38px rgba(0,0,0,.35);
  object-fit:cover;
}
h2{margin:0;font-size:22px}
.link{color:var(--muted)}
.link:hover{color:var(--text)}
.muted{color:var(--muted)}

/* Rail orizzontale (scroll-snap, peek): home HOT, riutilizzabile altrove */
.rail{
  width:100vw;
  max-width:100vw;
  margin-left:calc(50% - 50vw);
  margin-right:calc(50% - 50vw);
  margin-top:6px;
  padding:8px 0 6px;
  background:linear-gradient(
    92deg,
    rgba(12, 46, 34, .5) 0%,
    rgba(8, 24, 20, .28) 42%,
    rgba(14, 52, 40, .48) 100%
  );
  border-block:1px solid rgba(130, 214, 176, .14);
}
.rail__track{
  display:flex;
  flex-direction:row;
  align-items:stretch;
  gap:14px;
  overflow-x:auto;
  overflow-y:hidden;
  padding:8px 18px 20px;
  scroll-snap-type:x mandatory;
  scroll-padding-inline:18px;
  -webkit-overflow-scrolling:touch;
  overscroll-behavior-x:contain;
  scrollbar-width:thin;
  scrollbar-color:rgba(67, 209, 141, .38) rgba(0, 0, 0, .28);
}
.rail__track::-webkit-scrollbar{height:5px}
.rail__track::-webkit-scrollbar-track{background:rgba(0, 0, 0, .28);border-radius:10px}
.rail__track::-webkit-scrollbar-thumb{background:rgba(67, 209, 141, .34);border-radius:10px}
.rail__track > .card{
  flex:0 0 min(17.75rem, 76vw);
  width:min(17.75rem, 76vw);
  max-width:min(17.75rem, 76vw);
  min-width:0;
  scroll-snap-align:start;
}
@media (min-width: 900px){
  .rail__track > .card{
    flex:0 0 18.25rem;
    width:18.25rem;
    max-width:18.25rem;
  }
}
@media (prefers-reduced-motion: reduce){
  .rail__track{scroll-snap-type:x proximity}
}

.grid{display:grid;gap:12px}
.grid--3{grid-template-columns: repeat(3, minmax(0,1fr))}
.grid--2{grid-template-columns: repeat(2, minmax(0,1fr))}
.grid--4{grid-template-columns: repeat(4, minmax(0,1fr))}
@media (max-width: 980px){.grid--3{grid-template-columns: repeat(2, minmax(0,1fr))}}
@media (max-width: 1100px){.grid--4{grid-template-columns: repeat(2, minmax(0,1fr))}}
@media (max-width: 640px){.grid--3,.grid--2,.grid--4{grid-template-columns:1fr}}

/* Reparti (home + /categorie/): griglia chip emoji + pill stile badge */
.reparto-grid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:14px 16px;
  align-items:stretch;
}
@media (min-width: 900px){
  .reparto-grid{grid-template-columns:repeat(4, minmax(0, 1fr))}
}
@media (max-width: 520px){
  .reparto-grid{grid-template-columns:1fr}
}
.reparto-chip{
  display:flex;
  flex-direction:row;
  align-items:center;
  min-width:0;
  outline:none;
  text-decoration:none;
  color:inherit;
  filter:drop-shadow(0 4px 12px rgba(0, 0, 0, .28));
  transition:transform .18s ease, filter .2s ease;
}
.reparto-chip:hover{
  transform:translateY(-2px);
  filter:drop-shadow(0 10px 24px rgba(0, 0, 0, .38));
}
.reparto-chip:focus-visible{
  border-radius:999px;
  box-shadow:0 0 0 3px rgba(67, 209, 141, .55), 0 8px 26px rgba(0, 0, 0, .35);
}
.reparto-chip__icon{
  flex:0 0 auto;
  width:3.15rem;
  height:3.15rem;
  display:grid;
  place-items:center;
  font-size:1.45rem;
  line-height:1;
  margin-right:-0.55rem;
  z-index:2;
  border-radius:16px 4px 4px 16px;
  clip-path:polygon(0 0, 100% 0, 82% 100%, 0 100%);
  background:linear-gradient(145deg, #0d4d3a 0%, #43d18d 52%, #127a5c 100%);
  box-shadow:0 2px 10px rgba(0, 0, 0, .32);
  border:1px solid rgba(255, 255, 255, .28);
  border-right:none;
}
.reparto-chip__pill{
  flex:1 1 auto;
  min-width:0;
  display:flex;
  flex-direction:row;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:11px 16px 11px 1.35rem;
  border-radius:999px;
  border:2px solid rgba(67, 209, 141, .5);
  background:rgba(252, 252, 254, .97);
  color:#0f1f18;
  box-shadow:0 2px 0 rgba(255, 255, 255, .55) inset, 0 1px 8px rgba(0, 0, 0, .08);
}
.reparto-chip:hover .reparto-chip__pill{
  border-color:rgba(158, 247, 207, .78);
}
.reparto-chip__name{
  font-weight:800;
  font-size:14px;
  line-height:1.25;
  letter-spacing:-0.02em;
  overflow:hidden;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
}
.reparto-chip__arr{
  flex:0 0 auto;
  font-weight:900;
  font-size:1rem;
  color:#047857;
  opacity:.88;
}
@media (prefers-reduced-motion: reduce){
  .reparto-chip{transition:none}
}

.card{
  border:1px solid var(--nj-glass-border);
  background:linear-gradient(180deg, rgba(18, 44, 36, .52), rgba(10, 24, 20, .34));
  border-radius: var(--radius);
  padding:10px 12px;
  transition: transform .18s ease, box-shadow .22s ease, border-color .2s ease, background .2s ease;
  display:grid;
  grid-template-columns: minmax(128px, 42%) 1fr;
  gap:10px 12px;
  align-items:stretch;
  min-height:132px;
  box-shadow: var(--nj-glass-shadow);
}
.card:hover{
  transform: translateY(-1px);
  border-color: var(--nj-glass-border-strong);
  box-shadow: 0 24px 68px rgba(0,0,0,.5);
}
/* Card deal (home, reparti, Segnali HOT, …): stesso layout ovunque */
.card--deal{
  align-items:start;
  grid-template-columns:minmax(126px, 40%) 1fr;
  gap:10px 14px;
  height:auto;
  min-height:0;
}
.card__media{
  border-radius: 12px;
  border:1px solid var(--line);
  overflow:hidden;
  background: rgba(255,255,255,.02);
  width:100%;
  min-height:120px;
  height:100%;
  align-self:stretch;
}
.card__img{width:100%;height:100%;min-height:120px;object-fit:cover;display:block}
.card__body{
  min-width:0;
  display:flex;
  flex-direction:column;
  align-items:stretch;
  justify-content:flex-start;
  gap:0;
  min-height:0;
}
.card__main{
  flex:1;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  text-align:center;
  gap:6px;
  min-height:0;
}
.card__media-col{
  display:flex;
  flex-direction:column;
  align-items:stretch;
  gap:8px;
  min-width:0;
  align-self:start;
}
.card--deal .card__media-col{
  width:100%;
}
.card--deal .card__media{
  background:rgba(255,255,255,.96);
  border-color:rgba(255,255,255,.22);
  border-radius:16px;
  aspect-ratio:3 / 4;
  height:auto;
  min-height:0;
  width:100%;
}
.card--deal .card__img{
  min-height:0;
  width:100%;
  height:100%;
  object-fit:contain;
}

/* Badge −XX% sotto l’immagine — pennellata inclinata + brillantino; colori per tier */
.card--deal .card__media-col{
  overflow:visible;
  padding-bottom:4px;
}
.card--deal .card__media-col .card__fomo-pct{
  align-self:flex-start;
  margin-inline-start:8px;
  margin-inline-end:0;
  top:12px;
}
.card__fomo-pct{
  --fomo-tilt:-14deg;
  position:relative;
  z-index:1;
  display:flex;
  align-items:center;
  justify-content:center;
  align-self:center;
  width:fit-content;
  min-width:min(94%,10.5rem);
  max-width:100%;
  box-sizing:border-box;
  padding:10px 22px 11px;
  margin-inline:auto;
  border:none;
  border-radius:999px;
  font-weight:950;
  font-size:14px;
  line-height:1;
  letter-spacing:-0.04em;
  white-space:nowrap;
  overflow:visible;
  transform:rotate(var(--fomo-tilt));
  transform-origin:center center;
  /* Silhouette pennellata piu' circolare/ovale */
  clip-path:polygon(
    2% 46%, 6% 28%, 14% 16%, 26% 10%, 40% 8%, 54% 10%, 68% 8%, 82% 12%, 92% 22%, 98% 38%, 100% 50%,
    98% 64%, 92% 78%, 82% 88%, 68% 92%, 54% 94%, 40% 92%, 26% 90%, 14% 84%, 6% 72%, 2% 58%
  );
  filter:drop-shadow(0 5px 10px rgba(0,0,0,.4));
  isolation:isolate;
  background-size:200% 200%;
  animation:fomo-shimmer 2.6s ease-in-out infinite, fomo-pop-brush 2s ease-in-out infinite;
}
.card__fomo-pct::before{
  content:"";
  position:absolute;
  inset:-35%;
  pointer-events:none;
  opacity:.55;
  background:
    radial-gradient(circle at 18% 28%, rgba(255,255,255,.55) 0%, transparent 0.35rem),
    radial-gradient(circle at 62% 18%, rgba(255,255,255,.45) 0%, transparent 0.28rem),
    radial-gradient(circle at 78% 72%, rgba(255,255,255,.4) 0%, transparent 0.32rem),
    radial-gradient(circle at 35% 65%, rgba(255,255,255,.35) 0%, transparent 0.25rem),
    radial-gradient(circle at 88% 48%, rgba(255,255,255,.5) 0%, transparent 0.22rem);
  animation:fomo-sparkle 2.2s ease-in-out infinite;
  mix-blend-mode:overlay;
}
.card__fomo-pct::after{
  content:"";
  position:absolute;
  inset:-5%;
  pointer-events:none;
  clip-path:polygon(
    2% 46%, 6% 28%, 14% 16%, 26% 10%, 40% 8%, 54% 10%, 68% 8%, 82% 12%, 92% 22%, 98% 38%, 100% 50%,
    98% 64%, 92% 78%, 82% 88%, 68% 92%, 54% 94%, 40% 92%, 26% 90%, 14% 84%, 6% 72%, 2% 58%
  );
  background:linear-gradient(
    108deg,
    transparent 32%,
    rgba(255,255,255,.55) 46%,
    rgba(255,255,255,.2) 52%,
    transparent 66%
  );
  background-size:220% 100%;
  animation:fomo-glint 2.5s ease-in-out infinite;
  mix-blend-mode:soft-light;
}
/* Errore di prezzo — rosso pieno (poco / niente platino), come etichetta offerta */
.card__fomo-pct--errore{
  font-size:13px;
  color:#fff;
  text-shadow:
    0 1px 0 rgba(0,0,0,.45),
    0 0 12px rgba(255,60,80,.45);
  background:linear-gradient(
    102deg,
    #7f0f1a 0%,
    #b91c1c 22%,
    #dc2626 45%,
    #ef4444 58%,
    #c81e1e 78%,
    #991b1b 100%
  );
  box-shadow:none;
  animation:fomo-shimmer-red 2s ease-in-out infinite, fomo-pop-brush 1.7s ease-in-out infinite;
}
.card__fomo-pct--errore::before{
  opacity:.65;
  animation-duration:1.9s;
}
/* ECCELLENTE — pennellata ambra / arancio */
.card__fomo-pct--eccellente{
  font-size:13px;
  color:#fff8e8;
  text-shadow:0 1px 2px rgba(0,0,0,.5);
  background:linear-gradient(102deg, #8a5a10 0%, #c78a1b 35%, #f0c75a 55%, #b67812 100%);
  box-shadow: 0 6px 16px rgba(190,146,62,.22);
  animation: none;
}
/* SUPER OFFERTA — rosso/arancio aggressivo senza arrivare a errore */
.card__fomo-pct--super{
  font-size:13px;
  color:#fff7ed;
  text-shadow:
    0 1px 2px rgba(0,0,0,.52),
    0 0 10px rgba(249,115,22,.36);
  background:linear-gradient(102deg, #7f1d1d 0%, #b91c1c 30%, #ea580c 58%, #9a3412 100%);
  box-shadow:0 7px 18px rgba(185,28,28,.26);
  animation-duration:2.25s, 1.9s;
}
/* OTTIMA — verde intenso */
.card__fomo-pct--ottima{
  font-size:13px;
  color:#f0fdf4;
  text-shadow:0 1px 2px rgba(0,0,0,.5);
  background:linear-gradient(102deg, #064e3b 0%, #047857 35%, #10b981 55%, #065f46 100%);
  animation-duration:2.4s, 2s;
}
/* BUONA — teal */
.card__fomo-pct--buona{
  font-size:13px;
  color:#ecfeff;
  text-shadow:0 1px 2px rgba(0,0,0,.55);
  background:linear-gradient(102deg, #0e7490 0%, #0891b2 40%, #22d3ee 58%, #155e75 100%);
  animation-duration:2.5s, 2.05s;
}
/* SCARSA — ambra / oro scuro */
.card__fomo-pct--scarsa{
  font-size:13px;
  color:#fffbeb;
  text-shadow:0 1px 2px rgba(0,0,0,.55);
  background:linear-gradient(102deg, #713f12 0%, #a16207 38%, #eab308 55%, #854d0e 100%);
  animation-duration:2.6s, 2.15s;
}
/* Prezzo pieno / ND — grigio grafite */
.card__fomo-pct--pieno,
.card__fomo-pct--nd{
  font-size:13px;
  color:#f8fafc;
  text-shadow:0 1px 2px rgba(0,0,0,.6);
  background:linear-gradient(102deg, #1e293b 0%, #475569 45%, #64748b 65%, #0f172a 100%);
  animation-duration:2.7s, 2.2s;
}
@keyframes fomo-shimmer{
  0%, 100%{ background-position:0% 50%; }
  50%{ background-position:100% 50%; }
}
@keyframes fomo-shimmer-red{
  0%, 100%{ background-position:0% 50%; filter:drop-shadow(0 5px 10px rgba(0,0,0,.4)) brightness(1); }
  50%{ background-position:100% 50%; filter:drop-shadow(0 6px 14px rgba(220,38,38,.5)) brightness(1.06); }
}
@keyframes fomo-glint{
  0%, 100%{ background-position:160% 0; opacity:.4; }
  45%{ opacity:.95; }
  50%{ background-position:-50% 0; opacity:.85; }
}
@keyframes fomo-sparkle{
  0%, 100%{ transform:translate(0,0) scale(1); opacity:.5; }
  33%{ transform:translate(2%,-1%) scale(1.03); opacity:.75; }
  66%{ transform:translate(-1%,2%) scale(.98); opacity:.6; }
}
@keyframes fomo-pop-brush{
  0%, 100%{ transform:rotate(var(--fomo-tilt)) scale(1); }
  50%{ transform:rotate(var(--fomo-tilt)) scale(1.045); }
}
@media (prefers-reduced-motion: reduce){
  .card__fomo-pct,
  .card__fomo-pct::before,
  .card__fomo-pct::after{
    animation:none !important;
  }
  .card__fomo-pct{
    background-position:50% 50%;
    filter:drop-shadow(0 4px 8px rgba(0,0,0,.35));
  }
  .card__fomo-pct--errore{ filter:drop-shadow(0 4px 10px rgba(185,28,28,.4)); }
}
.card--deal .card__main{
  align-items:stretch;
  text-align:center;
  justify-content:flex-start;
  gap:7px;
  height:100%;
}
.card--deal .card__subtitle{display:none}
.card--deal .card__title{
  text-align:center;
  align-self:stretch;
  font-size:13.5px;
  line-height:1.3;
  min-height:3.9em;
}
.card--deal .card__price-line{
  display:flex;
  justify-content:center;
  margin:4px 0 6px;
}
.card--deal .card__price-pill{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:5px;
  width:100%;
  max-width:100%;
  border:1px solid rgba(255,255,255,.1);
  background:rgba(18,20,26,.92);
  border-radius:16px;
  padding:8px 12px;
  text-align:center;
  box-shadow:0 4px 14px rgba(0,0,0,.25);
  min-height:74px;
}
.card--deal .card__price-was{
  font-size:12.5px;
  font-weight:700;
  line-height:1.3;
  color:rgba(210,215,230,.88);
  min-height:14px;
}
.card--deal .card__price-was-num{
  text-decoration:line-through;
  text-decoration-color:rgba(255,90,120,.9);
  text-decoration-thickness:2px;
}
.card--deal .card__price-now{
  font-size:15px;
  font-weight:950;
  line-height:1.15;
  letter-spacing:-0.02em;
  color:#b9ff47;
  text-shadow:
    0 0 8px rgba(185,255,71,.55),
    0 0 16px rgba(92,255,120,.35);
}
.card--deal .card__price-now-line{
  display:flex;
  align-items:baseline;
  justify-content:center;
  gap:8px;
  min-height:17px;
}
.card--deal .card__price-stars{
  font-size:12px;
  font-weight:900;
  line-height:1;
  color:rgba(232,240,255,.94);
  letter-spacing:.01em;
  text-shadow:0 0 6px rgba(255,255,255,.15);
}
.card--deal .card__price-stars-icon{
  color:#facc15;
  text-shadow:0 0 8px rgba(250,204,21,.42);
}
.card--deal .chips{
  justify-content:center;
  margin-top:0;
}
.card--deal .card__cta{
  margin-top:auto;
  padding-top:6px;
  text-align:center;
  align-self:stretch;
  line-height:1;
  color:#b9ff47;
  text-shadow:
    0 0 6px rgba(185,255,71,.45),
    0 0 12px rgba(92,255,120,.28);
  animation: price-hint-pulse 1.8s ease-in-out infinite;
}
.card--deal .card__deal-tier{
  width:100%;
  align-self:stretch;
  justify-content:stretch;
  margin:0 0 10px;
  max-width:none;
}
.card--deal .card__deal-tier .deal-tier{
  width:100%;
  max-width:none;
  box-sizing:border-box;
  align-items:center;
  text-align:center;
}
.card--deal .card__deal-tier .deal-tier--compact{
  padding:8px 10px;
}

.card__title{
  font-weight:800;
  font-size:14px;
  line-height:1.25;
  margin:0;
  text-align:center;
  display:-webkit-box;
  -webkit-line-clamp:3;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.card__subtitle{
  color:rgba(199,193,160,.88);
  font-size:11.5px;
  line-height:1.3;
  margin:0;
  min-height:0;
  text-align:center;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.card__cta{
  margin-top:2px;
  color: rgba(239,233,214,.92);
  font-weight:700;
  font-size:12.5px;
  text-align:center;
  min-height:0;
  display:block;
}
.dealcta{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:38px;
  padding:8px 14px;
  border-radius:12px;
  border:1px solid rgba(222,198,146,.42);
  background: linear-gradient(135deg, rgba(46,52,64,.92), rgba(28,32,40,.9));
  color: #f3e8cb;
  font-size:13.5px;
  font-weight:800;
  letter-spacing:.01em;
  box-shadow: 0 8px 22px rgba(0,0,0,.24), inset 0 1px 0 rgba(255,255,255,.08);
}
.dealcta:hover{
  border-color: rgba(236,208,150,.62);
  background: linear-gradient(135deg, rgba(56,62,74,.95), rgba(34,38,48,.92));
  color:#fff2d6;
  filter: saturate(1.02) brightness(1.05);
  transform: translateY(-1px);
}
.card__cta::after{display:none}
.chips{
  display:flex;
  gap:4px;
  flex-wrap:wrap;
  margin-top:0;
  align-items:center;
  justify-content:center;
  row-gap:4px;
}
.chip{
  font-size:10.5px;
  line-height:1.2;
  color:rgba(239,233,214,.92);
  border:1px solid var(--line);
  background:rgba(255,255,255,.04);
  border-radius:999px;
  padding:3px 7px;
  white-space:nowrap;
}

.card__deal-tier{
  margin:0 0 6px;
  display:flex;
  flex-wrap:wrap;
  align-items:flex-start;
  justify-content:flex-end;
  align-self:flex-end;
  max-width:100%;
}

.badges{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0 6px}
.badge{font-size:12px;border-radius:999px;padding:6px 10px;border:1px solid var(--line);background:rgba(255,255,255,.02);color:rgba(239,233,214,.94);font-weight:800;letter-spacing:.1px}

.category-hero{
  border:1px solid var(--line);
  border-radius: var(--radius);
  overflow:hidden;
  background: rgba(255,255,255,.03);
  margin: 8px 0 14px;
  box-shadow: var(--shadow);
  position:relative;
  /* Un solo banner a tutta larghezza (niente “ali” sfocate tipo carosello) */
  aspect-ratio: 21 / 9;
  max-height: min(420px, 52vw);
}
.category-hero::after{
  content:"";
  position:absolute; inset:0;
  background: linear-gradient(180deg, rgba(7,9,7,.04), rgba(7,9,7,.14));
  pointer-events:none;
  z-index:2;
}
.category-hero__img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit: cover;
  object-position: center;
  display:block;
  z-index:1;
}

.breadcrumbs{
  display:flex;gap:8px;flex-wrap:wrap;
  color:var(--muted);font-size:13px;margin-bottom:12px
}
.breadcrumbs a:hover{color:var(--text)}
.breadcrumbs span{opacity:.8}

.product{
  display:block;
  width:100%;
}
.product__main{
  width:100%;
  max-width:900px;
  margin-inline:auto;
}
.cta{display:flex;gap:10px;flex-wrap:wrap;margin:14px 0 10px}
.cta--compact{margin-top:10px}
.callout{
  border:1px solid rgba(47,111,78,.28);
  background: rgba(47,111,78,.08);
  border-radius: var(--radius);
  padding:12px 14px;
  color: rgba(239,233,214,.96);
  margin: 12px 0;
}

.product__image{
  margin: 14px 0 6px;
  border:1px solid var(--line);
  border-radius: var(--radius);
  overflow:hidden;
  background: rgba(255,255,255,.02);
  aspect-ratio: 4 / 3;
}
.product__img{width:100%;height:100%;display:block;object-fit:contain}
.product__hero{
  display:grid;
  grid-template-columns:minmax(0,1.22fr) minmax(320px,.95fr);
  gap:14px;
  align-items:start;
  max-width:900px;
  margin-inline:auto;
}
.product__hero .product__image{
  margin:0;
  aspect-ratio:1 / 1;
  padding:8px;
}
.product__hero .product__img{
  transform:scale(1.03);
  transform-origin:center center;
}
.product__action-stack{
  display:grid;
  gap:10px;
  align-content:start;
  height:100%;
}
.product__tier-slot .badges{
  margin:0;
}
.product__tier-slot .deal-tier{
  width:100%;
  text-align:center;
  align-items:center;
  transform:translateY(-5px);
}
.product__hint-under-tier{
  margin-top:-10px;
  margin-bottom:2px;
  font-size:12.5px;
}
.product__metric{
  border:1px solid var(--line);
  background:rgba(12,16,32,.55);
  border-radius:14px;
  padding:10px 12px;
  text-align:center;
}
.product__rating{
  margin-top:4px;
  font-size:12.5px;
  font-weight:900;
  color:rgba(232,240,255,.94);
  text-shadow:0 0 6px rgba(255,255,255,.15);
}
.product__rating .card__price-stars{
  font-size:inherit;
  font-weight:900;
  color:rgba(232,240,255,.94);
  letter-spacing:.01em;
  white-space:nowrap;
}
.product__rating .card__price-stars-icon{
  color:#facc15;
  text-shadow:0 0 8px rgba(250,204,21,.42);
}
.product__discount{
  display:flex;
  justify-content:center;
  padding-top:2px;
}
.product__discount .card__fomo-pct{
  min-width:168px;
}
.product__desc-box{
  border:1px solid rgba(255,255,255,.14);
  background:rgba(10,14,26,.62);
  border-radius:12px;
  padding:10px 11px;
  text-align:left;
  box-shadow:0 4px 12px rgba(0,0,0,.22);
}
.product__desc-title{
  font-size:11px;
  font-weight:900;
  letter-spacing:.03em;
  text-transform:uppercase;
  color:rgba(188,206,255,.88);
  margin-bottom:5px;
}
.product__desc-text{
  font-size:12.5px;
  line-height:1.35;
  color:rgba(232,240,255,.9);
  overflow:hidden;
  display:-webkit-box;
  line-clamp:3;
  -webkit-line-clamp:3;
  -webkit-box-orient:vertical;
}
.product__discount .card__fomo-pct--stamp{
  --fomo-tilt:0deg;
  min-width:122px;
  padding:8px 16px;
  border-radius:12px;
  border:3px solid rgba(252,165,165,.95);
  clip-path:none;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:2px;
  font-size:30px;
  font-weight:950;
  letter-spacing:-.02em;
  line-height:1;
  color:#fff;
  text-shadow:
    0 1px 0 rgba(0,0,0,.35),
    0 0 8px rgba(255,255,255,.22);
  transform:rotate(0deg);
  background:linear-gradient(
    102deg,
    #7f0f1a 0%,
    #b91c1c 22%,
    #dc2626 45%,
    #ef4444 58%,
    #c81e1e 78%,
    #991b1b 100%
  );
  background-size:200% 200%;
  box-shadow:
    0 0 0 2px rgba(255,240,240,.86) inset,
    0 8px 16px rgba(180,10,34,.35);
  animation:fomo-shimmer-red 2s ease-in-out infinite, fomo-pop-brush 1.7s ease-in-out infinite;
  overflow:hidden;
}
.product__discount .card__fomo-pct--stamp::before{
  content:"";
  position:absolute;
  inset:0;
  border-radius:inherit;
  background:
    radial-gradient(circle at 12% 18%, rgba(255,255,255,.42) 0 1px, transparent 1.5px),
    radial-gradient(circle at 76% 26%, rgba(255,255,255,.38) 0 1px, transparent 1.6px),
    radial-gradient(circle at 36% 62%, rgba(255,255,255,.3) 0 1.2px, transparent 1.8px),
    radial-gradient(circle at 84% 72%, rgba(255,255,255,.26) 0 1px, transparent 1.4px),
    repeating-linear-gradient(19deg, rgba(68,0,8,.42) 0 2px, rgba(190,35,50,.08) 2px 4px, transparent 4px 8px),
    repeating-linear-gradient(-16deg, rgba(255,255,255,.08) 0 1px, transparent 1px 5px);
  opacity:.62;
  mix-blend-mode:soft-light;
  pointer-events:none;
}
.product__discount .card__fomo-pct--stamp::after{
  display:none;
}
.product__discount .card__fomo-pct--stamp .stamp__pct{
  position:relative;
  display:inline-block;
  animation:stamp-pct-pulse 1.45s ease-in-out infinite;
}
.product__discount .card__fomo-pct--stamp .stamp__pct::after{
  content:"";
  position:absolute;
  inset:-4px -6px;
  background:linear-gradient(105deg, transparent 28%, rgba(255,255,255,.82) 50%, transparent 72%);
  transform:translateX(-145%);
  animation:stamp-pct-glint 2.2s linear infinite;
  mix-blend-mode:screen;
  pointer-events:none;
}
.product__discount .card__fomo-pct--stamp .stamp__bang{
  opacity:.95;
}
@keyframes stamp-pct-pulse{
  0%,100%{filter:brightness(1); text-shadow:0 0 2px rgba(255,255,255,.15);}
  50%{filter:brightness(1.18); text-shadow:0 0 10px rgba(255,255,255,.5);}
}
@keyframes stamp-pct-glint{
  0%{transform:translateX(-145%);}
  100%{transform:translateX(145%);}
}
.product__action-stack .cta{
  margin-top:auto;
  display:flex;
  justify-content:center;
}
@media (max-width: 980px){
  .product__hero{
    grid-template-columns:1fr;
    max-width:none;
  }
  .product__hero .product__img{
    transform:none;
  }
}

.rank__media{
  margin: 10px 0 6px;
  border:1px solid var(--line);
  border-radius: var(--radius);
  overflow:hidden;
  background: rgba(255,255,255,.02);
  aspect-ratio: 4 / 3;
}
.rank__img{width:100%;height:100%;display:block;object-fit:contain}
.cols{display:grid;gap:12px}
.cols--2{grid-template-columns: repeat(2, minmax(0,1fr))}
@media (max-width: 760px){.cols--2{grid-template-columns:1fr}}
.box{
  border:1px solid var(--line);
  background:rgba(255,255,255,.02);
  border-radius: var(--radius);
  padding:14px
}
.box__title{font-weight:800;margin-bottom:8px}
ul{margin:10px 0 0;padding-left:18px;color:rgba(231,238,252,.92)}
li{margin:6px 0;color:rgba(231,238,252,.92)}

.sidecard{
  position:sticky;top:90px;
  border:1px solid var(--line);
  background:rgba(255,255,255,.02);
  border-radius: var(--radius);
  padding:14px
}
.sidecard__title{font-weight:800;margin-bottom:10px}
.sidecard__link{
  display:block;padding:10px 12px;border-radius:14px;
  border:1px solid var(--line);margin-top:8px;color:var(--muted)
}
.sidecard__link:hover{color:var(--text);border-color:rgba(124,92,255,.35);background:rgba(124,92,255,.06)}
.sidecard__divider{height:1px;background:var(--line);margin:12px 0}

.stack{display:grid;gap:12px}
.rank{
  border:1px solid var(--line);
  background:rgba(255,255,255,.02);
  border-radius: var(--radius);
  padding:14px
}
.rank__head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap}
.rank__title{font-weight:900}
.rank__body{margin-top:8px}

.search{margin-top:12px}
.search__input{
  width:100%;
  padding:12px 12px;
  border-radius:14px;
  border:1px solid var(--line);
  background:rgba(255,255,255,.02);
  color:var(--text);
  outline:none;
}
.search__input:focus{border-color:rgba(124,92,255,.45);box-shadow:0 0 0 4px rgba(124,92,255,.14)}
.search__results{display:grid;gap:8px;margin-top:10px}
.result{
  border:1px solid var(--line);
  border-radius:14px;
  padding:10px 12px;
  background:rgba(255,255,255,.02)
}
.result:hover{border-color:rgba(34,211,238,.30);background:rgba(34,211,238,.06)}
.result__meta{display:flex;gap:8px;align-items:center;color:var(--muted);font-size:12.5px}
.result .badge{padding:4px 8px}
.result__title{margin-top:6px;font-weight:800}
.result__subtitle{margin-top:4px;color:var(--muted);font-size:13px}
.result .deal-tier{ margin-top:8px }
.result .deal-tier--compact{ max-width:100% }

.footer{
  border-top:1px solid var(--line);
  margin-top:28px;
  padding:18px 0 26px;
  background: rgba(7,10,18,.55);
}
.footer__inner{display:flex;flex-direction:column;gap:10px}
.footer__note{
  color: rgba(185,195,224,.78);
  font-size: 12.5px;
  letter-spacing: .1px;
}
.footer__meta{display:flex;gap:10px;flex-wrap:wrap;color:var(--muted)}
.footer__meta a:hover{color:var(--text)}
.dot{opacity:.7}

.prose{max-width: 78ch}
.prose--about h2{
  font-size: 1.15rem;
  font-weight: 850;
  margin: 1.65rem 0 .65rem;
  line-height: 1.25;
  color: rgba(244,247,255,.96);
}
.prose--about h2:first-of-type{margin-top: 1.1rem}
.prose--about ul{margin: .5rem 0 1rem 1.15rem;padding:0}
.prose--about li{margin: .45rem 0;line-height: 1.5}
.prose--about p{line-height: 1.6}

.badge--heat{
  border-color: rgba(60,240,255,.40);
  background: rgba(60,240,255,.10);
}
.badge--deal{
  border-color: rgba(116,232,182,.46);
  background: rgba(67,209,141,.14);
}

/* Fascia sconto — stesso calcolo ovunque (prezzo/listino, arrotondato) */
.deal-tier{
  display:inline-flex;
  flex-direction:column;
  gap:3px;
  padding:10px 14px;
  border-radius:14px;
  border:2px solid rgba(255,255,255,.2);
  font-weight:900;
  letter-spacing:.04em;
  text-transform:uppercase;
  line-height:1.15;
  max-width:100%;
  box-shadow:0 6px 22px rgba(0,0,0,.35);
}
.deal-tier--compact{
  padding:5px 9px;
  border-width:1px;
  border-radius:10px;
  box-shadow:0 3px 12px rgba(0,0,0,.28);
  gap:2px;
}
.deal-tier--compact .deal-tier__label{ font-size:9px; letter-spacing:.03em }
.deal-tier--compact .deal-tier__pct{ font-size:9px }
.deal-tier__label{ font-size:13px }
.deal-tier__pct{
  font-size:12px;
  font-weight:700;
  text-transform:none;
  letter-spacing:0;
  opacity:.95;
}
.deal-tier .deal-tier__pct{
  display:none;
}
.deal-tier--nd{
  color:rgba(210,220,255,.9);
  border-color:rgba(150,160,200,.45);
  background:linear-gradient(135deg,rgba(45,52,78,.95),rgba(28,32,52,.98));
}
.deal-tier--pieno{
  color:rgba(230,236,255,.95);
  border-color:rgba(130,140,180,.5);
  background:linear-gradient(135deg,rgba(62,68,98,.9),rgba(38,44,72,.95));
}
.deal-tier--scarsa{
  color:#fff8e6;
  border-color:#e6bc2f;
  background:linear-gradient(135deg,#7a6218,#a67c0a);
  text-shadow:0 0 14px rgba(255,220,120,.4);
}
.deal-tier--buona{
  color:#eafff8;
  border-color:#2ee6c8;
  background:linear-gradient(135deg,#0a8f7a,#0a6b58);
  text-shadow:0 0 16px rgba(46,230,200,.45);
}
.deal-tier--ottima{
  color:#fff;
  border-color:#4ade80;
  background:linear-gradient(135deg,#178042,#14532d);
  text-shadow:0 0 18px rgba(74,222,128,.5);
}
.deal-tier--eccellente{
  color:#fff8e8;
  border-color: rgba(225,178,72,.82);
  background:linear-gradient(135deg,#d39a2a,#9a6812);
  text-shadow:0 0 18px rgba(245,190,95,.45);
  animation: none;
}
.deal-tier--super{
  color:#fff4ec;
  border-color:#fdba74;
  background:linear-gradient(135deg,#b91c1c,#ea580c,#9a3412);
  text-shadow:0 0 18px rgba(251,146,60,.46);
}
.deal-tier--errore{
  color:#fff;
  border-color:#fca5a5;
  background:linear-gradient(135deg,#e11d48,#991b1b,#450a0a);
  text-shadow:0 0 20px rgba(252,165,165,.55);
  animation:deal-tier-alarm-site .85s ease-in-out infinite alternate;
}
@keyframes deal-tier-shine-site{
  from{filter:brightness(1);box-shadow:0 6px 22px rgba(251,191,36,.4);}
  to{filter:brightness(1.1);box-shadow:0 8px 30px rgba(251,191,36,.6);}
}
@keyframes deal-tier-alarm-site{
  from{filter:brightness(1);transform:scale(1);}
  to{filter:brightness(1.14);transform:scale(1.04);}
}

.viral-hero{
  padding: 18px 0 8px;
}
.viral-hero__grid{
  display:grid;
  grid-template-columns: 1.1fr .9fr;
  gap: 18px;
  align-items: start;
}
@media (max-width: 980px){.viral-hero__grid{grid-template-columns:1fr}}
.fomo-strip{
  font-size: 13px;
  font-weight: 700;
  padding: 10px 12px;
  border-radius: 999px;
  border: 1px solid rgba(255,77,141,.35);
  background: linear-gradient(90deg, rgba(255,77,141,.14), rgba(60,240,255,.10));
  margin-bottom: 14px;
  color: rgba(244,247,255,.95);
}
.fomo-strip--edp{
  font-weight: 900;
  letter-spacing: .04em;
  text-transform: uppercase;
  border: 2px solid #8b0000;
  animation: edpFomoStrip 1.15s ease-in-out infinite alternate;
}
@keyframes edpFomoStrip{
  from{
    background: #7a0000;
    color: #fff;
    box-shadow: 0 0 22px rgba(255,40,40,.55);
  }
  to{
    background: #fff;
    color: #7a0000;
    box-shadow: 0 0 18px rgba(255,215,0,.35);
  }
}
@media (prefers-reduced-motion: reduce){
  .fomo-strip--edp{ animation: none; }
}
/* Stesso linguaggio visivo della striscia FOMO brand, scalato per titolo hero */
.viral-hero .viral-hero__title--edp{
  font-size: clamp(22px, 4.2vw, 34px);
  font-weight: 900;
  letter-spacing: .04em;
  text-transform: uppercase;
  line-height: 1.15;
  margin: 14px 0 10px;
  padding: 14px 18px;
  border-radius: 16px;
  border: 2px solid #8b0000;
  display: block;
  width: fit-content;
  max-width: 100%;
  box-sizing: border-box;
  animation: edpFomoStrip 1.15s ease-in-out infinite alternate;
}
/* Reuse hero EDP title style for section titles (SEGNALI - HOT). */
.section-title--edp{
  font-size: clamp(22px, 4.2vw, 34px);
  font-weight: 900;
  letter-spacing: .04em;
  text-transform: uppercase;
  line-height: 1.15;
  margin: 0;
  padding: 10px 14px;
  border-radius: 14px;
  border: 2px solid #8b0000;
  display: inline-block;
  max-width: 100%;
  box-sizing: border-box;
  animation: edpFomoStrip 1.15s ease-in-out infinite alternate;
}
@media (max-width: 520px){
  .viral-hero .viral-hero__title--edp{ font-size: clamp(18px, 5vw, 26px); }
  .section-title--edp{ font-size: clamp(18px, 5vw, 26px); }
}
@media (prefers-reduced-motion: reduce){
  .viral-hero .viral-hero__title--edp{ animation: none; }
  .section-title--edp{ animation: none; }
}
.viral-hero__visual{
  margin: 0 0 14px;
  border-radius: var(--radius);
  overflow: hidden;
  border: 2px solid rgba(255,215,0,.55);
  box-shadow: 0 12px 40px rgba(0,0,0,.5), 0 0 28px rgba(255,215,0,.12);
  background: #000;
}
.viral-hero__visual-img{
  display: block;
  width: 100%;
  height: auto;
  vertical-align: middle;
}
.edp-banner-wrap{
  margin: 0 0 18px;
  border-radius: var(--radius);
  overflow: hidden;
  border: 2px solid rgba(255,215,0,.45);
  background: #000;
  box-shadow: 0 16px 48px rgba(0,0,0,.45);
}
.edp-banner{
  display: block;
  width: 100%;
  height: auto;
}
.kicker--neon{
  border-color: rgba(60,240,255,.28);
  background: rgba(60,240,255,.06);
  color: rgba(185,195,224,.95);
}
.kicker--edp{
  border-color: rgba(255,215,0,.45) !important;
  background: rgba(255,215,0,.08) !important;
  color: rgba(255,236,180,.95) !important;
}
.lead--tight{max-width: 58ch}
.live-scan{
  margin-top: 8px;
  padding: 5px 10px;
  border-radius: 10px;
  border: 1px solid var(--line);
  background: rgba(255,255,255,.02);
  display: inline-block;
  max-width: 100%;
}
.live-scan__summary{
  font-size: 13px;
  font-weight: 800;
  line-height: 1.35;
  letter-spacing: .01em;
  color: rgba(255,248,255,.94);
}

.panel--glass{
  border: 1px solid rgba(255,255,255,.12);
  background: linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,.02));
  box-shadow: var(--shadow);
}
.viral-hero__panel{display:grid;gap:12px}

.bio-strategic{
  border: 1px solid var(--line);
  border-radius: var(--radius);
  padding: 14px;
  background: rgba(12,16,32,.55);
}
.bio-strategic--inline{margin-top: 14px}
.bio-strategic__title{font-weight: 900; margin-bottom: 8px}
.bio-strategic__pre{
  margin: 0 0 12px;
  white-space: pre-wrap;
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  font-size: 13px;
  color: rgba(244,247,255,.9);
  line-height: 1.45;
}

.pill-row{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  align-items:center;
}
.pill{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding: 10px 12px;
  border-radius: 999px;
  border: 1px solid var(--line);
  background: rgba(255,255,255,.03);
  font-weight: 700;
  font-size: 13px;
  color: rgba(244,247,255,.92);
}
.pill:hover{border-color: rgba(60,240,255,.35); background: rgba(60,240,255,.06)}
.pill__meta{
  font-size: 11px;
  font-weight: 800;
  color: rgba(60,240,255,.9);
  border: 1px solid rgba(60,240,255,.25);
  border-radius: 999px;
  padding: 2px 8px;
}

.section--segment{
  padding-top: 8px;
}
.section__head--tight{align-items:flex-start}

.section--linktree{padding-top: 10px}
.section--telegram-page .section__head{margin-bottom: 14px}
.section--telegram-page .linktree-stack{margin-top: 6px}
.section__icon.section__icon--telegram{
  width:92px;height:60px;flex:0 0 auto;
  border-radius:14px;
  border:1px solid rgba(42,171,238,.38);
  background:linear-gradient(145deg,rgba(42,171,238,.22),rgba(7,10,18,.92));
  box-shadow:0 14px 38px rgba(0,0,0,.35);
  display:flex;align-items:center;justify-content:center;
  font-weight:950;font-size:15px;letter-spacing:.06em;
  color:rgba(230,245,255,.95);
}
.linktree-subtitle{margin-top:6px;font-size:14px;line-height:1.45;max-width:56ch}
.linktree-stack{display:grid;gap:10px;max-width:42rem;margin-top:4px}
.linktree-row{
  display:flex;align-items:flex-start;gap:12px;
  padding:14px 16px;border-radius:var(--radius);
  border:1px solid rgba(42,171,238,.32);
  background:linear-gradient(135deg,rgba(42,171,238,.1),rgba(255,255,255,.025));
  color:var(--text);text-decoration:none;
  transition:border-color .15s ease,transform .15s ease,box-shadow .15s ease;
}
.linktree-row:hover{
  border-color:rgba(42,171,238,.55);
  transform:translateY(-1px);
  box-shadow:0 10px 28px rgba(0,0,0,.28);
}
.linktree-row__icon{
  flex:0 0 auto;font-size:17px;line-height:1.25;
  color:rgba(42,171,238,.95);margin-top:1px;
}
.linktree-row__text{display:flex;flex-direction:column;gap:4px;min-width:0}
.linktree-row__label{font-weight:850;font-size:16px;line-height:1.25}
.linktree-row__hint{font-size:13px;line-height:1.35;margin:0}
.linktree-empty{max-width:62ch;line-height:1.55;font-size:14px;margin:0}
.linktree-code{
  font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
  font-size:12.5px;
  color:rgba(200,210,235,.92);
}

.price-row{
  display:grid;
  grid-template-columns: 1fr auto 1fr;
  gap: 12px;
  margin: 12px 0 6px;
  padding: 14px;
  border-radius: var(--radius);
  border: 1px solid rgba(116,232,182,.3);
  background: rgba(67,209,141,.08);
  align-items:end;
}
@media (max-width: 640px){
  .price-row{grid-template-columns:1fr}
  .price-row > div:nth-child(1),
  .price-row > div:nth-child(2),
  .price-row__discount{
    grid-column:1;
  }
}
.price-row > div:not(.price-row__discount):not(.price-row__hint){
  display:flex;
  flex-direction:column;
  align-items:center;
  text-align:center;
}
.price-row > div:nth-child(1){ grid-column:1; }
.price-row > div:nth-child(2){ grid-column:3; }
.price-row > div:nth-child(1),
.price-row > div:nth-child(2){
  transform: translateY(36px);
}
.price-row__label{
  font-size: 12px;
  color: var(--muted);
  text-align:center;
}
.price-row__now{
  font-size: 28px;
  font-weight: 950;
  letter-spacing: -0.02em;
  color:#b9ff47;
  text-align:center;
  text-shadow:
    0 0 8px rgba(185,255,71,.55),
    0 0 16px rgba(92,255,120,.35);
  animation: price-green-pulse 1.8s ease-in-out infinite;
}
.price-row__label--now{
  font-size: 13px;
  font-weight: 900;
  color:#b9ff47;
  text-shadow:
    0 0 5px rgba(185,255,71,.42),
    0 0 10px rgba(92,255,120,.26);
  animation: price-green-pulse 1.8s ease-in-out infinite;
}
.price-row__was{
  font-size: 18px;
  font-weight: 700;
  color: rgba(185,195,224,.85);
  text-align:center;
  text-decoration: line-through;
  text-decoration-color: rgba(255,77,141,.45);
}
.price-row__discount{
  grid-column:2;
  display:flex;
  justify-content:center;
  align-self:end;
  margin-top:0;
  transform: translateY(-36px);
}
.price-row__discount .card__fomo-pct{
  font-size:18px;
  font-weight:950;
  padding:15px 36px 16px;
  min-width: 182px;
  transform:rotate(-9deg);
  margin-inline:auto;
  animation:none;
}
.price-row__hint{
  grid-column: 1 / -1;
  font-size: 13px;
  text-align:center;
  color:#b9ff47;
  text-shadow:
    0 0 6px rgba(185,255,71,.45),
    0 0 12px rgba(92,255,120,.28);
  animation: price-hint-pulse 1.8s ease-in-out infinite;
}

@keyframes price-hint-pulse{
  0%, 100%{
    opacity:.82;
    filter:brightness(1);
  }
  50%{
    opacity:1;
    filter:brightness(1.14);
  }
}
@keyframes price-green-pulse{
  0%, 100%{
    opacity:.88;
    filter:brightness(1);
  }
  50%{
    opacity:1;
    filter:brightness(1.16);
  }
}

