@import url("https://cdnjs.cloudflare.com/ajax/libs/meyer-reset/2.0/reset.min.css");
* {
  -webkit-font-smoothing: antialiased;
  box-sizing: border-box;
}
html,
body {
  margin: 0px;
  height: 100%;
  overflow-x: hidden;
}
/* a blue color as a generic focus style */
button:focus-visible {
  outline: 2px solid #4a90e2 !important;
  outline: -webkit-focus-ring-color auto 5px !important;
}
a {
  text-decoration: none;
}

/* Responsive utilities */
.container {
  width: 100%;
 
  margin: 0 auto;
  padding: 0 20px;
  box-sizing: border-box;
}

/* Responsive text utilities */
.text-responsive {
  font-size: clamp(14px, 2.5vw, 18px);
  line-height: 1.5;
}

.heading-responsive {
  font-size: clamp(20px, 4vw, 36px);
  line-height: 1.2;
}

/* Responsive spacing utilities */
.padding-responsive {
  padding: clamp(16px, 4vw, 48px);
}

.margin-responsive {
  margin: clamp(16px, 4vw, 48px);
}

/* Hide elements on specific breakpoints */
.hide-mobile {
  display: block;
}

.hide-desktop {
  display: none;
}

@media (max-width: 767px) {
  .hide-mobile {
    display: none;
  }
  
  .hide-desktop {
    display: block;
  }
  
  .container {
    padding: 0 16px;
  }
}

@media (max-width: 479px) {
  .container {
    padding: 0 12px;
  }
}
