{"id":790,"date":"2026-06-18T22:13:40","date_gmt":"2026-06-18T22:13:40","guid":{"rendered":"https:\/\/greenqual.eu\/?page_id=790"},"modified":"2026-06-18T22:13:40","modified_gmt":"2026-06-18T22:13:40","slug":"2nd-scientific-conference-cities-of-the-future-the-future-in-the-city-katowice-poland","status":"publish","type":"page","link":"https:\/\/greenqual.eu\/?page_id=790","title":{"rendered":"2nd Scientific Conference &#8222;Cities of the Future \u2013 The Future in the City&#8221;, Katowice, Poland"},"content":{"rendered":"\n<div class=\"wp-block-cover\"><img loading=\"lazy\" decoding=\"async\" width=\"768\" height=\"1024\" class=\"wp-block-cover__image-background wp-image-791 size-large\" alt=\"\" src=\"https:\/\/greenqual.eu\/wp-content\/uploads\/2026\/06\/2-768x1024.jpeg\" data-object-fit=\"cover\" srcset=\"https:\/\/greenqual.eu\/wp-content\/uploads\/2026\/06\/2-768x1024.jpeg 768w, https:\/\/greenqual.eu\/wp-content\/uploads\/2026\/06\/2-225x300.jpeg 225w, https:\/\/greenqual.eu\/wp-content\/uploads\/2026\/06\/2-1152x1536.jpeg 1152w, https:\/\/greenqual.eu\/wp-content\/uploads\/2026\/06\/2.jpeg 1500w\" sizes=\"auto, (max-width: 768px) 100vw, 768px\" \/><span aria-hidden=\"true\" class=\"wp-block-cover__background has-background-dim\" style=\"background-color:#626570\"><\/span><div class=\"wp-block-cover__inner-container is-layout-flow wp-block-cover-is-layout-flow\">\n<p class=\"has-text-align-center has-large-font-size wp-block-paragraph\"><\/p>\n<\/div><\/div>\n\n\n\n<p class=\"wp-block-paragraph\" style=\"font-size:20px\"><br>Dr. Eng. Barbara Czesak and Dr. Eng. Renata R\u00f3\u017cycka-Czas represented the University of Agriculture in Krakow at the 2nd Scientific Conference &#8222;Cities of the Future \u2013 The Future in the City&#8221;, presenting the latest research results related to Work Package 1 (WP1) of the GREENQUAL project. The event, held on May 25\u201326, 2026, was hosted by the University of Economics in Katowice under the main theme &#8222;Urban Dynamics in Interdisciplinary Research: From Diagnosis to Vision.&#8221;<\/p>\n\n\n\n<p class=\"wp-block-paragraph\" style=\"font-size:20px\">Both researchers contributed as speakers to the conference program, summarizing the insights gained from their international scientific framework. Dr. Eng. Renata R\u00f3\u017cycka-Czas delivered a presentation titled <em>\u201cGreen Cities of the Future: Between Theory and Data Deficit,\u201d<\/em> while Dr. Eng. Barbara Czesak gave a talk introducing <em>\u201cDiagnosing Urban Green Space Accessibility: A Comparative Study of Approaches.\u201d<\/em><\/p>\n\n\n\n<p class=\"wp-block-paragraph\" style=\"font-size:20px\">The presented material focused on the fundamental research challenges associated with assessing urban green space accessibility across three distinct metropolitan areas: Krak\u00f3w, Budapest, and Osaka. The core methodological challenge highlighted by the researchers was establishing a reliable comparability of results when faced with completely different baseline input datasets and varying institutional definitions of what constitutes &#8222;urban green space&#8221; across the analyzed countries.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\" style=\"font-size:20px\">The presentations emphasized how addressing these data deficits and harmonizing diverse spatial approaches is essential for shaping the development of climate-resilient and healthier urban environments. This thematic scope directly aligns with the key challenges of contemporary spatial management and green infrastructure accessibility.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\" style=\"font-size:20px\">The GREENQUAL project is implemented through the strategic cooperation of \u00d3buda University, Osaka University, the University of Agriculture in Krakow, and F4STER Future 4 Zrt. The Polish research within the project is co-funded by the National Centre for Research and Development (NCBR) under the EIG CONCERT-Japan programme.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\" style=\"font-size:20px\">More information:<br><a href=\"https:\/\/kgpiak.urk.edu.pl\/aktualnosci-kgpiak\/udzial-konferencji-naukowej-93.html\">https:\/\/kgpiak.urk.edu.pl\/aktualnosci-kgpiak\/udzial-konferencji-naukowej-93.html<\/a><\/p>\n\n\n\n<p class=\"wp-block-paragraph\" style=\"font-size:20px\"><a href=\"https:\/\/www.instagram.com\/p\/DY5TsoHiJkr\/?utm_source=ig_web_copy_link&amp;igsh=MzRlODBiNWFlZA==\">https:\/\/www.instagram.com\/p\/DY5TsoHiJkr\/?utm_source=ig_web_copy_link&amp;igsh=MzRlODBiNWFlZA==<\/a><\/p>\n\n\n\n<meta charset=\"UTF-8\">\n  <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\n  <title>Osaka gal\u00e9ria<\/title>\n  <style>\n    * {\n      box-sizing: border-box;\n    }\n\n    :root {\n      --accent: #95527c;\n      --accent-soft: #eadde6;\n      --surface: #ffffff;\n      --surface-soft: #faf8fa;\n      --text: #2a2a2a;\n      --muted: #d9e1e7;\n      --shadow: 0 12px 30px rgba(30, 22, 28, 0.10);\n      --radius: 18px;\n    }\n\n    body {\n      margin: 0;\n      background: #fff;\n      font-family: Arial, sans-serif;\n      color: var(--text);\n    }\n\n    .gallery-section {\n      max-width: 1560px;\n      margin: 0 auto;\n      padding: 40px 32px 56px;\n    }\n\n    .gallery-shell {\n      position: relative;\n      background: linear-gradient(180deg, #ffffff 0%, #faf8fa 100%);\n      border: 1px solid #eee5eb;\n      border-radius: 28px;\n      padding: 26px 28px 22px;\n      box-shadow: 0 18px 42px rgba(0,0,0,0.05);\n    }\n\n    .gallery-head {\n      display: flex;\n      align-items: end;\n      justify-content: space-between;\n      gap: 16px;\n      margin-bottom: 20px;\n    }\n\n    .gallery-head h2 {\n      margin: 0;\n      font-size: 24px;\n      line-height: 1.2;\n      color: var(--accent);\n    }\n\n    .gallery-head p {\n      margin: 6px 0 0;\n      color: #666;\n      font-size: 15px;\n      max-width: 720px;\n    }\n\n    .carousel {\n      position: relative;\n      padding: 0 46px;\n    }\n\n    .carousel-viewport {\n      overflow: hidden;\n      width: 100%;\n    }\n\n    .track {\n      display: flex;\n      gap: 18px;\n      will-change: transform;\n    }\n\n    .slide {\n      flex: 0 0 calc((100% - 36px) \/ 3);\n      min-width: 0;\n      background: var(--surface);\n      border-radius: var(--radius);\n      overflow: hidden;\n      cursor: pointer;\n      position: relative;\n      box-shadow: var(--shadow);\n    }\n\n    .slide img {\n      display: block;\n      width: 100%;\n      height: 320px;\n      object-fit: cover;\n      transition: transform 0.35s ease, filter 0.35s ease;\n    }\n\n    .slide:hover img {\n      transform: scale(1.03);\n      filter: saturate(1.02);\n    }\n\n    .slide::after {\n      content: \"\";\n      position: absolute;\n      inset: auto 0 0 0;\n      height: 72px;\n      background: linear-gradient(to top, rgba(0,0,0,0.22), transparent);\n      opacity: 0;\n      pointer-events: none;\n      transition: opacity 0.25s ease;\n    }\n\n    .slide:hover::after {\n      opacity: 1;\n    }\n\n    .nav {\n      position: absolute;\n      top: 50%;\n      transform: translateY(-50%);\n      width: 38px;\n      height: 38px;\n      padding: 0;\n      border: none;\n      outline: none;\n      background: transparent;\n      box-shadow: none;\n      cursor: pointer;\n      z-index: 5;\n      appearance: none;\n      -webkit-appearance: none;\n      overflow: visible;\n    }\n\n    .nav::before {\n      content: \"\";\n      display: block;\n      width: 22px;\n      height: 22px;\n      border-top: 4px solid var(--accent);\n      border-right: 4px solid var(--accent);\n      margin: auto;\n      background: transparent;\n      box-shadow: none;\n    }\n\n    .prev {\n      left: 0;\n    }\n\n    .prev::before {\n      transform: rotate(-135deg);\n    }\n\n    .next {\n      right: 0;\n    }\n\n    .next::before {\n      transform: rotate(45deg);\n    }\n\n    .indicators {\n      display: flex;\n      gap: 12px;\n      margin-top: 18px;\n      padding-left: 2px;\n      flex-wrap: wrap;\n    }\n\n    .indicator {\n      width: 40px;\n      height: 4px;\n      background: #dce4ec;\n      border-radius: 999px;\n      cursor: pointer;\n      border: 0;\n      padding: 0;\n      transition: background 0.25s ease, transform 0.25s ease;\n    }\n\n    .indicator.active {\n      background: var(--accent);\n      transform: scaleX(1.08);\n    }\n\n    .lightbox {\n      position: fixed;\n      inset: 0;\n      background: rgba(10, 10, 12, 0.86);\n      display: none;\n      align-items: center;\n      justify-content: center;\n      z-index: 9999;\n      padding: 40px 90px;\n    }\n\n    .lightbox.open {\n      display: flex;\n    }\n\n    .lightbox-img {\n      max-width: min(1180px, 90vw);\n      max-height: 86vh;\n      width: auto;\n      height: auto;\n      object-fit: contain;\n      border-radius: 14px;\n      box-shadow: 0 18px 50px rgba(0,0,0,0.35);\n      background: #111;\n    }\n\n    .lightbox-close,\n    .lightbox-prev,\n    .lightbox-next {\n      position: absolute;\n      border: none;\n      background: transparent;\n      color: #fff;\n      cursor: pointer;\n      z-index: 10000;\n    }\n\n    .lightbox-close {\n      top: 16px;\n      right: 22px;\n      font-size: 38px;\n      line-height: 1;\n    }\n\n    .lightbox-prev,\n    .lightbox-next {\n      top: 50%;\n      transform: translateY(-50%);\n      width: 56px;\n      height: 56px;\n    }\n\n    .lightbox-prev {\n      left: 20px;\n    }\n\n    .lightbox-next {\n      right: 20px;\n    }\n\n    .lightbox-prev::before,\n    .lightbox-next::before {\n      content: \"\";\n      display: block;\n      width: 22px;\n      height: 22px;\n      border-top: 3px solid var(--accent);\n      border-right: 3px solid var(--accent);\n      margin: auto;\n    }\n\n    .lightbox-prev::before {\n      transform: rotate(-135deg);\n    }\n\n    .lightbox-next::before {\n      transform: rotate(45deg);\n    }\n\n    .lightbox-counter {\n      position: absolute;\n      top: 18px;\n      left: 22px;\n      color: #fff;\n      font-size: 15px;\n    }\n\n    @media (max-width: 980px) {\n      .gallery-section {\n        padding: 28px 20px 40px;\n      }\n\n      .gallery-shell {\n        padding: 20px 18px 18px;\n        border-radius: 22px;\n      }\n\n      .carousel {\n        padding: 0 38px;\n      }\n\n      .track {\n        gap: 16px;\n      }\n\n      .slide {\n        flex: 0 0 calc((100% - 16px) \/ 2);\n      }\n\n      .slide img {\n        height: 280px;\n      }\n    }\n\n    @media (max-width: 640px) {\n      .gallery-head {\n        display: block;\n      }\n\n      .carousel {\n        padding: 0 30px;\n      }\n\n      .track {\n        gap: 14px;\n      }\n\n      .slide {\n        flex: 0 0 100%;\n      }\n\n      .slide img {\n        height: auto;\n        aspect-ratio: 4 \/ 3;\n      }\n\n      .indicator {\n        width: 30px;\n      }\n\n      .lightbox {\n        padding: 20px 56px;\n      }\n\n      .lightbox-prev {\n        left: 8px;\n      }\n\n      .lightbox-next {\n        right: 8px;\n      }\n\n      .lightbox-close {\n        top: 10px;\n        right: 14px;\n      }\n    }\n  <\/style>\n\n\n\n  <section class=\"gallery-section\">\n    <div class=\"gallery-shell\">\n      <div class=\"gallery-head\">\n        <div>\n          <h2>2nd Scientific Conference &#8222;Cities of the Future \u2013 The Future in the City&#8221;, Katowice, Poland<\/h2>\n        <\/div>\n      <\/div>\n\n      <div class=\"carousel\">\n        <button class=\"nav prev\" aria-label=\"El\u0151z\u0151 k\u00e9p\"><\/button>\n\n        <div class=\"carousel-viewport\">\n          <div class=\"track\" id=\"track\">\n            <div class=\"slide\" data-full=\"https:\/\/greenqual.eu\/wp-content\/uploads\/2026\/06\/2-768x1024.jpeg\">\n              <img decoding=\"async\" src=\"https:\/\/greenqual.eu\/wp-content\/uploads\/2026\/06\/2-768x1024.jpeg\" alt=\"GreenQual event 1\">\n            <\/div>\n            <div class=\"slide\" data-full=\"https:\/\/greenqual.eu\/wp-content\/uploads\/2026\/06\/IMG_3123-1024x768.jpg\">\n              <img decoding=\"async\" src=\"https:\/\/greenqual.eu\/wp-content\/uploads\/2026\/06\/IMG_3123-1024x768.jpg\" alt=\"GreenQual event 2\">\n            <\/div>\n            <div class=\"slide\" data-full=\"https:\/\/greenqual.eu\/wp-content\/uploads\/2026\/06\/5-819x1024.png\">\n              <img decoding=\"async\" src=\"https:\/\/greenqual.eu\/wp-content\/uploads\/2026\/06\/5-819x1024.png\" alt=\"GreenQual event 4\">\n            <\/div>\n          <\/div>\n        <\/div>\n\n        <button class=\"nav next\" aria-label=\"K\u00f6vetkez\u0151 k\u00e9p\"><\/button>\n        <div class=\"indicators\" id=\"indicators\"><\/div>\n      <\/div>\n    <\/div>\n  <\/section>\n\n  <div class=\"lightbox\" id=\"lightbox\" aria-hidden=\"true\">\n    <button class=\"lightbox-close\" aria-label=\"Bez\u00e1r\u00e1s\">\u00d7<\/button>\n    <button class=\"lightbox-prev\" aria-label=\"El\u0151z\u0151 nagy k\u00e9p\"><\/button>\n    <img decoding=\"async\" class=\"lightbox-img\" id=\"lightboxImg\" src=\"\" alt=\"\">\n    <button class=\"lightbox-next\" aria-label=\"K\u00f6vetkez\u0151 nagy k\u00e9p\"><\/button>\n    <div class=\"lightbox-counter\" id=\"lightboxCounter\"><\/div>\n  <\/div>\n\n  <script>\n    const track = document.getElementById('track');\n    const originalSlides = [...track.querySelectorAll('.slide')];\n    const prevBtn = document.querySelector('.prev');\n    const nextBtn = document.querySelector('.next');\n    const indicators = document.getElementById('indicators');\n\n    const lightbox = document.getElementById('lightbox');\n    const lightboxImg = document.getElementById('lightboxImg');\n    const lightboxCounter = document.getElementById('lightboxCounter');\n    const lightboxClose = document.querySelector('.lightbox-close');\n    const lightboxPrev = document.querySelector('.lightbox-prev');\n    const lightboxNext = document.querySelector('.lightbox-next');\n\n    let visibleIndex = 0;\n    let lightboxIndex = 0;\n    let currentIndex = 1;\n    let isTransitioning = false;\n\n    const firstClone = originalSlides[0].cloneNode(true);\n    const lastClone = originalSlides[originalSlides.length - 1].cloneNode(true);\n\n    firstClone.classList.add('clone');\n    lastClone.classList.add('clone');\n\n    track.prepend(lastClone);\n    track.append(firstClone);\n\n    function allSlides() {\n      return [...track.querySelectorAll('.slide')];\n    }\n\n    function getGap() {\n      return parseFloat(getComputedStyle(track).gap) || 0;\n    }\n\n    function moveTo(index, animated = true) {\n      const slides = allSlides();\n      const slideWidth = slides[0].getBoundingClientRect().width;\n      const offset = index * (slideWidth + getGap());\n\n      track.style.transition = animated ? 'transform 0.45s ease' : 'none';\n      track.style.transform = `translateX(-${offset}px)`;\n      currentIndex = index;\n    }\n\n    function updateIndicators() {\n      indicators.innerHTML = '';\n      for (let i = 0; i < originalSlides.length; i++) {\n        const item = document.createElement('button');\n        item.type = 'button';\n        item.className = 'indicator' + (i === visibleIndex ? ' active' : '');\n        item.setAttribute('aria-label', `Ugr\u00e1s a(z) ${i + 1}. k\u00e9pre`);\n        item.addEventListener('click', () => {\n          if (isTransitioning) return;\n          isTransitioning = true;\n          visibleIndex = i;\n          moveTo(i + 1, true);\n          syncIndicators();\n        });\n        indicators.appendChild(item);\n      }\n    }\n\n    function syncIndicators() {\n      [...indicators.children].forEach((dot, i) => {\n        dot.classList.toggle('active', i === visibleIndex);\n      });\n    }\n\n    function nextSlide() {\n      if (isTransitioning) return;\n      isTransitioning = true;\n      visibleIndex = (visibleIndex + 1) % originalSlides.length;\n      moveTo(currentIndex + 1, true);\n      syncIndicators();\n    }\n\n    function prevSlide() {\n      if (isTransitioning) return;\n      isTransitioning = true;\n      visibleIndex = (visibleIndex - 1 + originalSlides.length) % originalSlides.length;\n      moveTo(currentIndex - 1, true);\n      syncIndicators();\n    }\n\n    track.addEventListener('transitionend', () => {\n      const slides = allSlides();\n\n      if (slides[currentIndex] === firstClone) {\n        moveTo(1, false);\n      }\n\n      if (slides[currentIndex] === lastClone) {\n        moveTo(originalSlides.length, false);\n      }\n\n      isTransitioning = false;\n    });\n\n    prevBtn.addEventListener('click', prevSlide);\n    nextBtn.addEventListener('click', nextSlide);\n\n    function openLightbox(i) {\n      lightboxIndex = i;\n      const currentImg = originalSlides[lightboxIndex].querySelector('img');\n      lightboxImg.src = originalSlides[lightboxIndex].dataset.full;\n      lightboxImg.alt = currentImg.alt;\n      lightboxCounter.textContent = `${lightboxIndex + 1} \/ ${originalSlides.length}`;\n      lightbox.classList.add('open');\n      lightbox.setAttribute('aria-hidden', 'false');\n      document.body.style.overflow = 'hidden';\n    }\n\n    function closeLightbox() {\n      lightbox.classList.remove('open');\n      lightbox.setAttribute('aria-hidden', 'true');\n      document.body.style.overflow = '';\n    }\n\n    function showPrevLightboxImage() {\n      lightboxIndex = (lightboxIndex - 1 + originalSlides.length) % originalSlides.length;\n      openLightbox(lightboxIndex);\n    }\n\n    function showNextLightboxImage() {\n      lightboxIndex = (lightboxIndex + 1) % originalSlides.length;\n      openLightbox(lightboxIndex);\n    }\n\n    originalSlides.forEach((slide, i) => {\n      slide.addEventListener('click', () => openLightbox(i));\n    });\n\n    lightboxClose.addEventListener('click', closeLightbox);\n    lightboxPrev.addEventListener('click', showPrevLightboxImage);\n    lightboxNext.addEventListener('click', showNextLightboxImage);\n\n    lightbox.addEventListener('click', (e) => {\n      if (e.target === lightbox) closeLightbox();\n    });\n\n    document.addEventListener('keydown', (e) => {\n      if (lightbox.classList.contains('open')) {\n        if (e.key === 'Escape') closeLightbox();\n        if (e.key === 'ArrowLeft') showPrevLightboxImage();\n        if (e.key === 'ArrowRight') showNextLightboxImage();\n      } else {\n        if (e.key === 'ArrowLeft') prevSlide();\n        if (e.key === 'ArrowRight') nextSlide();\n      }\n    });\n\n    window.addEventListener('resize', () => {\n      moveTo(currentIndex, false);\n    });\n\n    updateIndicators();\n    moveTo(1, false);\n    syncIndicators();\n  <\/script>\n","protected":false},"excerpt":{"rendered":"<p>Dr. Eng. Barbara Czesak and Dr. Eng. Renata R\u00f3\u017cycka-Czas represented the University of Agriculture in Krakow at the 2nd Scientific Conference &#8222;Cities of the Future \u2013 The Future in the City&#8221;, presenting the latest research results related to Work Package 1 (WP1) of the GREENQUAL project. The event, held on May 25\u201326, 2026, was hosted [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-790","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/greenqual.eu\/index.php?rest_route=\/wp\/v2\/pages\/790","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/greenqual.eu\/index.php?rest_route=\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/greenqual.eu\/index.php?rest_route=\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/greenqual.eu\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/greenqual.eu\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=790"}],"version-history":[{"count":1,"href":"https:\/\/greenqual.eu\/index.php?rest_route=\/wp\/v2\/pages\/790\/revisions"}],"predecessor-version":[{"id":794,"href":"https:\/\/greenqual.eu\/index.php?rest_route=\/wp\/v2\/pages\/790\/revisions\/794"}],"wp:attachment":[{"href":"https:\/\/greenqual.eu\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=790"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}