:root {
  --j-serif: 'Playfair Display', serif;
  --j-sans: 'Inter', sans-serif;
  --j-accent: #c26602; /* Nuovo colore Ocra richiesto */
  --j-border: #f0ede9;
  --j-shadow: rgba(0, 0, 0, 0.04);
}

.latest-journal-section { padding: 80px 0; background: #fff; }
.journal-container { max-width: 1400px; margin: 0 auto; padding: 0 40px; }

/* Rimuovi azzurro dai titoli e forza il colore nero */
.journal-body h3 a { 
  text-decoration: none !important; 
  color: #1a1a1a !important; 
}
.journal-body h3 a:hover { 
  color: var(--j-accent) !important; 
}

/* Header sezione Ultime Notizie */
.journal-header { 
    display: flex; 
    align-items: flex-end; 
    gap: 20px; 
    margin-bottom: 40px; 
}

.journal-pretitle { 
    display: block; 
    font-family: var(--j-sans); 
    font-size: 14px !important; /* Ingrandito da 10px a 14px per coerenza */
    font-weight: 800 !important; /* Grassetto deciso come 'In Evidenza' */
    text-transform: uppercase; 
    letter-spacing: 3px; 
    color: var(--j-accent) !important; 
    margin-bottom: 8px; 
}

.journal-section-title { 
    font-family: var(--j-serif); 
    font-size: 42px !important; /* Leggermente più grande per dare importanza */
    margin: 0; 
    font-weight: 400; 
    line-height: 1; 
    color: var(--text-dark);
}

.journal-line { 
    flex-grow: 1; 
    height: 2px; /* Linea più spessa per coerenza */
    background: var(--j-border); 
    margin-bottom: 12px; 
}

/* Griglia e Card */
.journal-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 30px; }

.journal-card {
  background: #fff;
  border: 1px solid var(--j-border);
  box-shadow: 0 4px 15px var(--j-shadow);
  display: flex;
  flex-direction: column;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.journal-card:hover { transform: translateY(-5px); box-shadow: 0 12px 30px rgba(0,0,0,0.08); }

.journal-img-area { position: relative; height: 200px; overflow: hidden; }
.journal-img-area img { width: 100%; height: 100%; object-fit: cover; }

/* Data Foglio Alzato */
.journal-date-tag {
  position: absolute; top: 0; right: 15px; background: #fff; padding: 10px 8px; text-align: center;
  box-shadow: -2px 2px 8px rgba(0,0,0,0.1); z-index: 2;
}
.journal-date-tag::after {
  content: ""; position: absolute; bottom: -8px; left: 0;
  border-width: 8px 8px 0 0; border-style: solid; border-color: #bebbb4 transparent transparent transparent;
}
.j-day { display: block; font-family: var(--j-serif); font-size: 20px; font-weight: 700; color: #1a1a1a; line-height: 1; }
.j-my { display: block; font-family: var(--j-sans); font-size: 9px; color: var(--j-accent); border-top: 1px solid #eee; margin-top: 5px; padding-top: 3px; }

/* Badge Evidente con Nuovo Colore */
.journal-badge {
  position: absolute; 
  bottom: 0; 
  left: 0; 
  background: var(--j-accent) !important; 
  color: #fff !important;
  padding: 8px 16px; 
  font-family: var(--j-sans); 
  font-size: 12px !important; 
  text-transform: uppercase; 
  letter-spacing: 1.5px;
  font-weight: 700;
  z-index: 5;
}

/* Corpo Testuale: Titoli 21px e Testo 16px */
.journal-body { padding: 25px; flex-grow: 1; display: flex; flex-direction: column; }
.journal-body h3 { font-family: var(--j-serif); font-size: 21px !important; margin: 0 0 12px; line-height: 1.3; color: #1a1a1a; }
.journal-body p { font-family: var(--j-sans); font-size: 16px !important; line-height: 1.6; color: #555; margin: 0 0 20px; }

/* Footer */
.journal-footer { margin-top: auto; border-top: 1px solid var(--j-border); padding-top: 15px; }
.journal-author {
    font-family: var(--j-sans);
    font-size: 12px !important; /* Uniformato a 12px come gli altri blocchi */
    text-transform: uppercase;
    letter-spacing: 1px;
    color: #888 !important;
    margin-top: 8px;
    display: block;
}

.journal-author strong {
    color: var(--j-accent) !important; /* Colore Ocra #c26602 */
    font-weight: 700;
}

/* Responsive */
@media (max-width: 1100px) { .journal-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 700px) { .journal-grid { grid-template-columns: 1fr; } .journal-container { padding: 0 20px; } }