/*
Theme Name: Astra Child
Template: astra
*/

@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap');

*, body { font-family: 'Inter', sans-serif !important; }

/* ── Header minimal bianco ── */
#masthead, .site-header, .ast-primary-header-bar, .main-header-bar {
    background: #ffffff !important;
    box-shadow: 0 1px 0 #e2e8f0 !important;
    padding: 0 !important;
}
.main-header-menu .menu-item a {
    color: #374151 !important;
    font-weight: 500 !important;
    font-size: 0.95rem !important;
    transition: color 0.2s !important;
}
.main-header-menu .menu-item a:hover { color: #2563eb !important; }
.main-header-menu .current-menu-item > a { color: #2563eb !important; font-weight: 600 !important; }
.site-title { display: none !important; }

/* ── Logo più grande ── */
.custom-logo { max-height: 90px !important; width: auto !important; }

/* ── Nascondi titoli pagina ── */
.entry-title, .page-title { display: none !important; }

/* ── Layout ── */
.entry-content { max-width: 100% !important; padding: 0 !important; margin: 0 !important; }

/* ── Bottoni ── */
.wp-block-button__link {
    background: #2563eb !important;
    color: #fff !important;
    border-radius: 8px !important;
    padding: 12px 28px !important;
    font-weight: 600 !important;
    font-size: 0.95rem !important;
    transition: all 0.2s !important;
    border: none !important;
    box-shadow: none !important;
}
.wp-block-button__link:hover {
    background: #1d4ed8 !important;
    transform: translateY(-1px) !important;
}
.is-style-outline .wp-block-button__link {
    background: transparent !important;
    border: 2px solid rgba(255,255,255,0.7) !important;
    color: #fff !important;
    box-shadow: none !important;
}

/* ── Sezioni full width ── */
.wp-block-group.alignfull, .wp-block-cover.alignfull {
    width: 100vw !important;
    max-width: 100vw !important;
    margin-left: calc(-50vw + 50%) !important;
}
.wp-block-columns.alignwide {
    max-width: 1100px !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

/* ── Footer minimal ── */
#colophon, .site-footer {
    background: #ffffff !important;
    border-top: 1px solid #e2e8f0 !important;
    padding: 0 !important;
    width: 100% !important;
}
.ast-small-footer, .ast-footer-copyright {
    background: #ffffff !important;
    color: #9ca3af !important;
    font-size: 0.82rem !important;
    padding: 18px 40px !important;
    text-align: center !important;
    width: 100% !important;
    max-width: 100% !important;
}
.ast-small-footer a, .ast-footer-copyright a { color: #2563eb !important; }
.ast-right-footer,
.ast-footer-copyright .ast-right { display: none !important; }
.ast-small-footer-wrap { max-width: 100% !important; width: 100% !important; }

/* ── Pagine interne full width ── */
.entry-content .wp-block-group.alignfull {
    width: 100vw !important;
    max-width: 100vw !important;
    margin-left: calc(-50vw + 50%) !important;
    box-sizing: border-box !important;
}
.entry-content .wp-block-cover.alignfull {
    width: 100vw !important;
    max-width: 100vw !important;
    margin-left: calc(-50vw + 50%) !important;
}

/* ── Progetti layout alternato ── */
.progetti-row {
    display: flex;
    align-items: center;
    gap: 48px;
    margin-bottom: 72px;
    max-width: 1100px;
    margin-left: auto;
    margin-right: auto;
    padding: 0 40px;
}
.progetti-row.reverse { flex-direction: row-reverse; }
.progetti-row-img { flex: 0 0 42%; }
.progetti-row-img img { width:100%; border-radius:16px; box-shadow:0 8px 32px rgba(0,0,0,0.1); display:block; }
.progetti-row-text { flex: 1; }
.progetti-num { color:#2563eb; font-size:0.75rem; font-weight:700; letter-spacing:3px; text-transform:uppercase; margin-bottom:10px; display:block; }
.progetti-row-text h2 { color:#0f172a; font-size:1.7rem; font-weight:800; margin-bottom:14px; line-height:1.3; }
.progetti-row-text p { color:#475569; line-height:1.75; margin-bottom:22px; }
.progetti-row-text a.btn { display:inline-block; background:#2563eb; color:#fff !important; padding:11px 26px; border-radius:8px; font-weight:600; font-size:0.9rem; text-decoration:none !important; transition:background 0.2s; }
.progetti-row-text a.btn:hover { background:#1d4ed8; }
@media (max-width:768px) {
    .progetti-row, .progetti-row.reverse { flex-direction:column; }
    .progetti-row-img { flex:0 0 100%; }
}

/* ── Contact Form 7 ── */
.wpcf7-form .cf7-row { display:flex; gap:20px; margin-bottom:16px; }
.wpcf7-form .cf7-col { flex:1; }
.wpcf7-form label { display:block; font-size:0.85rem; font-weight:600; color:#374151; margin-bottom:6px; }
.wpcf7-form input[type="text"],
.wpcf7-form input[type="email"],
.wpcf7-form input[type="tel"],
.wpcf7-form textarea { width:100%; padding:12px 16px; border:1px solid #d1d5db; border-radius:8px; font-size:0.95rem; color:#0f172a; background:#fff; transition:border-color 0.2s; box-sizing:border-box; }
.wpcf7-form input:focus,
.wpcf7-form textarea:focus { outline:none; border-color:#2563eb; box-shadow:0 0 0 3px rgba(37,99,235,0.1); }
.wpcf7-form textarea { min-height:140px; resize:vertical; }
.wpcf7-form .wpcf7-submit { background:#2563eb; color:#fff; border:none; padding:14px 32px; border-radius:8px; font-size:1rem; font-weight:600; cursor:pointer; transition:background 0.2s; margin-top:8px; }
.wpcf7-form .wpcf7-submit:hover { background:#1d4ed8; }
@media (max-width:600px) { .wpcf7-form .cf7-row { flex-direction:column; } }

/* CF7 */
.ejart-cf7-grid { display:grid; grid-template-columns:1fr 1fr; gap:14px; margin-bottom:14px; }
.ejart-cf7-full { margin-bottom:14px; }
.ejart-cf7-col label, .ejart-cf7-full label { display:block; font-size:0.82rem; font-weight:600; color:#374151; margin-bottom:5px; }
.ejart-contact-form .wpcf7-form input[type=text],
.ejart-contact-form .wpcf7-form input[type=email],
.ejart-contact-form .wpcf7-form input[type=tel],
.ejart-contact-form .wpcf7-form textarea { width:100%; padding:11px 14px; border:1.5px solid #d1d5db; border-radius:8px; font-size:0.9rem; color:#0f172a; background:#fff; box-sizing:border-box; font-family:inherit; transition:border-color 0.2s; }
.ejart-contact-form .wpcf7-form input:focus,
.ejart-contact-form .wpcf7-form textarea:focus { outline:none; border-color:#2563eb; box-shadow:0 0 0 3px rgba(37,99,235,0.1); }
.ejart-contact-form .wpcf7-form textarea { min-height:130px; resize:vertical; }
.ejart-cf7-submit { margin-top:8px; }
.ejart-contact-form .wpcf7-form input[type=submit] { background:#2563eb; color:#fff; border:none; padding:13px 32px; border-radius:8px; font-size:1rem; font-weight:600; cursor:pointer; transition:background 0.2s; font-family:inherit; }
.ejart-contact-form .wpcf7-form input[type=submit]:hover { background:#1d4ed8; }
.ejart-cf7-note { color:#94a3b8; font-size:0.78rem; margin:10px 0 0; }
.ejart-contact-form .wpcf7-mail-sent-ok { background:#dcfce7; color:#166534; border:1px solid #86efac; padding:12px 16px; border-radius:8px; margin-top:12px; font-size:0.9rem; }
@media (max-width:768px) {
  .ejart-contact-wrap { grid-template-columns:1fr; padding:48px 20px; }
  .ejart-cf7-grid { grid-template-columns:1fr; }
}

/* ── Pagina Contatti ── */
.ejart-contact-wrap {
    max-width: 1100px;
    margin: 0 auto;
    padding: 72px 40px;
    display: grid;
    grid-template-columns: 1fr 1.6fr;
    gap: 48px;
    align-items: start;
    background: #f8fafc;
}
.ejart-contact-info h2, .ejart-contact-form h2 {
    color: #0f172a; font-size: 1.5rem; font-weight: 800; margin: 0 0 24px;
}
.ejart-info-card {
    display: flex; align-items: flex-start; gap: 16px;
    background: #fff; border-radius: 12px; padding: 18px 20px;
    margin-bottom: 14px; box-shadow: 0 2px 12px rgba(0,0,0,0.05);
    border: 1px solid #e2e8f0;
}
.ejart-info-card .eic-icon { font-size: 1.4rem; flex-shrink: 0; margin-top: 2px; }
.ejart-info-card .eic-label { font-weight: 700; color: #0f172a; font-size: 0.88rem; margin: 0 0 3px; display: block; }
.ejart-info-card a { color: #2563eb; text-decoration: none; font-size: 0.92rem; }
.ejart-info-card p { color: #475569; font-size: 0.9rem; margin: 0; line-height: 1.6; }
.ejart-map { margin-top: 18px; border-radius: 16px; overflow: hidden; box-shadow: 0 4px 20px rgba(0,0,0,0.1); }
.ejart-map iframe { display: block; width: 100%; height: 220px; border: 0; }
.ejart-contact-form > p { color: #64748b; font-size: 0.9rem; margin: 0 0 24px; }
.ejart-cf7-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; margin-bottom: 14px; }
.ejart-cf7-full { margin-bottom: 14px; }
.ejart-cf7-col label, .ejart-cf7-full label {
    display: block; font-size: 0.82rem; font-weight: 600; color: #374151; margin-bottom: 5px;
}
.ejart-contact-form .wpcf7-form input[type=text],
.ejart-contact-form .wpcf7-form input[type=email],
.ejart-contact-form .wpcf7-form input[type=tel],
.ejart-contact-form .wpcf7-form textarea {
    width: 100%; padding: 11px 14px; border: 1.5px solid #d1d5db;
    border-radius: 8px; font-size: 0.9rem; color: #0f172a; background: #fff;
    box-sizing: border-box; font-family: inherit; transition: border-color 0.2s;
}
.ejart-contact-form .wpcf7-form input:focus,
.ejart-contact-form .wpcf7-form textarea:focus {
    outline: none; border-color: #2563eb; box-shadow: 0 0 0 3px rgba(37,99,235,0.1);
}
.ejart-contact-form .wpcf7-form textarea { min-height: 130px; resize: vertical; }
.ejart-contact-form .wpcf7-form input[type=submit] {
    background: #2563eb; color: #fff; border: none; padding: 13px 32px;
    border-radius: 8px; font-size: 1rem; font-weight: 600; cursor: pointer;
    transition: background 0.2s; font-family: inherit; margin-top: 8px;
}
.ejart-contact-form .wpcf7-form input[type=submit]:hover { background: #1d4ed8; }
.ejart-cf7-note { color: #94a3b8; font-size: 0.78rem; margin: 10px 0 0; }
@media (max-width: 768px) {
    .ejart-contact-wrap { grid-template-columns: 1fr; padding: 48px 20px; }
    .ejart-cf7-grid { grid-template-columns: 1fr; }
}

/* ── Nascondi autore e metadati blog ── */
.ast-author-meta,
.entry-meta .posted-by,
.posted-by,
.ast-blog-single-element.ast-author-name,
.entry-header .ast-blog-single-element,
span.posted-by,
.ast-post-format-standard .entry-meta .posted-by { display: none !important; }

/* ── Blog listing ── */
.blog .site-content, .archive .site-content {
    background: #f8fafc;
}
.blog .ast-container, .archive .ast-container {
    max-width: 1200px !important;
    padding: 48px 20px !important;
}
.blog .ast-article-post, .archive .ast-article-post {
    background: #ffffff !important;
    border-radius: 16px !important;
    overflow: hidden !important;
    box-shadow: 0 2px 16px rgba(0,0,0,0.06) !important;
    border: 1px solid #f1f5f9 !important;
    transition: transform 0.2s, box-shadow 0.2s !important;
    margin-bottom: 32px !important;
}
.blog .ast-article-post:hover, .archive .ast-article-post:hover {
    transform: translateY(-4px) !important;
    box-shadow: 0 8px 32px rgba(0,0,0,0.1) !important;
}
.blog .ast-article-post .entry-header, .archive .ast-article-post .entry-header {
    padding: 24px 28px 0 !important;
}
.blog .ast-article-post .entry-content, .archive .ast-article-post .entry-content {
    padding: 12px 28px 24px !important;
}
.blog .entry-title a, .archive .entry-title a {
    color: #0f172a !important;
    font-size: 1.2rem !important;
    font-weight: 700 !important;
    text-decoration: none !important;
    line-height: 1.4 !important;
}
.blog .entry-title a:hover, .archive .entry-title a:hover {
    color: #2563eb !important;
}
.blog .post-thumbnail img, .archive .post-thumbnail img {
    width: 100% !important;
    height: 220px !important;
    object-fit: cover !important;
    border-radius: 0 !important;
}
.blog .entry-meta, .archive .entry-meta {
    color: #94a3b8 !important;
    font-size: 0.82rem !important;
    margin-bottom: 8px !important;
}
.blog .category-style-simple .ast-term-name,
.archive .category-style-simple .ast-term-name {
    background: #eff6ff !important;
    color: #2563eb !important;
    padding: 3px 10px !important;
    border-radius: 20px !important;
    font-size: 0.75rem !important;
    font-weight: 600 !important;
}
.blog .ast-pagination, .archive .ast-pagination {
    text-align: center !important;
    margin-top: 32px !important;
}
.blog .ast-pagination .page-numbers, .archive .ast-pagination .page-numbers {
    display: inline-block !important;
    padding: 8px 14px !important;
    margin: 0 4px !important;
    border-radius: 8px !important;
    border: 1px solid #e2e8f0 !important;
    color: #475569 !important;
    text-decoration: none !important;
    font-size: 0.9rem !important;
    background: #fff !important;
}
.blog .ast-pagination .page-numbers.current,
.archive .ast-pagination .page-numbers.current {
    background: #2563eb !important;
    color: #fff !important;
    border-color: #2563eb !important;
}

/* ── Nascondi autore ── */
.ast-author-meta,
.entry-meta .posted-by,
.posted-by,
span.posted-by { display: none !important; }

/* ── Singolo articolo blog ── */
.single .entry-content {
    max-width: 820px !important;
    margin: 0 auto !important;
    padding: 48px 20px !important;
}
.single .entry-content h2 { color: #0f172a; font-size: 1.5rem; font-weight: 700; margin: 2rem 0 1rem; }
.single .entry-content h3 { color: #0f172a; font-size: 1.2rem; font-weight: 700; margin: 1.5rem 0 0.8rem; }
.single .entry-content p { color: #374151; line-height: 1.8; margin-bottom: 1.2rem; }
.single .entry-content ul, .single .entry-content ol { color: #374151; line-height: 1.8; margin: 0 0 1.2rem 1.5rem; }
.single .entry-content li { margin-bottom: 0.5rem; }
.single .entry-content strong { color: #0f172a; }
.single .entry-content a { color: #2563eb; }
.single .entry-title { color: #0f172a; font-size: 2rem; font-weight: 800; line-height: 1.3; }
.single .post-thumbnail { margin-bottom: 32px; border-radius: 16px; overflow: hidden; }
.single .post-thumbnail img { width: 100%; max-height: 400px; object-fit: cover; }

/* ── Blog Grid Custom ── */
.ejart-blog-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 28px;
    margin-bottom: 48px;
}
.ejart-blog-card {
    background: #fff;
    border-radius: 16px;
    overflow: hidden;
    box-shadow: 0 2px 16px rgba(0,0,0,0.06);
    border: 1px solid #f1f5f9;
    transition: transform 0.2s, box-shadow 0.2s;
    display: flex;
    flex-direction: column;
}
.ejart-blog-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 8px 32px rgba(0,0,0,0.1);
}
.ejart-blog-card-img { display: block; overflow: hidden; height: 200px; }
.ejart-blog-card-img img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.3s; }
.ejart-blog-card:hover .ejart-blog-card-img img { transform: scale(1.05); }
.ejart-blog-card-body { padding: 24px; flex: 1; display: flex; flex-direction: column; }
.ejart-blog-card-cat a {
    background: #eff6ff; color: #2563eb; padding: 3px 10px;
    border-radius: 20px; font-size: 0.72rem; font-weight: 600;
    text-decoration: none; display: inline-block; margin-bottom: 12px;
}
.ejart-blog-card-title { font-size: 1rem; font-weight: 700; margin: 0 0 10px; line-height: 1.4; }
.ejart-blog-card-title a { color: #0f172a; text-decoration: none; }
.ejart-blog-card-title a:hover { color: #2563eb; }
.ejart-blog-card-excerpt { color: #64748b; font-size: 0.88rem; line-height: 1.6; margin: 0 0 16px; flex: 1; }
.ejart-blog-card-footer { display: flex; justify-content: space-between; align-items: center; margin-top: auto; }
.ejart-blog-card-date { color: #94a3b8; font-size: 0.78rem; }
.ejart-blog-card-link { color: #2563eb; font-size: 0.85rem; font-weight: 600; text-decoration: none; }
.ejart-blog-card-link:hover { color: #1d4ed8; }
.ejart-blog-pagination { text-align: center; }
.ejart-blog-pagination .page-numbers {
    display: inline-block; padding: 8px 14px; margin: 0 4px;
    border-radius: 8px; border: 1px solid #e2e8f0; color: #475569;
    text-decoration: none; font-size: 0.9rem; background: #fff;
}
.ejart-blog-pagination .page-numbers.current {
    background: #2563eb; color: #fff; border-color: #2563eb;
}
@media (max-width: 900px) { .ejart-blog-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 600px) { .ejart-blog-grid { grid-template-columns: 1fr; } }

/* ── Blog: nascondi contenitore Astra e usa il nostro ── */
.blog #primary,
.blog #content > .ast-container,
.blog .site-content > .ast-container {
    display: block !important;
    max-width: 100% !important;
    padding: 0 !important;
}
.blog #primary {
    width: 100% !important;
    float: none !important;
}
.blog .site-main {
    margin: 0 !important;
    padding: 0 !important;
}

/* ── Blog: fix layout flex Astra ── */
.blog #content > .ast-container {
    display: block !important;
    flex-direction: unset !important;
}
.blog #primary.content-area {
    width: 100% !important;
    max-width: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
    float: none !important;
    flex: unset !important;
}
.blog .site-main {
    padding: 0 !important;
    margin: 0 !important;
}

/* ── Blog Custom Template ── */
.page-template-page-blog-custom #content > .ast-container,
.page-template-page-blog-custom .site-content > .ast-container {
    display: block !important;
}
.page-template-page-blog-custom #primary {
    width: 100% !important;
    max-width: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
}
.page-template-page-blog-custom .site-main {
    padding: 0 !important;
    margin: 0 !important;
}
.page-template-page-blog-custom .entry-content {
    padding: 0 !important;
    margin: 0 !important;
    max-width: 100% !important;
}

/* ── Singolo articolo blog ── */
.single .posted-by,
.single .ast-author-meta,
.single #comments,
.single .comments-area,
.single .post-navigation,
.single .ast-post-navigation { display: none !important; }

.single .entry-header { padding: 0 !important; }

.single .entry-title {
    font-size: 2rem !important;
    font-weight: 800 !important;
    color: #0f172a !important;
    line-height: 1.3 !important;
    margin-bottom: 16px !important;
}

/* Hero immagine articolo */
.single .post-thumbnail {
    width: 100vw !important;
    margin-left: calc(-50vw + 50%) !important;
    margin-bottom: 0 !important;
    max-height: 420px !important;
    overflow: hidden !important;
}
.single .post-thumbnail img {
    width: 100% !important;
    height: 420px !important;
    object-fit: cover !important;
    display: block !important;
}

/* Header articolo con sfondo scuro sopra l'immagine */
.single .ast-article-single {
    max-width: 820px !important;
    margin: 0 auto !important;
    padding: 48px 20px !important;
}

/* Meta data */
.single .entry-meta {
    color: #94a3b8 !important;
    font-size: 0.82rem !important;
    margin-bottom: 32px !important;
    padding-bottom: 24px !important;
    border-bottom: 1px solid #e2e8f0 !important;
    display: flex !important;
    gap: 16px !important;
    align-items: center !important;
}
.single .entry-meta .cat-links a {
    background: #eff6ff !important;
    color: #2563eb !important;
    padding: 3px 10px !important;
    border-radius: 20px !important;
    font-size: 0.72rem !important;
    font-weight: 600 !important;
    text-decoration: none !important;
}

/* Contenuto */
.single .entry-content {
    max-width: 820px !important;
    margin: 0 auto !important;
    padding: 0 !important;
    font-size: 1rem !important;
    line-height: 1.8 !important;
    color: #374151 !important;
}
.single .entry-content p { margin-bottom: 1.4rem !important; }
.single .entry-content h2 {
    font-size: 1.5rem !important;
    font-weight: 700 !important;
    color: #0f172a !important;
    margin: 2.5rem 0 1rem !important;
    padding-top: 1rem !important;
    border-top: 2px solid #f1f5f9 !important;
}
.single .entry-content h3 {
    font-size: 1.2rem !important;
    font-weight: 700 !important;
    color: #0f172a !important;
    margin: 2rem 0 0.8rem !important;
}
.single .entry-content h4 {
    font-size: 1rem !important;
    font-weight: 700 !important;
    color: #0f172a !important;
    margin: 1.5rem 0 0.6rem !important;
}
.single .entry-content ul,
.single .entry-content ol {
    padding-left: 1.5rem !important;
    margin-bottom: 1.4rem !important;
}
.single .entry-content li { margin-bottom: 0.5rem !important; }
.single .entry-content strong { color: #0f172a !important; font-weight: 700 !important; }
.single .entry-content a { color: #2563eb !important; }
.single .entry-content a:hover { color: #1d4ed8 !important; }
.single .entry-content img {
    max-width: 100% !important;
    border-radius: 12px !important;
    margin: 1.5rem 0 !important;
    box-shadow: 0 4px 20px rgba(0,0,0,0.08) !important;
}

/* Box CTA in fondo all'articolo */
.ejart-post-cta {
    background: linear-gradient(135deg, #0f172a, #1e3a5f);
    border-radius: 16px;
    padding: 32px;
    text-align: center;
    margin-top: 48px;
}
.ejart-post-cta h3 { color: #fff; font-size: 1.2rem; font-weight: 700; margin-bottom: 8px; }
.ejart-post-cta p { color: #94a3b8; font-size: 0.9rem; margin-bottom: 20px; }
.ejart-post-cta a {
    display: inline-block;
    background: #2563eb;
    color: #fff !important;
    padding: 12px 28px;
    border-radius: 8px;
    font-weight: 600;
    text-decoration: none !important;
    margin: 0 6px;
    font-size: 0.9rem;
}
.ejart-post-cta a.wa { background: #25d366; }

/* ── CTA post bottoni fix ── */
.ejart-post-cta a,
.ejart-post-cta a:visited {
    display: inline-block !important;
    background: #2563eb !important;
    color: #ffffff !important;
    padding: 12px 28px !important;
    border-radius: 8px !important;
    font-weight: 600 !important;
    text-decoration: none !important;
    margin: 0 6px 8px !important;
    font-size: 0.9rem !important;
    border: none !important;
    box-shadow: none !important;
    line-height: 1.5 !important;
}
.ejart-post-cta a.wa,
.ejart-post-cta a.wa:visited { background: #25d366 !important; }
.ejart-post-cta a:hover { opacity: 0.9 !important; transform: translateY(-1px) !important; }

/* ── CTA articoli blog - alta specificità ── */
.ast-single-post .entry-content div[style*="linear-gradient"] a,
.ast-single-post .entry-content div[style*="linear-gradient"] a:visited,
body.single .entry-content div[style*="linear-gradient"] a,
body.single .entry-content div[style*="linear-gradient"] a:visited {
    color: #ffffff !important;
    text-decoration: none !important;
    background: #2563eb !important;
    padding: 12px 28px !important;
    border-radius: 8px !important;
    font-weight: 600 !important;
    display: inline-block !important;
    margin: 0 6px 8px !important;
    font-size: 0.9rem !important;
    border: none !important;
    box-shadow: none !important;
}

/* ── Single post larghezza ── */
.single #content > .ast-container { max-width: 100% !important; padding: 0 !important; }
.single .ast-article-single { padding: 0 !important; max-width: 100% !important; }
.ejart-post-wrap { max-width: 1100px !important; }

/* ── Chi Siamo: full width ── */
.ejart-about {
    width: 100vw !important;
    margin-left: calc(-50vw + 50%) !important;
}

/* ── Chi Siamo: fix overflow padre ── */
.entry-content {
    overflow-x: visible !important;
}
.hfeed .entry-content,
article .entry-content {
    overflow: visible !important;
}

/* ── Chi Siamo: fix full width ── */
body.home {
    overflow-x: hidden !important;
}
.ejart-about {
    max-width: 100% !important;
    width: 100% !important;
    margin-left: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    box-sizing: border-box !important;
}
.ejart-about__inner {
    padding: 0 40px !important;
}

/* ── Chi Siamo: sezione terminale ── */
.ejart-about-wrap {
  background: #f8fafc !important;
  padding: 80px 40px !important;
  box-sizing: border-box !important;
}
.ejart-about__inner {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 80px !important;
  max-width: 1100px !important;
  width: 100% !important;
  margin: 0 auto !important;
  align-items: center !important;
}
.ejart-about__label { font-family: 'JetBrains Mono', monospace !important; font-size: 0.75rem !important; font-weight: 700 !important; letter-spacing: 3px !important; text-transform: uppercase !important; color: #2563eb !important; margin-bottom: 16px !important; display: block !important; }
.ejart-about__title { font-size: clamp(32px, 3.5vw, 52px) !important; font-weight: 800 !important; line-height: 1.1 !important; color: #0f172a !important; margin: 0 0 24px 0 !important; }
.ejart-about__title mark { background: #b5f542 !important; color: #0f172a !important; padding: 2px 6px !important; border-radius: 4px !important; font-style: normal !important; }
.ejart-about__text { font-size: 1rem !important; line-height: 1.75 !important; color: #475569 !important; margin-bottom: 36px !important; }
.ejart-about__actions { display: flex !important; align-items: center !important; gap: 20px !important; flex-wrap: wrap !important; }
.ejart-btn--primary { display: inline-block !important; background: #2563eb !important; color: #fff !important; padding: 12px 28px !important; border-radius: 8px !important; font-size: 0.95rem !important; font-weight: 600 !important; text-decoration: none !important; line-height: 1.5 !important; }
.ejart-btn--primary:hover { background: #1d4ed8 !important; color: #fff !important; }
.ejart-btn--ghost { font-size: 0.95rem !important; font-weight: 500 !important; color: #475569 !important; text-decoration: none !important; border-bottom: 1px solid #cbd5e1 !important; padding-bottom: 2px !important; }
.ejart-btn--ghost:hover { color: #2563eb !important; border-color: #2563eb !important; }
.ejart-terminal { background: #1a1a1a !important; border-radius: 14px !important; overflow: hidden !important; box-shadow: 0 24px 64px rgba(0,0,0,0.15), 0 4px 16px rgba(0,0,0,0.08) !important; font-family: 'JetBrains Mono', monospace !important; }
.ejart-terminal__bar { background: #2a2a2a !important; padding: 13px 18px !important; display: flex !important; align-items: center !important; gap: 8px !important; border-bottom: 1px solid #333 !important; }
.ejart-terminal__dot { width: 12px !important; height: 12px !important; border-radius: 50% !important; flex-shrink: 0 !important; }
.ejart-terminal__dot--red { background: #ff5f56 !important; } .ejart-terminal__dot--yellow { background: #ffbd2e !important; } .ejart-terminal__dot--green { background: #27c93f !important; }
.ejart-terminal__title { margin-left: 8px !important; font-size: 12px !important; color: #888 !important; font-family: 'JetBrains Mono', monospace !important; }
.ejart-terminal__body { padding: 26px 28px 30px !important; font-size: 13px !important; line-height: 1.8 !important; color: #e0e0e0 !important; }
.ejart-terminal__cmd { margin-bottom: 18px !important; }
.t-prompt { color: #27c93f !important; } .t-flag { color: #89b4fa !important; }
.ejart-terminal__user { color: #ff9f43 !important; font-size: 14px !important; font-weight: 700 !important; margin-bottom: 2px !important; }
.ejart-terminal__sep { border: none !important; border-top: 1px solid #3a3a3a !important; margin: 8px 0 12px !important; }
.ejart-terminal__row { display: grid !important; grid-template-columns: 100px 1fr !important; gap: 8px !important; margin-bottom: 3px !important; }
.t-key { color: #89b4fa !important; } .t-val { color: #e0e0e0 !important; } .t-bold { font-weight: 700 !important; color: #fff !important; } .t-acc { color: #b5f542 !important; }
.ejart-terminal__prompt { margin-top: 18px !important; color: #27c93f !important; }
.ejart-terminal__cursor { display: inline-block !important; width: 8px !important; height: 15px !important; background: #e0e0e0 !important; vertical-align: middle !important; margin-left: 2px !important; animation: ejart-blink 1.1s step-end infinite !important; }
@keyframes ejart-blink { 0%, 100% { opacity: 1; } 50% { opacity: 0; } }
@media (max-width: 860px) {
  .ejart-about-wrap { padding: 64px 24px !important; }
  .ejart-about__inner { grid-template-columns: 1fr !important; gap: 48px !important; }
}

/* ── Chi Siamo full width fix ── */
.page-id-8 .ejart-about {
    margin-left: -24px !important;
    margin-right: -24px !important;
    padding-left: 24px !important;
    padding-right: 24px !important;
    background: #f8fafc !important;
}

/* ── Chi Siamo background fix ── */
.ejart-about {
    background: #f8fafc !important;
    width: 100% !important;
    margin-left: 0 !important;
}
