/* ========================================
   NOVA IDENTIDADE VISUAL - LARANJA #EE7E36
   ======================================== */

:root {
  --primary-orange: #EE7E36;
  --primary-orange-light: #FF9664;
  --primary-orange-dark: #C85A2C;
  --warm-dark: #1a1410;
  --warm-black: #0f0d0a;
  --warm-gray: #2a2420;
  --accent-warm: #D96A3A;
}

/* Hero Section - Novo Gradiente Quente */
.section.home1 {
  background: linear-gradient(135deg, #0f0d0a 0%, #1a1410 50%, #2a2420 100%) !important;
  position: relative;
  overflow: hidden;
}

.section.home1::before {
  content: '';
  position: absolute;
  width: 800px;
  height: 800px;
  background: radial-gradient(circle, rgba(238, 126, 54, 0.15) 0%, transparent 70%);
  top: -200px;
  right: -200px;
  border-radius: 50%;
  pointer-events: none;
  z-index: 0;
}

.section.home1::after {
  content: '';
  position: absolute;
  width: 600px;
  height: 600px;
  background: radial-gradient(circle, rgba(255, 150, 100, 0.08) 0%, transparent 70%);
  bottom: -150px;
  left: -150px;
  border-radius: 50%;
  pointer-events: none;
  z-index: 0;
}

/* Gradientes de Seções */
.section.padding4.relative5 {
  background: linear-gradient(135deg, #1a1410 0%, #2a2420 50%, #1a1410 100%) !important;
  position: relative;
}

.section.padding4.relative5::before {
  content: '';
  position: absolute;
  width: 600px;
  height: 600px;
  background: radial-gradient(circle, rgba(238, 126, 54, 0.12) 0%, transparent 70%);
  top: 10%;
  right: 5%;
  border-radius: 50%;
  pointer-events: none;
  z-index: 0;
}

/* Seção de Performance */
.section.padding3.bg1 {
  background: linear-gradient(180deg, #0f0d0a 0%, #1a1410 50%, #2a2420 100%) !important;
  position: relative;
}

.section.padding3.bg1::before {
  content: '';
  position: absolute;
  width: 700px;
  height: 700px;
  background: radial-gradient(circle, rgba(238, 126, 54, 0.10) 0%, transparent 70%);
  bottom: -200px;
  right: -200px;
  border-radius: 50%;
  pointer-events: none;
  z-index: 0;
}

/* Cards com Glow Sutil */

.card,
.review-card {
  position: relative;
  border: 1px solid rgba(238, 126, 54, 0.2);
  transition: all 0.3s ease;
}

.site-card:hover,
.card:hover,
.review-card:hover {
  border-color: rgba(238, 126, 54, 0.4);
  box-shadow: 0 0 20px rgba(238, 126, 54, 0.15);
}

/* Vídeos - Glow Sutil */
.w-video,
.phone__video,
.review-video {
  border-color: rgba(238, 126, 54, 0.2);
  transition: all 0.3s ease;
}

.w-video:hover,
.phone__video:hover,
.review-video:hover {
  box-shadow: 0 0 30px rgba(238, 126, 54, 0.2);
}

/* Botões com Nova Cor */
.w-button,
button {
  background-color: #EE7E36 !important;
  transition: all 0.3s ease;
}

.w-button:hover,
button:hover {
  background-color: #C85A2C !important;
  box-shadow: 0 8px 24px rgba(238, 126, 54, 0.25);
}

/* Links com Destaque */
a {
  color: #EE7E36;
  transition: all 0.3s ease;
}

a:hover {
  color: #FF9664;
}

/* Orbita com Nova Cor */
.orbita3 {
  background: linear-gradient(135deg, #1a1410 0%, #2a2420 100%) !important;
  border: 1px solid rgba(238, 126, 54, 0.1);
}

/* Gradientes em Elementos */
.gradient1 {
  -webkit-text-fill-color: transparent !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
}


/* Seções com Padrão Quente */
.section.padding4.bg2 {
  background: linear-gradient(180deg, #ffffff 0%, #ffffff 100%) !important;
}

/* Efeito de Glow em Elementos Importantes */
.cta-fixed__button,
.ventures-card__button {
  background-color: #EE7E36 !important;
  box-shadow: 0 0 20px rgba(238, 126, 54, 0.3);
  transition: all 0.3s ease;
}

.cta-fixed__button:hover,
.ventures-card__button:hover {
  background-color: #C85A2C !important;
  box-shadow: 0 0 30px rgba(238, 126, 54, 0.4);
}

/* Overlay Sutil para Vídeos (se necessário) */
.video-overlay {
  background: radial-gradient(circle at center, rgba(238, 126, 54, 0.05) 0%, transparent 70%);
  pointer-events: none;
}

/* Shapes Abstratos */
.abstract-shape {
  background: linear-gradient(135deg, rgba(238, 126, 54, 0.1) 0%, rgba(255, 150, 100, 0.05) 100%);
}

/* Logo Size Constraints — 129×48 */
.header__logo__image {
  width: 129px;
  height: 48px;
}

.menu-mobile__logo__image {
  width: 129px;
  height: 48px;
}

.footer-social__logo {
  width: 129px;
  height: 48px;
}

/* Recolorir TODOS os ícones para laranja #EE7E36 */
.auto-card__icon,
.auto-card__icon.tech,
.creator-card__icon,
.valores-card__icon,
.oportunidades-card__icon,
.alem-card__icon,
.developer-card__icon,
.number-card__icon,
.highlight__icon {
  filter: sepia(1) saturate(5) hue-rotate(-15deg) brightness(1.1);
}

/* ========================================
   NOVO FORMULÁRIO DE LEADS — REDESIGN
   ======================================== */

/* --- Animações Globais --- */
@keyframes fadeInUp {
  from {
    opacity: 0;
    transform: translateY(30px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes fadeInScale {
  from {
    opacity: 0;
    transform: translate(-50%, -50%) scale(0.5);
  }

  to {
    opacity: 1;
    transform: translate(-50%, -50%) scale(1);
  }
}

@keyframes slideInRight {
  from {
    opacity: 0;
    transform: translateX(40px);
  }

  to {
    opacity: 1;
    transform: translateX(0);
  }
}



@keyframes spin {
  to {
    transform: rotate(360deg);
  }
}

@keyframes successPop {
  0% {
    transform: scale(0);
    opacity: 0;
  }

  60% {
    transform: scale(1.1);
    opacity: 1;
  }

  100% {
    transform: scale(1);
  }
}

@keyframes progressFill {
  from {
    width: 0%;
  }
}

@keyframes glowPulse {

  0%,
  100% {
    box-shadow: 0 0 20px rgba(238, 126, 54, 0.3);
  }

  50% {
    box-shadow: 0 0 40px rgba(238, 126, 54, 0.6);
  }
}

@keyframes floatBg {

  0%,
  100% {
    transform: translateY(0) rotate(0deg);
  }

  50% {
    transform: translateY(-20px) rotate(5deg);
  }
}

/* --- Overlay --- */
.lp-overlay {
  position: fixed;
  inset: 0;
  background: rgba(15, 13, 10, 0.80);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  z-index: 9998;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.4s ease, visibility 0.4s ease;
}

.lp-overlay.active {
  opacity: 1;
  visibility: visible;
}

/* --- Modal Container --- */
.lp-modal {
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) scale(0.92);
  z-index: 9999;
  width: 90%;
  max-width: 920px;
  max-height: 92vh;
  overflow-y: auto;
  background: linear-gradient(135deg, rgba(20, 18, 16, 0.85) 0%, rgba(30, 26, 22, 0.9) 50%, rgba(42, 36, 32, 0.85) 100%);
  backdrop-filter: blur(24px);
  -webkit-backdrop-filter: blur(24px);
  border: 1px solid rgba(238, 126, 54, 0.3);
  border-radius: 20px;
  box-shadow: 0 40px 100px rgba(0, 0, 0, 0.8), 0 0 0 1px rgba(255, 255, 255, 0.05), inset 0 1px 0 rgba(255, 255, 255, 0.1);
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.4s ease, transform 0s 0.4s, visibility 0.4s ease;
  scrollbar-width: thin;
  scrollbar-color: rgba(238, 126, 54, 0.3) transparent;
}

.lp-modal::-webkit-scrollbar {
  width: 4px;
}

.lp-modal::-webkit-scrollbar-track {
  background: transparent;
}

.lp-modal::-webkit-scrollbar-thumb {
  background: rgba(238, 126, 54, 0.3);
  border-radius: 2px;
}

.lp-modal.active {
  opacity: 1;
  visibility: visible;
  transform: translate(-50%, -50%) scale(1);
  animation: fadeInScale 0.4s cubic-bezier(0.34, 1.56, 0.64, 1);
  transition: opacity 0.3s ease, visibility 0.3s ease;
}



/* --- Progress Bar --- */
.lp-progress {
  position: sticky;
  top: 0;
  height: 4px;
  background: rgba(255, 255, 255, 0.06);
  border-radius: 20px 20px 0 0;
  overflow: hidden;
  z-index: 10;
}

.lp-progress__bar {
  height: 100%;
  background: linear-gradient(90deg, #EE7E36, #FFCE85);
  border-radius: 20px;
  width: 0%;
  transition: width 0.5s cubic-bezier(0.34, 1.56, 0.64, 1);
  box-shadow: 0 0 15px rgba(238, 126, 54, 0.8), 0 0 5px rgba(255, 206, 133, 0.6);
}

/* --- Layout Interno --- */
.lp-modal__inner {
  display: grid;
  grid-template-columns: 1fr 1.1fr;
  min-height: 520px;
}

/* --- Lado Decorativo (esquerda) --- */
.lp-modal__deco {
  background: linear-gradient(145deg, #EE7E36 0%, #C85A2C 60%, #8B3A1F 100%);
  border-radius: 18px 0 0 18px;
  padding: 48px 36px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  position: relative;
  overflow: hidden;
}

.lp-modal__deco::before {
  content: '';
  position: absolute;
  width: 320px;
  height: 320px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.08);
  top: -80px;
  right: -80px;
  animation: floatBg 8s ease-in-out infinite;
}

.lp-modal__deco::after {
  content: '';
  position: absolute;
  width: 200px;
  height: 200px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.05);
  bottom: -60px;
  left: -60px;
  animation: floatBg 10s ease-in-out infinite reverse;
}

.lp-deco__badge {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: rgba(255, 255, 255, 0.15);
  backdrop-filter: blur(4px);
  border: 1px solid rgba(255, 255, 255, 0.2);
  border-radius: 100px;
  padding: 6px 16px;
  font-size: 12px;
  font-weight: 600;
  color: #fff;
  letter-spacing: 0.5px;
  width: fit-content;
  animation: fadeInUp 0.6s ease both;
}

.lp-deco__badge-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #fff;
  animation: glowPulse 2s ease infinite;
}

.lp-deco__title {
  font-size: clamp(24px, 3vw, 32px);
  font-weight: 800;
  color: #fff;
  line-height: 1.2;
  margin: 0;
  animation: fadeInUp 0.6s 0.1s ease both;
}

.lp-deco__title span {
  display: block;
  color: rgba(255, 255, 255, 0.6);
  font-size: 0.6em;
  font-weight: 400;
  margin-top: 8px;
}

.lp-deco__items {
  display: flex;
  flex-direction: column;
  gap: 16px;
  position: relative;
  z-index: 1;
  animation: fadeInUp 0.6s 0.2s ease both;
}

.lp-deco__item {
  display: flex;
  align-items: center;
  gap: 12px;
  color: rgba(255, 255, 255, 0.9);
  font-size: 14px;
  font-weight: 500;
}

.lp-deco__item-icon {
  width: 36px;
  height: 36px;
  background: rgba(255, 255, 255, 0.15);
  border-radius: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 16px;
  flex-shrink: 0;
}

.lp-deco__footer {
  color: rgba(255, 255, 255, 0.5);
  font-size: 11px;
  position: relative;
  z-index: 1;
  animation: fadeInUp 0.6s 0.3s ease both;
}

/* --- Lado do Formulário (direita) --- */
.lp-modal__form-wrap {
  padding: 40px 30px 44px;
  display: flex;
  flex-direction: column;
  gap: 8px;
  position: relative;
}

.lp-modal__close {
  position: absolute;
  top: 16px;
  right: 20px;
  width: 32px;
  height: 32px;
  background: rgba(255, 255, 255, 0.06);
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 50%;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.2s ease;
  color: rgba(255, 255, 255, 0.5);
  font-size: 16px;
  line-height: 1;
  text-decoration: none;
}

.lp-modal__close:hover {
  background: rgba(238, 126, 54, 0.15);
  border-color: rgba(238, 126, 54, 0.4);
  color: #EE7E36;
}

.lp-form__title {
  font-size: 20px;
  font-weight: 700;
  color: #fff;
  margin: 0 0 4px;
  animation: fadeInUp 0.5s 0.1s ease both;
}

.lp-form__subtitle {
  font-size: 13px;
  color: rgba(255, 255, 255, 0.45);
  margin: 0 0 20px;
  animation: fadeInUp 0.5s 0.15s ease both;
}

/* --- Grid dos campos --- */
.lp-form__grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0 16px;
}

.lp-form__grid .lp-field--full {
  grid-column: 1 / -1;
}

/* --- Campo com Floating Label --- */
.lp-field {
  position: relative;
  margin-bottom: 18px;
  animation: fadeInUp 0.5s ease both;
}

.lp-field:nth-child(1) {
  animation-delay: 0.15s;
}

.lp-field:nth-child(2) {
  animation-delay: 0.20s;
}

.lp-field:nth-child(3) {
  animation-delay: 0.25s;
}

.lp-field:nth-child(4) {
  animation-delay: 0.30s;
}

.lp-field:nth-child(5) {
  animation-delay: 0.35s;
}

.lp-field:nth-child(6) {
  animation-delay: 0.40s;
}

.lp-field__label {
  position: absolute;
  left: 14px;
  top: 50%;
  transform: translateY(-50%);
  font-size: 13px;
  color: rgba(255, 255, 255, 0.4);
  pointer-events: none;
  transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);
  background: transparent;
  padding: 0 4px;
  font-weight: 500;
  z-index: 2;
}

.lp-field__input,
.lp-field__select {
  width: 100%;
  background: rgba(255, 255, 255, 0.03);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  border: 1.5px solid rgba(255, 255, 255, 0.08);
  border-radius: 12px;
  color: #fff;
  font-size: 14px;
  font-family: inherit;
  padding: 18px 14px 8px;
  outline: none;
  transition: all 0.3s ease;
  height: 54px;
  -webkit-appearance: none;
  appearance: none;
}

.lp-field__input:hover,
.lp-field__select:hover {
  background: rgba(255, 255, 255, 0.06);
  border-color: rgba(238, 126, 54, 0.3);
}

.lp-field__select {
  cursor: pointer;
  background-image: url("data:image/svg+xml,%3Csvg width='12' height='8' viewBox='0 0 12 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1L6 7L11 1' stroke='rgba(255,255,255,0.4)' stroke-width='1.5' stroke-linecap='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 14px center;
  padding-right: 36px;
}

.lp-field__select option {
  background: #1e1a16;
  color: #fff;
}

.lp-field__input:focus,
.lp-field__select:focus {
  border-color: rgba(238, 126, 54, 0.6);
  background: rgba(238, 126, 54, 0.06);
  box-shadow: 0 0 0 3px rgba(238, 126, 54, 0.12);
}

/* Floating label — active state */
.lp-field__input:not(:placeholder-shown)~.lp-field__label,
.lp-field__input:focus~.lp-field__label,
.lp-field__select.has-value~.lp-field__label,
.lp-field__select:focus~.lp-field__label {
  top: 10px;
  transform: translateY(0);
  font-size: 10px;
  color: #EE7E36;
  font-weight: 600;
  letter-spacing: 0.3px;
}

/* Erro */
.lp-field.has-error .lp-field__input,
.lp-field.has-error .lp-field__select {
  border-color: #ff4d4d;
  animation: shakeX 0.4s ease;
}

.lp-field__error {
  font-size: 11px;
  color: #ff6b6b;
  margin-top: 4px;
  display: none;
  padding-left: 4px;
}

.lp-field.has-error .lp-field__error {
  display: block;
}

/* --- Botão de Envio Premium --- */
.lp-form__submit {
  width: 100%;
  height: 54px;
  background: linear-gradient(135deg, #EE7E36 0%, #FF9664 50%, #EE7E36 100%);
  background-size: 200% auto;
  border: none;
  border-radius: 12px;
  color: #fff;
  font-size: 15px;
  font-weight: 700;
  font-family: inherit;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  transition: all 0.4s cubic-bezier(0.25, 1, 0.5, 1);
  position: relative;
  overflow: hidden;
  margin-top: 4px;
  animation: fadeInUp 0.5s 0.45s ease both, gradientSweep 4s linear infinite;
  letter-spacing: 0.3px;
  box-shadow: 0 8px 20px rgba(238, 126, 54, 0.3), inset 0 1px 0 rgba(255, 255, 255, 0.3);
}

@keyframes gradientSweep {
  0% {
    background-position: 0% center;
  }

  100% {
    background-position: 200% center;
  }
}

.lp-form__submit::before {
  content: '';
  position: absolute;
  top: 0;
  left: -100%;
  width: 50%;
  height: 100%;
  background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.4), transparent);
  transform: skewX(-20deg);
  animation: shine 3s infinite;
}

@keyframes shine {
  0% {
    left: -100%;
  }

  20% {
    left: 200%;
  }

  100% {
    left: 200%;
  }
}

.lp-form__submit:hover {
  transform: translateY(-3px) scale(1.02);
  box-shadow: 0 15px 35px rgba(238, 126, 54, 0.5), inset 0 1px 0 rgba(255, 255, 255, 0.4);
}

.lp-form__submit:active {
  transform: translateY(0) scale(0.98);
}

.lp-form__submit:disabled {
  opacity: 0.7;
  cursor: not-allowed;
  transform: none;
  animation: none;
  background: #555;
  box-shadow: none;
}

.lp-submit__spinner {
  width: 18px;
  height: 18px;
  border: 2px solid rgba(255, 255, 255, 0.3);
  border-top-color: #fff;
  border-radius: 50%;
  animation: spin 0.7s linear infinite;
  display: none;
}

.lp-form__submit.loading .lp-submit__text {
  display: none;
}

.lp-form__submit.loading .lp-submit__spinner {
  display: block;
}

.lp-form__submit.loading .lp-submit__arrow {
  display: none;
}

/* --- Estado de Sucesso --- */
.lp-success {
  display: none;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: 48px 32px;
  gap: 20px;
  animation: fadeInUp 0.5s ease;
}

.lp-success.active {
  display: flex;
}

.lp-success__icon {
  width: 72px;
  height: 72px;
  background: linear-gradient(135deg, #EE7E36, #FF9664);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 32px;
  animation: successPop 0.5s cubic-bezier(0.34, 1.56, 0.64, 1) both;
  box-shadow: 0 0 40px rgba(238, 126, 54, 0.5);
}

.lp-success__title {
  font-size: 22px;
  font-weight: 800;
  color: #fff;
  margin: 0;
}

.lp-success__text {
  font-size: 14px;
  color: rgba(255, 255, 255, 0.55);
  margin: 0;
  max-width: 280px;
  line-height: 1.6;
}

.lp-success__close {
  background: linear-gradient(135deg, #EE7E36, #FF9664);
  border: none;
  border-radius: 10px;
  color: #fff;
  font-size: 14px;
  font-weight: 600;
  padding: 12px 28px;
  cursor: pointer;
  font-family: inherit;
  transition: all 0.3s ease;
  margin-top: 8px;
}

.lp-success__close:hover {
  box-shadow: 0 8px 24px rgba(238, 126, 54, 0.4);
  transform: translateY(-2px);
}

/* --- Privacy Note --- */
.lp-form__privacy {
  text-align: center;
  font-size: 11px;
  color: rgba(255, 255, 255, 0.25);
  margin-top: 12px;
  line-height: 1.5;
  animation: fadeInUp 0.5s 0.5s ease both;
}

/* ========================================
   RESPONSIVO MOBILE
   ======================================== */
@media (max-width: 768px) {
  .lp-modal {
    width: 95%;
    max-height: 95vh;
    border-radius: 16px;
  }

  .lp-modal__inner {
    grid-template-columns: 1fr;
    min-height: auto;
  }

  .lp-modal__deco {
    border-radius: 14px 14px 0 0;
    padding: 28px 24px;
    min-height: auto;
  }

  .lp-deco__items {
    display: none;
  }

  .lp-deco__title {
    font-size: 20px;
  }

  .lp-modal__form-wrap {
    padding: 28px 24px 32px;
  }

  .lp-form__grid {
    grid-template-columns: 1fr;
  }

  .lp-form__grid .lp-field--full {
    grid-column: 1;
  }
}

@media (max-width: 480px) {
  .lp-modal {
    width: 100%;
    border-radius: 16px 16px 0 0;
    top: auto;
    bottom: 0;
    transform: translate(-50%, 0) scale(1);
  }

  .lp-modal.active {
    transform: translate(-50%, 0) scale(1);
  }

  .lp-modal__form-wrap {
    padding: 24px 20px 28px;
  }
}

/* ========================================
   SITE CARDS REDESIGN
   ======================================== */

.site-card {
  background-color: #fff;
  border: 1px solid rgba(187, 187, 187, 0.744);
  border-radius: 12px;
  overflow: hidden;
  transition: transform 0.3s ease, border-color 0.3s ease, box-shadow 0.3s ease;
  height: 100%;
}

.site-card:hover {
  transform: translateY(-8px);
  border-color: rgba(232, 182, 150, 0.677);
  box-shadow: 0 8px 10px rgba(0, 0, 0, 0.3), 0 0 20px rgba(238, 126, 54, 0.1);
}

.site-card__image {
  width: 100% !important;
  transition: transform 0.5s ease;
}

.site-card:hover .site-card__image {
  transform: scale(1.05);
}

.site-card__content {
  padding: 24px 20px;
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.site-card__title {
  color: #1b1b1b;
  font-size: 22px;
  font-weight: 600;
  line-height: 1.3;
  margin: 0;
  background: linear-gradient(90deg, #232323 0%, #FF9664 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}

.site-card__text {
  color: rgba(63, 63, 63, 0.7);
  font-size: 15px;
  line-height: 1.6;
  margin: 0;
}

/* ========================================
   PASSANTE (CARROSSEL DE LOGOS)
   ======================================== */
.section.home2 {
  padding: 24px 0 !important;
  overflow: hidden !important;
}

/* ========================================
   MARQUEE INFINITO — PASSANTE
   ======================================== */
@keyframes marquee-ltr {
  0% {
    transform: translateX(-50%);
  }

  100% {
    transform: translateX(0%);
  }
}

.marquee-passante {
  width: 100%;
  overflow: hidden;
  /* Fade nas bordas */
  -webkit-mask-image: linear-gradient(to right,
      transparent 0%,
      black 12%,
      black 88%,
      transparent 100%);
  mask-image: linear-gradient(to right,
      transparent 0%,
      black 12%,
      black 88%,
      transparent 100%);
}

.marquee-track {
  display: flex;
  width: max-content;
  animation: marquee-ltr 28s linear infinite;
}

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

.marquee-group {
  display: flex;
  align-items: center;
  flex-shrink: 0;
}

.marquee-item {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 48px;
}

.marquee-logo {
  height: 96px;
  width: auto;
  max-width: 200px;
  object-fit: contain;
  opacity: 0.75;
  filter: grayscale(30%);
  transition: opacity 0.3s ease, filter 0.3s ease, transform 0.3s ease;
}

.marquee-logo:hover {
  opacity: 1;
  filter: grayscale(0%);
  transform: scale(1.08);
}

.passante-slide__image {
  max-height: 100px !important;
  width: auto !important;
  max-width: 100px !important;
  object-fit: contain !important;
  opacity: 0.85;
}

.passante-slide.swiper-slide {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin-right: 48px !important;
}


/* Card base */
/* Card base */
.swiper-slide.case-slide {
  display: flex !important;
  flex-direction: column !important;
  border: 1px solid rgba(238, 126, 54, 0.15) !important;
  border-radius: 16px !important;
  padding: 20px !important;
  background: linear-gradient(160deg, #1a1410 0%, #141210 100%) !important;
  transition: border-color 0.3s ease, box-shadow 0.3s ease !important;
}

.swiper-slide.case-slide:hover {
  border-color: rgba(238, 126, 54, 0.4) !important;
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.4), 0 0 20px rgba(238, 126, 54, 0.08) !important;
}

/* Cabeçalho do card */
.case-card__hero {
  align-items: center !important;
  margin-bottom: 12px !important;
}

.case-card__hero-title {
  font-size: 14px !important;
  font-weight: 700 !important;
  line-height: 1.3 !important;
  letter-spacing: 0.5px !important;
  text-transform: uppercase !important;
  color: #fff !important;
  flex: 1 !important;
  padding-right: 10px !important;
}

/* Badge da categoria */
.case-card__hero-mod {
  border: 1px solid rgba(238, 126, 54, 0.3) !important;
  background: rgba(238, 126, 54, 0.08) !important;
  border-radius: 99px !important;
  padding: 4px 10px !important;
  white-space: nowrap !important;
  flex-shrink: 0 !important;
}

.case-card__hero-mod__text {
  font-size: 12px !important;
  color: rgba(255, 255, 255, 0.85) !important;
}

/* Imagem uniforme */
.case-card__image {
  width: 100% !important;
  height: 190px !important;
  object-fit: cover !important;
  border-radius: 10px !important;
  display: block !important;
}

/* Descrição com altura mínima para uniformidade */
.case-card__hero-desc {
  color: rgba(255, 255, 255, 0.55) !important;
  font-size: 13px !important;
  line-height: 1.6 !important;
  min-height: 48px !important;
  margin-top: 12px !important;
  margin-bottom: 12px !important;
  padding-top: 0 !important;
  /* Remove os <br><br>&zwj; extras visualmente */
  display: -webkit-box !important;
  -webkit-line-clamp: 3 !important;
  line-clamp: 3 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
}

/* Linha separadora antes das métricas */
.case-card__number {
  margin-top: auto !important;
  padding-top: 12px !important;
  border-top: 1px solid rgba(255, 255, 255, 0.06) !important;
  gap: 10px !important;
}

/* Boxes de métricas */
.case-card__number__content {
  background: rgba(238, 126, 54, 0.06) !important;
  border: 1px solid rgba(238, 126, 54, 0.15) !important;
  border-radius: 10px !important;
  padding: 12px 10px !important;
  flex: 1 !important;
  width: auto !important;
}

.case-card__number-big {
  font-size: 22px !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
  background: linear-gradient(135deg, #EE7E36, #FF9664) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
}

.case-card__number-desc {
  font-size: 11px !important;
  color: rgba(255, 255, 255, 0.45) !important;
  margin-top: 2px !important;
  text-align: center !important;
}