* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
  }

:root{
  --safe-top: env(safe-area-inset-top, 0px);
  --safe-bottom: env(safe-area-inset-bottom, 0px);
}
  
  body {
    background: #f7f8f9;
    padding-top: calc(var(--safe-top) + 80px); /* header height + safe area */
    overflow-y: auto;
    overflow-x: hidden;
    max-width: 100%;
  }

    img {
    -webkit-user-drag: none;   /* Prevent dragging in Safari/Chrome */          /* Standard (not fully supported) */
    -webkit-user-select: none; /* Safari */
    -moz-user-select: none;    /* Firefox */
    -ms-user-select: none;     /* IE/Edge */
    user-select: none;         /* Standard */    /* Optional: disables right-click + copy */
  }

  .wrapper {
    width: 100%;
  }

  /* Hide scrollbar for all browsers */
  html {
    scrollbar-width: none;       /* Firefox */
    -ms-overflow-style: none;    /* Internet Explorer 10+ */
  }

  html::-webkit-scrollbar {
    display: none; /* WebKit (Chrome, Safari) */
  }

  html, body {
    width: 100%;
    overflow-x: hidden;
  }

  a[href^="tel"] {
    color: inherit; /* or choose your desired color */
    text-decoration: underline;
    text-underline-offset: 5px;
  }

  a[href^="mailto"] {
    color: inherit; /* or choose your desired color */
    text-decoration: underline;
    text-underline-offset: 5px;
  }

  button, textarea, input, select, a{
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
    -webkit-tap-highlight-color: transparent;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none; 
  }

  ::selection {
    background-color: rgba(110, 199, 174, 0.50); /* Light amber */
    color: #1C1C1E;            /* Dark text */
  }


 .scroll-to-top {
  transform: translate(-50%, 20px); /* Start slightly below */
  left: 50%;
  position: fixed;
  bottom: 30px;
  z-index: 1002;
  color: #1C1C1E;
  border: none;
  width: 50px;
  height: 50px;
  border-radius: 50%;
  font-size: 25px;
  cursor: pointer;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s ease, visibility 0.3s ease, transform 0.3s ease, background-color 0.3s ease, filter 0.3s ease;
  background-color: rgba(255, 255, 255, 0.40);
  box-shadow: 0 1px 10px rgba(0, 0, 0, 0.07), 0 1px 3px 0 #FFF inset;
  backdrop-filter: blur(3px);
  filter: blur(5px);
  background-clip: padding-box;
}

.scroll-to-top-icon{
  width: 15px;
  transition: all 0.2s ease;
}

@supports (bottom: max(0px)) {
  .scroll-to-top {
    bottom: max(30px, calc(30px - env(safe-area-inset-bottom)));
    /* optional: if you keep blur, avoid artifacts at the edge */
    background-clip: padding-box;
  }
}

.stt-label {
  transition: color 0.4s ease-in-out;
}

.scroll-to-top.show {
  opacity: 1;
  visibility: visible;
  transform: translate(-50%, 0);
  filter: none;
}