/* v34 mobile test: responsive presentation. All rules are limited to the homepages
   at <=768px. No text hidden, clamped, collapsed or duplicated. The companion script
   places the unchanged introduction continuation below the CV on narrow screens. */
@media (max-width:768px) {
  body.homepage .nav { min-height:58px; gap:12px; }
  body.homepage .mobile-menu summary { padding:8px 10px; min-height:44px; }
  body.homepage .home-intro { padding:16px 0 28px; }
  body.homepage .home-grid { grid-template-columns:minmax(0,1fr); gap:24px; }
  body.homepage .home-grid > *, body.homepage .identity-top > div { min-width:0; }
  body.homepage .identity { position:static; }
  body.homepage .identity-top { gap:14px; margin-bottom:18px; }
  body.homepage .avatar { width:72px; height:72px; flex:0 0 72px; }
  body.homepage .identity-name { font-size:20px; line-height:1.2; }
  body.homepage .identity-kicker { font-size:13px; line-height:1.4; margin-top:5px; }
  body.homepage .home-intro .identity > h1.intro-title {
    font-size:23px !important; line-height:1.25 !important;
    margin:0 0 14px !important; max-width:none !important;
  }
  body.homepage .identity p.intro-text {
    font-size:16px !important; line-height:1.5 !important;
    margin:12px 0 0 !important; max-width:none !important;
  }
  body.homepage .identity p.intro-text:first-of-type { margin-top:0 !important; }
  body.homepage .identity-links { gap:4px 16px; margin-top:14px; font-size:14px; }
  body.homepage .identity-links a { padding:8px 0; }
  body.homepage .authority-proof { margin-top:16px; padding-top:12px; }
  body.homepage .authority-proof p { margin-bottom:6px; font-size:13px; line-height:1.4; }
  body.homepage .cv-title { padding-bottom:10px; font-size:12px; }
  body.homepage .home-grid .cv-entry {
    grid-template-columns:80px minmax(0,1fr) !important;
    column-gap:14px; row-gap:6px; padding:18px 0;
  }
  body.homepage .cv-entry > div:last-child { display:contents; }
  body.homepage .cv-entry .cv-period {
    grid-column:1; grid-row:1 / span 2; min-width:0;
    font-size:11px; line-height:1.4; letter-spacing:0;
  }
  body.homepage .cv-entry .cv-period .cv-institution-logo {
    width:72px !important; height:56px !important;
    max-width:72px !important; max-height:56px !important;
    object-fit:contain !important; object-position:left center !important;
    margin:8px 0 0 !important;
  }
  body.homepage .cv-entry h2 {
    grid-column:2; grid-row:1; margin:0; align-self:end;
    font-size:20px; line-height:1.25; overflow-wrap:anywhere;
  }
  body.homepage .cv-entry .role-title {
    grid-column:2; grid-row:2; margin:0; font-size:14px; line-height:1.4;
  }
  body.homepage .cv-entry .cv-bullets {
    grid-column:1 / -1; margin:10px 0 0; padding-left:0;
    font-size:15px; line-height:1.5;
  }
  body.homepage .cv-entry .cv-bullets li { font-size:inherit; line-height:inherit; margin:0 0 6px; }
  body.homepage .cv-entry .cv-more { grid-column:1 / -1; margin:0; font-size:14px; line-height:1.4; }
  body.homepage .cv-more a { display:inline-block; padding:8px 0; }
  body.homepage .section { padding:32px 0; }
  body.homepage .home-reels .social-analysis-title { font-size:25px; line-height:1.25; }
  body.homepage .home-reels .social-analysis-intro { font-size:16px; line-height:1.5; }
  body.homepage .intro-continuation { border-top:1px solid var(--line); padding-top:20px; }
  body.homepage .intro-continuation p.intro-text:first-of-type { margin-top:0 !important; }
}
