html {
  scroll-behavior: smooth;
}

.text-xs {
  font-size: 0.75rem;   /* 12px */
  line-height: 1rem;    /* 16px */
}

.text-sm {
  font-size: 0.875rem;  /* 14px */
  line-height: 1.25rem; /* 20px */
}

.text-base {
  font-size: 1rem;      /* 16px */
  line-height: 1.5rem;  /* 24px */
}

.text-lg {
  font-size: 1.125rem;  /* 18px */
  line-height: 1.75rem; /* 28px */
}

.text-xl {
  font-size: 1.25rem;   /* 20px */
  line-height: 1.75rem; /* 28px */
}

.text-2xl {
  font-size: 1.5rem;    /* 24px */
  line-height: 2rem;    /* 32px */
}

.text-3xl {
  font-size: 1.875rem;  /* 30px */
  line-height: 2.25rem; /* 36px */
}

.text-4xl {
  font-size: 2.25rem;   /* 36px */
  line-height: 2.5rem;  /* 40px */
}

.text-5xl {
  font-size: 3rem;      /* 48px */
  line-height: 1;
}

.text-6xl {
  font-size: 3.75rem;   /* 60px */
  line-height: 1;
}

.text-7xl {
  font-size: 4.5rem;    /* 72px */
  line-height: 1;
}

.text-8xl {
  font-size: 6rem;      /* 96px */
  line-height: 1;
}

.text-9xl {
  font-size: 8rem;      /* 128px */
  line-height: 1;
}

.container {
    max-width: 1200px;
}

.text-primary {
    color: #FCC971 !important;
}

.text-shadow {
    text-shadow: 0px 0px 6px #000000;
}

.golden-overlay {
    position: fixed;
    inset: 0;
    z-index: 9999;
    pointer-events: none;
    background: rgba(255, 215, 0, 0.04);
}

.shine-line {
    width: 100%;
    height: 2px; /* Espessura da linha */
    border: none;
    background: linear-gradient(
        to right, 
        rgba(197, 164, 126, 0.25) 0%,    /* Começa transparente */
        #c5a47e 20%,                  /* Marrom dourado suave */
        #e6d2b5 45%,                  /* Bege claro (brilho) */
        #ffffffe0 50%,                  /* Branco puro (ponto máximo de luz) */
        #e6d2b5 55%,                  /* Retorna ao bege claro */
        #c5a47e 80%,                  /* Marrom dourado suave */
        rgba(197, 164, 126, 0.25) 100%   /* Termina transparente */
    );
}

.btn-whatsapp-pulse {
    background: #25d366;
    color: white;
    position: fixed;
    z-index: 50;
    bottom: 20px;
    right: 20px;
    /* font-size: 40px; */
    display: flex;
    justify-content: center;
    align-items: center;
    width: 0;
    height: 0;
    padding: 35px;
    text-decoration: none;
    border-radius: 50%;
    animation-name: pulse;
    animation-duration: 1.5s;
    animation-timing-function: ease-out;
    animation-iteration-count: infinite;
}

@keyframes pulse {
    0% {
        box-shadow: 0 0 0 0 rgba(37, 211, 102, 0.5);
    }
    80% {
        box-shadow: 0 0 0 14px rgba(37, 211, 102, 0);
    }
}

.offcanvas-mobile {
    pointer-events: none;
    position: fixed;
    opacity: 0;
    visibility: hidden;
    inset: 0;
    z-index: 100;
    padding: 1.25rem;
    background: #1a1a1a;
    transition: opacity 0.25s ease-in-out;

    &.show {
        pointer-events: all;
        opacity: 1;
        visibility: visible;
    }
}