<!DOCTYPE html>

<html lang="it" class="scroll-smooth">

<head>

  <meta charset="UTF-8">

  <meta name="viewport" content="width=device-width, initial-scale=1.0">

  <title>Federico Tramontana — Percussionist & Sound Artist</title>


  <!-- Tailwind CSS CDN -->

  <script src="https://cdn.tailwindcss.com"></script>

  

  <!-- Font Integration -->

  <link rel="preconnect" href="https://fonts.googleapis.com">

  <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>

  <link href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600&family=Playfair+Display:ital,wght@0,400;0,500;0,600;1,400&display=swap" rel="stylesheet">


  <script>

    tailwind.config = {

      theme: {

        extend: {

          colors: {

            bgLight: '#FAF8F5',

            surfaceLight: '#F3EFEA',

            textPrimary: '#141414',

            textSecondary: '#555555',

            accent: '#222222',

            borderSubtle: '#E6E1DA'

          },

          fontFamily: {

            sans: ['Inter', 'sans-serif'],

            serif: ['Playfair Display', 'serif'],

          }

        }

      }

    }

  </script>


  <style>

    body {

      background-color: #FAF8F5;

      color: #141414;

      font-family: 'Inter', sans-serif;

    }

    

    .hide-scrollbar::-webkit-scrollbar {

      display: none;

    }

    .hide-scrollbar {

      -ms-overflow-style: none;

      scrollbar-width: none;

    }


    .hover-reveal-caption {

      opacity: 0;

      transition: opacity 0.3s ease-in-out;

    }

    .group:hover .hover-reveal-caption {

      opacity: 1;

    }


    .page-section {

      display: none;

    }

    .page-section.active {

      display: block;

    }

  </style>

</head>

<body class="min-h-screen flex flex-col justify-between selection:bg-neutral-300">


  <!-- HEADER / NAVIGATION -->

  <header class="sticky top-0 z-50 bg-[#FAF8F5]/90 backdrop-blur-md border-b border-borderSubtle">

    <div class="max-w-7xl mx-auto px-6 py-5 flex justify-between items-center">

      <a href="#" onclick="showPage('home')" class="font-serif text-xl sm:text-2xl tracking-tight text-textPrimary hover:opacity-70 transition">

        Federico Tramontana

      </a>


      <!-- Desktop Nav -->

      <nav class="hidden md:flex items-center space-x-8 text-sm tracking-wide font-light">

        <button onclick="showPage('home')" class="nav-btn transition hover:text-black hover:underline underline-offset-8" data-page="home">Home</button>

        <button onclick="showPage('about')" class="nav-btn transition hover:text-black hover:underline underline-offset-8" data-page="about">

          <span class="lang-it">Biografia</span><span class="lang-en hidden">About</span>

        </button>

        <button onclick="showPage('projects')" class="nav-btn transition hover:text-black hover:underline underline-offset-8" data-page="projects">

          <span class="lang-it">Progetti</span><span class="lang-en hidden">Projects</span>

        </button>

        <button onclick="showPage('concerts')" class="nav-btn transition hover:text-black hover:underline underline-offset-8" data-page="concerts">

          <span class="lang-it">Concerti</span><span class="lang-en hidden">Concerts</span>

        </button>

        <button onclick="showPage('media')" class="nav-btn transition hover:text-black hover:underline underline-offset-8" data-page="media">Media</button>

        <button onclick="showPage('contacts')" class="nav-btn transition hover:text-black hover:underline underline-offset-8" data-page="contacts">

          <span class="lang-it">Contatti</span><span class="lang-en hidden">Contacts</span>

        </button>

        

        <!-- Language Switcher Button -->

        <button onclick="toggleLanguage()" class="ml-4 border border-borderSubtle px-3 py-1 rounded text-xs font-mono hover:bg-black hover:text-white transition">

          <span id="lang-btn-text">IT | EN</span>

        </button>

      </nav>


      <!-- Mobile Menu Button -->

      <div class="flex items-center md:hidden space-x-4">

        <button onclick="toggleLanguage()" class="border border-borderSubtle px-2 py-1 rounded text-xs font-mono">

          <span id="lang-btn-text-mobile">IT | EN</span>

        </button>

        <button onclick="toggleMobileMenu()" class="p-2 text-textPrimary focus:outline-none">

          <svg class="w-6 h-6" fill="none" stroke="currentColor" viewBox="0 0 24 24">

            <path stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" d="M4 6h16M4 12h16M4 18h16"/>

          </svg>

        </button>

      </div>

    </div>


    <!-- Mobile Dropdown -->

    <div id="mobile-menu" class="hidden md:hidden border-b border-borderSubtle bg-[#FAF8F5] px-6 py-4 space-y-3 font-light text-sm">

      <button onclick="showPage('home')" class="block w-full text-left py-1">Home</button>

      <button onclick="showPage('about')" class="block w-full text-left py-1">

        <span class="lang-it">Biografia</span><span class="lang-en hidden">About</span>

      </button>

      <button onclick="showPage('projects')" class="block w-full text-left py-1">

        <span class="lang-it">Progetti</span><span class="lang-en hidden">Projects</span>

      </button>

      <button onclick="showPage('concerts')" class="block w-full text-left py-1">

        <span class="lang-it">Concerti</span><span class="lang-en hidden">Concerts</span>

      </button>

      <button onclick="showPage('media')" class="block w-full text-left py-1">Media</button>

      <button onclick="showPage('contacts')" class="block w-full text-left py-1">

        <span class="lang-it">Contatti</span><span class="lang-en hidden">Contacts</span>

      </button>

    </div>

  </header>


  <!-- MAIN CONTENT CONTAINER -->

  <main class="flex-grow max-w-7xl w-full mx-auto px-6 py-10">


    <!-- PAGE 1: HOME -->

    <section id="page-home" class="page-section active space-y-16">

      

      <!-- Horizontal Hero Image -->

      <div class="w-full relative overflow-hidden bg-surfaceLight shadow-sm">

        <img src="https://i.postimg.cc/cJNCB29s/4471F52B-91F5-4A50-89E5-8EEBF21D87C8.jpg" 

             alt="Federico Tramontana" 

             class="w-full h-[45vh] sm:h-[55vh] md:h-[60vh] object-cover object-[center_20%] transition duration-700">

      </div>


      <!-- Photo Slider / Carousel -->

      <div class="relative group">

        <div id="carousel" class="flex overflow-x-auto space-x-6 hide-scrollbar scroll-smooth py-2">

          

          <div onclick="openLightbox(0)" class="gallery-item flex-none w-72 sm:w-96 relative group cursor-zoom-in bg-surfaceLight"

               data-src="https://i.postimg.cc/prP1QW80/Rene-3049.jpg" data-title="Duo Dubois — Tallinn" data-credit="Photo: Rene Jakobson">

            <img src="https://i.postimg.cc/prP1QW80/Rene-3049.jpg" alt="Duo Dubois Tallinn" class="w-full h-80 object-cover">

            <div class="hover-reveal-caption absolute inset-0 bg-black/60 text-white p-6 flex flex-col justify-end text-xs">

              <span class="font-medium">Duo Dubois — Tallinn</span>

              <span class="text-neutral-300 mt-1">Photo: Rene Jakobson</span>

            </div>

          </div>


          <div onclick="openLightbox(1)" class="gallery-item flex-none w-72 sm:w-96 relative group cursor-zoom-in bg-surfaceLight"

               data-src="https://i.postimg.cc/tTJj3zHL/Andrea-Avezzu.jpg" data-title="Biennale di Venezia" data-credit="Photo: Andrea Avezzù">

            <img src="https://i.postimg.cc/tTJj3zHL/Andrea-Avezzu.jpg" alt="Biennale di Venezia" class="w-full h-80 object-cover">

            <div class="hover-reveal-caption absolute inset-0 bg-black/60 text-white p-6 flex flex-col justify-end text-xs">

              <span class="font-medium">Biennale di Venezia</span>

              <span class="text-neutral-300 mt-1">Photo: Andrea Avezzù</span>

            </div>

          </div>


          <div onclick="openLightbox(2)" class="gallery-item flex-none w-72 sm:w-96 relative group cursor-zoom-in bg-surfaceLight"

               data-src="https://i.postimg.cc/SX18zfcb/SANGE-MALIKA-KISHINO-34-Marta-Cantarelli.jpg" data-title="Accademia Filarmonica Romana" data-credit="Photo: Marta Cantarelli">

            <img src="https://i.postimg.cc/SX18zfcb/SANGE-MALIKA-KISHINO-34-Marta-Cantarelli.jpg" alt="Accademia Filarmonica Romana" class="w-full h-80 object-cover">

            <div class="hover-reveal-caption absolute inset-0 bg-black/60 text-white p-6 flex flex-col justify-end text-xs">

              <span class="font-medium">Accademia Filarmonica Romana</span>

              <span class="text-neutral-300 mt-1">Photo: Marta Cantarelli</span>

            </div>

          </div>


          <div onclick="openLightbox(3)" class="gallery-item flex-none w-72 sm:w-96 relative group cursor-zoom-in bg-surfaceLight"

               data-src="https://i.postimg.cc/qtq606SK/IMG-0003.jpg" data-title="Duo Dubois — Bangkok" data-credit="">

            <img src="https://i.postimg.cc/qtq606SK/IMG-0003.jpg" alt="Duo Dubois Bangkok" class="w-full h-80 object-cover">

            <div class="hover-reveal-caption absolute inset-0 bg-black/60 text-white p-6 flex flex-col justify-end text-xs">

              <span class="font-medium">Duo Dubois — Bangkok</span>

            </div>

          </div>


          <div onclick="openLightbox(4)" class="gallery-item flex-none w-72 sm:w-96 relative group cursor-zoom-in bg-surfaceLight"

               data-src="https://i.postimg.cc/pTrHfBH2/AVZ-03469.jpg" data-title="Biennale di Venezia" data-credit="Photo: Andrea Avezzù">

            <img src="https://i.postimg.cc/pTrHfBH2/AVZ-03469.jpg" alt="Biennale di Venezia" class="w-full h-80 object-cover">

            <div class="hover-reveal-caption absolute inset-0 bg-black/60 text-white p-6 flex flex-col justify-end text-xs">

              <span class="font-medium">Biennale di Venezia</span>

              <span class="text-neutral-300 mt-1">Photo: Andrea Avezzù</span>

            </div>

          </div>


          <div onclick="openLightbox(5)" class="gallery-item flex-none w-72 sm:w-96 relative group cursor-zoom-in bg-surfaceLight"

               data-src="https://i.postimg.cc/ZvSq9Wsh/DSC-6328.jpg" data-title="Performance" data-credit="Photo: Nina Marranconi">

            <img src="https://i.postimg.cc/ZvSq9Wsh/DSC-6328.jpg" alt="Performance" class="w-full h-80 object-cover">

            <div class="hover-reveal-caption absolute inset-0 bg-black/60 text-white p-6 flex flex-col justify-end text-xs">

              <span class="font-medium">Performance</span>

              <span class="text-neutral-300 mt-1">Photo: Nina Marranconi</span>

            </div>

          </div>


          <div onclick="openLightbox(6)" class="gallery-item flex-none w-72 sm:w-96 relative group cursor-zoom-in bg-surfaceLight"

               data-src="https://i.postimg.cc/Lq5gRgww/IMG-0012.jpg" data-title="Duo Dubois — Bangkok" data-credit="">

            <img src="https://i.postimg.cc/Lq5gRgww/IMG-0012.jpg" alt="Duo Dubois Bangkok" class="w-full h-80 object-cover">

            <div class="hover-reveal-caption absolute inset-0 bg-black/60 text-white p-6 flex flex-col justify-end text-xs">

              <span class="font-medium">Duo Dubois — Bangkok</span>

            </div>

          </div>


          <div onclick="openLightbox(7)" class="gallery-item flex-none w-72 sm:w-96 relative group cursor-zoom-in bg-surfaceLight"

               data-src="https://i.postimg.cc/ydxHmTH1/AVZ-03519.jpg" data-title="Biennale di Venezia" data-credit="Photo: Andrea Avezzù">

            <img src="https://i.postimg.cc/ydxHmTH1/AVZ-03519.jpg" alt="Biennale di Venezia" class="w-full h-80 object-cover">

            <div class="hover-reveal-caption absolute inset-0 bg-black/60 text-white p-6 flex flex-col justify-end text-xs">

              <span class="font-medium">Biennale di Venezia</span>

              <span class="text-neutral-300 mt-1">Photo: Andrea Avezzù</span>

            </div>

          </div>


          <div onclick="openLightbox(8)" class="gallery-item flex-none w-72 sm:w-96 relative group cursor-zoom-in bg-surfaceLight"

               data-src="https://i.postimg.cc/fkC33KsX/ZINDERING-FESTIVAL-Foto-Geert-Vandepoele.jpg" data-title="Zindering Festival" data-credit="Photo: Geert Vandepoele">

            <img src="https://i.postimg.cc/fkC33KsX/ZINDERING-FESTIVAL-Foto-Geert-Vandepoele.jpg" alt="Zindering Festival" class="w-full h-80 object-cover">

            <div class="hover-reveal-caption absolute inset-0 bg-black/60 text-white p-6 flex flex-col justify-end text-xs">

              <span class="font-medium">Zindering Festival</span>

              <span class="text-neutral-300 mt-1">Photo: Geert Vandepoele</span>

            </div>

          </div>


          <div onclick="openLightbox(9)" class="gallery-item flex-none w-72 sm:w-96 relative group cursor-zoom-in bg-surfaceLight"

               data-src="https://i.postimg.cc/yx7rh19P/Rene-2784.jpg" data-title="Duo Dubois — Tallinn" data-credit="Photo: Rene Jakobson">

            <img src="https://i.postimg.cc/yx7rh19P/Rene-2784.jpg" alt="Duo Dubois Tallinn" class="w-full h-80 object-cover">

            <div class="hover-reveal-caption absolute inset-0 bg-black/60 text-white p-6 flex flex-col justify-end text-xs">

              <span class="font-medium">Duo Dubois — Tallinn</span>

              <span class="text-neutral-300 mt-1">Photo: Rene Jakobson</span>

            </div>

          </div>


          <div onclick="openLightbox(10)" class="gallery-item flex-none w-72 sm:w-96 relative group cursor-zoom-in bg-surfaceLight"

               data-src="https://i.postimg.cc/85cSRbSG/AVZ-03572.jpg" data-title="Biennale di Venezia" data-credit="Photo: Andrea Avezzù">

            <img src="https://i.postimg.cc/85cSRbSG/AVZ-03572.jpg" alt="Biennale di Venezia" class="w-full h-80 object-cover">

            <div class="hover-reveal-caption absolute inset-0 bg-black/60 text-white p-6 flex flex-col justify-end text-xs">

              <span class="font-medium">Biennale di Venezia</span>

              <span class="text-neutral-300 mt-1">Photo: Andrea Avezzù</span>

            </div>

          </div>


          <div onclick="openLightbox(11)" class="gallery-item flex-none w-72 sm:w-96 relative group cursor-zoom-in bg-surfaceLight"

               data-src="https://i.postimg.cc/w3gyTrCs/Mariano-Monea.jpg" data-title="Performance" data-credit="Photo: Mariano Monea">

            <img src="https://i.postimg.cc/w3gyTrCs/Mariano-Monea.jpg" alt="Performance" class="w-full h-80 object-cover">

            <div class="hover-reveal-caption absolute inset-0 bg-black/60 text-white p-6 flex flex-col justify-end text-xs">

              <span class="font-medium">Performance</span>

              <span class="text-neutral-300 mt-1">Photo: Mariano Monea</span>

            </div>

          </div>


          <div onclick="openLightbox(12)" class="gallery-item flex-none w-72 sm:w-96 relative group cursor-zoom-in bg-surfaceLight"

               data-src="https://i.postimg.cc/f3ySZSpG/IMG-0033.jpg" data-title="Duo Dubois — Bangkok" data-credit="">

            <img src="https://i.postimg.cc/f3ySZSpG/IMG-0033.jpg" alt="Duo Dubois Bangkok" class="w-full h-80 object-cover">

            <div class="hover-reveal-caption absolute inset-0 bg-black/60 text-white p-6 flex flex-col justify-end text-xs">

              <span class="font-medium">Duo Dubois — Bangkok</span>

            </div>

          </div>


          <div onclick="openLightbox(13)" class="gallery-item flex-none w-72 sm:w-96 relative group cursor-zoom-in bg-surfaceLight"

               data-src="https://i.postimg.cc/zGqXLKVj/AVZ-HOI-CHING-YEUNG-SAUNDERS-1295.jpg" data-title="Biennale di Venezia" data-credit="Photo: Andrea Avezzù">

            <img src="https://i.postimg.cc/zGqXLKVj/AVZ-HOI-CHING-YEUNG-SAUNDERS-1295.jpg" alt="Biennale di Venezia" class="w-full h-80 object-cover">

            <div class="hover-reveal-caption absolute inset-0 bg-black/60 text-white p-6 flex flex-col justify-end text-xs">

              <span class="font-medium">Biennale di Venezia</span>

              <span class="text-neutral-300 mt-1">Photo: Andrea Avezzù</span>

            </div>

          </div>


          <div onclick="openLightbox(14)" class="gallery-item flex-none w-72 sm:w-96 relative group cursor-zoom-in bg-surfaceLight"

               data-src="https://i.postimg.cc/B87D1B2S/SANGE-MALIKA-KISHINO-59.jpg" data-title="Accademia Filarmonica Romana" data-credit="">

            <img src="https://i.postimg.cc/B87D1B2S/SANGE-MALIKA-KISHINO-59.jpg" alt="Accademia Filarmonica Romana" class="w-full h-80 object-cover">

            <div class="hover-reveal-caption absolute inset-0 bg-black/60 text-white p-6 flex flex-col justify-end text-xs">

              <span class="font-medium">Accademia Filarmonica Romana</span>

            </div>

          </div>


          <div onclick="openLightbox(15)" class="gallery-item flex-none w-72 sm:w-96 relative group cursor-zoom-in bg-surfaceLight"

               data-src="https://i.postimg.cc/R3hJ9JyY/IMG-0049.jpg" data-title="Duo Dubois — Bangkok" data-credit="">

            <img src="https://i.postimg.cc/R3hJ9JyY/IMG-0049.jpg" alt="Duo Dubois Bangkok" class="w-full h-80 object-cover">

            <div class="hover-reveal-caption absolute inset-0 bg-black/60 text-white p-6 flex flex-col justify-end text-xs">

              <span class="font-medium">Duo Dubois — Bangkok</span>

            </div>

          </div>


          <div onclick="openLightbox(16)" class="gallery-item flex-none w-72 sm:w-96 relative group cursor-zoom-in bg-surfaceLight"

               data-src="https://i.postimg.cc/x1gjL8zw/AVZ-HOI-CHING-YEUNG-SAUNDERS-1350.jpg" data-title="Biennale di Venezia" data-credit="Photo: Andrea Avezzù">

            <img src="https://i.postimg.cc/x1gjL8zw/AVZ-HOI-CHING-YEUNG-SAUNDERS-1350.jpg" alt="Biennale di Venezia" class="w-full h-80 object-cover">

            <div class="hover-reveal-caption absolute inset-0 bg-black/60 text-white p-6 flex flex-col justify-end text-xs">

              <span class="font-medium">Biennale di Venezia</span>

              <span class="text-neutral-300 mt-1">Photo: Andrea Avezzù</span>

            </div>

          </div>


          <div onclick="openLightbox(17)" class="gallery-item flex-none w-72 sm:w-96 relative group cursor-zoom-in bg-surfaceLight"

               data-src="https://i.postimg.cc/sBxGyGqm/IMG-0079.jpg" data-title="Duo Dubois — Bangkok" data-credit="">

            <img src="https://i.postimg.cc/sBxGyGqm/IMG-0079.jpg" alt="Duo Dubois Bangkok" class="w-full h-80 object-cover">

            <div class="hover-reveal-caption absolute inset-0 bg-black/60 text-white p-6 flex flex-col justify-end text-xs">

              <span class="font-medium">Duo Dubois — Bangkok</span>

            </div>

          </div>


          <div onclick="openLightbox(18)" class="gallery-item flex-none w-72 sm:w-96 relative group cursor-zoom-in bg-surfaceLight"

               data-src="https://i.postimg.cc/cLT1fC3N/AVZ-HOI-CHING-YEUNG-SAUNDERS-1358.jpg" data-title="Biennale di Venezia" data-credit="Photo: Andrea Avezzù">

            <img src="https://i.postimg.cc/cLT1fC3N/AVZ-HOI-CHING-YEUNG-SAUNDERS-1358.jpg" alt="Biennale di Venezia" class="w-full h-80 object-cover">

            <div class="hover-reveal-caption absolute inset-0 bg-black/60 text-white p-6 flex flex-col justify-end text-xs">

              <span class="font-medium">Biennale di Venezia</span>

              <span class="text-neutral-300 mt-1">Photo: Andrea Avezzù</span>

            </div>

          </div>


          <div onclick="openLightbox(19)" class="gallery-item flex-none w-72 sm:w-96 relative group cursor-zoom-in bg-surfaceLight"

               data-src="https://i.postimg.cc/nsWjLcfP/IMG-0081.jpg" data-title="Duo Dubois — Bangkok" data-credit="">

            <img src="https://i.postimg.cc/nsWjLcfP/IMG-0081.jpg" alt="Duo Dubois Bangkok" class="w-full h-80 object-cover">

            <div class="hover-reveal-caption absolute inset-0 bg-black/60 text-white p-6 flex flex-col justify-end text-xs">

              <span class="font-medium">Duo Dubois — Bangkok</span>

            </div>

          </div>


          <div onclick="openLightbox(20)" class="gallery-item flex-none w-72 sm:w-96 relative group cursor-zoom-in bg-surfaceLight"

               data-src="https://i.postimg.cc/yYsznBBj/Andrea-Avezzu-Biennale.jpg" data-title="Biennale di Venezia" data-credit="Photo: Andrea Avezzù">

            <img src="https://i.postimg.cc/yYsznBBj/Andrea-Avezzu-Biennale.jpg" alt="Biennale di Venezia" class="w-full h-80 object-cover">

            <div class="hover-reveal-caption absolute inset-0 bg-black/60 text-white p-6 flex flex-col justify-end text-xs">

              <span class="font-medium">Biennale di Venezia</span>

              <span class="text-neutral-300 mt-1">Photo: Andrea Avezzù</span>

            </div>

          </div>


          <div onclick="openLightbox(21)" class="gallery-item flex-none w-72 sm:w-96 relative group cursor-zoom-in bg-surfaceLight"

               data-src="https://i.postimg.cc/wtryBTYn/IMG-0272.jpg" data-title="Duo Dubois — Bangkok" data-credit="">

            <img src="https://i.postimg.cc/wtryBTYn/IMG-0272.jpg" alt="Duo Dubois Bangkok" class="w-full h-80 object-cover">

            <div class="hover-reveal-caption absolute inset-0 bg-black/60 text-white p-6 flex flex-col justify-end text-xs">

              <span class="font-medium">Duo Dubois — Bangkok</span>

            </div>

          </div>


          <div onclick="openLightbox(22)" class="gallery-item flex-none w-72 sm:w-96 relative group cursor-zoom-in bg-surfaceLight"

               data-src="https://i.postimg.cc/DfqTqmVW/Andrea-Avezzu-Biennale-Musica.jpg" data-title="Biennale di Venezia" data-credit="Photo: Andrea Avezzù">

            <img src="https://i.postimg.cc/DfqTqmVW/Andrea-Avezzu-Biennale-Musica.jpg" alt="Biennale di Venezia" class="w-full h-80 object-cover">

            <div class="hover-reveal-caption absolute inset-0 bg-black/60 text-white p-6 flex flex-col justify-end text-xs">

              <span class="font-medium">Biennale di Venezia</span>

              <span class="text-neutral-300 mt-1">Photo: Andrea Avezzù</span>

            </div>

          </div>


          <div onclick="openLightbox(23)" class="gallery-item flex-none w-72 sm:w-96 relative group cursor-zoom-in bg-surfaceLight"

               data-src="https://i.postimg.cc/MXqMKLCG/IMG-4846.jpg" data-title="Performance" data-credit="">

            <img src="https://i.postimg.cc/MXqMKLCG/IMG-4846.jpg" alt="Performance" class="w-full h-80 object-cover">

            <div class="hover-reveal-caption absolute inset-0 bg-black/60 text-white p-6 flex flex-col justify-end text-xs">

              <span class="font-medium">Performance</span>

            </div>

          </div>


          <div onclick="openLightbox(24)" class="gallery-item flex-none w-72 sm:w-96 relative group cursor-zoom-in bg-surfaceLight"

               data-src="https://i.postimg.cc/BQ4GNssB/AVZ-GERARD-GRISEY-0841.jpg" data-title="Biennale di Venezia" data-credit="Photo: Andrea Avezzù">

            <img src="https://i.postimg.cc/BQ4GNssB/AVZ-GERARD-GRISEY-0841.jpg" alt="Biennale di Venezia" class="w-full h-80 object-cover">

            <div class="hover-reveal-caption absolute inset-0 bg-black/60 text-white p-6 flex flex-col justify-end text-xs">

              <span class="font-medium">Biennale di Venezia</span>

              <span class="text-neutral-300 mt-1">Photo: Andrea Avezzù</span>

            </div>

          </div>


          <div onclick="openLightbox(25)" class="gallery-item flex-none w-72 sm:w-96 relative group cursor-zoom-in bg-surfaceLight"

               data-src="https://i.postimg.cc/1fYfB3fN/IMG-5364.avif" data-title="Performance" data-credit="">

            <img src="https://i.postimg.cc/1fYfB3fN/IMG-5364.avif" alt="Performance" class="w-full h-80 object-cover">

            <div class="hover-reveal-caption absolute inset-0 bg-black/60 text-white p-6 flex flex-col justify-end text-xs">

              <span class="font-medium">Performance</span>

            </div>

          </div>


          <div onclick="openLightbox(26)" class="gallery-item flex-none w-72 sm:w-96 relative group cursor-zoom-in bg-surfaceLight"

               data-src="https://i.postimg.cc/ZWB0Mzd3/IMG-6763.jpg" data-title="Performance" data-credit="">

            <img src="https://i.postimg.cc/ZWB0Mzd3/IMG-6763.jpg" alt="Performance" class="w-full h-80 object-cover">

            <div class="hover-reveal-caption absolute inset-0 bg-black/60 text-white p-6 flex flex-col justify-end text-xs">

              <span class="font-medium">Performance</span>

            </div>

          </div>


          <div onclick="openLightbox(27)" class="gallery-item flex-none w-72 sm:w-96 relative group cursor-zoom-in bg-surfaceLight"

               data-src="https://i.postimg.cc/PCpNRnwY/IMG-6766.jpg" data-title="Performance" data-credit="">

            <img src="https://i.postimg.cc/PCpNRnwY/IMG-6766.jpg" alt="Performance" class="w-full h-80 object-cover">

            <div class="hover-reveal-caption absolute inset-0 bg-black/60 text-white p-6 flex flex-col justify-end text-xs">

              <span class="font-medium">Performance</span>

            </div>

          </div>


          <div onclick="openLightbox(28)" class="gallery-item flex-none w-72 sm:w-96 relative group cursor-zoom-in bg-surfaceLight"

               data-src="https://i.postimg.cc/8s4FFHG7/MVI-8692-MOV-17-08-24-09-Immagine001.jpg" data-title="Performance" data-credit="">

            <img src="https://i.postimg.cc/8s4FFHG7/MVI-8692-MOV-17-08-24-09-Immagine001.jpg" alt="Performance" class="w-full h-80 object-cover">

            <div class="hover-reveal-caption absolute inset-0 bg-black/60 text-white p-6 flex flex-col justify-end text-xs">

              <span class="font-medium">Performance</span>

            </div>

          </div>


        </div>


        <!-- Slider Navigation Controls -->

        <button onclick="scrollCarousel(-1)" class="absolute left-2 top-1/2 -translate-y-1/2 bg-white/80 backdrop-blur hover:bg-white text-black p-3 shadow-md rounded-full transition">

          <svg class="w-4 h-4" fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M15 19l-7-7 7-7"/></svg>

        </button>

        <button onclick="scrollCarousel(1)" class="absolute right-2 top-1/2 -translate-y-1/2 bg-white/80 backdrop-blur hover:bg-white text-black p-3 shadow-md rounded-full transition">

          <svg class="w-4 h-4" fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M9 5l7 7-7 7"/></svg>

        </button>

      </div>


      <!-- Videos Section (Home Bottom — Lazy Load Anti Errore 153) -->

      <div class="grid grid-cols-1 md:grid-cols-2 gap-8 pt-6 border-t border-borderSubtle">

        

        <!-- Video 1 -->

        <div class="aspect-video w-full bg-black relative group cursor-pointer overflow-hidden shadow-md" onclick="loadYoutubeVideo(this, 'js6APrj6zao')">

          <img src="https://img.youtube.com/vi/js6APrj6zao/hqdefault.jpg" alt="Featured Video 1" class="w-full h-full object-cover group-hover:scale-105 transition duration-500 opacity-90">

          <div class="absolute inset-0 flex items-center justify-center bg-black/30 group-hover:bg-black/10 transition">

            <div class="w-16 h-16 bg-red-600 rounded-full flex items-center justify-center shadow-lg group-hover:scale-110 transition">

              <svg class="w-8 h-8 text-white ml-1" fill="currentColor" viewBox="0 0 24 24"><path d="M8 5v14l11-7z"/></svg>

            </div>

          </div>

        </div>


        <!-- Video Short -->

        <div class="aspect-[9/16] max-h-[500px] w-full mx-auto bg-black relative group cursor-pointer overflow-hidden shadow-md" onclick="loadYoutubeVideo(this, 'c-sFtKvcrSA')">

          <img src="https://img.youtube.com/vi/c-sFtKvcrSA/hqdefault.jpg" alt="YouTube Short" class="w-full h-full object-cover group-hover:scale-105 transition duration-500 opacity-90">

          <div class="absolute inset-0 flex items-center justify-center bg-black/30 group-hover:bg-black/10 transition">

            <div class="w-16 h-16 bg-red-600 rounded-full flex items-center justify-center shadow-lg group-hover:scale-110 transition">

              <svg class="w-8 h-8 text-white ml-1" fill="currentColor" viewBox="0 0 24 24"><path d="M8 5v14l11-7z"/></svg>

            </div>

          </div>

        </div>


      </div>


    </section>


    <!-- PAGE 2: ABOUT / BIOGRAFIA -->

    <section id="page-about" class="page-section space-y-16">

      <div class="grid grid-cols-1 md:grid-cols-12 gap-12 items-start">

        <!-- Text Column -->

        <div class="md:col-span-7 space-y-6 text-sm sm:text-base leading-relaxed font-light text-textSecondary">

          <h1 class="font-serif text-3xl sm:text-4xl text-textPrimary tracking-tight mb-8">

            <span class="lang-it">Biografia</span><span class="lang-en hidden">Biography</span>

          </h1>


          <!-- Italian Text -->

          <div class="lang-it space-y-4">

            <p>

              Federico Tramontana è un percussionista e performer di musica contemporanea la cui pratica artistica spazia dalla performance solistica alla musica da camera e ai progetti collaborativi. È co-fondatore del Duo Dubois (fondato nel 2011 insieme ad Alberto Cavallaro), un ensemble che collabora a stretto contatto con compositori e sound artist per commissionare e sviluppare nuovo repertorio. Il loro lavoro esplora formati interdisciplinari che uniscono composizione scritta, elettronica, improvvisazione e performance espansa.

            </p>

            <p>

              Docente presso il Conservatorio “N. Piccinni” di Bari, ha presentato i suoi lavori in festival e istituzioni internazionali, tra cui la Biennale di Venezia, Milano Musica, Romaeuropa Festival, Bozar a Bruxelles, Sound Plasma a Tallinn, Angélica Centro di Ricerca Musicale a Bologna, il Festival Luigi Nono a Venezia, l'Accademia Filarmonica Romana, il Sonemus Festival a Sarajevo, Lund Contemporary Music Festival, Zindering Festival, MACRO a Roma, Festival Aperto, Unerhörte Musik a Berlino, Festival DME a Lisbona, Spazio Musica a Cagliari, ZZM a Klagenfurt, IntAct Festival a Bangkok e il Maggio Musicale Fiorentino.

            </p>

          </div>


          <!-- English Text -->

          <div class="lang-en hidden space-y-4">

            <p>

              Federico Tramontana is a percussionist and contemporary music performer whose artistic practice spans solo performance, chamber music, and collaborative projects. He is a co-founder of Duo Dubois (established in 2011 with Alberto Cavallaro), an ensemble that collaborates closely with composers and sound artists to commission and develop new repertoire. Their work explores interdisciplinary formats that bridge written composition, electronics, improvisation, and expanded performance art.

            </p>

            <p>

              A professor at the “N. Piccinni” Conservatory in Bari, he has presented his work at international festivals and venues, including the Venice Biennale, Milano Musica, Romaeuropa Festival, Bozar in Brussels, Sound Plasma in Tallinn, Angélica Centro di Ricerca Musicale in Bologna, the Luigi Nono Festival in Venice, the Accademia Filarmonica Romana, the Sonemus Festival in Sarajevo, Lund Contemporary Music Festival, Zindering Festival, MACRO in Rome, Festival Aperto, Unerhörte Musik in Berlin, Festival DME in Lisbon, Spazio Musica in Cagliari, ZZM in Klagenfurt, IntAct Festival in Bangkok and the Maggio Musicale Fiorentino.

            </p>

          </div>

        </div>


        <!-- Photo Column -->

        <div class="md:col-span-5">

          <img src="https://i.postimg.cc/1X67ZgQL/IMG-0074.jpg" alt="Federico Tramontana" class="w-full h-auto object-cover shadow-sm">

        </div>

      </div>

    </section>


    <!-- PAGE 3: PROJECTS -->

    <section id="page-projects" class="page-section space-y-12">

      <h1 class="font-serif text-3xl sm:text-4xl text-textPrimary tracking-tight">

        <span class="lang-it">Progetti</span><span class="lang-en hidden">Projects</span>

      </h1>

      <div class="grid grid-cols-1 md:grid-cols-2 gap-8">

        <div class="bg-surfaceLight p-8 space-y-4">

          <h2 class="font-serif text-xl">Duo Dubois</h2>

          <p class="text-sm font-light text-textSecondary">

            <span class="lang-it">Duo di sassofono e percussioni fondato nel 2011 con Alberto Cavallaro, focalizzato sul repertorio contemporaneo e la ricerca timbrica.</span>

            <span class="lang-en hidden">Saxophone and percussion duo founded in 2011 with Alberto Cavallaro, focused on contemporary repertoire and timbral research.</span>

          </p>

        </div>

        <div class="bg-surfaceLight p-8 space-y-4">

          <h2 class="font-serif text-xl">Contemporary Percussion</h2>

          <p class="text-sm font-light text-textSecondary">

            <span class="lang-it">Esplorazione della materia sonora, micro-ritmi e composizioni per percussioni sole ed elettronica.</span>

            <span class="lang-en hidden">Exploration of sound matter, microrhythms, and works for solo percussion and electronics.</span>

          </p>

        </div>

      </div>

    </section>


    <!-- PAGE 4: CONCERTS -->

    <section id="page-concerts" class="page-section space-y-12">

      <h1 class="font-serif text-3xl sm:text-4xl text-textPrimary tracking-tight">

        <span class="lang-it">Concerti & Festival</span><span class="lang-en hidden">Concerts & Festivals</span>

      </h1>

      <div class="space-y-6 text-sm font-light text-textSecondary">

        <div class="border-b border-borderSubtle pb-4 flex justify-between items-baseline">

          <div>

            <span class="font-medium text-textPrimary">Biennale di Venezia</span> — Festival Internazionale di Musica Contemporanea

          </div>

          <span class="font-mono text-xs">Venezia</span>

        </div>

        <div class="border-b border-borderSubtle pb-4 flex justify-between items-baseline">

          <div>

            <span class="font-medium text-textPrimary">Milano Musica</span>

          </div>

          <span class="font-mono text-xs">Milano</span>

        </div>

        <div class="border-b border-borderSubtle pb-4 flex justify-between items-baseline">

          <div>

            <span class="font-medium text-textPrimary">Romaeuropa Festival</span>

          </div>

          <span class="font-mono text-xs">Roma</span>

        </div>

        <div class="border-b border-borderSubtle pb-4 flex justify-between items-baseline">

          <div>

            <span class="font-medium text-textPrimary">Bozar</span>

          </div>

          <span class="font-mono text-xs">Bruxelles</span>

        </div>

        <div class="border-b border-borderSubtle pb-4 flex justify-between items-baseline">

          <div>

            <span class="font-medium text-textPrimary">Sound Plasma</span>

          </div>

          <span class="font-mono text-xs">Tallinn</span>

        </div>

      </div>

    </section>


    <!-- PAGE 5: MEDIA -->

    <section id="page-media" class="page-section space-y-12">

      <h1 class="font-serif text-3xl sm:text-4xl text-textPrimary tracking-tight">Media & Video</h1>

      

      <div class="grid grid-cols-1 md:grid-cols-2 gap-8">

        <div class="aspect-video w-full bg-black relative group cursor-pointer overflow-hidden shadow-md" onclick="loadYoutubeVideo(this, 'js6APrj6zao')">

          <img src="https://img.youtube.com/vi/js6APrj6zao/hqdefault.jpg" alt="Video 1" class="w-full h-full object-cover group-hover:scale-105 transition duration-500 opacity-90">

          <div class="absolute inset-0 flex items-center justify-center bg-black/30">

            <div class="w-16 h-16 bg-red-600 rounded-full flex items-center justify-center shadow-lg">

              <svg class="w-8 h-8 text-white ml-1" fill="currentColor" viewBox="0 0 24 24"><path d="M8 5v14l11-7z"/></svg>

            </div>

          </div>

        </div>


        <div class="aspect-video w-full bg-black relative group cursor-pointer overflow-hidden shadow-md" onclick="loadYoutubeVideo(this, 'c-sFtKvcrSA')">

          <img src="https://img.youtube.com/vi/c-sFtKvcrSA/hqdefault.jpg" alt="Video 2" class="w-full h-full object-cover group-hover:scale-105 transition duration-500 opacity-90">

          <div class="absolute inset-0 flex items-center justify-center bg-black/30">

            <div class="w-16 h-16 bg-red-600 rounded-full flex items-center justify-center shadow-lg">

              <svg class="w-8 h-8 text-white ml-1" fill="currentColor" viewBox="0 0 24 24"><path d="M8 5v14l11-7z"/></svg>

            </div>

          </div>

        </div>

      </div>

    </section>


    <!-- PAGE 6: CONTACTS -->

    <section id="page-contacts" class="page-section space-y-8 max-w-xl">

      <h1 class="font-serif text-3xl sm:text-4xl text-textPrimary tracking-tight">

        <span class="lang-it">Contatti</span><span class="lang-en hidden">Contacts</span>

      </h1>

      <p class="text-sm font-light text-textSecondary leading-relaxed">

        <span class="lang-it">Per collaborazioni, concerti, masterclass o informazioni:</span>

        <span class="lang-en hidden">For bookings, concerts, masterclasses, or inquiries:</span>

      </p>

      <div class="pt-4">

        <a href="mailto:fedetramontana09@gmail.com" class="font-serif text-xl underline underline-offset-8 hover:opacity-70 transition">

          fedetramontana09@gmail.com

        </a>

      </div>

    </section>


  </main>


  <!-- FOOTER -->

  <footer class="max-w-7xl w-full mx-auto px-6 py-10 border-t border-borderSubtle text-xs font-light text-textSecondary flex justify-between items-center">

    <span>&copy; 2026 Federico Tramontana</span>

    <span>All rights reserved</span>

  </footer>


  <!-- LIGHTBOX MODAL -->

  <div id="lightbox" class="fixed inset-0 z-50 bg-black/90 hidden flex flex-col items-center justify-center p-4">

    <button onclick="closeLightbox()" class="absolute top-6 right-6 text-white text-3xl p-2 hover:opacity-70 transition">&times;</button>

    <img id="lightbox-img" src="" alt="Enlarged" class="max-h-[80vh] max-w-full object-contain mb-4">

    <div id="lightbox-caption" class="text-white text-xs font-light tracking-wide text-center"></div>

  </div>


  <!-- JAVASCRIPT LOGIC -->

  <script>

    // Navigation SPA logic

    function showPage(pageId) {

      document.querySelectorAll('.page-section').forEach(sec => sec.classList.remove('active'));

      const target = document.getElementById('page-' + pageId);

      if (target) {

        target.classList.add('active');

        window.scrollTo({ top: 0, behavior: 'smooth' });

      }

    }


    // Language Toggle logic

    let currentLang = 'it';

    function toggleLanguage() {

      currentLang = currentLang === 'it' ? 'en' : 'it';

      

      document.querySelectorAll('.lang-it').forEach(el => {

        if (currentLang === 'en') el.classList.add('hidden');

        else el.classList.remove('hidden');

      });


      document.querySelectorAll('.lang-en').forEach(el => {

        if (currentLang === 'en') el.classList.remove('hidden');

        else el.classList.add('hidden');

      });


      document.getElementById('lang-btn-text').textContent = currentLang === 'it' ? 'IT | EN' : 'EN | IT';

      document.getElementById('lang-btn-text-mobile').textContent = currentLang === 'it' ? 'IT | EN' : 'EN | IT';

    }


    // Mobile menu toggle

    function toggleMobileMenu() {

      const menu = document.getElementById('mobile-menu');

      menu.classList.toggle('hidden');

    }


    // Carousel scroll helper

    function scrollCarousel(direction) {

      const carousel = document.getElementById('carousel');

      const scrollAmount = 400;

      carousel.scrollBy({ left: direction * scrollAmount, behavior: 'smooth' });

    }


    // Lazy load YouTube video (Anti Error 153)

    function loadYoutubeVideo(container, videoId) {

      container.innerHTML = `

        <iframe class="w-full h-full" src="https://www.youtube.com/embed/${videoId}?autoplay=1&rel=0" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>

      `;

    }


    // Lightbox Modal Logic

    const galleryItemsData = [

      { src: "https://i.postimg.cc/prP1QW80/Rene-3049.jpg", title: "Duo Dubois — Tallinn", credit: "Photo: Rene Jakobson" },

      { src: "https://i.postimg.cc/tTJj3zHL/Andrea-Avezzu.jpg", title: "Biennale di Venezia", credit: "Photo: Andrea Avezzù" },

      { src: "https://i.postimg.cc/SX18zfcb/SANGE-MALIKA-KISHINO-34-Marta-Cantarelli.jpg", title: "Accademia Filarmonica Romana", credit: "Photo: Marta Cantarelli" },

      { src: "https://i.postimg.cc/qtq606SK/IMG-0003.jpg", title: "Duo Dubois — Bangkok", credit: "" },

      { src: "https://i.postimg.cc/pTrHfBH2/AVZ-03469.jpg", title: "Biennale di Venezia", credit: "Photo: Andrea Avezzù" },

      { src: "https://i.postimg.cc/ZvSq9Wsh/DSC-6328.jpg", title: "Performance", credit: "Photo: Nina Marranconi" },

      { src: "https://i.postimg.cc/Lq5gRgww/IMG-0012.jpg", title: "Duo Dubois — Bangkok", credit: "" },

      { src: "https://i.postimg.cc/ydxHmTH1/AVZ-03519.jpg", title: "Biennale di Venezia", credit: "Photo: Andrea Avezzù" },

      { src: "https://i.postimg.cc/fkC33KsX/ZINDERING-FESTIVAL-Foto-Geert-Vandepoele.jpg", title: "Zindering Festival", credit: "Photo: Geert Vandepoele" },

      { src: "https://i.postimg.cc/yx7rh19P/Rene-2784.jpg", title: "Duo Dubois — Tallinn", credit: "Photo: Rene Jakobson" },

      { src: "https://i.postimg.cc/85cSRbSG/AVZ-03572.jpg", title: "Biennale di Venezia", credit: "Photo: Andrea Avezzù" },

      { src: "https://i.postimg.cc/w3gyTrCs/Mariano-Monea.jpg", title: "Performance", credit: "Photo: Mariano Monea" },

      { src: "https://i.postimg.cc/f3ySZSpG/IMG-0033.jpg", title: "Duo Dubois — Bangkok", credit: "" },

      { src: "https://i.postimg.cc/zGqXLKVj/AVZ-HOI-CHING-YEUNG-SAUNDERS-1295.jpg", title: "Biennale di Venezia", credit: "Photo: Andrea Avezzù" },

      { src: "https://i.postimg.cc/B87D1B2S/SANGE-MALIKA-KISHINO-59.jpg", title: "Accademia Filarmonica Romana", credit: "" },

      { src: "https://i.postimg.cc/R3hJ9JyY/IMG-0049.jpg", title: "Duo Dubois — Bangkok", credit: "" },

      { src: "https://i.postimg.cc/x1gjL8zw/AVZ-HOI-CHING-YEUNG-SAUNDERS-1350.jpg", title: "Biennale di Venezia", credit: "Photo: Andrea Avezzù" },

      { src: "https://i.postimg.cc/sBxGyGqm/IMG-0079.jpg", title: "Duo Dubois — Bangkok", credit: "" },

      { src: "https://i.postimg.cc/cLT1fC3N/AVZ-HOI-CHING-YEUNG-SAUNDERS-1358.jpg", title: "Biennale di Venezia", credit: "Photo: Andrea Avezzù" },

      { src: "https://i.postimg.cc/nsWjLcfP/IMG-0081.jpg", title: "Duo Dubois — Bangkok", credit: "" },

      { src: "https://i.postimg.cc/yYsznBBj/Andrea-Avezzu-Biennale.jpg", title: "Biennale di Venezia", credit: "Photo: Andrea Avezzù" },

      { src: "https://i.postimg.cc/wtryBTYn/IMG-0272.jpg", title: "Duo Dubois — Bangkok", credit: "" },

      { src: "https://i.postimg.cc/DfqTqmVW/Andrea-Avezzu-Biennale-Musica.jpg", title: "Biennale di Venezia", credit: "Photo: Andrea Avezzù" },

      { src: "https://i.postimg.cc/MXqMKLCG/IMG-4846.jpg", title: "Performance", credit: "" },

      { src: "https://i.postimg.cc/BQ4GNssB/AVZ-GERARD-GRISEY-0841.jpg", title: "Biennale di Venezia", credit: "Photo: Andrea Avezzù" },

      { src: "https://i.postimg.cc/1fYfB3fN/IMG-5364.avif", title: "Performance", credit: "" },

      { src: "https://i.postimg.cc/ZWB0Mzd3/IMG-6763.jpg", title: "Performance", credit: "" },

      { src: "https://i.postimg.cc/PCpNRnwY/IMG-6766.jpg", title: "Performance", credit: "" },

      { src: "https://i.postimg.cc/8s4FFHG7/MVI-8692-MOV-17-08-24-09-Immagine001.jpg", title: "Performance", credit: "" }

    ];


    function openLightbox(index) {

      const item = galleryItemsData[index];

      const lightbox = document.getElementById('lightbox');

      const img = document.getElementById('lightbox-img');

      const caption = document.getElementById('lightbox-caption');


      img.src = item.src;

      caption.innerHTML = `${item.title} ${item.credit ? '— ' + item.credit : ''}`;

      lightbox.classList.remove('hidden');

    }


    function closeLightbox() {

      document.getElementById('lightbox').classList.add('hidden');

    }

  </script>

</body>

</html>