/* Stili principali per Laksmi News */
.laksmi-news-title { margin: 0 0 16px; font-size: 28px; font-weight: 700; }

.laksmi-news-grid { display: grid; gap: 20px; }
.laksmi-news-grid.laksmi-cols-4 { grid-template-columns: repeat(4, 1fr); gap: 25px; }
.laksmi-news-grid.laksmi-cols-2 { grid-template-columns: repeat(2, 1fr); }

.laksmi-card { display: flex; flex-direction: column; gap: 0; }
.square-thumb { width: 100%; aspect-ratio: 1 / 1; background-size: cover; background-position: center; border-radius: 40px;object-fit: cover; }
.square-thumb.no-thumb { background-color: #e5e7eb; }
.laksmi-card-title { font-size: 18px; margin-top: 20px; margin-bottom: 0; line-height: 1; text-transform: uppercase; text-align: left; }
.laksmi-card-excerpt { margin: 0; color: #4b5563; text-align: left; }

/* Preview / Lista righe */
.laksmi-card-row { display: grid; grid-template-columns: 40% 60%; gap: 16px; padding: 16px; border-radius: 40px; align-items: start; }
.row-thumb .square-thumb { width: 100%; height: 100%; }
.row-content { display: flex; flex-direction: column; gap: 8px; padding-right: 16px; }
.row-title { margin: 0; font-size: 25px; font-weight: 700; margin-bottom: 0 !important; }
.row-meta { margin-top: 15px; margin-bottom: 15px; font-size: 16px; font-weight: 700; color: #000000; text-transform: uppercase; }
.row-excerpt { margin: 0; color: #374151; }

.laksmi-btn { display: inline-flex; align-items: center; justify-content: center; gap: 6px; color: #ffffff; text-decoration: none; padding: 15px; width: 80%; border-radius: 22px; border: 1px solid transparent; font-weight: 600; transition: width 200ms ease, padding-right 200ms ease; }
.laksmi-btn:hover { color: #ffffff; padding-right: 15px; width: 85%; }
.laksmi-btn .arrow { display: inline-block; transform: translateY(1px); }

/* Filtri categorie */
.laksmi-filter { display: flex; flex-wrap: wrap; gap: 20px; margin: 30px 0; }
.laksmi-filter .filter-item { appearance: none; border: 1px solid var(--cat-color, #111827); background: var(--cat-bg, #ffffff); color: var(--cat-color, #111827); padding: 15px 40px; border-radius: 22px; cursor: pointer; display: inline-flex; align-items: center; gap: 8px; font-size: 16px; text-transform: uppercase; transition: padding 0.2s ease, background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease; }
.laksmi-filter .filter-item:hover { padding-left: 80px; padding-right: 80px; }
.laksmi-filter .filter-item.active { border-color: var(--cat-color, #111827); background: var(--cat-color, #111827); color: #ffffff; }
.laksmi-filter .filter-item.active { padding-left: 80px; padding-right: 80px; }
.laksmi-filter .filter-icon { width: 18px; height: 18px; object-fit: contain; }
.laksmi-filter .filter-item .filter-icon-svg { display: inline-flex; align-items: center; justify-content: center; color: var(--cat-color, #111827); }
.laksmi-filter .filter-item i { color: var(--cat-color, #111827); }
.laksmi-filter .filter-item.active .filter-icon-svg { color: #ffffff; }
.laksmi-filter .filter-item.active i { color: #ffffff; }
.laksmi-filter .filter-item .filter-icon-svg svg { width: 26px; height: 26px; }
.laksmi-filter .filter-item .filter-icon { width: 26px; height: 26px; }
.laksmi-filter .filter-item i { font-size: 26px; line-height: 26px; }
.laksmi-filter .filter-item .filter-icon-svg svg, 
.laksmi-filter .filter-item .filter-icon-svg svg * { fill: currentColor; stroke: currentColor; }

/* Separatore filtri */
.laksmi-filter-separator { width: 100%; border: 0; border-top: 1px solid #c5c5c5; margin: 0 0 30px; }

/* Blocchi preview */
.laksmi-news-preview .preview-block { display: none; }
.laksmi-news-preview .preview-block.active { display: block; }

/* Lista completa */
.laksmi-news-list { display: grid; gap: 16px; }

/* Responsiveness */
@media (max-width: 1024px) {
  .laksmi-news-grid.laksmi-cols-4 { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 640px) {
  /* Evidenza: trasformazione in carousel orizzontale */
  .laksmi-news-grid.laksmi-cols-4 {
    display: flex;
    gap: 25px;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    scroll-snap-type: x mandatory;
    padding-bottom: 20px;
    /* Stile scrollbar (Firefox) */
    scrollbar-width: thin;
    scrollbar-color: #F07E2A #e5e7eb;
  }
  /* Stile scrollbar (WebKit/Blink) */
  .laksmi-news-grid.laksmi-cols-4::-webkit-scrollbar { height: 8px; }
  .laksmi-news-grid.laksmi-cols-4::-webkit-scrollbar-track { background: #e5e7eb; border-radius: 999px; }
  .laksmi-news-grid.laksmi-cols-4::-webkit-scrollbar-thumb { background-color: #F07E2A; border-radius: 999px; }
  .laksmi-news-grid.laksmi-cols-4 .laksmi-card {
    flex: 0 0 85%;
    width: 85%;
    scroll-snap-align: center;
  }
  /* Altre griglie restano su una colonna */
  .laksmi-news-grid.laksmi-cols-2 { grid-template-columns: 1fr; }
  .laksmi-card-row { grid-template-columns: 1fr; }

  /* Mobile: filtri in due per riga, padding ridotto e senza espansione su active */
  .laksmi-filter { gap: 12px; }
  .laksmi-filter .filter-item {
    padding: 10px 12px; /* padding più contenuto per due per riga */
    box-sizing: border-box;
    flex: 0 0 calc(50% - 12px);
    width: calc(50% - 12px);
    justify-content: center; /* contenuto centrato orizzontalmente */
    text-align: center; /* testo centrato rispetto al pulsante */
  }
  /* Evita l'espansione del padding su hover/active in mobile, mantenendo i colori */
  .laksmi-filter .filter-item:hover { padding-left: 12px; padding-right: 12px; }
  .laksmi-filter .filter-item.active { padding-left: 12px; padding-right: 12px; }

  /* Mobile: dimensioni testo per righe lista */
  .row-title { font-size: 20px; line-height: 1.2; margin-top: 0; margin-bottom: 0; }
  .row-meta { font-size: 14px; line-height: 1.2; margin-top: 0; margin-bottom: 0; }
}

/* Link e hover per titoli e immagini */
.laksmi-card-title { display: inline-block; }
.title-link { color: inherit; text-decoration: none; display: inline-block; position: relative; }
.title-link::after { content: ""; position: absolute; left: 0; bottom: -3px; height: 3px; width: 100%; background: var(--cat-color, currentColor); transform: scaleX(0); transform-origin: left center; transition: transform 0.2s ease; }
.title-link:hover::after { transform: scaleX(1); }
.thumb-link { display: block; }

/* Evidenza: hover sull'immagine attiva underline del titolo */
.laksmi-news-grid.laksmi-cols-4 .thumb-link:hover + .laksmi-card-title .title-link::after,
.laksmi-news-grid.laksmi-cols-4 .thumb-link:focus-visible + .laksmi-card-title .title-link::after {
  transform: scaleX(1);
}