/* ══════════════════════════════════════════════════════════
   mobile.css — modifiche SOLO per schermi <= 640px
   Non toccare style.css
══════════════════════════════════════════════════════════ */
@media (max-width: 640px) {

  /* ── Crediti foto hero: nascosti ── */
  .ep-photo-credit  { display: none !important; }
  .ep-photo-credits { display: none !important; }

  /* ── Crediti foto inline nel corpo: nascosti ── */
  .ep-inline-img figcaption { display: none !important; }

  /* ── Hero: niente spazio bianco sotto la foto landscape ── */
  .ep-hero {
    display: flex !important;
    flex-direction: column !important;
    min-height: 0 !important;
  }
  .ep-hero__left  { order: 1; flex-shrink: 0; }
  .ep-hero__photo {
    order: 2;
    position: relative !important;
    top: 0 !important;
    height: auto !important;
    min-height: 0 !important;
    aspect-ratio: 4/3;
    flex-shrink: 0;
  }

  /* ── Player Label grande quanto la breadcrumb ── */

  .ep-inline-player__label { font-size: 0.95rem !important; }
  .ep-inline-player__dur { font-size: 0.95rem !important; }

  /* ── Subnav: visibile, spazio ridotto ── */
  .ep-subnav {
    display: flex !important;
    width: 100% !important;
    max-width: 100% !important;
    margin-bottom: 0 !important;
    box-sizing: border-box !important;
  }
  .ep-subnav a { font-size: 0.9rem !important; }

  /* Postit: padding ridotto */
  .ep-postit { padding: 3rem 2rem 3rem 2rem !important; }

  /* Su mobile nascondi il testo delle frecce, mostra solo SVG */
  .ep-subnav__ep span { display: none !important; }
  .ep-subnav__ep { padding: 0.5rem !important; }
  .ep-subnav__nav { gap: 0.25rem !important; }

  /* ── Margini laterali ridotti nelle pagine episodio ── */
  main.ep-page-main > .description { padding-left: 1rem !important; padding-right: 1rem !important; }
  main.ep-page-main > .transcript { padding-left: 0.5rem !important; padding-right: 0.5rem !important; padding-top: 0rem !important; }
  main.ep-page-main > .hub-breadcrumb,
  main.ep-page-main > h1,
  main.ep-page-main > .date,
  main.ep-page-main > .ep-play-row,
  main.ep-page-main > .ep-location,
  main.ep-page-main > .ep-social-row { padding-left: 1rem !important; padding-right: 1rem !important; }


/* ── Titolo episodio: testo più grande ── */
.ep-hero__left h1 { 
font-size: 2rem !important;
font-weight: 500 !important;
line-height: 1.2 !important; }


/* ── Description episodio: testo più grande ── */
main > .description {
  font-size: 1.4rem !important;
  font-weight: 400 !important;
  line-height: 1.4 !important;
}

  /* ── Testo trascrizione: più grande, interlinea ridotta ── */
  main > .transcript p {
    font-size: 1.2rem !important;
    font-weight: 400 !important;
    line-height: 1.4 !important;
    color: var(--text); !important;
  }

  /* ── Blockquote: margini uguali sopra e sotto ── */
  .transcript blockquote p:last-child,
  .transcript article blockquote p:last-child {
    font-size: 1.4rem !important;
    font-weight: 400 !important;
    line-height: 1,4 !important;
    margin-bottom: 0 !important;
  }
  main > .description { border-bottom: none !important; }



  /* ── Post-it: font weight aumentato ── */
  .ep-postit ul li { font-weight: 500 !important;
  font-size: 1.1rem !important;
  line-height: 1.4rem !important;
   }

  /* ── Back to top button: stile mobile ── */
  #go-top {
    background: var(--accent) !important;
    border: none !important;
    color: #fff !important;
    box-shadow: 0 2px 8px rgba(0,0,0,0.18) !important;
    width: 44px !important;
    height: 44px !important;
  }
  #go-top svg { fill: #fff !important; }

  /* ── Foto inline: full-width, senza didascalia ── */
  .ep-inline-img {
    width: 100vw !important;
    position: relative !important;
    left: 50% !important;
    margin-left: -50vw !important;
    margin-right: -50vw !important;
    margin-top: 2rem !important;
    margin-bottom: 2rem !important;
  }
  .ep-inline-img img { border-radius: 0 !important; }

  /* ── Mappa: layout mobile, colonna singola ── */
  .ep-map-widget__title { display: flex !important; }
  .ep-map-widget { margin-top: 0 !important; }
  .transcript .ep-map-widget { padding-top: 0.5rem !important; margin-top: 0 !important; }

  /* Nascondi tutti i tasti header su mobile */
  .ep-map-widget__header .ep-map-widget__actions { display: none !important; }

  /* Mostra il "Copia luoghi" solo in basso (ep-map-actions-mobile) */
  .ep-map-actions-mobile .js-copy-text { display: inline-flex !important; }

  /* Tasti mobile: stile identico al desktop */
  .ep-map-actions-mobile {
    display: flex !important;
    gap: 0.35rem !important;
    margin-top: 0.75rem !important;
    justify-content: flex-end !important;
    width: 100% !important;
  }
  .ep-map-actions-mobile .ep-map-topbtn {
    display: inline-flex !important;
    align-items: center !important;
    gap: 0.4rem !important;
    font-size: 0.92rem !important;
    font-weight: 600 !important;
    font-family: var(--font) !important;
    padding: 0.4rem 0.9rem !important;
    border-radius: 6px !important;
    border: 1.5px solid var(--border) !important;
    background: var(--white) !important;
    color: var(--muted) !important;
    cursor: pointer !important;
    text-decoration: none !important;
    white-space: nowrap !important;
    flex: none !important;
  }
  .ep-map-actions-mobile .ep-map-topbtn span { display: inline !important; }
  .ep-map-actions-mobile .ep-map-topbtn svg { width: 16px !important; height: 16px !important; flex-shrink: 0 !important; }
  /* "Apri su Maps" = primo bottone → accent */
  .ep-map-actions-mobile .ep-map-topbtn:first-child { flex: 1 !important; color: var(--accent) !important; }
  .ep-map-actions-mobile .ep-map-topbtn:first-child svg { fill: var(--accent) !important; }
  /* "Copia luoghi" = secondo bottone → muted */
  .ep-map-actions-mobile .ep-map-topbtn:last-child { flex: 1 !important; color: var(--muted) !important; }
  .ep-map-actions-mobile .ep-map-topbtn:last-child svg { fill: var(--muted) !important; }

  /* Subnav: full width in mobile */
  .ep-subnav { max-width: 100% !important; }

  /* Inner: colonna singola, border completo e chiuso */
  .ep-map-widget__inner {
    display: flex !important;
    flex-direction: column !important;
    grid-template-columns: 1fr !important;
    border: 1px solid var(--border) !important;
    border-radius: 12px !important;
    overflow: hidden !important;
  }
  .ep-map-widget__map { height: 240px !important; }
  .ep-map-list {
    border-left: none !important;
    border-top: 1px solid var(--border) !important;
    max-height: 220px !important;
  }

  /* Tasti originali nell'header: non toccati su mobile (già nascosti sopra) */
  .ep-map-topbtn {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 0.4rem !important;
    flex: 1 !important;
    min-height: 44px !important;
    padding: 0 0.5rem !important;
    border: none !important;
    border-right: 1px solid var(--border) !important;
    border-radius: 0 !important;
    background: var(--white) !important;
    color: var(--accent) !important;
    font-size: 0.82rem !important;
    font-weight: 600 !important;
    font-family: var(--font) !important;
    white-space: nowrap !important;
    cursor: pointer !important;
    text-decoration: none !important;
  }
  .ep-map-widget__header .ep-map-topbtn:last-child { border-right: none !important; }
  .ep-map-topbtn span { display: inline !important; }
  .ep-map-topbtn svg { width: 14px !important; height: 14px !important; fill: var(--accent) !important; flex-shrink: 0 !important; }

  .ep-map-toast { font-size: .75rem; white-space: normal; text-align: center; width: 90%; }

  /* ── Mappa prima della trascrizione ── */
  .transcript article { display: flex !important; flex-direction: column !important; }
  .transcript article .ep-map-widget { order: -1 !important; padding: 2rem 0 1.8rem !important; }
  .ep-map-topbtn {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 0.4rem !important;
    flex: 1 !important;
    min-height: 48px !important;
    padding: 0 0.5rem !important;
    border: none !important;
    border-right: 1px solid var(--border) !important;
    border-radius: 0 !important;
    background: var(--white) !important;
    color: var(--accent) !important;
    cursor: pointer !important;
    text-decoration: none !important;
    font-size: 0.82rem !important;
    font-weight: 600 !important;
    font-family: var(--font) !important;
    white-space: nowrap !important;
  }
  .ep-map-widget__header .ep-map-topbtn:last-child { border-right: none !important; }
  .ep-map-topbtn span { display: inline !important; }
  .ep-map-topbtn svg {
    width: 14px !important;
    height: 14px !important;
    fill: var(--accent) !important;
    flex-shrink: 0 !important;
  }
  .ep-map-toast { font-size: .75rem; white-space: normal; text-align: center; width: 90%; }

  /* ── Mappa prima della trascrizione ── */
  .transcript article { display: flex !important; flex-direction: column !important; }
  .transcript article .ep-map-widget { order: -1 !important; padding: 2rem 0 1.8rem !important; }

  /* ── CTA widget fine episodio: centrato, cover grande ── */
  .ep-cta {
    flex-direction: column !important;
    align-items: center !important;
    text-align: center !important;
    padding: 2rem 1.25rem 1.75rem !important;
    gap: 1.4rem !important;
  }
  .ep-cta__cover {
    width: 160px !important;
    height: 160px !important;
    flex-shrink: 0 !important;
    margin-top: 0.5rem !important;
  }
  .ep-cta__body {
    align-items: center !important;
    width: 100% !important;
    gap: 1rem !important;
  }
  .ep-cta__buttons {
    justify-content: center !important;
    gap: 0.75rem !important;
  }
  .ep-cta__btn {
    font-size: 0.95rem !important;
    padding: 0.6rem 1.2rem !important;
  }

  /* ══════════════════════════════════════════════════════════
     FONT SIZE — tutte le altre pagine
  ══════════════════════════════════════════════════════════ */

  /* ── Lista episodi ── */
  .ep-list a          { font-size: 1.15rem !important; }
  .ep-list .date      { font-size: 0.9rem !important; }

  /* ── Navigazione episodio prev/next ── */
  .ep-nav__title      { font-size: 1rem !important; }
  .ep-nav__label      { font-size: 0.78rem !important; }

  /* ── Hub pages ── */
  .hub-hero__intro    { font-size: 1.1rem !important; }
  .hub-hero__tagline  { font-size: 0.9rem !important; }
  .hub-section__title { font-size: 1.2rem !important; }
  .hub-section__desc  { font-size: 1rem !important; }
  .hub-ep-card__title { font-size: 1rem !important; max-height: calc(1rem * 1.4 * 2 + 1.7rem) !important; }
  .hub-subnav a       { font-size: 0.85rem !important; }

  /* ── Pagina viaggi ── */
  .paesi-card__name   { font-size: 1.15rem !important; }
  .paesi-card__desc   { font-size: 0.95rem !important; }
  .paesi-card__count  { font-size: 0.85rem !important; }
  .paesi-intro        { font-size: 1.1rem !important; }

  /* ── About ── */
  .about-hero__tagline  { font-size: 1.1rem !important; }
  .about-hero__role     { font-size: 0.9rem !important; }
  .about-social a       { font-size: 0.9rem !important; }

  /* ── Cerca ── */
  .search-hero__input   { font-size: 1.1rem !important; }
  .search-results-meta  { font-size: 0.85rem !important; }

  /* ── EEAT credentials ── */
  .eeat-credentials__item { font-size: 0.92rem !important; }

  /* ── H2 blu nella trascrizione: più grandi e spaziosi ── */
  .transcript article h2,
  .transcript article section h2 {
    font-size: 0.92rem !important;
    font-weight: 600 !important;
    line-height: 1.6 !important;
    color: var(--text) !important;
  }

  /* ── Breadcrumb ── */
  .hub-breadcrumb,
  .hub-breadcrumb a   { font-size: 0.68rem !important; }

  /* ── Breadcrumb nelle pagine episodio: stessa dimensione di about/viaggi ── */
  .ep-hero__left .hub-breadcrumb,
  .ep-hero__left .hub-breadcrumb a { font-size: 0.75rem !important; }

  /* ── Footer ── */
  .fat-footer__col a   { font-size: 0.92rem !important; }
  .fat-footer__tagline { font-size: 0.92rem !important; }

}
