body {
  padding-top: 120px;
}

@media (max-width: 1024px) {
  body, body.v3 {
    padding-top: 60px !important;
  }
}

.search-box {
  position: relative;
  width: 100%;
  max-width: 750px;
  margin: 0 auto;
  background: rgba(255, 255, 255, 0.95);
  border-radius: 50px;
  box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);
  transition: background 0.3s ease;
  height: 48px; /* Ensures consistent height */
}
.search-box:focus-within {
  background: #fff;
}
.search-box input {
  width: 100%;
  padding: 12px 50px 12px 20px;
  border: none;
  outline: none;
  background: transparent;
  font-size: 16px;
  border-radius: 50px;
  height: 100%; /* Match parent height */
}
.search-box button {
  position: absolute;
  right: 10px;
  top: 5px;
  bottom: 5px;
  width: 35px;
  height: 35px;
  border: none;
  padding: 0;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%232c3090' viewBox='0 0 16 16'%3E%3Cpath d='M11.742 10.344a6.5 6.5 0 1 0-1.397 1.398h-.001c.03.04.062.078.098.115l3.85 3.85a1 1 0 0 0 1.415-1.414l-3.85-3.85a1.007 1.007 0 0 0-.115-.1zM12 6.5a5.5 5.5 0 1 1-11 0 5.5 5.5 0 0 1 11 0z'/%3E%3C/svg%3E") no-repeat center;
  background-size: 20px;
  cursor: pointer;
  text-indent: -9999px; /* hides text but keeps accessibility */
  transition: transform 0.25s ease, filter 0.25s ease;
}
.search-box button:hover {
  transform: scale(1.2);
  filter: brightness(1.3);
}

.btn-orange-outline {
  color: #222;
  border: 2px solid #f58e00;
  white-space: normal;
}
.btn-orange-outline:hover, .btn-orange-outline:active, .btn-orange-outline:focus {
  color: #fff;
  background-color: #ff5400;
  border: 2px solid #ff5400;
}
