/*
Theme Name: iCrewPlay Arte
Theme URI: https://arte.icrewplay.com/
Description: Profilo Arte per iCrewPlay Editorial Core.
Author: iCrewPlay
Template: icrewplay-editorial-core
Version: 1.3.0
Text Domain: icrewplay-arte
*/

/*
 * Identita' Arte: "oro su nero galleria". Colori strutturali neutri
 * (nessuna dominante gialla nei grigi), oro solo come accento. L'oro
 * chiaro non regge testo bianco: pulsanti pieni con testo scuro, testi
 * d'accento su fondo chiaro nella variante bronzo (#854D0E, AA su bianco).
 */
:root {
  --icp-primary: #CA8A04;
  --icp-primary-dark: #854D0E;
  --icp-accent: #FACC15;
  --icp-purple: #CA8A04;
  --icp-purple-dark: #854D0E;
  --icp-purple-soft: #FEF9C3;
  --icp-gradient: linear-gradient(135deg, #EAB308, #FACC15);
  --icp-ink: #161514;
  --icp-muted: #6b6965;
  --icp-canvas: #f7f6f3;
  --icp-border: rgba(22, 21, 20, .1);
  --icp-shadow: 0 18px 55px rgba(22, 21, 20, .08);
  --icp-media-placeholder: #e6e4df;
  --icp-gradient-dark: linear-gradient(145deg, #0f0e0d, #26231f);
  --icp-dark: #161514;
}

.icp-sector-arte :is(.icp-kicker,.icp-eyebrow,.icp-card__category,.icp-news-item__copy span,.icp-archive-card__category,.icp-related__kicker,.icp-related-card__category,.icp-toc a:hover,.icp-toc a:focus-visible) {
  color: #854D0E;
}

.icp-sector-arte .icp-social-link { border-color: #eadfc0; color: #854D0E; }

.icp-sector-arte :is(.icp-social-link:hover,.icp-social-link:focus-visible,.icp-button--solid,.icp-search-panel button,.icp-news-sidebar form button,.icp-news-sidebar form input[type="submit"],.icp-comment-form input[type="submit"]) {
  border-color: #CA8A04;
  background: var(--icp-gradient);
  color: #161514;
}

.icp-sector-arte :where(input, select, textarea):focus { border-color: #CA8A04; outline-color: #CA8A04; }
.icp-sector-arte .wp-block-quote,
.icp-sector-arte .icp-entry-content .wp-block-quote { border-color: #CA8A04; background: #fbf7ea; }
.icp-sector-arte .icp-entry-content tbody tr:nth-child(even) td { background: #faf8f2; }
.icp-sector-arte .icp-opere a { background: #fbf4dc; color: #854D0E; }
.icp-sector-arte .icp-reaction__icon { background: #fbf4dc; }
.icp-sector-arte .icp-community-goal__track > span { background: linear-gradient(90deg, #854D0E, #EAB308); }

/* Blocchi scuri (CTA opera, newsletter, footer, testate archivio): nero galleria con oro. */
.icp-sector-arte :is(.icp-opera-cta,.icp-newsletter,.icp-footer-cta,.icp-archive-header,.icp-release-archive__hero) {
  background: var(--icp-gradient-dark);
  color: #fff;
}
.icp-sector-arte :is(.icp-opera-cta,.icp-newsletter,.icp-footer-cta,.icp-archive-header,.icp-release-archive__hero) :is(.icp-kicker,.icp-archive-header__count) { color: var(--icp-accent); }
.icp-sector-arte :is(.icp-opera-cta,.icp-newsletter,.icp-footer-cta) :is(h2) { color: #fff; }
.icp-sector-arte :is(.icp-opera-cta,.icp-newsletter,.icp-footer-cta) p { color: rgba(255, 255, 255, .8); }
.icp-sector-arte .icp-footer-cta > a,
.icp-sector-arte .icp-opera-cta > a { border-color: var(--icp-accent); color: var(--icp-accent); }

/* Dark mode */
[data-icp-theme="dark"] .icp-sector-arte {
  --icp-ink: #f2f0ec;
  --icp-muted: #b3afa8;
  --icp-canvas: #121110;
  --icp-border: rgba(255, 255, 255, .1);
  --icp-media-placeholder: #24221f;
}
[data-icp-theme="dark"] .icp-sector-arte :is(.icp-kicker,.icp-eyebrow,.icp-card__category,.icp-news-item__copy span,.icp-archive-card__category,.icp-related__kicker,.icp-related-card__category) { color: #FACC15; }
[data-icp-theme="dark"] .icp-sector-arte .icp-social-link { border-color: rgba(250, 204, 21, .3); color: #FACC15; }
[data-icp-theme="dark"] .icp-sector-arte :is(.icp-card,.icp-panel,.icp-toc,.icp-comments-panel,.icp-reactions,.icp-related-card,.icp-archive-card,.icp-news-sidebar__panel,.icp-google-source,.icp-author) { background: #1a1917; border-color: rgba(255, 255, 255, .08); }
[data-icp-theme="dark"] .icp-sector-arte .icp-entry-content td { background: #1a1917; }
[data-icp-theme="dark"] .icp-sector-arte .icp-entry-content tbody tr:nth-child(even) td { background: #201e1b; }
[data-icp-theme="dark"] .icp-sector-arte .icp-entry-content .wp-block-quote { background: #1f1c15; }
[data-icp-theme="dark"] .icp-sector-arte .icp-opere a { background: #2a2414; color: #FACC15; }

/* Hero editoriale (markup condiviso template-parts/home/anime-hero.php). */
.icp-sector-arte .icp-anime-hero { background: var(--icp-gradient-dark); }
.icp-sector-arte .icp-anime-hero__topics a { border-color: rgba(255, 255, 255, .24); color: rgba(255, 255, 255, .82); }
.icp-sector-arte .icp-anime-hero__topics a:hover,
.icp-sector-arte .icp-anime-hero__topics a:focus-visible,
.icp-sector-arte .icp-anime-hero__topics .is-current { border-color: #FACC15; background: rgba(250, 204, 21, .14); color: #fff; }

@media (prefers-reduced-motion: reduce) {
  .icp-sector-arte .icp-anime-story__image { transition: none; }
}
/* -------------------------------------------------------------------- */

.icp-sector-arte .icp-anime-hero {
  padding: 20px 0;
  overflow: hidden;
  color: #fff;
}

.icp-sector-arte .icp-anime-hero__grid {
  display: grid;
  grid-template-columns: minmax(0, 1.65fr) minmax(390px, .95fr);
  gap: 16px;
  min-height: 620px;
}

.icp-sector-arte .icp-anime-hero__secondary {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  grid-template-rows: 1.08fr .92fr;
  gap: 14px;
}

.icp-sector-arte .icp-anime-story {
  position: relative;
  min-width: 0;
  overflow: hidden;
  border: 1px solid rgba(250, 204, 21, .28);
  border-radius: 16px;
  background: #171717;
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .02);
  isolation: isolate;
}

.icp-sector-arte .icp-anime-story--secondary.is-wide {
  grid-column: 1 / -1;
}

.icp-sector-arte .icp-anime-story > a {
  height: 100%;
  display: block;
  color: inherit;
  text-decoration: none;
}

.icp-sector-arte .icp-anime-story__media,
.icp-sector-arte .icp-anime-story__shade {
  position: absolute;
  inset: 0;
}

.icp-sector-arte .icp-anime-story__media {
  z-index: -2;
  background: linear-gradient(145deg, #3a3220, #161514);
}

.icp-sector-arte .icp-anime-story__image {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  transition: transform .45s ease;
}

.icp-sector-arte .icp-anime-story:hover .icp-anime-story__image,
.icp-sector-arte .icp-anime-story:focus-within .icp-anime-story__image {
  transform: scale(1.025);
}

.icp-sector-arte .icp-anime-story__shade {
  z-index: -1;
  background:
    linear-gradient(0deg, rgba(10, 10, 10, .96) 0%, rgba(10, 10, 10, .68) 36%, transparent 76%),
    linear-gradient(90deg, rgba(10, 10, 10, .28), transparent 68%);
}

.icp-sector-arte .icp-anime-story__content {
  position: absolute;
  inset: auto 0 0;
  padding: clamp(24px, 3.4vw, 44px);
}

.icp-sector-arte .icp-anime-story__label {
  display: inline-block;
  color: #FACC15;
  font-size: .69rem;
  font-weight: 900;
  letter-spacing: .15em;
  text-transform: uppercase;
}

.icp-sector-arte .icp-anime-lead h1 {
  max-width: 740px;
  margin: 12px 0 13px;
  color: #fff;
  font-size: clamp(2.3rem, 4.2vw, 4.2rem);
  font-weight: 900;
  letter-spacing: -.05em;
  line-height: 1.04;
  text-wrap: balance;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
}

.icp-sector-arte .icp-anime-lead p {
  max-width: 610px;
  margin: 0 0 22px;
  color: rgba(255, 255, 255, .82);
  font-size: clamp(.98rem, 1.35vw, 1.15rem);
  line-height: 1.55;
}

.icp-sector-arte .icp-anime-story__button {
  min-height: 48px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 24px;
  border-radius: 999px;
  background: linear-gradient(135deg, #EAB308, #FACC15);
  color: #161514;
  box-shadow: 0 13px 34px rgba(202, 138, 4, .3);
  font-size: .86rem;
  font-weight: 850;
}

.icp-sector-arte .icp-anime-story--secondary .icp-anime-story__content {
  padding: 20px 22px;
}

.icp-sector-arte .icp-anime-story--secondary h2 {
  margin: 7px 0 0;
  color: #fff;
  font-size: clamp(1.05rem, 1.6vw, 1.7rem);
  font-weight: 850;
  letter-spacing: -.035em;
  line-height: 1.08;
  text-wrap: balance;
}

.icp-sector-arte .icp-anime-story--secondary.is-wide h2 {
  font-size: clamp(1.35rem, 2.15vw, 2rem);
}

.icp-sector-arte .icp-anime-story--secondary p {
  max-width: 580px;
  margin: 9px 0 0;
  color: rgba(255, 255, 255, .76);
  font-size: .85rem;
  line-height: 1.45;
}

.icp-sector-arte .icp-anime-hero__topics {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 16px 0 4px;
  overflow-x: auto;
  scrollbar-width: none;
}

.icp-sector-arte .icp-anime-hero__topics::-webkit-scrollbar {
  display: none;
}

.icp-sector-arte .icp-anime-hero__topics a {
  min-height: 42px;
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  padding: 0 18px;
  border-radius: 999px;
  font-size: .78rem;
  font-weight: 750;
  text-decoration: none;
  transition: border-color .2s ease, background .2s ease, color .2s ease;
}

.icp-sector-arte .icp-anime-hero__topics .icp-anime-hero__all {
  margin-left: auto;
  border-color: transparent;
  background: transparent;
}

@media (max-width: 1020px) {
  .icp-sector-arte .icp-anime-hero__grid {
    grid-template-columns: minmax(0, 1.18fr) minmax(330px, .82fr);
    min-height: 550px;
  }

  .icp-sector-arte .icp-anime-hero__secondary {
    grid-template-columns: 1fr;
    grid-template-rows: repeat(3, minmax(0, 1fr));
  }

  .icp-sector-arte .icp-anime-story--secondary.is-wide {
    grid-column: auto;
  }

  .icp-sector-arte .icp-anime-story--secondary.is-wide h2,
  .icp-sector-arte .icp-anime-story--secondary h2 {
    font-size: 1.05rem;
  }

  .icp-sector-arte .icp-anime-story--secondary p {
    display: none;
  }
}

@media (max-width: 720px) {
  .icp-sector-arte .icp-anime-hero {
    padding: 12px 0 16px;
  }

  .icp-sector-arte .icp-anime-hero .icp-shell {
    width: min(100% - 20px, 1180px);
  }

  .icp-sector-arte .icp-anime-hero__grid {
    display: block;
    min-height: 0;
  }

  .icp-sector-arte .icp-anime-lead {
    min-height: min(590px, 76vh);
  }

  .icp-sector-arte .icp-anime-lead h1 {
    font-size: clamp(2.2rem, 11vw, 3.35rem);
  }

  .icp-sector-arte .icp-anime-lead p {
    max-height: 4.7em;
    overflow: hidden;
    font-size: .91rem;
  }

  .icp-sector-arte .icp-anime-story__content {
    padding: 24px 20px;
  }

  .icp-sector-arte .icp-anime-hero__secondary {
    display: grid;
    grid-auto-flow: column;
    grid-template-columns: none;
    grid-template-rows: 250px;
    grid-auto-columns: minmax(78vw, 1fr);
    gap: 10px;
    margin-top: 10px;
    padding-bottom: 2px;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
  }

  .icp-sector-arte .icp-anime-hero__secondary::-webkit-scrollbar {
    display: none;
  }

  .icp-sector-arte .icp-anime-story--secondary {
    scroll-snap-align: start;
  }

  .icp-sector-arte .icp-anime-story--secondary h2,
  .icp-sector-arte .icp-anime-story--secondary.is-wide h2 {
    font-size: 1.28rem;
  }

  .icp-sector-arte .icp-anime-hero__topics {
    padding-block: 13px 15px;
  }

  .icp-sector-arte .icp-anime-hero__topics .icp-anime-hero__all {
    margin-left: 0;
  }
}

/*
 * Imagify racchiude le immagini in evidenza in <picture> spostando la
 * classe WordPress sul wrapper. Dimensionare entrambi i livelli evita
 * bande scoperte o proporzioni alterate quando si mescolano locandine
 * verticali e orizzontali.
 */
.icp-sector-arte .icp-anime-story__media > picture,
.icp-sector-arte .icp-anime-story__media > img {
  width: 100% !important;
  height: 100% !important;
  display: block;
  overflow: hidden;
}

.icp-sector-arte .icp-anime-story__media > picture > img,
.icp-sector-arte .icp-anime-story__media > img {
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  display: block;
  object-fit: cover !important;
  object-position: center center;
}

.icp-sector-arte .icp-anime-lead .icp-anime-story__media > picture > img,
.icp-sector-arte .icp-anime-lead .icp-anime-story__media > img {
  object-position: center 32%;
}

.icp-sector-arte .icp-anime-story--secondary .icp-anime-story__media > picture > img,
.icp-sector-arte .icp-anime-story--secondary .icp-anime-story__media > img {
  object-position: center 35%;
}

/* Fascia "Da conoscere": nero galleria invece del giallo pieno (troppo carico). */
.icp-sector-arte .icp-section--dark { background: var(--icp-gradient-dark); }
.icp-sector-arte .icp-section--dark .icp-section__heading .icp-kicker { color: var(--icp-accent); text-shadow: none; }
.icp-sector-arte .icp-section--dark .icp-section__heading > a { color: var(--icp-accent); }

/* Fasce tematiche aggiuntive (home_sections): Musica con filo oro a sinistra. */
.icp-sector-arte .icp-section--musica { position: relative; padding-left: 18px; }
.icp-sector-arte .icp-section--musica::before { content: ""; position: absolute; left: 0; top: 4px; bottom: 4px; width: 4px; border-radius: 4px; background: var(--icp-gradient); }

/* Notizie: tab attivo leggibile in entrambi i temi. */
.icp-sector-arte .icp-news-tabs a:hover,
.icp-sector-arte .icp-news-tabs a.is-active { background: #fbf1cc; color: #713F12; }
[data-icp-theme="dark"] .icp-sector-arte .icp-news-tabs a:hover,
[data-icp-theme="dark"] .icp-sector-arte .icp-news-tabs a.is-active { background: rgba(250, 204, 21, .14); color: #FACC15; }
[data-icp-theme="dark"] .icp-sector-arte { --icp-dark: #0c0b0a; }

/* Pagine sezione: pulsante oro con testo scuro. */
.icp-sector-arte { --icp-on-primary: #161514; }
