.mt-20{
    margin-top: 20px;
}
.ml-20{
    margin-left: 20px;
}
.pb60{
    padding-bottom: 60px;
}
.tourism-text-info .card-body img{
    max-width: 100px;
}
.blue-heading{
    background-color: #004aad;
    color: #FFF;
    padding: 10px;
    margin-bottom: 30px;
    font-size: 20px;
}
.error{
    color: red;
}
.flow-step img{
    padding: 6px;
}
.bg-point-transparent{
  background-color: #004aad !important;
  color: #FFFFFF !important;
}
.bg-point-transparent:hover{
  background-color: #333333 !important;
  color: #FFFFFF !important;
}
.avatar.avatar-md {
    width: 35px;
    height: 32px;
    line-height: 2rem;
    font-size: 0.8rem;
}
.avatar.avatar-md i{
    width: 30px;
    text-align: center;
}
.stage-flow pre{
    white-space: pre-wrap;
    word-wrap: break-word;
    overflow-x: auto;
    max-width: 100%;
    box-sizing: border-box;
    background: transparent;
    border: none;
    font-family: inherit;
    font-size: inherit;
    line-height: 1.6;
}
.tour-box{
    text-align: center;
}
.tour-box img{
    height: 250px;
}

.mt-10{
    margin-top: 10px;
}
.partners .gallery-body .img-wrap {
  position: relative;
  border-radius: 10px;
  overflow: hidden;
  flex: 1 1 120px;
  height: 150px; /* ✅ uniform height for all images */
  display: flex;
  align-items: center;
  justify-content: center;
  background: #fff; /* optional, helps center small logos */
  border: 1px solid #eee; /* optional subtle border */
}

.partners .gallery-body .img-wrap img {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain; /* ✅ maintain logo proportions */
  border-radius: 10px;
}

label.required:after {
    content: "*";
    color: red;
    font-weight: bold;
    padding-left: 6px;
}

@media only screen and (min-width:320px) and (max-width:640px), only screen and (max-width:740px), only screen and (max-width:1024px){
    .hidden-xs{
        display: none;
    }
}