:root {
  --f-serif: 'Playfair Display', serif;
  --f-sans: 'Inter', sans-serif;
  --f-accent: #c26602; /* Colore Ocra aggiornato */
  --f-border: #f0ede9;
}

.focus-slim-section { padding: 40px 0; background: #fff; }
.f-container { max-width: 1400px; margin: 0 auto; padding: 0 40px; }

/* Header Sezione Uniformato con gli altri blocchi */
.journal-header { display: flex; align-items: flex-end; gap: 20px; margin-bottom: 30px; }
.journal-title-wrap { flex-shrink: 0; }
.journal-pretitle { 
    display: block; 
    font-family: var(--f-sans); 
    font-size: 14px !important; 
    font-weight: 800 !important; 
    text-transform: uppercase; 
    letter-spacing: 3px; 
    color: var(--f-accent) !important; 
    margin-bottom: 5px; 
}
.journal-section-title { font-family: var(--f-serif); font-size: 38px; margin: 0; line-height: 1; color: #1a1a1a; }
.journal-line { flex-grow: 1; height: 2px; background: var(--f-border); margin-bottom: 8px; }

/* Grid Compatta */
.f-grid-slim { display: grid; grid-template-columns: 1.5fr 1fr; gap: 25px; align-items: stretch; }

/* Hero Slim */
.f-hero-card-slim { position: relative; display: flex; flex-direction: column; height: 100%; }
.f-img-wrapper-slim { height: 380px; position: relative; overflow: hidden; }
.f-img-wrapper-slim img { width: 100%; height: 100%; object-fit: cover; }

.f-text-overlay-slim {
  background: #fff; padding: 25px; margin: -40px 20px 0; position: relative; z-index: 10;
  border: 1px solid var(--f-border); box-shadow: 0 8px 20px rgba(0,0,0,0.05);
}
.f-text-overlay-slim h2 { font-family: var(--f-serif); font-size: 28px; margin: 8px 0; line-height: 1.2; }
.f-text-overlay-slim h2 a { text-decoration: none; color: #1a1a1a !important; }
.f-text-overlay-slim p { font-family: var(--f-sans); font-size: 16px !important; color: #555; margin-bottom: 12px; line-height: 1.6; }

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

/* Side Compact */
.f-col-side-slim { display: flex; flex-direction: column; gap: 15px; }
.f-side-compact { display: flex; gap: 15px; padding: 12px; background: #fff; border: 1px solid var(--f-border); flex: 1; align-items: center; }
.f-side-img-slim { width: 120px; height: 120px; flex-shrink: 0; }
.f-side-img-slim img { width: 100%; height: 100%; object-fit: cover; }

.f-side-info h3 { font-family: var(--f-serif); font-size: 18px; margin: 0 0 4px; line-height: 1.2; }
.f-side-info h3 a { text-decoration: none; color: #1a1a1a !important; }
.f-side-info p { font-family: var(--f-sans); font-size: 14px; color: #777; margin: 0 0 6px; line-height: 1.3; }

/* Metadati Badge e Autore (Minimo 12px) */
.f-badge, .f-side-cat { font-family: var(--f-sans); font-size: 12px !important; font-weight: 700; text-transform: uppercase; color: var(--f-accent) !important; margin-bottom: 5px; display: block; }
.f-author, .f-side-author { font-family: var(--f-sans); font-size: 12px !important; text-transform: uppercase; color: #999; }
.f-author strong, .f-side-author strong { color: var(--f-accent) !important; font-weight: 700; }

@media (max-width: 1024px) { .f-grid-slim { grid-template-columns: 1fr; } }