/* Ajustes compartidos: escritorio conserva su composición flotante. */
html { -webkit-text-size-adjust: 100%; }
body { min-width: 0; overflow-x: clip; }
main, section, figure, .project-intro > *, .related-project { min-width: 0; }
.project-title, .project-description, .project-facts dd, .related-project p,
.catalog-project h3, .cv-row h3, .footer-credit, .footer-social a,
main.wrap > p { overflow-wrap: anywhere; }
@media (min-width: 1101px) {
  .nav nav a:nth-child(1) { right: 5%; }
  .nav nav a:nth-child(4) { right: 16%; }
}
@media (max-width: 1100px) {
  .nav, .home-header {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    width: 88%;
    min-height: 0;
    margin: 0 auto;
    padding: 24px 0 32px;
    gap: 18px 20px;
  }
  .nav .logo, .home-wordmark { width: 100%; max-width: 100%; }
  .nav-role, .home-role { font-size: clamp(14px, 1.8vw, 20px); }
  .nav nav { position: static; grid-column: 1 / -1; display: flex; flex-wrap: wrap; gap: 10px; margin: 0; }
  .nav nav a:nth-child(n) { position: static; min-height: 44px; font-size: 17px; }
  .theme-switch, .home-header .theme-switch { position: static; grid-column: 2; grid-row: 3; justify-self: end; margin: 0; }
  .chaos-button, .home-header .chaos-button { position: static; grid-column: 1; grid-row: 3; justify-self: start; margin: 0; min-height: 44px; font-size: 17px; }
  .home-header .theme-switch, .home-header .chaos-button { grid-row: 2; }
  .design-catalog, #detalle.project-detail, .about-page, .art-heading, .site-footer, .contact-page { width: 88%; }
  .design-catalog, #detalle.project-detail, .about-page { margin-top: 16px; }
  .catalog-grid, .related-grid { gap: 24px; }
  .site-footer { padding-bottom: max(32px, env(safe-area-inset-bottom)); }
}
@media (max-width: 700px) {
  .nav, .home-header { grid-template-columns: minmax(0, 1fr) auto; gap: 14px 12px; }
  .nav .logo, .home-wordmark { grid-column: 1 / -1; }
  .logo img, .home-wordmark img { width: 100%; height: auto; max-height: 73px; }
  .nav-role, .home-role { grid-column: 1 / -1; font-size: 14px; }
  .nav nav { grid-row: 3; }
  .nav .theme-switch, .nav .chaos-button { grid-row: 4; }
  .home-header .theme-switch, .home-header .chaos-button { grid-row: 3; }
  .nav nav a, .pill { min-height: 44px; }
  .home-canvas { --home-hero-height: clamp(580px, 110vw, 720px); margin-top: 12px; }
  .chrome-sculpture { top: 55px; left: 50%; width: min(65vw, 280px); transform: translateX(-50%); }
  .home-leona { top: 50px; left: auto; right: 5%; width: 30%; max-width: 170px; }
  .nav-contact { top: 0; }
  .nav-about { top: 100px; }
  .nav-art { top: 190px; }
  .nav-design { top: 280px; }
  .imagine-link { top: calc(var(--home-hero-height) - 150px); max-width: 88%; }
  .forward-link { top: calc(var(--home-hero-height) - 75px); }
  .featured-work { padding-top: var(--home-hero-height); gap: 32px 20px; }
  .work-caption { font-size: 13px; line-height: 1.4; }
  .project-description { line-height: 1.5; }
  .project-facts { font-size: 14px; }
  .project-related { margin-top: 3rem; }
  .cv-row { align-items: start; }
  .cv-date { padding-top: 3px; }
  .footer-credit { font-size: 14px; }
  .footer-social { font-size: 18px; }
  .footer-social a { display: inline-flex; align-items: center; min-height: 44px; }
  .car-thumbs { flex-wrap: nowrap; overflow-x: auto; padding-bottom: 8px; }
  .car-thumbs img { flex: 0 0 60px; width: 60px; height: 60px; }
}
@media (max-width: 480px) {
  .catalog-grid, .related-grid { grid-template-columns: 1fr; }
  .featured-work { grid-template-columns: 1fr; padding-bottom: 24px; }
  .work-two { margin-top: 0; }
  .work-three { grid-column: auto; width: 100%; }
  .work-image { aspect-ratio: 1.05; }
  .work-caption { font-size: 14px; }
  .project-facts { gap: 20px 16px; }
  .cv-row { grid-template-columns: minmax(0, 1fr); gap: 8px; padding: 20px 0; }
  .cv-date { max-width: none; text-align: left; }
  .cv-section h2 { font-size: 26px; }
  .site-footer { gap: 24px; margin-top: 32px; }
}
