/* General Reset */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
  }
  
  
  body {
      background-color: #EEEEEC;
      font-family: "Neue Haas Grotesk Display Thin", sans-serif;
      color: #000000;
      margin: 0;
      font-weight: 200;
      padding: 0;
  }
  
  header {
      display: flex;
      justify-content: space-between;
      align-items: center;
      padding: 20px;
      background-color: #EEEEEC;
      position: sticky;
      top: 0;
      z-index: 1000;
  }
  
  header h1 {
    font-family: 'Panchang Variable', sans-serif;
    font-weight: 400;
    font-size: 1.8vw;
  }
  
  #go-back {
      /* Match whatever styles you used for your h2 */
      font-size: 18px;     /* same as your h2 */
      font-weight: 200;
      font-family: "Neue Haas Grotesk Display Thin", sans-serif;
      margin-bottom: -5px;
      /* plus your existing button styles if you like */
      color: #000;
      border: 1.3px solid #000;
      background-color: #d4d4d470;
      border-radius: 50px;
      padding: 6px 15px;
      cursor: pointer;
      position: fixed;
      top: 20px;
      right: 20px;
      z-index: 2000;
    }
  
    #go-back:hover {
      background-color: #28282A; /* White background on hover */
      color: #EEEEEC; /* Blue text on hover */
      border: 1.7px solid #031ba600; /* Keep blue outline */
    }
  
  .title-section {
      margin: 0;
      padding: 0;
    }

    .title-section2 {
      margin: 0;
      padding: 0;
    }
    
    .title-section h2 {
      font-family: 'Neue Haas Grotesk Display Pro Light', sans-serif;
      font-weight: 300;
      text-align: center;
      margin: 40px 0 20px 0;
      font-size: clamp(8px, 3vw, 17px); /* Responsive font size */
      line-height: 1.2;
      max-width: 90%;
      margin-left: auto;
      margin-right: auto;
  }
    
    .title-section .main-photo,
    .title-section2 {
      display: block;
      width: 100%;
      height: auto;
      margin: 0 0 20px 0;      /* Only bottom spacing; no horizontal margin */
    }

    .title-section .main-photo2 {
        display: block;
        width: 100%;
        height: auto;
        margin-top: 5vh;
      }
    
      .title-section .main-photo3 {
        display: block;
        width: 100%;
        height: auto;
        margin-top: 10vh;
      }
    
  
    .description {
      max-width: 650px;        /* Optional: limit line width */
      margin: 0 40px 60px 40px; /* top: 0, right: 40px, bottom: 60px, left: 40px */
      font-size: clamp(14px, 2vw, 18px);
      line-height: 1.4;
      text-align: left;        /* Keep paragraph text left-aligned */
    }
    
     
    .description2 {
      max-width: 50vw;
      margin: 20px 0 60px auto; /* top: 0, right: 0, bottom: 60px, left: auto */
      font-size: clamp(14px, 2vw, 18px);
      line-height: 1.4;
      text-align: left; /* Keep the text itself left-aligned */
    }

    .description3 {
      max-width: 50vw;
      margin: 20px 0 60px auto; /* top: 0, right: 0, bottom: 60px, left: auto */
      font-size: clamp(14px, 2vw, 18px);
      line-height: 1.4;
      text-align: left; /* Keep the text itself left-aligned */
    }
  
        @font-face {
          font-family: "Panchang Variable";
          src: url("./fonts/Panchang-Variable.woff2") format("woff2");
          font-weight: 100 900;
          font-style: normal;
      }
      
      #centered-photo-section {
        height: 50vh;
        display: flex;
        justify-content: center;
        align-items: center;
        padding: 20vw;
      }
      
      .center-image {
        width: 30vw; /* adjust size as needed */
        height: auto;
        border-radius: 1px; /* optional */
      }

      #centered-photo-section2 {
        height: 110vh;
        display: flex;
        justify-content: center;
        align-items: center;
        padding: 20vw;
      }

      #centered-photo-section3 {
        height: 150vh;
        display: flex;
        justify-content: center;
        align-items: center;
        padding: 20vw;
      }

      .center-image2 {
        width: 30vw; /* adjust size as needed */
        height: auto;
        border-radius: 1px; /* optional */
        margin-bottom: 20vh;
      }

      .center-image3 {
        width: 30vw; /* adjust size as needed */
        margin-top: 10vh;
        height: auto;
        border-radius: 1px; /* optional */
        margin-bottom: 30vh;
      }
      .center-image4 {
        width: 70vw; /* adjust size as needed */
        margin-top: 20vh;
        height: auto;
        border-radius: 1px; /* optional */
        margin-bottom: 40vh;
      }

      .image-grid {
        display: grid;
        margin-top: 10vh;
        grid-template-columns: repeat(4, 1fr);
        gap: 0px;
        padding: 0px;
      }
      
      .image-grid img {
        width: 100%;
        height: auto;
        mix-blend-mode: darken;

      }
      
      /* For medium and larger screens (768px and up), show 4 images in a row */
   
      
      * {
        margin: 0;
        padding: 0;
        box-sizing: border-box;
      }
      
      body {
        font-family: Arial, sans-serif;
      }
      
      .carousel-section {
        position: relative;
        top: 50%;
        left: 0;
        transform: translateY(-50%);
        padding: 20vh;
        margin-top: 50vh;;
      }
      
      .carousel-container {
        position: relative;
        width: 30vw;
        height: auto;
        overflow: hidden;

      }
      
      .carousel {
        display: flex;
        transition: transform 1s ease;
      }
      
      .carousel-items {
        display: flex;
        width: 100%;
      }
      
      .carousel-item {
        min-width: 100%;
        height: 100%;
        display: flex;
        justify-content: center;
        align-items: center;
      }
      
      .carousel-item img {
        width: 100%;
        height: 100%;
        object-fit: cover;
      
      }
      
      .carousel-btn {
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        background-color: transparent;
        border: none;
        padding: 10px;
        cursor: pointer;
        z-index: 10;
      }
      
      .prevBtn {
        left: 0;
      }
      
      .nextBtn {
        right: 0;
      }
      
      .carousel-container:hover .carousel {
        animation-play-state: paused;
      }
      
      .carousel-btn svg {
        width: 40px;
        height: 40px;
      }
      
/* Floating Photo Section */
.glued-photo-section {
    position: relative;
    display: flex;
    justify-content: flex-end;
    align-items: center;
    width: 100%;
  }
  
  .glued-photo {
    width: 40vw; /* Scales with screen width */
    max-width: 1000px; /* Prevents it from getting too big */
    margin-top: -90vh;
    margin-right: 0vw; /* Adjust spacing dynamically */
  }

  .glued-photo-section2 {
    position: relative;
    display: flex;
    justify-content: right; /* Center the image */
    align-items: right;
    width: 100%;
    margin: 0; /* Add some vertical spacing */
  }
  
  .glued-photo2 {
    width: 60vw; /* Make the image smaller but still responsive */
    max-width: 70vw; /* Prevent it from getting too big on large screens */
  }
  
  .glued-photo2 img {
    width: 100%;
    height: auto;
    display: block;
  }
  
  .glued-photo img {
    width: 100%;
    height: auto;
  }

  .glued-photo3 {
    width: 40vw; /* Make the image smaller but still responsive */
    max-width: 70vw; /* Prevent it from getting too big on large screens */
    margin-bottom: 20vh;
    margin-top: -40vh;
  }

  .glued-photo3 img {
    width: 100%;
    height: auto;
    display: block;
  }
  
  .glued-photo4 {
    width: 40vw; /* Make the image smaller but still responsive */
    max-width: 70vw; /* Prevent it from getting too big on large screens */
    margin-bottom: 20vh;
    margin-top: 0vh;
    margin-right: 8vw;
  }
  .glued-photo4 img {
    width: 100%;
    height: auto;
    display: block;
  }

   /* Glued Photo & Text Container */
.floating-container {
    display: flex;
    align-items: flex-start;
    flex-wrap: wrap; /* Allows wrapping */
    margin-top: -10vh; /* Use viewport height for better scaling */
    margin-bottom: 20vh; /* Use viewport height for better scaling */
    margin-left: 8vw;
  }
  
  .floating-photo img {
    width: 100%;
    height: auto;
    display: block;
  }
  
  .floating-photo {
    margin-left: 0 !important;
    padding-left: 0;
    width: 40vw; /* Make it span full screen width */
    margin-bottom: -20vh;
    max-width: none;
  }
  
  .floating-photo img {
    width: 100%;
    height: auto;
    display: block;
    object-fit: cover;
  }



  /* Text Block */
  .description-block {
    flex: 1;
    min-width: 50vw;
    max-width: 50vw; /* Adjust width relative to screen */
    padding-left: 10vw;
    margin-top: 95vh; /* Align with glued photo */
    margin-bottom: auto;
  }
  
  .description2 {
    font-size: 1em; /* Scale with screen size */
    line-height: 1.6;
  }

    /* Glued Photo & Text Container */
    .floating-container2 {
        display: flex;
        justify-content: flex-end; /* pushes the content to the right */
        align-items: flex-start;
        flex-wrap: wrap;
        margin-top: 20vh;
        margin-bottom: 40vh;
      }

  .floating-photo2 img {
    width: 100%;
    height: auto;
    display: block;
  }
  
  .floating-photo2 {
    margin-right: 4vw !important;
    width: 60vw; /* Make it span full screen width */
    margin-bottom: -20vh;
    max-width: none;
  }
  
  .floating-photo2 img {
    width: 100%;
    height: auto;
    display: block;
  }

   .floating-container3 {
        display: flex;
        justify-content: flex-start; 
        align-items: flex-start;
        flex-wrap: wrap;
        margin-top: 30vh;
        margin-bottom: 20vh;
      }

  .floating-photo3 img {
    width: 100%;
    height: auto;
    display: block;
  }
  
  .floating-photo3 {
    width: 40vw; 
    max-width: 60vw; /* cap max size */
  margin-left: 4vw; /* spacing from the left edge */
  margin-bottom: 2rem; /* more standard spacing */
  }

  .floating-photo4 img {
    width: 100%;
    height: auto;
    display: block;
  }
  
  .floating-photo4 {
    margin-left: 0 !important;
    padding-left: 0;
    width: 40vw; /* Make it span full screen width */
    margin-top: 45vh;
    max-width: none;
    
  }

  
/* 🔹 Responsive Tweaks */
@media (max-width: 1200px) {

  .carousel-section {

      margin-top: 40vh;
      margin-bottom: 10vh;
    }
 
    .carousel-container {
width:30vw;
    }

  .glued-photo-section {
    justify-content: right; /* Keep the photo centered */
    margin-top: -20vh;
  }

  .glued-photo {
    width: 65vw;
    margin-right: 0;
  }

  .floating-container {
    flex-direction: column; /* Stack elements */
    align-items: left;
    margin-top: 5vh;
  }

  .floating-photo {
    width: 60vw;
    margin-top: -20vh;
  }


 /* .glued-photo.glued-left{
    flex-direction: column; 
    align-items: left;
    margin-top: -20vh;
    width:45vw;
  } */

  .description-block {
    max-width: 80%;
    min-width: 60vw;
    text-align: left;
    padding-left: 0;
  
    margin-top: 9vh;
  }

  .description2 {
   
      max-width: 90%;
    font-size: 0.9em;
  }
}

.description .description2 {
  margin-top: 100vh;
}


  
    /* Second carousel */
.carousel2-container {
    width: 100%;
    overflow: hidden; 
    position: relative;
    margin-top: 10vh;
    margin-bottom: 10vh;
  }
  
  #carouselSlide2 {
    display: flex;
    transition: transform 0.5s ease-in-out;
  }
  
  #carouselSlide2 img {
    min-width: 100vw;
    height: auto;
    object-fit: cover;
    display: block;
  }
  
  .prevBtn2 {
    left: 5px;
  }
  
  .nextBtn2 {
    right: 5px;
  }
  
  .third-carousel .carousel-container {
    margin-top: 20vh;
    margin-bottom: -25vh;
  max-width: 45vw; /* or whatever size you want */
  transform: scale(1.2); /* optional: scale up the whole carousel */
}

.third-carousel .carousel img {
  width: 100%; /* make sure images grow with the container */
  height: auto;
}
      

  /* =======================================
     FOOTER STYLES
     ======================================= */
     footer {
      background-color: #D0CDC5;
      padding: clamp(10px, 3vw, 20px); /* Adjusts padding dynamically */
    }
      
      /* Top row: H1 on left, H2 on right */
      .footer-top-row {
        display: flex;
        justify-content: space-between;
        align-items: center;
        margin-bottom: clamp(10px, 5vw, 20px); /* Shrinks margin */
      }
      
      .footer-top-row h3 {
        font-size: clamp(50px, 8vw, 100px);
        margin-bottom: clamp(50px, 10vw, 150px); /* Shrinks space below */
      }
      
      .footer-top-row h2 {
        font-size: 1.4vw;
      }
      
      /* Bottom row */
      .footer-bottom-row {
        display: flex;
        justify-content: space-between;
        align-items: center;
        gap: clamp(10px, 2vw, 20px); /* Dynamic spacing */
        padding: clamp(10px, 2vw, 20px) 0; /* Shrinks vertical padding */
      }
      
      /* Make bottom-row text shrink */
      .footer-bottom-row h2 {
        font-size:1.4vw;
      }
      
      .left-footer {
        text-align: left;
      }
      
      .center-footer {
        text-align: center;
      }
      
      .right-footer {
        text-align: right;
      }
  
      h2 {
        font-size: 1,4vw;
        font-weight: lighter;
        margin-bottom: -5px;
      }
      
      h3 {
        font-size: 4vw;
        font-weight: 500;
        font-family: "Panchang Variable", sans-serif;
        color: #ededf1;
      }
  
  
  
      /* Reset / base styling (optional) */
  * {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
  }
  
  body {
    font-family: sans-serif;
  }
  
  /* Hide the default cursor */
  body {
    cursor: none;
  }
  
  /* Style for the custom cursor */
  .custom-cursor {
    width: 15px;
    height: 15px;
    background-color: black;
    border-radius: 50%;
    position: fixed;
    pointer-events: none;
    transform: translate(-50%, -50%);
    transition: transform 0.2s ease, width 0.2s ease, height 0.2s ease;
    z-index: 1000;
  }
  
  a, button {
    cursor: none !important;
  }
  
  a:hover .custom-cursor,
  button:hover .custom-cursor {
      width: 30px;
      height: 30px;
  }
  
  * {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
  }

  @media (max-width: 768px) {
    .third-carousel{
      margin-bottom: -10vh;
    }

    .center-image2,
    .center-image3 {
      width: 60vw; /* take up more space on small screens */
    }

   
  .description3{
    margin-bottom: -4vh;
  }

    .glued-photo3{
      margin-bottom: 0vh;
    }

      #centered-photo-section2 {
      height: 60vh;
      margin-top: 10vh;
      margin-bottom: -10vh;

    }

    #centered-photo-section3 {
      height: 90vh;

    }


  .center-image4{
    width: 85vw;
   margin-top: 10vh;
   margin-bottom: 0vh;
  }


   header h1 {
  font-size: 3vw;
  }

   .image-grid {
          grid-template-columns: repeat(4, 1fr);
        }

        .center-image {
    width: 60vw;
  }

  .carousel-section {
margin-left: -25vw;
    margin-top: 40vh;
    margin-bottom: 40vh;
  }

  .carousel-container {
width:60vw;
  }

  .glued-photo {
    width: 65vw;
    margin-right: 0;
  }
  .glued-photo3 {
    width: 70vw;
    margin-top: 2vh;
  }
  .glued-photo4 {
    width: 70vw;
    margin-top: 2vh;
    margin-bottom: -10vh;

  }


  .floating-photo {
    width: 60vw;
  }
  .floating-photo3 {
    width: 60vw;
    margin-top: -20vh;
  }

  .floating-container .floating-photo4 {
    margin-top: 7vh !important;
    width: 60vw;
  }
  .description2 {
    font-size: 0.9em;
    margin-top: 15vh;
    margin-bottom: 2vh;
    margin-left: 0;
    margin-right: -70vw;
  }

  .description3 {
    font-size: 0.9em;
    margin-top: 5vh;
    margin-bottom: 6vh;
    margin-left: 2vw;
    margin-right: -70vw;
  }

  .title-section2{
    margin-top: -50vh;
  }

   .footer-top-row {
          flex-direction: column;
          text-align: center;
          margin-bottom: clamp(10px, 5vw, 20px);
        }
      
        .footer-bottom-row {
          flex-direction: column;
          text-align: center;
          gap: clamp(5px, 2vw, 10px);
        }
}

  @media (hover: none) and (pointer: coarse) {
  .custom-cursor {
    display: none;
  }
}