/* ============================================================
 * authors.css — pagine pubbliche autori (design portato dal
 * WordPress "autore"). Tutto scoped sotto body.page-authors.
 *   /{lang}/authors         → elenco (griglia card)
 *   /{lang}/authors/{slug}  → profilo (hero + griglia 2 col + sidebar)
 * Palette verde coerente col tema (verde #207359 / #2f5a41).
 * ============================================================ */

.page-authors .wrap {
    max-width: 1200px;
    margin: 0 auto;
    padding: 24px 20px 56px;
    color: #2b2f2d;
    line-height: 1.6;
}

/* ── Breadcrumb ───────────────────────────────────────────── */
.page-authors .lsh-author-breadcrumb {
    font-size: 14px;
    color: #6b7470;
    margin-bottom: 18px;
}
.page-authors .lsh-author-breadcrumb a { color: #207359; text-decoration: none; }
.page-authors .lsh-author-breadcrumb a:hover { text-decoration: underline; }
.page-authors .lsh-author-breadcrumb .sep { margin: 0 8px; color: #b8c2bd; }
.page-authors .lsh-author-breadcrumb [aria-current="page"] { color: #2e3a36; font-weight: 700; }

/* ── HERO ─────────────────────────────────────────────────── */
.page-authors .ls-hero { margin: 8px 0 30px; }
.page-authors .ls-hero-panel {
    background: linear-gradient(90deg, #eaf1ed 0%, #ffffff 65%);
    border: 1px solid #d9dedb;
    border-radius: 8px;
    padding: 26px;
    display: grid;
    grid-template-columns: 1.6fr .9fr;
    gap: 18px;
    align-items: center;
    position: relative;
    overflow: hidden;
    box-shadow: 0 6px 16px rgba(18, 32, 24, .06);
}
.page-authors .ls-hero-panel::after {
    content: ""; position: absolute; right: -40px; top: -30px;
    width: 260px; height: 260px;
    background: radial-gradient(circle at 30% 30%, rgba(47,90,65,.18), rgba(47,90,65,0) 60%);
    transform: rotate(12deg); pointer-events: none;
}
.page-authors .ls-title {
    margin: 0; font-size: 42px; line-height: 1.05;
    letter-spacing: -.6px; font-weight: 800; color: #103226;
}
.page-authors .ls-subtitle { margin: 10px 0 0; color: #2f5a41; font-size: 18px; font-weight: 650; }
.page-authors .ls-hero-illu { display: flex; justify-content: flex-end; align-items: center; }
.page-authors .ls-avatar {
    width: 240px; aspect-ratio: 1 / 1; border-radius: 8px;
    border: 1px solid #d9dedb; background: #fff; overflow: hidden;
    box-shadow: 0 10px 24px rgba(18, 32, 24, .08);
}
.page-authors .ls-avatar img { width: 100%; height: 100%; object-fit: cover; object-position: top center; display: block; }

/* ── GRIGLIA 2 COLONNE ────────────────────────────────────── */
.page-authors .content-grid {
    display: grid; grid-template-columns: 1fr 380px; gap: 30px; align-items: start;
}
.page-authors .content-block + .content-block,
.page-authors .main-col .ls-box + .content-block,
.page-authors .main-col .content-block + .ls-box {
    border-top: 1px solid rgba(0,0,0,.10);
    padding-top: 18px; margin-top: 18px;
}
.page-authors .content-block h2 {
    margin: 0 0 10px; font-size: 20px; font-weight: 800; color: #15543c;
}
.page-authors .content-block p { margin: 0 0 12px; }

/* ── Checklist ────────────────────────────────────────────── */
.page-authors .checklist { list-style: none; margin: 8px 0 14px; padding: 0; }
.page-authors .checklist li { position: relative; padding-left: 26px; margin: 10px 0; color: #3a4340; }
.page-authors .checklist li::before {
    content: "✓"; position: absolute; left: 0; top: 0; color: #2b6b56; font-weight: 900;
}
.page-authors .checklist li a { color: #207359; text-decoration: none; }
.page-authors .checklist li a:hover { text-decoration: underline; }

/* ── Box "pilastri" (nav verso sezioni) ───────────────────── */
.page-authors .ls-box {
    background: #fff; border: 1px solid rgba(20,38,30,.12); border-radius: 8px; margin: 22px 0;
}
.page-authors .ls-box-body { padding: 16px; }
.page-authors .ls-pillars { display: grid; gap: 10px; }
.page-authors .ls-pill {
    display: flex; align-items: center; justify-content: space-between; gap: 12px;
    border: 1px solid rgba(20,38,30,.12); border-radius: 8px;
    background: linear-gradient(90deg, #eaf1ed 0%, #ffffff 72%);
    padding: 12px 12px 12px 14px; color: #2e3a36; text-decoration: none;
    transition: color .2s ease;
}
.page-authors .ls-pill:hover { color: #207359; }
.page-authors .ls-pill-left { display: flex; align-items: center; gap: 15px; min-width: 0; }
.page-authors .ls-pill-title { margin: 0; font-weight: 800; font-size: 16px; }
.page-authors .ls-pill-sub { margin: 2px 0 0; font-size: 13px; color: #6b7470; }
.page-authors .ls-pill-arrow {
    width: 38px; height: 38px; border-radius: 8px; background: #e9ecea;
    color: #207359; display: grid; place-items: center; font-weight: 900; flex: 0 0 auto;
}

/* ── Articoli dell'autore ─────────────────────────────────── */
.page-authors .lsh-author-artlist { list-style: none; margin: 8px 0 0; padding: 0; }
.page-authors .lsh-author-artlist li { padding: 10px 0; border-bottom: 1px solid #eef2f0; }
.page-authors .lsh-author-artlist li:last-child { border-bottom: 0; }
.page-authors .lsh-author-artlist a { color: #15543c; font-weight: 700; text-decoration: none; }
.page-authors .lsh-author-artlist a:hover { text-decoration: underline; }
.page-authors .lsh-author-artdesc { display: block; color: #6b7470; font-size: 14px; margin-top: 3px; }

/* ── Sidebar panels ───────────────────────────────────────── */
.page-authors .side-col { display: flex; flex-direction: column; gap: 16px; }
.page-authors .panel { border: 1px solid #d9dedb; border-radius: 8px; overflow: hidden; }
.page-authors .panel__head {
    display: flex; align-items: center; gap: 10px; padding: 12px 18px;
    background: #e9ecea; border-bottom: 1px solid rgba(0,0,0,.06);
}
.page-authors .panel__title { margin: 0; font-size: 17px; font-weight: 800; color: #2e3a36; }
.page-authors .panel__body { padding: 14px 18px 16px; background: #f2f7f3; }
.page-authors .panel__body .checklist { margin: 0; }

/* ── Principio guida (banner verde) ───────────────────────── */
.page-authors .principle-banner {
    background: #207359; color: #fff; border-radius: 8px; padding: 16px 20px; margin-top: 24px;
}
.page-authors .principle-banner__head { margin-bottom: 6px; }
.page-authors .principle-banner h2 { margin: 0; font-size: 16px; font-weight: 900; color: #fff; }
.page-authors .principle-banner p { margin: 0; color: #eaf3ef; }

/* ── ELENCO AUTORI — griglia card ─────────────────────────── */
.page-authors .lsh-authors-head { margin: 8px 0 22px; }
.page-authors .lsh-authors-head h1 { margin: 0 0 6px; font-size: clamp(1.7rem, 3vw, 2.4rem); font-weight: 800; color: #103226; }
.page-authors .lsh-authors-head p { margin: 0; color: #6b7470; }
.page-authors .lsh-authors-grid {
    display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 18px;
}
.page-authors .lsh-author-card {
    display: flex; gap: 14px; align-items: center; padding: 16px;
    border: 1px solid #d9dedb; border-radius: 10px; background: #fff;
    text-decoration: none; color: inherit; transition: box-shadow .2s ease, transform .2s ease;
}
.page-authors .lsh-author-card:hover { box-shadow: 0 8px 22px rgba(16,50,38,.10); transform: translateY(-2px); }
.page-authors .lsh-author-card__avatar {
    width: 64px; height: 64px; border-radius: 50%; overflow: hidden; flex: 0 0 64px;
    background: linear-gradient(135deg, #c8d3e0, #9aa6b8); display: grid; place-items: center;
    color: #fff; font-weight: 800;
}
.page-authors .lsh-author-card__avatar img { width: 100%; height: 100%; object-fit: cover; object-position: top center; }
.page-authors .lsh-author-card__name { margin: 0; font-size: 1.02rem; font-weight: 800; color: #15543c; }
.page-authors .lsh-author-card__role { margin: 3px 0 0; font-size: .88rem; color: #6b7470; }
.page-authors .lsh-author-card__count { margin: 6px 0 0; font-size: .8rem; color: #2f5a41; font-weight: 600; }

/* ── Responsive ───────────────────────────────────────────── */
@media (max-width: 990px) {
    .page-authors .ls-hero-panel { grid-template-columns: 1fr; }
    .page-authors .ls-hero-illu { justify-content: flex-start; }
    .page-authors .ls-title { font-size: 34px; }
    .page-authors .content-grid { grid-template-columns: 1fr; }
    .page-authors .side-col { order: 2; }
}

/* Elenco articoli a TUTTA LARGHEZZA (fuori dalla content-grid 2 colonne) */
.page-authors .lsh-author-articles--full { margin-top: 30px; }
