      html, body {
        overflow-x: hidden !important;
        width: 100%;
        position: relative;
        margin: 0;
        padding: 0;
      }

      body > * {
        max-width: 100vw;
        overflow-x: hidden;
      }

      /* Estilos do Menu Mobile */
      #mobile-menu {
          transition: opacity 0.3s ease-in-out;
      }

      #mobile-menu.active {
          opacity: 1 !important;
      }

      #mobile-menu.active #menu-items {
          transform: translateY(0) !important;
      }

      #mobile-menu .fixed {
          backdrop-filter: blur(10px);
      }

      #mobile-menu button svg {
          transition: transform 0.3s ease;
      }

      #mobile-menu button:hover svg {
          transform: rotate(90deg);
      }

      .fade-in {
        opacity: 0;
        transform: translateY(20px);
        transition: opacity 0.8s ease-out, transform 0.8s ease-out;
      }
      .fade-in.visible {
        opacity: 1;
        transform: translateY(0);
      }
      .hero-content {
        opacity: 0;
        transform: translateY(20px);
        transition: opacity 0.8s ease-out, transform 0.8s ease-out;
      }
      .hero-content.visible {
        opacity: 1;
        transform: translateY(0);
      }

      .step-block {
        padding: 1rem 0;
        margin-bottom: 1rem;
      }

      .steps-container {
        position: relative;
        display: flex;
        flex-direction: column;
        gap: 1rem;
      }

      .content-wrapper {
        padding: 2rem;
        border-radius: 2rem;
        width: 100%;
        max-width: 1280px;
        margin: 0 auto;
        background: #F5F5F5;
        border: none;
      }

      .content-wrapper > div {
        width: 100%;
        max-width: 1280px;
        margin: 0 auto;
      }

      .video-container {
        aspect-ratio: 16/9;
        width: 100%;
        max-width: 500px;
        margin: 0 auto;
      }

      .video-container video {
        width: 100%;
        height: 100%;
        object-fit: cover;
        border-radius: 0.75rem;
      }

      /* Regras CSS específicas removidas para permitir que as classes Tailwind funcionem */

      @media (max-width: 768px) {
        .step-block {
          padding: 0.5rem 0;
          margin-bottom: 0.5rem;
        }
        .steps-container {
          gap: 0.5rem;
        }
        .content-wrapper {
          padding: 1rem;
          width: 100%;
          margin: 0;
        }
        .video-container {
          width: 100%;
          margin-bottom: 1.5rem;
        }
        .content-wrapper > div {
          gap: 1.5rem;
        }
        .bg-white {
          padding: 1rem;
        }
        .marquee-container,
        .marquee-wrapper,
        .marquee-content,
        .marquee-track {
          width: 100%;
          max-width: 100vw;
          overflow-x: hidden;
        }
        .campaign-block {
          width: 85vw;
          min-width: 280px;
          margin-right: 1rem;
        }
        .square-block {
          width: 85vw;
          min-width: 280px;
        }
      }

      @keyframes borderPulse {
        0% {
          box-shadow: 0 0 0 0 rgba(147, 51, 234, 0.9);
        }
        70% {
          box-shadow: 0 0 15px 15px rgba(147, 51, 234, 0);
        }
        100% {
          box-shadow: 0 0 0 0 rgba(147, 51, 234, 0);
        }
      }

      .pulse-border {
        animation: borderPulse 2s infinite;
      }

      @keyframes rotate {
        0% {
          transform: rotate(0deg);
        }
        100% {
          transform: rotate(360deg);
        }
      }

      @keyframes gradient {
        0% {
          background-position: 0% 50%;
        }
        50% {
          background-position: 100% 50%;
        }
        100% {
          background-position: 0% 50%;
        }
      }

      .rotating-border {
        position: relative;
        z-index: 0;
        overflow: hidden;
      }

      .rotating-border::before {
        content: '';
        position: absolute;
        z-index: -2;
        inset: -1px;
        background: linear-gradient(60deg, 
          #f79533, 
          #f37055, 
          #ef4e7b, 
          #a166ab, 
          #5073b8, 
          #1098ad, 
          #07b39b, 
          #6fba82
        );
        background-size: 300% 300%;
        animation: gradient 3s ease infinite;
        border-radius: 6px;
      }

      .rotating-border::after {
        content: '';
        position: absolute;
        z-index: -1;
        inset: 1px;
        background: linear-gradient(135deg, #000000, #2d0054);
        border-radius: 4px;
      }

      .resource-card {
        background: #191919;
        border-radius: 1.5rem;
        padding: 2.5rem;
        height: 100%;
        position: relative;
        overflow: hidden;
        border: 1px solid rgba(255, 255, 255, 0.1);
      }

      .resource-card h3 {
        color: white;
        font-size: 1.25rem;
        line-height: 1.2;
        font-weight: 700;
      }

      .resource-card p {
        color: rgba(255, 255, 255, 0.8);
        font-size: 1rem;
        line-height: 1.5;
      }

      @media (min-width: 768px) {
        .resource-card h3 {
          font-size: 1.5rem;
        }
        .resource-card p {
          font-size: 1.125rem;
        }
        .resource-card:hover {
          border-color: rgba(255, 255, 255, 0.2);
        }
      }

      @media (max-width: 767px) {
        .resource-card {
          padding: 2rem;
        }
      }

      @keyframes marquee-left {
        0% {
          transform: translateX(0);
        }
        100% {
          transform: translateX(-50%);
        }
      }

      @keyframes marquee-right {
        0% {
          transform: translateX(-50%);
        }
        100% {
          transform: translateX(0);
        }
      }

      .animate-marquee-right {
        animation: marquee-right 30s linear infinite;
        animation-play-state: paused;
        display: flex;
        min-width: max-content;
      }

      .animate-marquee-left {
        animation: marquee-left 30s linear infinite;
        animation-play-state: paused;
        display: flex;
        min-width: max-content;
      }

      .animate-marquee-right.running,
      .animate-marquee-left.running {
        animation-play-state: running;
      }

      .brand-logo {
        height: 5rem;
        width: 5rem;
        object-fit: contain;
        transition: transform 0.3s ease;
        opacity: 0;
        margin: 0 1rem;
      }

      @media (min-width: 768px) {
        .brand-logo {
          height: 9rem;
          width: 9rem;
          margin: 0 2rem;
        }
      }

      .brand-logo.loaded {
        opacity: 1;
      }

      .brand-logo:hover {
        transform: scale(1.2);
        z-index: 10;
      }

      .marquee-container {
        position: relative;
        width: 100%;
        overflow: hidden;
        opacity: 0;
        transition: opacity 0.5s ease;
      }

      @media (min-width: 768px) {
        .brand-logo {
          height: 9rem;
          width: 9rem;
          margin: 0 2rem;
        }
      }

      .marquee-track {
        display: flex;
        align-items: center;
      }

      .animate-marquee-left,
      .animate-marquee-right {
        display: flex;
        align-items: center;
      }

      .marquee-container.loaded {
        opacity: 1;
      }

      @keyframes marquee-left {
        0% {
          transform: translateX(0);
        }
        100% {
          transform: translateX(-50%);
        }
      }

      @keyframes marquee-right {
        0% {
          transform: translateX(-50%);
        }
        100% {
          transform: translateX(0);
        }
      }

      .animate-marquee-right {
        animation: marquee-right 30s linear infinite;
        animation-play-state: paused;
        display: flex;
        min-width: max-content;
      }

      .animate-marquee-left {
        animation: marquee-left 30s linear infinite;
        animation-play-state: paused;
        display: flex;
        min-width: max-content;
      }

      .animate-marquee-right.running,
      .animate-marquee-left.running {
        animation-play-state: running;
      }

      /* Novas classes para o marquee de blocos */
      .marquee-wrapper {
        position: relative;
        width: 100%;
        overflow: hidden;
      }

      .marquee-content {
        display: flex;
        gap: 2rem;
        animation: marquee-whatsapp 40s linear infinite;
        min-width: max-content;
      }

      .marquee-content:hover {
        animation-play-state: paused;
      }

      @keyframes marquee-whatsapp {
        0% {
          transform: translateX(0);
        }
        100% {
          transform: translateX(-50%);
        }
      }

      .square-block {
        flex: 0 0 auto;
        width: 280px;
        height: 280px;
        background: #191919;
        border-radius: 1.5rem;
        padding: 2rem;
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        border: 1px solid rgba(255, 255, 255, 0.1);
        transition: border-color 0.3s ease;
      }

      .square-block:hover {
        border-color: rgba(255, 255, 255, 0.2);
      }

      @keyframes scroll {
        from {
          transform: translateX(0);
        }
        to {
          transform: translateX(calc(-100% - 2rem));
        }
      }

      /* Estilo para os blocos de campanha */
      .campaign-block {
        flex: 0 0 auto;
        width: 400px;
        background: #191919;
        border-radius: 1.5rem;
        padding: 2rem;
        margin-right: 2rem;
        border: 1px solid rgba(255, 255, 255, 0.1);
        transition: border-color 0.3s ease;
      }

      .campaign-block:hover {
        border-color: rgba(255, 255, 255, 0.2);
      }

      @media (max-width: 768px) {
        .campaign-block {
          width: 300px;
          padding: 1.5rem;
        }
      }

      @keyframes marquee-campaign {
        0% {
          transform: translateX(0);
        }
        100% {
          transform: translateX(-50%);
        }
      }

      .campaign-block {
        flex: 0 0 400px;
        padding: 2rem;
        background: #191919;
        border-radius: 1rem;
        border: 1px solid rgba(255, 255, 255, 0.1);
        transition: all 0.3s ease;
      }

      .campaign-block:hover {
        border-color: rgba(255, 255, 255, 0.2);
      }

      @media (max-width: 768px) {
        .campaign-block {
          flex: 0 0 300px;
          padding: 1.5rem;
        }
      }
    
.campaigns-marquee {
  overflow: hidden;
  width: 100%;
  position: relative;
  margin-top: 2rem;
}

.campaigns-marquee-track {
  display: flex;
  gap: 2rem;
  animation: campaign-scroll 40s linear infinite;
  width: max-content;
}

@keyframes campaign-scroll {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-50%);
  }
}

.resource-image {
  transition: transform 0.3s ease-in-out;
}

.resource-image:hover {
  transform: scale(1.05);
  z-index: 20;
}

/* Estilos para o seletor de idioma */
#language-selector {
  appearance: none;
  -webkit-appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%236b7280'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M19 9l-7 7-7-7'%3E%3C/path%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 0.5rem center;
  background-size: 1rem;
  padding-right: 2rem;
}

@media (max-width: 768px) {
  .language-container {
    margin-top: 0.5rem;
  }
}
