/* ==========================================================================
   AREA STAMPA — DETTAGLIO CONTENUTI IN EVIDENZA
   --------------------------------------------------------------------------
   File dedicato al dettaglio completo dei contenuti Area Stampa.

   Template collegato:
   templates/content/node--in-evidenza--full.html.twig

   Regole grafiche:
   - niente rosa / rosato;
   - niente gradienti arcobaleno;
   - niente ombre rosate;
   - superfici bianche/neutre;
   - accento per tipologia:
     comunicato = rosso;
     notizie = teal;
     documento = oro.
   ========================================================================== */

:root {
  --as-detail-red: #7b0500;
  --as-detail-teal: #0f8b8d;
  --as-detail-gold: #d89a1d;
  --as-detail-gold-dark: #b87907;
  --as-detail-ink: #111827;
  --as-detail-text: #243244;
  --as-detail-muted: #64748b;
  --as-detail-border: #e5e7eb;
  --as-detail-soft: #f8fafc;
  --as-detail-shadow: 0 18px 44px rgba(15, 23, 42, .07);
}

/* ==========================================================================
   1. SBLOCCO LAYOUT DRUPAL
   ========================================================================== */

body.path-node:has(.caritas-area-stampa-full-detail) .caritas-page-hero,
body.path-node:has(.caritas-area-stampa-full-detail) .block-page-title-block,
body.path-node:has(.caritas-area-stampa-full-detail) h1.page-title,
body.path-node:has(.caritas-area-stampa-full-detail) .page-title {
  display: none !important;
}

body.path-node:has(.caritas-area-stampa-full-detail) .caritas-page-shell,
body.path-node:has(.caritas-area-stampa-full-detail) .caritas-public-layout,
body.path-node:has(.caritas-area-stampa-full-detail) .caritas-public-layout--no-sidebar,
body.path-node:has(.caritas-area-stampa-full-detail) .caritas-public-content,
body.path-node:has(.caritas-area-stampa-full-detail) .block-system-main-block,
body.path-node:has(.caritas-area-stampa-full-detail) .node,
body.path-node:has(.caritas-area-stampa-full-detail) .node__content,
body.path-node:has(.caritas-area-stampa-full-detail) .field,
body.path-node:has(.caritas-area-stampa-full-detail) .field__item {
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

/* ==========================================================================
   2. CONTENITORE E VARIABILE TIPOLOGIA
   ========================================================================== */

.caritas-area-stampa-full-detail,
.caritas-area-stampa-full-detail * {
  box-sizing: border-box;
  min-width: 0;
}

.caritas-area-stampa-full-detail {
  --as-detail-accent: var(--as-detail-red);
  --as-detail-accent-button: var(--as-detail-red);

  position: relative !important;
  width: min(calc(100vw - 40px), 1120px) !important;
  max-width: 1120px !important;
  margin: 0 auto clamp(4rem, 6vw, 7rem) !important;
  padding: 0 !important;
  color: var(--as-detail-ink) !important;
}

.caritas-area-stampa-full-detail--comunicato,
.caritas-area-stampa-full-detail--comunicati {
  --as-detail-accent: var(--as-detail-red);
  --as-detail-accent-button: var(--as-detail-red);
}

.caritas-area-stampa-full-detail--pubblicazione,
.caritas-area-stampa-full-detail--pubblicazioni {
  --as-detail-accent: var(--as-detail-teal);
  --as-detail-accent-button: var(--as-detail-teal);
}

.caritas-area-stampa-full-detail--documento,
.caritas-area-stampa-full-detail--documenti {
  --as-detail-accent: var(--as-detail-gold);
  --as-detail-accent-button: var(--as-detail-gold-dark);
}

.caritas-area-stampa-full-detail .field__label,
.caritas-area-stampa-full-detail .node__meta,
.caritas-area-stampa-full-detail .submitted {
  display: none !important;
}

/* ==========================================================================
   3. PANNELLI PRINCIPALI
   ========================================================================== */

.caritas-area-stampa-full-detail__hero,
.caritas-area-stampa-full-detail__body,
.caritas-area-stampa-full-detail__attachment {
  position: relative !important;
  overflow: hidden !important;
  border: 1px solid var(--as-detail-border) !important;
  border-radius: 32px !important;
  background: #ffffff !important;
  background-image: none !important;
  box-shadow: var(--as-detail-shadow) !important;
}

.caritas-area-stampa-full-detail__hero::before,
.caritas-area-stampa-full-detail__body::before,
.caritas-area-stampa-full-detail__attachment::before {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  top: 0 !important;
  bottom: 0 !important;
  width: 8px !important;
  border-radius: 32px 0 0 32px !important;
  background: var(--as-detail-accent) !important;
  background-image: none !important;
  z-index: 1 !important;
}

.caritas-area-stampa-full-detail__hero > *,
.caritas-area-stampa-full-detail__body > *,
.caritas-area-stampa-full-detail__attachment > * {
  position: relative !important;
  z-index: 2 !important;
}

.caritas-area-stampa-full-detail__hero {
  display: grid !important;
  gap: clamp(1.1rem, 2vw, 1.7rem) !important;
  margin-bottom: clamp(1.6rem, 2.8vw, 2.4rem) !important;
  padding: clamp(1.35rem, 2.6vw, 2.6rem) !important;
}

/* ==========================================================================
   4. META, TITOLO, SOTTOTITOLO
   ========================================================================== */

.caritas-area-stampa-full-detail__meta {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  gap: .55rem !important;
}

.caritas-area-stampa-full-detail__badge,
.caritas-area-stampa-full-detail__date {
  display: inline-flex !important;
  align-items: center !important;
  min-height: 30px !important;
  border-radius: 999px !important;
  font-size: .78rem !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  letter-spacing: .055em !important;
  text-transform: uppercase !important;
}

.caritas-area-stampa-full-detail__badge {
  padding: .45rem .85rem !important;
  background: var(--as-detail-accent) !important;
  color: #ffffff !important;
}

.caritas-area-stampa-full-detail__date {
  padding: .43rem .78rem !important;
  border: 1px solid var(--as-detail-border) !important;
  background: #ffffff !important;
  color: var(--as-detail-muted) !important;
}

.caritas-area-stampa-full-detail__title {
  max-width: 980px !important;
  margin: 0 !important;
  color: var(--as-detail-ink) !important;
  font-size: clamp(2.55rem, 5vw, 5.1rem) !important;
  line-height: .98 !important;
  letter-spacing: -0.06em !important;
  font-weight: 950 !important;
}

.caritas-area-stampa-full-detail__title::first-letter {
  color: var(--as-detail-accent) !important;
}

.caritas-area-stampa-full-detail__summary {
  max-width: 900px !important;
  margin: .15rem 0 .2rem !important;
  padding: 1rem 1.15rem !important;
  border-left: 6px solid var(--as-detail-accent) !important;
  border-radius: 0 18px 18px 0 !important;
  background: var(--as-detail-soft) !important;
  background-image: none !important;
  box-shadow: none !important;
}

.caritas-area-stampa-full-detail__summary,
.caritas-area-stampa-full-detail__summary p,
.caritas-area-stampa-full-detail__summary div,
.caritas-area-stampa-full-detail__summary span {
  color: var(--as-detail-text) !important;
  font-size: clamp(1.02rem, 1.15vw, 1.18rem) !important;
  line-height: 1.7 !important;
  font-weight: 760 !important;
}

.caritas-area-stampa-full-detail__summary p {
  margin: 0 !important;
}

/* ==========================================================================
   5. IMMAGINE
   ========================================================================== */

.caritas-area-stampa-full-detail__media {
  width: 100% !important;
  margin: .4rem 0 0 !important;
  overflow: hidden !important;
  border: 1px solid var(--as-detail-border) !important;
  border-radius: 26px !important;
  background: var(--as-detail-soft) !important;
  background-image: none !important;
  box-shadow: 0 14px 34px rgba(15, 23, 42, .08) !important;
}

.caritas-area-stampa-full-detail__media img {
  display: block !important;
  width: 100% !important;
  height: clamp(320px, 38vw, 560px) !important;
  object-fit: cover !important;
  object-position: center center !important;
  margin: 0 !important;
  border-radius: 26px !important;
}

/* ==========================================================================
   6. CORPO CONTENUTO
   ========================================================================== */

.caritas-area-stampa-full-detail__body {
  margin-bottom: clamp(1.4rem, 2.6vw, 2rem) !important;
  padding: clamp(1.45rem, 2.8vw, 2.8rem) !important;
}

.caritas-area-stampa-full-detail__body .field,
.caritas-area-stampa-full-detail__body .field__item {
  width: 100% !important;
  max-width: none !important;
  background: transparent !important;
  box-shadow: none !important;
}

.caritas-area-stampa-full-detail__body h2 {
  position: relative !important;
  margin: 2.1rem 0 1rem !important;
  padding-left: 1.1rem !important;
  color: var(--as-detail-ink) !important;
  font-size: clamp(1.75rem, 2.55vw, 2.65rem) !important;
  line-height: 1.08 !important;
  letter-spacing: -0.045em !important;
  font-weight: 950 !important;
}

.caritas-area-stampa-full-detail__body h2:first-child {
  margin-top: 0 !important;
}

.caritas-area-stampa-full-detail__body h2::before {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  top: .08em !important;
  width: 4px !important;
  height: 1.05em !important;
  border-radius: 999px !important;
  background: var(--as-detail-accent) !important;
}

.caritas-area-stampa-full-detail__body h2::first-letter {
  color: var(--as-detail-accent) !important;
}

.caritas-area-stampa-full-detail__body h3 {
  margin: 1.65rem 0 .7rem !important;
  color: var(--as-detail-ink) !important;
  font-size: clamp(1.3rem, 1.65vw, 1.7rem) !important;
  line-height: 1.18 !important;
  letter-spacing: -0.025em !important;
  font-weight: 900 !important;
}

.caritas-area-stampa-full-detail__body p,
.caritas-area-stampa-full-detail__body li {
  color: var(--as-detail-text) !important;
  font-size: clamp(1.03rem, 1.08vw, 1.14rem) !important;
  line-height: 1.82 !important;
}

.caritas-area-stampa-full-detail__body p {
  margin: 0 0 1.12rem !important;
}

.caritas-area-stampa-full-detail__body ul,
.caritas-area-stampa-full-detail__body ol {
  margin: 1rem 0 1.45rem 1.45rem !important;
  padding: 0 !important;
}

.caritas-area-stampa-full-detail__body li::marker {
  color: var(--as-detail-accent) !important;
}

.caritas-area-stampa-full-detail__body a {
  color: var(--as-detail-accent) !important;
  font-weight: 850 !important;
  text-decoration-thickness: .08em !important;
  text-underline-offset: .16em !important;
  overflow-wrap: anywhere !important;
}

.caritas-area-stampa-full-detail__body blockquote {
  margin: 1.9rem 0 !important;
  padding: 1.15rem 1.35rem !important;
  border-left: 7px solid var(--as-detail-accent) !important;
  border-radius: 0 20px 20px 0 !important;
  background: #ffffff !important;
  background-image: none !important;
  color: var(--as-detail-text) !important;
  font-weight: 760 !important;
}

.caritas-area-stampa-full-detail__body img {
  max-width: 100% !important;
  height: auto !important;
  border-radius: 20px !important;
}

/* ==========================================================================
   7. ALLEGATI
   ========================================================================== */

.caritas-area-stampa-full-detail__attachment {
  margin-bottom: clamp(1.4rem, 2.6vw, 2rem) !important;
  padding: clamp(1.25rem, 2vw, 1.7rem) !important;
}

.caritas-area-stampa-full-detail__attachment h2 {
  margin: 0 0 .9rem !important;
  color: var(--as-detail-ink) !important;
  font-size: clamp(1.35rem, 1.8vw, 1.75rem) !important;
  line-height: 1.1 !important;
  letter-spacing: -0.025em !important;
  font-weight: 950 !important;
}

.caritas-area-stampa-full-detail__attachment a {
  display: inline-flex !important;
  align-items: center !important;
  gap: .4rem !important;
  color: var(--as-detail-accent) !important;
  font-weight: 900 !important;
  overflow-wrap: anywhere !important;
}

.caritas-area-stampa-full-detail__attachment a::before {
  content: "📎" !important;
  line-height: 1 !important;
}

/* ==========================================================================
   8. AZIONI FINALI
   ========================================================================== */

.caritas-area-stampa-full-detail__actions {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: .75rem !important;
  align-items: center !important;
  justify-content: flex-start !important;
  margin-top: clamp(1rem, 2vw, 1.5rem) !important;
}

.caritas-area-stampa-full-detail__button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 46px !important;
  padding: .78rem 1.15rem !important;
  border-radius: 999px !important;
  font-size: .98rem !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  text-decoration: none !important;
  transition:
    transform 180ms ease,
    box-shadow 180ms ease,
    filter 180ms ease !important;
}

.caritas-area-stampa-full-detail__button--primary {
  background: var(--as-detail-accent-button) !important;
  border: 1px solid var(--as-detail-accent-button) !important;
  color: #ffffff !important;
  box-shadow: 0 10px 24px rgba(15, 23, 42, .14) !important;
}

.caritas-area-stampa-full-detail__button--secondary {
  border: 1px solid var(--as-detail-border) !important;
  background: #ffffff !important;
  color: var(--as-detail-red) !important;
}

.caritas-area-stampa-full-detail__button:hover,
.caritas-area-stampa-full-detail__button:focus-visible {
  transform: translateY(-1px) !important;
  filter: brightness(.97) !important;
  box-shadow: 0 14px 30px rgba(15, 23, 42, .18) !important;
}

/* ==========================================================================
   9. RESPONSIVE
   ========================================================================== */

@media (max-width: 980px) {
  .caritas-area-stampa-full-detail {
    width: min(calc(100vw - 28px), 820px) !important;
    max-width: 820px !important;
  }
}

@media (max-width: 760px) {
  .caritas-area-stampa-full-detail {
    width: calc(100vw - 24px) !important;
    max-width: calc(100vw - 24px) !important;
    margin-bottom: 3.5rem !important;
  }

  .caritas-area-stampa-full-detail__hero,
  .caritas-area-stampa-full-detail__body,
  .caritas-area-stampa-full-detail__attachment {
    border-radius: 24px !important;
    padding: 1.05rem !important;
  }

  .caritas-area-stampa-full-detail__hero::before,
  .caritas-area-stampa-full-detail__body::before,
  .caritas-area-stampa-full-detail__attachment::before {
    width: 6px !important;
    border-radius: 24px 0 0 24px !important;
  }

  .caritas-area-stampa-full-detail__title {
    font-size: clamp(2rem, 10vw, 3.25rem) !important;
    letter-spacing: -0.055em !important;
  }

  .caritas-area-stampa-full-detail__summary {
    padding: .9rem 1rem !important;
    border-left-width: 5px !important;
    border-radius: 0 16px 16px 0 !important;
  }

  .caritas-area-stampa-full-detail__media {
    border-radius: 20px !important;
  }

  .caritas-area-stampa-full-detail__media img {
    height: auto !important;
    max-height: none !important;
    aspect-ratio: 16 / 10 !important;
    border-radius: 20px !important;
  }

  .caritas-area-stampa-full-detail__body h2 {
    font-size: clamp(1.55rem, 7vw, 2.15rem) !important;
  }

  .caritas-area-stampa-full-detail__actions,
  .caritas-area-stampa-full-detail__button {
    width: 100% !important;
  }
}
