html, body {
    overflow-x: hidden;
  }
  
body {
    margin: 0 !important;
    padding: 0 !important;
}

.p-1  { padding: 0.75rem !important; }
.p-2  { padding: 1.5rem !important; }
.p-3  { padding: 2.25rem !important; }
.p-4  { padding: 3rem !important; }
.p-5  { padding: 3.75rem !important; }
.p-6  { padding: 4.5rem !important; }
.p-7  { padding: 6rem !important; }
.p-8  { padding: 7.5rem !important; }
.p-9  { padding: 9rem !important; }
.p-10 { padding: 10.5rem !important; }
.p-11 { padding: 12rem !important; }
.p-12 { padding: 13.5rem !important; }

.pt-1  { padding-top: 0.75rem !important; }
.pt-2  { padding-top: 1.5rem !important; }
.pt-3  { padding-top: 2.25rem !important; }
.pt-4  { padding-top: 3rem !important; }
.pt-5  { padding-top: 3.75rem !important; }
.pt-6  { padding-top: 4.5rem !important; }
.pt-7  { padding-top: 6rem !important; }
.pt-8  { padding-top: 7.5rem !important; }
.pt-9  { padding-top: 9rem !important; }
.pt-10 { padding-top: 10.5rem !important; }
.pt-11 { padding-top: 12rem !important; }
.pt-12 { padding-top: 13.5rem !important; }

.pb-1  { padding-bottom: 0.75rem !important; }
.pb-2  { padding-bottom: 1.5rem !important; }
.pb-3  { padding-bottom: 2.25rem !important; }
.pb-4  { padding-bottom: 3rem !important; }
.pb-5  { padding-bottom: 3.75rem !important; }
.pb-6  { padding-bottom: 4.5rem !important; }
.pb-7  { padding-bottom: 6rem !important; }
.pb-8  { padding-bottom: 7.5rem !important; }
.pb-9  { padding-bottom: 9rem !important; }
.pb-10 { padding-bottom: 10.5rem !important; }
.pb-11 { padding-bottom: 12rem !important; }
.pb-12 { padding-bottom: 13.5rem !important; }

.pl-0  { margin-left: 0rem !important; }
.pl-1  { padding-left: 0.75rem !important; }
.pl-2  { padding-left: 1.5rem !important; }
.pl-3  { padding-left: 2.25rem !important; }
.pl-4  { padding-left: 3rem !important; }
.pl-5  { padding-left: 3.75rem !important; }
.pl-6  { padding-left: 4.5rem !important; }
.pl-7  { padding-left: 6rem !important; }
.pl-8  { padding-left: 7.5rem !important; }
.pl-9  { padding-left: 9rem !important; }
.pl-10 { padding-left: 10.5rem !important; }
.pl-11 { padding-left: 12rem !important; }
.pl-12 { padding-left: 13.5rem !important; }

.pr-1  { padding-right: 0.75rem !important; }
.pr-2  { padding-right: 1.5rem !important; }
.pr-3  { padding-right: 2.25rem !important; }
.pr-4  { padding-right: 3rem !important; }
.pr-5  { padding-right: 3.75rem !important; }
.pr-6  { padding-right: 4.5rem !important; }
.pr-7  { padding-right: 6rem !important; }
.pr-8  { padding-right: 7.5rem !important; }
.pr-9  { padding-right: 9rem !important; }
.pr-10 { padding-right: 10.5rem !important; }
.pr-11 { padding-right: 12rem !important; }
.pr-12 { padding-right: 13.5rem !important; }

.px-1  { padding-left: 0.75rem !important; padding-right: 0.75rem !important; }
.px-2  { padding-left: 1.5rem !important; padding-right: 1.5rem !important; }
.px-3  { padding-left: 2.25rem !important; padding-right: 2.25rem !important; }
.px-4  { padding-left: 3rem !important; padding-right: 3rem !important; }
.px-5  { padding-left: 3.75rem !important; padding-right: 3.75rem !important; }
.px-6  { padding-left: 4.5rem !important; padding-right: 4.5rem !important; }
.px-7  { padding-left: 6rem !important; padding-right: 6rem !important; }
.px-8  { padding-left: 7.5rem !important; padding-right: 7.5rem !important; }
.px-9  { padding-left: 9rem !important; padding-right: 9rem !important; }
.px-10 { padding-left: 10.5rem !important; padding-right: 10.5rem !important; }
.px-11 { padding-left: 12rem !important; padding-right: 12rem !important; }
.px-12 { padding-left: 13.5rem !important; padding-right: 13.5rem !important; }

.py-1  { padding-top: 0.75rem !important; padding-bottom: 0.75rem !important; }
.py-2  { padding-top: 1.5rem !important; padding-bottom: 1.5rem !important; }
.py-3  { padding-top: 2.25rem !important; padding-bottom: 2.25rem !important; }
.py-4  { padding-top: 3rem !important; padding-bottom: 3rem !important; }
.py-5  { padding-top: 3.75rem !important; padding-bottom: 3.75rem !important; }
.py-6  { padding-top: 4.5rem !important; padding-bottom: 4.5rem !important; }
.py-7  { padding-top: 6rem !important; padding-bottom: 6rem !important; }
.py-8  { padding-top: 7.5rem !important; padding-bottom: 7.5rem !important; }
.py-9  { padding-top: 9rem !important; padding-bottom: 9rem !important; }
.py-10 { padding-top: 10.5rem !important; padding-bottom: 10.5rem !important; }
.py-11 { padding-top: 12rem !important; padding-bottom: 12rem !important; }
.py-12 { padding-top: 13.5rem !important; padding-bottom: 13.5rem !important; }

.m-1  { margin: 0.75rem !important; }
.m-2  { margin: 1.5rem !important; }
.m-3  { margin: 2.25rem !important; }
.m-4  { margin: 3rem !important; }
.m-5  { margin: 3.75rem !important; }
.m-6  { margin: 4.5rem !important; }
.m-7  { margin: 6rem !important; }
.m-8  { margin: 7.5rem !important; }
.m-9  { margin: 9rem !important; }
.m-10 { margin: 10.5rem !important; }
.m-11 { margin: 12rem !important; }
.m-12 { margin: 13.5rem !important; }

.mt-1  { margin-top: 0.75rem !important; }
.mt-2  { margin-top: 1.5rem !important; }
.mt-3  { margin-top: 2.25rem !important; }
.mt-4  { margin-top: 3rem !important; }
.mt-5  { margin-top: 3.75rem !important; }
.mt-6  { margin-top: 4.5rem !important; }
.mt-7  { margin-top: 6rem !important; }
.mt-8  { margin-top: 7.5rem !important; }
.mt-9  { margin-top: 9rem !important; }
.mt-10 { margin-top: 10.5rem !important; }
.mt-11 { margin-top: 12rem !important; }
.mt-12 { margin-top: 13.5rem !important; }

.mb-1  { margin-bottom: 0.75rem !important; }
.mb-2  { margin-bottom: 1.5rem !important; }
.mb-3  { margin-bottom: 2.25rem !important; }
.mb-4  { margin-bottom: 3rem !important; }
.mb-5  { margin-bottom: 3.75rem !important; }
.mb-6  { margin-bottom: 4.5rem !important; }
.mb-7  { margin-bottom: 6rem !important; }
.mb-8  { margin-bottom: 7.5rem !important; }
.mb-9  { margin-bottom: 9rem !important; }
.mb-10 { margin-bottom: 10.5rem !important; }
.mb-11 { margin-bottom: 12rem !important; }
.mb-12 { margin-bottom: 13.5rem !important; }

.ml-0  { margin-left: 0rem !important; }
.ml-1  { margin-left: 0.75rem !important; }
.ml-2  { margin-left: 1.5rem !important; }
.ml-3  { margin-left: 2.25rem !important; }
.ml-4  { margin-left: 3rem !important; }
.ml-5  { margin-left: 3.75rem !important; }
.ml-6  { margin-left: 4.5rem !important; }
.ml-7  { margin-left: 6rem !important; }
.ml-8  { margin-left: 7.5rem !important; }
.ml-9  { margin-left: 9rem !important; }
.ml-10 { margin-left: 10.5rem !important; }
.ml-11 { margin-left: 12rem !important; }
.ml-12 { margin-left: 13.5rem !important; }

.mr-1  { margin-right: 0.75rem !important; }
.mr-2  { margin-right: 1.5rem !important; }
.mr-3  { margin-right: 2.25rem !important; }
.mr-4  { margin-right: 3rem !important; }
.mr-5  { margin-right: 3.75rem !important; }
.mr-6  { margin-right: 4.5rem !important; }
.mr-7  { margin-right: 6rem !important; }
.mr-8  { margin-right: 7.5rem !important; }
.mr-9  { margin-right: 9rem !important; }
.mr-10 { margin-right: 10.5rem !important; }
.mr-11 { margin-right: 12rem !important; }
.mr-12 { margin-right: 13.5rem !important; }

.mx-1  { margin-left: 0.75rem !important; margin-right: 0.75rem !important; }
.mx-2  { margin-left: 1.5rem !important; margin-right: 1.5rem !important; }
.mx-3  { margin-left: 2.25rem !important; margin-right: 2.25rem !important; }
.mx-4  { margin-left: 3rem !important; margin-right: 3rem !important; }
.mx-5  { margin-left: 3.75rem !important; margin-right: 3.75rem !important; }
.mx-6  { margin-left: 4.5rem !important; margin-right: 4.5rem !important; }
.mx-7  { margin-left: 6rem !important; margin-right: 6rem !important; }
.mx-8  { margin-left: 7.5rem !important; margin-right: 7.5rem !important; }
.mx-9  { margin-left: 9rem !important; margin-right: 9rem !important; }
.mx-10 { margin-left: 10.5rem !important; margin-right: 10.5rem !important; }
.mx-11 { margin-left: 12rem !important; margin-right: 12rem !important; }
.mx-12 { margin-left: 13.5rem !important; margin-right: 13.5rem !important; }

.my-1  { margin-top: 0.75rem !important; margin-bottom: 0.75rem !important; }
.my-2  { margin-top: 1.5rem !important; margin-bottom: 1.5rem !important; }
.my-3  { margin-top: 2.25rem !important; margin-bottom: 2.25rem !important; }
.my-4  { margin-top: 3rem !important; margin-bottom: 3rem !important; }
.my-5  { margin-top: 3.75rem !important; margin-bottom: 3.75rem !important; }
.my-6  { margin-top: 4.5rem !important; margin-bottom: 4.5rem !important; }
.my-7  { margin-top: 6rem !important; margin-bottom: 6rem !important; }
.my-8  { margin-top: 7.5rem !important; margin-bottom: 7.5rem !important; }
.my-9  { margin-top: 9rem !important; margin-bottom: 9rem !important; }
.my-10 { margin-top: 10.5rem !important; margin-bottom: 10.5rem !important; }
.my-11 { margin-top: 12rem !important; margin-bottom: 12rem !important; }
.my-12 { margin-top: 13.5rem !important; margin-bottom: 13.5rem !important; }

/* Font */
.bai-jamjuree-extralight {
    font-family: "Bai Jamjuree", sans-serif;
    font-weight: 200 !important;
    font-style: normal;
  }
  
  .bai-jamjuree-light {
    font-family: "Bai Jamjuree", sans-serif;
    font-weight: 300 !important;
    font-style: normal;
  }
  
  .bai-jamjuree-regular {
    font-family: "Bai Jamjuree", sans-serif;
    font-weight: 400 !important;
    font-style: normal;
  }
  
  .bai-jamjuree-medium {
    font-family: "Bai Jamjuree", sans-serif;
    font-weight: 500 !important;
    font-style: normal;
  }
  
  .bai-jamjuree-semibold {
    font-family: "Bai Jamjuree", sans-serif;
    font-weight: 600 !important;
    font-style: normal;
  }
  
  .bai-jamjuree-bold {
    font-family: "Bai Jamjuree", sans-serif;
    font-weight: 700 !important;
    font-style: normal;
    letter-spacing: 0.06em
  }
  
  .bai-jamjuree-extralight-italic {
    font-family: "Bai Jamjuree", sans-serif;
    font-weight: 200;
    font-style: italic;
  }
  
  .bai-jamjuree-light-italic {
    font-family: "Bai Jamjuree", sans-serif;
    font-weight: 300;
    font-style: italic;
  }
  
  .bai-jamjuree-regular-italic {
    font-family: "Bai Jamjuree", sans-serif;
    font-weight: 400;
    font-style: italic;
  }
  
  .bai-jamjuree-medium-italic {
    font-family: "Bai Jamjuree", sans-serif;
    font-weight: 500;
    font-style: italic;
  }
  
  .bai-jamjuree-semibold-italic {
    font-family: "Bai Jamjuree", sans-serif;
    font-weight: 600;
    font-style: italic;
  }
  
  .bai-jamjuree-bold-italic {
    font-family: "Bai Jamjuree", sans-serif;
    font-weight: 700;
    font-style: italic;
  }

  
.bg-white {
    background-color: #ffffff;
}

.bg-ltgray {
  background-color: #F2F2F2;
}
.bg-darkgray {
    background-color: #343234;
}

.text-darkgray {
  color: #343234;
}

.text-teal {
    color: #14B09F;
}

.project .image-link {
  display: block;
  border-radius: 1rem;         
  border: 3px solid #232223;    
  box-shadow: 6px 6px 0 #232223;
  overflow: hidden;
  transition: transform 0.15s ease, box-shadow 0.15s ease;
  background: #2a282a;
}

.project .image-link img {
  width: 100%;
  display: block;
  /* opacity: 0.5; */
  transition: transform 0.3s ease, opacity 0.3s ease;
}

.project .image-link:hover img {
  transform: scale(1.05);
  opacity: .2;
  cursor: pointer;
}

.project .image-link .hover-text {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  font-size: 1.6rem;
  line-height: 1.2;
  text-align: center;
  pointer-events: none;
  opacity: 0;
  transition: opacity 0.3s ease;
  width: 100%;
}

.project .image-link:hover .hover-text {
  opacity: 1;
}

.project .image-link:active {
  transform: translate(6px, 6px);
  box-shadow: 0 0 0 #232223;
}

  .image-link img {
    transition: transform 0.3s ease, opacity 0.3s ease;
    display: block;
  }
  
  .image-link:hover img {
    transform: scale(1.03);
    opacity: 0.55;
    cursor: pointer;
  }
  
  .image-link .hover-text {
    font-size: 1.6rem; /* or 1.75rem if you want it bolder */
    line-height: 1.2;
    opacity: 0;
    transition: opacity 0.3s ease;
    pointer-events: none;
    text-align: center;
    /* text-shadow: 0 2px 4px rgba(0, 0, 0, 0.4); */
    padding: 0 !important;
    margin: 0 !important;
    width: 100%;
    max-width: 100%;
  }
  
  .image-link:hover .hover-text {
    opacity: 1;
  }


  .tag {
    font-size: 0.75rem;
    letter-spacing: 0.2em;
    background: #2a282a; 
    border: 3px solid #232223;             
    border-radius: 2rem;                   
    padding: 0.25rem 1rem;                 
    box-shadow: 3px 3px 0 #232223;     
    display: inline-block;                 
    color: #ffffff;                        
    font-weight: bold;                     
    text-decoration: none;                 
    cursor: pointer;
    transition: transform 0.15s ease, box-shadow 0.15s ease, opacity 0.2s ease;
  }
  
  .tag:hover {
    transform: scale(0.97);
  
  }
  
  .tag:active {
    transform: translate(3px, 3px); 
    box-shadow: 0px 0px 0 #232223; 
    background: #2a282a;  
    
  }

  .tag.selected {
    background: #14B09F;
    border: 3px solid #038774;    
    box-shadow: 3px 3px 0 #038774;
    color: #ffffff;
  }

  .tag.selected:active {
    transform: translate(3px, 3px);
    box-shadow: 0px 0px 0 #232223; 
  }
  

  .tag-white {
    font-size: 0.75rem;
    letter-spacing: 0.2em;
    background: rgba(255, 255, 255, 0.80); 
    border: 3px solid #ffffff;             
    border-radius: 2rem;                   
    padding: 0.25rem 1rem;                 
    box-shadow: 3px 3px 0 rgba(255, 255, 255, 1);      
    display: inline-block;                 
    color: #343234;                        
    font-weight: bold;                     
    text-decoration: none;                 
    cursor: pointer;
    transition: transform 0.15s ease, box-shadow 0.15s ease, opacity 0.2s ease;
  }
  
  .tag-white:hover {
    transform: scale(0.97);
  
  }
  
  .tag-white:active {
    transform: translate(3px, 3px); 
    box-shadow: 0px 0px 0 #038774; 
    background: #14B09F;  
    color:#ffffff;
    border: 3px solid #038774;  
    
  }
  
   
  .pill-button {
    background: #ffffff; 
    border: 3px solid #14B09F;             
    border-radius: 2rem;                   
    padding: 0.75rem 2rem;                 
    box-shadow: 7px 7px 0 #14B09F;     
    display: inline-block;                 
    color: #343234;                        
    font-weight: bold;                     
    text-decoration: none;                 
    cursor: pointer;
    transition: transform 0.15s ease, box-shadow 0.15s ease, opacity 0.2s ease;
  }
  
  .pill-button:hover {
    transform: scale(0.97);
  
  }
  
  .pill-button:active {
    transform: translate(6px, 6px); 
    box-shadow: 2px 2px 0 #14B09F;  
  }
  
  .pill-button-secondary {
    background: #3bbeaf; 
    border: 3px solid #14B09F;             
    border-radius: 2rem;                   
    padding: 0.75rem 2rem;                
    box-shadow: 7px 7px 0 #14B09F;     
    display: inline-block;                 
    color: #343234;                        
    font-weight: bold;                     
    text-decoration: none;                 
    cursor: pointer;
    transition: transform 0.15s ease, box-shadow 0.15s ease, opacity 0.2s ease;
  }
  
  .pill-button-secondary:hover {
    transform: scale(0.97);
  }
  
  .pill-button-secondary:active {
    transform: translate(6px, 6px); 
    box-shadow: 2px 2px 0 #14B09F;  
  }
  

  .pill-button-gray {
    background: #ffffff; 
    border: 3px solid #343234;             
    border-radius: 2rem;                   
    padding: 0.75rem 2rem;                
    box-shadow: 7px 7px 0 #343234;     
    display: inline-block;                 
    color: #343234;                        
    font-weight: bold;                     
    text-decoration: none;                 
    cursor: pointer;
    transition: transform 0.15s ease, box-shadow 0.15s ease, opacity 0.2s ease;
  }
  
  .pill-button-gray:hover {
    transform: scale(0.97);
  }
  
  .pill-button-gray:active {
    transform: translate(6px, 6px); 
    box-shadow: 2px 2px 0 #343234;  
  }
  
  .pill-button-white {
    background: rgba(255, 255, 255, 0.80); 
    border: 3px solid #ffffff;             
    border-radius: 2rem;                   
    padding: 0.75rem 2rem;                
    box-shadow: 6px 6px 0 rgba(255, 255, 255, 1);   
    display: inline-block;                 
    color: #343234;                        
    font-weight: bold;                     
    text-decoration: none;                 
    cursor: pointer;
    transition: transform 0.15s ease, box-shadow 0.15s ease, opacity 0.2s ease;
  }
  
  .pill-button-white:hover {
    transform: scale(0.97);
  }
  
  .pill-button-white:active {
    transform: translate(6px, 6px); 
    box-shadow: 2px 2px 0 #ffffff;  
  }
  

.scattered {
    background-image: url('images/scattered/hero.png');
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    height: 500px;
    padding: 0;
    margin: 0;
}

.scattered-card {
    background-image: url('images/scattered-title-card.jpg');
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

.button {
    padding: 8px 16px;
    background-color: #ffffff;
    color: #00AB98;
    text-decoration: none;
    font-weight: bold;
    border-radius: 0px;
    /* box-shadow: 0 4px 10px rgba(0, 0, 0, 0.2); */
    transition: background-color 0.3s ease;
    font-family: sans-serif;
}

.button:hover {
    background-color: #038774;
  }

  .zoomable {
    cursor: zoom-in;
  }
  
  #imageModal {
    display: none;
    position: fixed;
    z-index: 1050;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0,0,0,0.4);
    backdrop-filter: blur(2px); 
    justify-content: center;
    align-items: center;
    cursor: zoom-out;
  }
  
  #imageModal img {
    max-width: 90%;
    max-height: 90%;
    border-radius: 0px;
    box-shadow: 0 4px 20px rgba(0,0,0,0.5);
    transition: transform 0.3s ease;
  }
  
  #imageModal.show {
    display: flex;
  }
  
  @media (min-width: 992px) {
    .scattered {
      background-position: center 30%; /* Adjust this value as needed */
    }
  }

  @media (min-width: 768px) {
    .pr-md-7 {
      padding-right: 6rem !important;
    }
  }
