    .has-fixed-header{padding-top:calc(var(--ab-header-h) + 10px);}  
    /* Hero */
    @keyframes slideUpHero {
      from { opacity: 0; transform: translateY(30px); }
      to { opacity: 1; transform: translateY(0); }
    }
    
    /* Carrossel Vertical Infinito */
    @keyframes scrollUp1 {
      0% { transform: translateY(0); }
      100% { transform: translateY(-100%); }
    }
    @keyframes scrollUp2 {
      0% { transform: translateY(0); }
      100% { transform: translateY(-100%); }
    }
    @keyframes scrollUp3 {
      0% { transform: translateY(0); }
      100% { transform: translateY(-100%); }
    }
    
    .vertical-carousel-container {
      display: flex;
      gap: 12px;
      max-width: 800px;
      margin: 0 auto;
      overflow: hidden;
      height: 500px;
      padding: 0 20px;
    }
    
    .vertical-column {
      flex: 1;
      display: flex;
      flex-direction: column;
      gap: 12px;
      overflow: hidden;
      max-width: 260px;
    }
    
    .vertical-column-track {
      display: flex;
      flex-direction: column;
      gap: 12px;
      animation-timing-function: linear;
      animation-iteration-count: infinite;
    }
    
    .verticalcolumnone .vertical-column-track {
      animation: scrollUp1 40s linear infinite;
    }
    
    .verticalcolumntwo .vertical-column-track {
      animation: scrollUp2 45s linear infinite;
    }
    
    .verticalcolumnthree .vertical-column-track {
      animation: scrollUp3 42s linear infinite;
    }
    
    /* Carrossel de Experiências (fade automático) */
    @keyframes experiencesFade {
      0%, 100% { opacity: 0; }
      2%, 48% { opacity: 1; }
      50%, 98% { opacity: 0; }
    }
    
    .experiences-carousel-track {
      position: relative;
      width: 100%;
      height: 100%;
    }
    
    .experiences-carousel-slide {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      opacity: 0;
      animation: experiencesFade 8s ease-in-out infinite;
    }
    
    .experiences-carousel-slide:nth-child(1) {
      animation-delay: 0s;
    }
    
    .experiences-carousel-slide:nth-child(2) {
      animation-delay: 4s;
    }
    
    .experiences-carousel-slide img {
      width: 100%;
      height: 100%;
      object-fit: cover;
    }
    
    /* Seção Experiências Achei Barato - CSS Aprimorado */
    .experiences-section {
      position: relative;
      padding: 60px 20px;
    }
    @media (min-width: 1024px) {
      .experiences-section {
        padding: 80px 40px;
      }
    }
    @media (min-width: 1280px) {
      .experiences-section {
        padding: 100px 40px;
      }
    }
    
    .experiences-section::before {
      content: '';
      position: absolute;
      top: 0;
      left: 50%;
      transform: translateX(-50%);
      width: 100%;
      max-width: 1400px;
      height: 100%;
      background: linear-gradient(135deg, rgba(254, 242, 242, 0.5) 0%, rgba(255, 255, 255, 0) 100%);
      border-radius: 32px;
      z-index: -1;
    }
    
    .experiences-title {
      font-family: 'Poppins', sans-serif;
      letter-spacing: -0.025em;
      line-height: 1.15;
    }
    @media (min-width: 1024px) {
      .experiences-title {
        font-size: 3.5rem !important;
      }
    }
    @media (min-width: 1280px) {
      .experiences-title {
        font-size: 4rem !important;
      }
    }
    
    .experiences-gradient-text {
      background: linear-gradient(135deg, #c42729 0%, #e33436 50%, #ff4d4f 100%);
      -webkit-background-clip: text;
      background-clip: text;
      -webkit-text-fill-color: transparent;
      animation: gradientShimmer 3s ease-in-out infinite;
    }
    
    @keyframes gradientShimmer {
      0%, 100% { background-position: 0% 50%; }
      50% { background-position: 100% 50%; }
    }
    
    .stat-item {
      position: relative;
      overflow: hidden;
    }
    
    .stat-item::before {
      content: '';
      position: absolute;
      top: -50%;
      left: -50%;
      width: 200%;
      height: 200%;
      background: linear-gradient(
        45deg,
        transparent 30%,
        rgba(255, 255, 255, 0.3) 50%,
        transparent 70%
      );
      transform: rotate(45deg);
      animation: shine 3s infinite;
    }
    
    @keyframes shine {
      0% { transform: translateX(-100%) translateY(-100%) rotate(45deg); }
      100% { transform: translateX(100%) translateY(100%) rotate(45deg); }
    }
    
    /* ================= Ícones Profissionais Lucide ================= */
    [data-lucide] {
      stroke-width: 1.8;
    }
    
    .benefits-card [data-lucide] {
      transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    }
    
    .benefits-card:hover [data-lucide] {
      transform: scale(1.1);
    }
    
    /* Container de ícone com efeito glass */
    .icon-container-pro {
      position: relative;
      display: flex;
      align-items: center;
      justify-content: center;
      width: 56px;
      height: 56px;
      border-radius: 16px;
      background: linear-gradient(145deg, rgba(254, 226, 226, 0.8) 0%, rgba(254, 202, 202, 0.6) 100%);
      backdrop-filter: blur(8px);
      box-shadow: 
        0 4px 16px rgba(196, 39, 41, 0.12),
        inset 0 1px 0 rgba(255, 255, 255, 0.6);
      transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    }
    
    .icon-container-pro::before {
      content: '';
      position: absolute;
      inset: 0;
      border-radius: 16px;
      padding: 1px;
      background: linear-gradient(145deg, rgba(255, 255, 255, 0.5), transparent);
      -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
      mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
      -webkit-mask-composite: xor;
      mask-composite: exclude;
    }
    
    .group:hover .icon-container-pro,
    .benefits-card:hover .icon-container-pro {
      background: linear-gradient(145deg, var(--primary) 0%, var(--primary-600) 100%);
      box-shadow: 
        0 8px 24px rgba(196, 39, 41, 0.25),
        inset 0 1px 0 rgba(255, 255, 255, 0.2);
      transform: translateY(-2px);
    }
    /* ================= Fim Ícones Profissionais ================= */
    
    .stat-icon {
      animation: pulse-soft 2s ease-in-out infinite;
    }
    
    @keyframes pulse-soft {
      0%, 100% { transform: scale(1); }
      50% { transform: scale(1.05); }
    }
    
    .experiences-image-wrapper {
      position: relative;
    }
    
    @media (max-width: 768px) {
      .experiences-section {
        padding: 40px 16px;
      }
      .experiences-title {
        font-size: 2.5rem;
      }
      .experiences-stats {
        grid-template-columns: 1fr;
      }
    }
    
    .carousel-image-item {
      border-radius: 16px;
      overflow: hidden;
      box-shadow: 0 4px 12px rgba(0,0,0,0.1);
      flex-shrink: 0;
    }
    
    .carousel-image-item img {
      width: 100%;
      height: 180px;
      display: block;
      object-fit: cover;
    }
    
    /* ================= Responsividade Tablet/Desktop ================= */
    
    /* Tablet (768px - 1024px) */
    @media (min-width: 768px) and (max-width: 1024px) {
      .vertical-carousel-container {
        max-width: 680px;
        height: 420px;
        gap: 10px;
      }
      
      .vertical-column {
        max-width: 220px;
      }
      
      .carousel-image-item img {
        height: 150px;
      }
      
      .experiences-section {
        padding: 40px 24px;
      }
      
      .experiences-section .grid {
        gap: 32px;
      }
      
      .experiences-section .grid.md\\:grid-cols-2 {
        grid-template-columns: 1fr;
      }
      
      .experiences-image-wrapper .grid {
        height: 380px !important;
        max-width: 500px;
        margin: 0 auto;
      }
      
      .experiences-title {
        font-size: 2.5rem !important;
        text-align: center;
      }
      
      .experiences-content {
        text-align: center;
      }
      
      .experiences-content .mb-2 {
        display: flex;
        justify-content: center;
      }
    }
    
    /* Desktop pequeno (1024px - 1280px) */
    @media (min-width: 1024px) and (max-width: 1280px) {
      .vertical-carousel-container {
        max-width: 720px;
        height: 450px;
      }
      
      .vertical-column {
        max-width: 230px;
      }
      
      .carousel-image-item img {
        height: 160px;
      }
      
      .experiences-image-wrapper .grid {
        height: 420px !important;
      }
    }
    
    /* Desktop grande (1280px+) */
    @media (min-width: 1280px) {
      .vertical-carousel-container {
        max-width: 920px;
        height: 540px;
        gap: 16px;
      }
      
      .vertical-column {
        max-width: 290px;
      }
      
      .carousel-image-item img {
        height: 200px;
      }
      
      .experiences-image-wrapper .grid {
        height: 480px !important;
      }
    }
    
    /* ================= Fim Responsividade ================= */
    
    @media (max-width: 768px) {
      .vertical-carousel-container {
        height: 400px;
        gap: 8px;
        max-width: 100%;
      }
      .vertical-column {
        gap: 8px;
        max-width: none;
      }
      .vertical-column-track {
        gap: 8px;
      }
      .carousel-image-item img {
        height: 140px;
      }
    }
    
    @keyframes gradientShift {
      0%, 100% { background-position: 0% center; }
      50% { background-position: 100% center; }
    }
    @keyframes fadeInScale {
      from { opacity: 0; transform: scale(0.85); }
      to { opacity: 1; transform: scale(1); }
    }
    @keyframes glow {
      0%, 100% { box-shadow: 0 0 12px rgba(196,39,41,0.3), inset 0 0 12px rgba(196,39,41,0.1); }
      50% { box-shadow: 0 0 20px rgba(196,39,41,0.5), inset 0 0 12px rgba(196,39,41,0.15); }
    }
    @keyframes pulse-soft {
      0%, 100% { opacity: 1; }
      50% { opacity: 0.7; }
    }
    @keyframes shimmer {
      0% { background-position: -1000px 0; }
      100% { background-position: 1000px 0; }
    }
    @keyframes bounce-light {
      0%, 100% { transform: translateY(0); }
      50% { transform: translateY(-4px); }
    }
    /* ===== Estilos do hero alinhados ao principa.html ===== */
    .ofertas-hero-title{font-size:clamp(32px,5.5vw,56px);line-height:1.15;font-weight:800;margin:0;color:#1a1a1a;font-family:Poppins,Inter,system-ui,-apple-system,"Segoe UI",Roboto,Arial;text-align:center;letter-spacing:-0.02em;}
    .ofertas-hero-sub{margin:0 auto;font-size:clamp(17px,4.2vw,24px);max-width:680px;line-height:1.65;color:#6b7280;font-weight:600;font-family:Inter,Poppins,system-ui,-apple-system,"Segoe UI",Roboto,Arial;text-align:center;}
    .highlight,.city-badge{color:var(--primary);font-weight:800;}
    .city-badge{
      color:var(--primary);
      font-weight:700;
      padding:2px 8px;
      border-radius:6px;
      background:rgba(196,39,41,0.1);
      display:inline-block;
    }
    
    /* Tamanhos fixos para mobile - transição suave opcional mantida */
    .hero-section { animation: slideUpHero 0.6s ease-out; }
    
    @media (max-width:420px){
      :root{--ab-header-h:64px;--ab-logo-h:48px;}
      .ofertas-hero-sub{font-size:13px;}
    }
    @media (max-width:380px){ .ofertas-hero-sub{font-size:12px;} }
    @media (max-width:360px){ .ofertas-hero-sub{font-size:12px;} }
    @media (max-width:340px){ .ofertas-hero-sub{font-size:11px;} }
    @media (max-width:320px){ .ofertas-hero-sub{font-size:11px;} }
    
    /* Stories Instagram Style */
    @keyframes fadeInScale {
      from { opacity: 0; transform: scale(0.85); }
      to { opacity: 1; transform: scale(1); }
    }
    @keyframes glow {
      0%, 100% { box-shadow: 0 0 12px rgba(196,39,41,0.3), inset 0 0 12px rgba(196,39,41,0.1); }
      50% { box-shadow: 0 0 20px rgba(196,39,41,0.5), inset 0 0 12px rgba(196,39,41,0.15); }
    }
    .stories-container {
      animation: fadeInScale 0.6s ease-out 0.4s both;
    }
    .story-item {
      cursor: pointer;
      transition: all 0.3s ease;
      display: flex;
      flex-direction: column;
      align-items: center;
      gap: 8px;
    }
    .story-item:hover {
      transform: translateY(-8px);
    }
    .story-item:hover .story-ring {
      box-shadow: 0 8px 24px rgba(196,39,41,0.25);
    }
    .story-ring {
      width: 72px;
      height: 72px;
      border-radius: 50%;
      padding: 2px;
      background: linear-gradient(135deg, #c42729 0%, #ff6b6b 100%);
      display: flex;
      align-items: center;
      justify-content: center;
      transition: all 0.3s ease;
      box-shadow: 0 4px 16px rgba(196,39,41,0.15);
    }
    @media (min-width: 1024px) {
      .story-ring {
        width: 88px;
        height: 88px;
        padding: 3px;
      }
      .stories-wrapper {
        gap: 24px;
        padding: 0 32px;
      }
      .story-name {
        font-size: 14px;
        max-width: 96px;
      }
    }
    .story-ring.viewed {
      background: linear-gradient(135deg, #999999 0%, #cccccc 100%);
      opacity: 0.6;
    }
    .story-avatar {
      width: 100%;
      height: 100%;
      border-radius: 50%;
      background: white;
      display: flex;
      align-items: center;
      justify-content: center;
      overflow: hidden;
    }
    .story-avatar img {
      width: 100%;
      height: 100%;
      object-fit: cover;
    }
    .story-name {
      font-size: 12px;
      font-weight: 600;
      color: #1a1a1a;
      text-align: center;
      max-width: 80px;
      white-space: nowrap;
      overflow: hidden;
      text-overflow: ellipsis;
    }
    
    /* Sections */
    .partners-section,.lead-section{display:flex;justify-content:center;animation:slideUpHero 0.6s ease-out both;}
    .lead-section{animation-delay:0.3s;}
    .partners-section{margin-top:32px;animation-delay:0.2s;}
    .partners-card,.lead-card{
      background:var(--card);
      border-radius:24px;
      padding:28px 24px;
      width:100%;
      max-width:680px;
      box-shadow:0 12px 36px rgba(0,0,0,0.08);
      border: 1px solid rgba(196,39,41,0.05);
      transition:all 0.4s ease;
    }
    .partners-card:hover,.lead-card:hover {
      box-shadow:0 20px 56px rgba(196,39,41,0.1);
      transform:translateY(-4px);
    }    
    .partners-title{
      text-align:center;
      font:800 24px/1.1 Poppins,Inter;
      margin:0 0 8px;
      color:#1a1a1a;
      text-transform:uppercase;
      letter-spacing:1px;
      background: linear-gradient(135deg, #1a1a1a 0%, #4b5563 100%);
      -webkit-background-clip: text;
      -webkit-text-fill-color: transparent;
      background-clip: text;
    }
    .partners-subtitle{
      text-align:center;
      color:#4b5563;
      font-size:14px;
      line-height:1.55;
      margin:0 0 18px;
      font-weight:500;
    }
    .partners-sep{width:140px;height:2px;background:linear-gradient(90deg,transparent,var(--primary),transparent);margin:0 auto 24px;border-radius:999px;opacity:.85;}
  .partner-logo{display:flex;align-items:center;justify-content:center;height:150px;}
  .partner-logo img{max-width:80%;max-height:80%;object-fit:contain;}
    /* Carousel */
    .carousel-container{position:relative;overflow:hidden;border-radius:20px;}
    .carousel-track{display:flex;transition:transform .5s ease;}
    .offer-slide{min-width:100%;display:flex;justify-content:center;padding:0 12px;animation:fadeInScale 0.6s ease-out backwards;}
    .offer-slide:nth-child(1){animation-delay:0.5s;}
    .offer-slide:nth-child(2){animation-delay:0.55s;}
    .offer-slide:nth-child(3){animation-delay:0.6s;}
    .offer-slide:nth-child(n+4){animation-delay:0.65s;}
    .offer-item{
      background: linear-gradient(135deg, #ffffff 0%, #f8f8f8 100%);
      border:2px solid #E5E7EB;
      border-radius:20px;
      width:100%;
      max-width:340px;
      overflow:hidden;
      transition:all 0.35s cubic-bezier(0.34, 1.56, 0.64, 1);
      box-shadow: 0 4px 12px rgba(0,0,0,0.05);
    }
    .offer-item:hover{
      border-color:var(--primary);
      transform:translateY(-8px) scale(1.02);
      box-shadow: 0 12px 32px rgba(196,39,41,0.15);
    } 
    .offer-image{
      height:190px;
      background:linear-gradient(135deg, #F9FAFB 0%, #F3F4F6 100%);
      overflow:hidden;
      position:relative;
    }
    .offer-image::after {
      content: '';
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
      background: linear-gradient(180deg, transparent 0%, rgba(0,0,0,0.05) 100%);
      pointer-events: none;
    }
    .offer-image:not(.partner-logo) img{width:100%;height:100%;object-fit:cover;}
    .offer-image.partner-logo{height:150px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg, #F9FAFB 0%, #F3F4F6 100%);}
    .offer-image.partner-logo img{width:auto;height:auto;max-width:85%;max-height:85%;object-fit:contain;}
    .carousel-controls{display:flex;justify-content:center;align-items:center;gap:24px;margin-top:20px;}
    .carousel-btn{
      background:linear-gradient(135deg, var(--primary) 0%, #ff5555 100%);
      color:#fff;
      border:none;
      width:46px;
      height:46px;
      border-radius:50%;
      display:flex;
      align-items:center;
      justify-content:center;
      font-size:20px;
      cursor:pointer;
      transition:all 0.3s cubic-bezier(0.34, 1.56, 0.64, 1);
      box-shadow: 0 4px 16px rgba(196,39,41,0.2);
      font-weight:bold;
    }
    .carousel-btn:hover{
      background:linear-gradient(135deg, #ff5555 0%, #ff7777 100%);
      transform:scale(1.12);
      box-shadow: 0 8px 24px rgba(196,39,41,0.3);
    }
    .carousel-btn:disabled{
      background:#d1d5db;
      cursor:not-allowed;
      transform:none;
      box-shadow: none;
    }
    .carousel-dots{display:flex;gap:8px;}
    .carousel-dots button{
      width:10px;
      height:10px;
      border-radius:50%;
      background:#d1d5db;
      transition:all 0.3s ease;
      border:none;
      cursor:pointer;
    }
    .carousel-dots button:hover{
      background:#c4b5f9;
    }
    .carousel-dots button.active{
      background:var(--primary);
      transform:scale(1.4);
      box-shadow: 0 0 8px rgba(196,39,41,0.3);
    } 
    .offer-section-counter{
      display:inline-flex;
      align-items:center;
      justify-content:center;
      min-height:36px;
      padding:8px 14px;
      border-radius:999px;
      background:rgba(255,255,255,0.18);
      color:#fff;
      font-size:12px;
      font-weight:800;
      letter-spacing:.08em;
      text-transform:uppercase;
      border:1px solid rgba(255,255,255,0.24);
      backdrop-filter:blur(12px);
    }
    .offer-section-counter--light{
      background:#fff1f2;
      color:#b91c1c;
      border-color:#fecdd3;
    }
    .offer-showcase-shell{
      position:relative;
      overflow:hidden;
      background:#fff;
      border:1px solid #f1f5f9;
    }
    .offer-showcase-shell::before{
      content:"";
      position:absolute;
      inset:0 auto 0 0;
      width:100%;
      height:1px;
      background:linear-gradient(90deg, rgba(226,232,240,0) 0%, rgba(226,232,240,1) 20%, rgba(226,232,240,1) 80%, rgba(226,232,240,0) 100%);
      pointer-events:none;
    }
    .offer-lane-header{
      display:flex;
      align-items:end;
      justify-content:space-between;
      gap:16px;
      margin:0 0 12px;
      flex-wrap:wrap;
    }
    .offer-lane-kicker{
      display:inline-block;
      margin-bottom:6px;
      color:#dc2626;
      font-size:12px;
      font-weight:800;
      letter-spacing:.16em;
      text-transform:uppercase;
    }
    .offer-lane-title{
      margin:0;
      color:#111827;
      font-size:28px;
      line-height:1.05;
      font-weight:900;
    }
    .offers-loading,
    .offers-empty{
      min-height:220px;
      display:flex;
      flex-direction:column;
      align-items:center;
      justify-content:center;
      gap:10px;
      color:#9ca3af;
      font-size:14px;
      text-align:center;
    }
    .offer-featured-grid{
      display:grid;
      grid-template-columns:1fr;
      gap:18px;
    }
    @media (min-width: 768px) {
      .offer-featured-grid{
        grid-template-columns:repeat(2, minmax(0, 1fr));
      }
    }
    .offer-grid{
      display:grid;
      grid-template-columns:1fr;
      gap:18px;
    }
    @media (min-width: 768px) {
      .offer-grid--catalog{
        grid-template-columns:repeat(2, minmax(0, 1fr));
      }
    }
    @media (min-width: 1280px) {
      .offer-grid--catalog{
        grid-template-columns:repeat(3, minmax(0, 1fr));
      }
    }
    .catalog-offer-card{
      background:#fff;
      border:1px solid #e2e8f0;
      border-radius:24px;
      overflow:hidden;
      box-shadow:0 12px 32px rgba(15,23,42,0.06);
      cursor:pointer;
      transition:transform .15s ease, box-shadow .15s ease, border-color .15s ease;
    }
    .catalog-offer-card:hover{
      transform:translateY(-2px);
      box-shadow:0 18px 36px rgba(15,23,42,0.1);
    }
    .catalog-offer-card:focus-visible{
      outline:none;
      border-color:#e33436;
      box-shadow:0 0 0 4px rgba(227,52,54,0.18),0 18px 36px rgba(15,23,42,0.1);
    }
    .catalog-offer-head{
      display:flex;
      justify-content:center;
      margin-bottom:10px;
      min-width:0;
      text-align:center;
    }
    .catalog-merchant-logo{
      position:absolute;
      left:50%;
      bottom:-38px;
      transform:translateX(-50%);
      z-index:3;
      width:92px;
      height:92px;
      border-radius:999px;
      overflow:hidden;
      background:#fff;
      border:5px solid rgba(255,255,255,0.98);
      box-shadow:0 18px 34px rgba(15,23,42,0.22);
      display:flex;
      align-items:center;
      justify-content:center;
      padding:0;
    }
    .catalog-merchant-logo img{
      width:100%;
      height:100%;
      object-fit:cover;
      border-radius:50%;
      display:block;
    }
    .catalog-merchant-logo--fallback{
      background:#e33436;
      color:#fff;
      font-size:24px;
      font-weight:800;
    }
    .catalog-offer-merchant{
      display:inline-flex;
      align-items:center;
      justify-content:center;
      min-height:24px;
      padding:4px 0;
      border-radius:999px;
      color:#4b5563;
      font-size:13px;
      font-weight:800;
      letter-spacing:.08em;
      text-transform:uppercase;
      min-width:0;
    }
    .offer-card-old-price,
    .offer-card-price,
    .offer-card-savings,
    .offer-card-cta{
      font-family:"Poppins",Inter,system-ui,sans-serif;
    }
    .offer-card-old-price{
      color:#9ca3af;
      font-size:15px;
      text-decoration:line-through;
      font-weight:500;
    }
    .offer-card-price--catalog{
      color:#111827;
      font-size:32px;
      line-height:1;
      font-weight:800;
    }
    .offer-card-savings--catalog{
      margin:0;
      color:var(--primary);
      font-size:16px;
      font-weight:800;
    }
    .offer-card-cta{
      display:inline-flex;
      align-items:center;
      justify-content:center;
      width:100%;
      min-height:52px;
      margin-top:16px;
      padding:14px 20px;
      border:none;
      border-radius:14px;
      background:linear-gradient(135deg,#dc2626 0%,#b91c1c 100%);
      color:#fff;
      font-size:15px;
      font-weight:900;
      letter-spacing:.06em;
      text-transform:uppercase;
      cursor:pointer;
      box-shadow:0 4px 18px rgba(220,38,38,0.3);
      transition:transform .15s ease, box-shadow .15s ease;
    }
    .offer-card-cta:hover{
      transform:translateY(-1px);
      box-shadow:0 10px 24px rgba(220,38,38,0.24);
    }
    @media (max-width: 640px){
      .offer-card-price--catalog{font-size:30px;}
    }
    /* Promo carousel (Algumas promocoes ativas) */
    .promo-carousel-wrapper{position:relative;max-width:960px;margin:0 auto;}
    @media (min-width: 1024px) {
      .promo-carousel-wrapper{max-width:1000px;}
    }
    @media (min-width: 1280px) {
      .promo-carousel-wrapper{max-width:1040px;}
    }
    .promo-carousel{position:relative;overflow:hidden;border-radius:24px;}
    .promo-carousel-track{display:flex;transition:transform 0.6s ease-in-out;}
    .promo-slide{flex:0 0 100%;width:100%;}
    .promo-card{
      background:#fff;
      border:1px solid #e2e8f0;
      border-radius:24px;
      overflow:hidden;
      box-shadow:0 18px 45px rgba(15,23,42,0.07);
      width:100%;
      cursor:pointer;
      transition:transform 0.3s ease, box-shadow 0.3s ease;
      position:relative;
    }
    .promo-card:hover{
      transform:translateY(-4px);
      box-shadow:0 24px 50px rgba(15,23,42,0.1);
    }
    @media (min-width: 900px) {
      .promo-card{
        display:grid;
        grid-template-columns:minmax(0, 1fr) 280px;
      }
    }
    .promo-main-panel{
      min-width:0;
    }
    .promo-image-wrapper{position:relative;height:260px;background:#f8fafc;overflow:visible;border-radius:24px 24px 0 0;}
    @media (min-width: 1024px) {
      .promo-image-wrapper{height:300px;}
    }
    @media (min-width: 1280px) {
      .promo-image-wrapper{height:320px;}
    }
    .promo-image-wrapper img{width:100%;height:100%;object-fit:cover;object-position:center;display:block;border-radius:24px 24px 0 0;}
    .promo-badge-top{position:absolute;top:14px;left:14px;background:rgba(255,255,255,0.92);color:#991b1b;font-weight:800;font-size:11px;text-transform:uppercase;padding:7px 12px;border-radius:999px;letter-spacing:0.08em;z-index:2;border:1px solid rgba(255,255,255,0.9);backdrop-filter:blur(10px);}
    .promo-badge-timer{position:absolute;top:12px;right:12px;background:linear-gradient(135deg, #dc2626 0%, #e33436 50%, #ef4444 100%);color:#fff;font-weight:900;font-size:16px;padding:10px 14px;border-radius:16px;z-index:2;box-shadow:0 6px 20px rgba(220,38,38,0.4), 0 0 0 3px rgba(255,255,255,0.3);animation:badge-pulse 2s ease-in-out infinite;letter-spacing:0.3px;border:2px solid rgba(255,255,255,0.9);display:flex;flex-direction:column;align-items:center;gap:2px;min-width:108px;}
    .promo-badge-timer.is-expired{background:linear-gradient(135deg, #6b7280 0%, #9ca3af 100%);box-shadow:0 6px 20px rgba(107,114,128,0.35), 0 0 0 3px rgba(255,255,255,0.25);}
    .promo-timer-label{font-size:10px;letter-spacing:0.8px;text-transform:uppercase;font-weight:800;line-height:1;}
    .promo-timer-value{font-size:20px;font-weight:900;line-height:1;letter-spacing:0.5px;}
    @keyframes badge-pulse{
      0%, 100% { transform: scale(1); box-shadow: 0 6px 20px rgba(220,38,38,0.4), 0 0 0 3px rgba(255,255,255,0.3); }
      50% { transform: scale(1.05); box-shadow: 0 8px 28px rgba(220,38,38,0.6), 0 0 0 4px rgba(255,255,255,0.4); }
    }
    .promo-body{padding:24px 24px 24px;}
    @media (min-width: 1024px) {
      .promo-body{padding:28px 28px 28px;}
    }
    .promo-body--catalog{padding:56px 20px 20px;}
    @media (min-width: 1024px) {
      .promo-body--catalog{padding:58px 22px 24px;}
    }
    .promo-title--catalog{font-size:21px;margin:0 0 6px;}
    .promo-desc--catalog{margin:0 0 14px;display:-webkit-box;line-clamp:2;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
    .promo-prices--catalog{margin-bottom:10px;}
    .promo-meta-row{
      display:flex;
      flex-wrap:wrap;
      gap:8px;
      align-items:center;
      margin:0 0 14px;
    }
    .promo-meta-pill{
      display:inline-flex;
      align-items:center;
      min-height:28px;
      padding:6px 10px;
      border-radius:999px;
      background:#fef2f2;
      color:#b91c1c;
      font-size:11px;
      font-weight:800;
      letter-spacing:.08em;
      text-transform:uppercase;
    }
    .promo-meta-pill--ghost{
      background:#f9fafb;
      color:#6b7280;
      border:1px solid #e5e7eb;
    }
    .promo-title{font-weight:800;color:#111827;font-size:20px;line-height:1.2;margin:0 0 4px;}
    @media (min-width: 1024px) {
      .promo-title{font-size:24px;margin:0 0 8px;}
    }
    .promo-desc{color:#6b7280;font-weight:500;font-size:14px;line-height:1.4;margin:0 0 12px;}
    @media (min-width: 1024px) {
      .promo-desc{font-size:15px;line-height:1.6;margin:0 0 16px;}
    }
    .promo-prices{display:flex;align-items:center;gap:12px;margin-bottom:8px;position:relative;}
    @media (min-width: 1024px) {
      .promo-prices{gap:14px;margin-bottom:10px;}
    }
    .promo-old-price{color:#9ca3af;font-size:14px;text-decoration:line-through;font-weight:500;}
    @media (min-width: 1024px) {
      .promo-old-price{font-size:15px;}
    }
    .promo-new-price{color:#111827;font-size:28px;font-weight:800;line-height:1;opacity:1;}
    @media (min-width: 1024px) {
      .promo-new-price{font-size:32px;}
    }
    .promo-lock-overlay{position:absolute;left:50%;top:50%;transform:translate(-50%, -50%);display:none;flex-direction:column;align-items:center;gap:4px;z-index:10;background:rgba(255,255,255,0.95);padding:8px 16px;border-radius:12px;box-shadow:0 2px 8px rgba(0,0,0,0.1);}
    .promo-lock-icon{width:24px;height:24px;color:#16a34a;}
    .promo-lock-text{font-size:10px;color:#16a34a;font-weight:700;text-transform:uppercase;letter-spacing:0.5px;white-space:nowrap;}
    .promo-savings{color:var(--primary);font-weight:800;font-size:15px;margin:0;opacity:1;}
    @media (min-width: 1024px) {
      .promo-savings{font-size:16px;}
    }
    .promo-sidebar{
      display:flex;
      flex-direction:column;
      gap:14px;
      padding:24px 20px;
      background:#f8fafc;
      border-top:1px solid #e2e8f0;
    }
    @media (min-width: 900px) {
      .promo-sidebar{
        border-top:none;
        border-left:1px solid #e2e8f0;
        padding:28px 22px;
      }
    }
    .promo-sidebar-header{
      display:flex;
      flex-direction:column;
      align-items:flex-start;
      gap:4px;
    }
    .promo-sidebar-kicker{
      color:#111827;
      font-size:11px;
      font-weight:900;
      letter-spacing:.14em;
      text-transform:uppercase;
    }
    .promo-sidebar-caption{
      color:#6b7280;
      font-size:12px;
      font-weight:600;
    }
    .promo-sidebar-list{
      list-style:none;
      margin:0;
      padding:0;
      display:flex;
      flex-direction:column;
      gap:10px;
    }
    .promo-sidebar-item{
      display:flex;
      align-items:flex-start;
      justify-content:space-between;
      gap:12px;
      padding:12px 0;
      border-bottom:1px solid #e2e8f0;
    }
    .promo-sidebar-item:last-child{
      border-bottom:none;
      padding-bottom:0;
    }
    .promo-sidebar-copy{
      display:flex;
      flex-direction:column;
      gap:4px;
      min-width:0;
    }
    .promo-sidebar-merchant{
      color:#b91c1c;
      font-size:10px;
      font-weight:900;
      letter-spacing:.12em;
      text-transform:uppercase;
    }
    .promo-sidebar-title{
      color:#1f2937;
      font-size:13px;
      font-weight:700;
      line-height:1.25;
      display:-webkit-box;
      line-clamp:2;
      -webkit-line-clamp:2;
      -webkit-box-orient:vertical;
      overflow:hidden;
    }
    .promo-sidebar-price{
      color:#111827;
      font-size:13px;
      font-weight:800;
      white-space:nowrap;
    }
    .promo-sidebar-more,
    .promo-sidebar-empty{
      display:flex;
      align-items:center;
      justify-content:flex-start;
      padding:12px 14px;
      border-radius:14px;
      background:#fff;
      border:1px solid #e2e8f0;
      color:#6b7280;
      font-size:13px;
      font-weight:700;
      line-height:1.4;
    }
    .promo-cta-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;margin-top:14px;padding:14px 20px;background:linear-gradient(135deg,#dc2626 0%,#b91c1c 100%);color:#fff;font-size:15px;font-weight:900;letter-spacing:0.06em;text-transform:uppercase;border:none;border-radius:14px;cursor:pointer;box-shadow:0 4px 18px rgba(220,38,38,0.45);transition:transform 0.15s ease,box-shadow 0.15s ease;-webkit-tap-highlight-color:transparent;}
    @media (min-width: 1024px) {
      .promo-cta-btn{padding:16px 24px;font-size:15px;margin-top:16px;}
    }
    .promo-cta-btn:hover{transform:translateY(-2px);box-shadow:0 6px 24px rgba(220,38,38,0.55);}
    .promo-cta-btn:active{transform:translateY(0);box-shadow:0 2px 10px rgba(220,38,38,0.35);}
    .promo-dots{display:flex;justify-content:center;gap:8px;margin-top:16px;}
    .promo-dot{width:8px;height:8px;border-radius:50%;background:#d1d5db;border:none;cursor:pointer;transition:all 0.3s ease;padding:0;}
    .promo-dot:hover{background:#9ca3af;}
    .promo-dot.active{background:var(--primary);width:24px;border-radius:4px;}
    /* Navigation buttons */
    .promo-nav-btn{position:absolute;top:130px;transform:translateY(-50%);width:40px;height:40px;background:rgba(255,255,255,0.95);border:none;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px rgba(0,0,0,0.15);transition:all 0.3s ease;z-index:10;-webkit-tap-highlight-color:transparent;}
    .promo-nav-btn:hover{background:#fff;box-shadow:0 6px 16px rgba(0,0,0,0.2);transform:translateY(-50%) scale(1.1);}
    .promo-nav-btn:active{transform:translateY(-50%) scale(0.95);}
    .promo-nav-btn svg{width:20px;height:20px;color:#111827;}
    .promo-nav-prev{left:-50px;}
    .promo-nav-next{right:-50px;}
    @media (min-width: 1024px){
      .promo-nav-btn{top:140px;}
    }
    @media (min-width: 1280px){
      .promo-nav-btn{top:150px;}
    }
    @media (max-width: 640px){
      .offer-section-counter{width:100%;}
      .offer-lane-title{font-size:24px;}
      .offer-section-copy,
      .offer-lane-copy{font-size:14px;}
      .promo-nav-prev{left:8px;}
      .promo-nav-next{right:8px;}
      .promo-nav-btn{top:130px;}
      .promo-nav-btn{width:36px;height:36px;}
      .promo-nav-btn svg{width:18px;height:18px;}
    }
    /* Overrides para ofertas embutidas (garante consistência mesmo se carregadas em cache antigo) */
    .ab-offer-card{font-family:"Poppins",Inter,system-ui,sans-serif !important;}
    .ab-offer-card .ab-exclusive-badge{
      background:linear-gradient(135deg, var(--primary-600,#c42729) 0%, #ff5555 100%) !important;
      color:#fff !important;
      font-family:"Poppins",Inter,system-ui,sans-serif !important;
      font-weight:700 !important;
      font-size:12px !important;
      line-height:1.25 !important;
      letter-spacing:.12em !important;
      text-transform:uppercase !important;
      padding:9px 16px !important;
      margin:0 !important;
      box-shadow: 0 4px 12px rgba(196,39,41,0.2) !important;
      animation: bounce-light 2s ease-in-out infinite;
      position: relative !important;
      z-index: 1 !important;
    }
    .ab-offer-card .ab-card-body{
      padding:18px 18px 20px !important;
      display:flex !important;
      flex-direction:column !important;
      gap:12px !important;
      position: relative !important;
      z-index: 2 !important;
    }
    .ab-offer-card .ab-title{
      font-family:"Poppins",Inter,system-ui,sans-serif !important;
      font-weight:700 !important;
      font-size:clamp(16px,1.8vw,20px) !important;
      line-height:1.35 !important;
      letter-spacing:-0.01em !important;
      color:#1a1a1a !important;
      margin:0 !important;
      min-height:auto !important;
      text-wrap:balance;
    }
    .ab-offer-card .ab-title em,
    .ab-offer-card .ab-title strong{color:var(--primary-600,#c42729);}
    .ab-offer-card .ab-desc{
      font-family:Inter,system-ui,sans-serif !important;
      font-weight:400 !important;
      font-size:clamp(13px,1.3vw,14px) !important;
      line-height:1.5 !important;
      color:#64748b !important;
      letter-spacing:.01em !important;
      min-height:auto !important;
      margin:0 !important;
    }
    .ab-offer-card .ab-prices{
      display:flex !important;
      align-items:flex-end !important;
      gap:10px !important;
      margin:0 !important;
    }
    .ab-offer-card .ab-old{
      font-family:Inter,system-ui,sans-serif !important;
      font-weight:500 !important;
      font-size:12px !important;
      line-height:1 !important;
      color:#cbd5e1 !important;
      letter-spacing:.04em !important;
      text-decoration: line-through !important;
    }
    .ab-offer-card .ab-now{
      font-family:"Poppins",Inter,system-ui,sans-serif !important;
      font-weight:700 !important;
      font-size:clamp(22px,2.2vw,26px) !important;
      line-height:1 !important;
      color:var(--primary-600,#c42729) !important;
      letter-spacing:-0.01em !important;
      text-shadow: none !important;
    }
    .ab-offer-card .ab-saving{
      font-family:Inter,system-ui,sans-serif !important;
      font-weight:700 !important; /* negrito */
      font-size:11px !important;
      line-height:1.2 !important;
      color:#ef4444 !important;
      letter-spacing:.08em !important;
      text-transform:uppercase !important;
    }
    .ab-offer-card .ab-cta{
      align-self:stretch !important;
      display:inline-flex !important;
      justify-content:center !important;
      align-items:center !important;
      height:38px !important;
      padding:0 22px !important;
      border-radius:999px !important;
      font-family:"Poppins",Inter,system-ui,sans-serif !important;
      font-weight:700 !important;
      font-size:13px !important;
      letter-spacing:.14em !important;
      text-transform:uppercase !important;
      background:linear-gradient(135deg, var(--primary-600,#c42729) 0%, #ff5555 100%) !important;
      color:#fff !important;
      border:2px solid transparent !important;
      box-shadow:0 16px 32px -8px rgba(196,39,41,.45) !important;
      transition:all 0.3s cubic-bezier(0.34, 1.56, 0.64, 1) !important;
      position:relative;
      overflow:hidden;
    }
    .ab-offer-card .ab-cta::before {
      content: '';
      position: absolute;
      top: 50%;
      left: 50%;
      width: 0;
      height: 0;
      background: rgba(255,255,255,0.2);
      border-radius: 50%;
      transform: translate(-50%, -50%);
      transition: width 0.6s, height 0.6s;
    }
    .ab-offer-card .ab-cta:hover{
      background:linear-gradient(135deg, #ff5555 0%, #ff7777 100%) !important;
      transform:translateY(-2px) scale(1.05) !important;
      box-shadow:0 20px 40px -8px rgba(196,39,41,.55) !important;
    }
    .ab-offer-card .ab-cta:hover::before {
      width: 300px;
      height: 300px;
    }
    /* Estado "manchado" (droplet/frosted) exclusivo desta página: oculta preço com efeito refinado */
    @keyframes abMaskShimmer { 0% { background-position: 0% 50%; } 100% { background-position: 130% 50%; } }
    .ab-offer-card.is-locked .ab-now,
    .ab-offer-card.is-locked .ab-saving {
      position: relative !important;
      color: transparent !important; /* texto invisível mas presente para acessibilidade */
      min-width: 84px;
      padding: 4px 10px !important;
      border-radius: 14px !important;
      line-height: 1.2 !important;
      background:
        radial-gradient(circle at 28% 32%, rgba(255,255,255,0.85) 0 14%, rgba(255,255,255,0) 15%),
        radial-gradient(circle at 72% 64%, rgba(255,255,255,0.75) 0 18%, rgba(255,255,255,0) 19%),
        linear-gradient(140deg,#eef2f6 0%,#d9e1e8 55%,#e2e8f0 100%);
      background-size: 200% 200%;
      animation: abMaskShimmer 3.8s ease-in-out infinite;
      box-shadow: inset 0 0 0 1px rgba(255,255,255,0.6), 0 4px 10px rgba(148,163,184,0.25);
      overflow: hidden;
      filter: contrast(1.05) saturate(0.9);
    }
    .ab-offer-card.is-locked .ab-now::before,
    .ab-offer-card.is-locked .ab-saving::before {
      content: '';
      position: absolute;
      inset: 0;
      backdrop-filter: blur(6px);
      background: linear-gradient(160deg, rgba(255,255,255,0.65) 0%, rgba(255,255,255,0.15) 60%);
      mix-blend-mode: normal;
      pointer-events: none;
    }
    .ab-offer-card.is-locked .ab-now::after,
    .ab-offer-card.is-locked .ab-saving::after {
      content: 'USAR '; 
      position: absolute;
      inset: 0;
      display: flex;
      align-items: center;
      justify-content: center;
      font: 600 9px/1.1 Inter,system-ui;
      letter-spacing: .12em;
      text-transform: uppercase;
      color: #64748b;
      text-shadow: 0 1px 0 rgba(255,255,255,0.6);
      opacity: .9;
      pointer-events: none;
    }
    .ab-offer-card.is-locked .ab-cta { display: none !important; }
    .ab-offer-card.is-locked { cursor: pointer !important; }
    /* Destaque ao rolar até o card de assinatura */
    #subscribeCard.pulse-highlight{animation:pulseSub 1.2s ease-in-out 2;}
    @keyframes pulseSub{0%,100%{box-shadow:0 14px 28px rgba(196,39,41,.08),0 8px 10px rgba(0,0,0,.04);}50%{box-shadow:0 0 0 4px rgba(196,39,41,.25),0 18px 36px rgba(196,39,41,.25);} }
    @media (max-width:480px){
      .ab-offer-card .ab-title{font-size:17px !important;min-height:48px !important;}
      .ab-offer-card .ab-cta{height:36px !important;padding:0 18px !important;font-size:12px !important;letter-spacing:.12em !important;}
    }
    /* Lead */
    .lead-section {
      margin: 0;
      padding: 0;
    }
    .lead-card {
      background: linear-gradient(135deg, #ffffff 0%, #fff5f5 50%, #fef2f2 100%);
      border: 2px solid #fecaca;
      border-radius: 20px;
      padding: 28px 24px;
      box-shadow: 
        0 10px 25px rgba(196,39,41,.12), 
        0 4px 10px rgba(0,0,0,.04),
        inset 0 1px 0 rgba(255,255,255,0.8);
      height: 100%;
      display: flex;
      flex-direction: column;
      justify-content: center;
      position: relative;
      overflow: hidden;
    }
    .lead-card::before {
      content: '';
      position: absolute;
      top: -50%;
      right: -50%;
      width: 100%;
      height: 100%;
      background: radial-gradient(circle, rgba(220,38,38,0.06) 0%, transparent 70%);
      pointer-events: none;
    }
    .lead-card-header {
      text-align: center;
      margin-bottom: 20px;
      position: relative;
      z-index: 1;
    }
    .lead-card-icon {
      width: 56px;
      height: 56px;
      background: linear-gradient(135deg, #dc2626 0%, #ef4444 100%);
      border-radius: 16px;
      display: flex;
      align-items: center;
      justify-content: center;
      margin: 0 auto 14px;
      box-shadow: 0 8px 20px rgba(220,38,38,0.3);
      animation: pulse-soft 2s ease-in-out infinite;
    }
    @keyframes pulse-soft {
      0%, 100% { transform: scale(1); box-shadow: 0 8px 20px rgba(220,38,38,0.3); }
      50% { transform: scale(1.05); box-shadow: 0 12px 28px rgba(220,38,38,0.4); }
    }
    .lead-card-icon svg {
      width: 28px;
      height: 28px;
      color: white;
    }
    .lead-card h2{
      margin:0;
      font:800 20px/1.3 Poppins,Inter;
      color:#111827;
      background: linear-gradient(135deg, #c42729 0%, #ef4444 100%);
      -webkit-background-clip: text;
      -webkit-text-fill-color: transparent;
      background-clip: text;
    }
    .lead-card-sub {
      font-size: 13px;
      color: #6b7280;
      margin-top: 6px;
      font-weight: 500;
    }
    .lead-card form{
      display:flex;
      flex-direction:column;
      gap:12px;
      position: relative;
      z-index: 1;
    }
    .lead-input-wrapper {
      position: relative;
    }
    .lead-input-wrapper svg {
      position: absolute;
      left: 14px;
      top: 50%;
      transform: translateY(-50%);
      width: 18px;
      height: 18px;
      color: #9ca3af;
      transition: color 0.3s ease;
      pointer-events: none;
    }
    .lead-input-wrapper:focus-within svg {
      color: #dc2626;
    }
    .lead-card input{
      padding: 14px 14px 14px 44px;
      border: 2px solid #e5e7eb;
      border-radius: 12px;
      font: 500 14px Inter,system-ui;
      background: #fff;
      outline: none;
      transition: all 0.3s ease;
      box-shadow: 0 2px 4px rgba(0,0,0,0.02);
      width: 100%;
    }
    .lead-card input:focus{
      border-color: #dc2626;
      background: #fffbfb;
      box-shadow: 0 0 0 4px rgba(220,38,38,0.1), 0 4px 12px rgba(220,38,38,0.08);
    }
    .lead-card input::placeholder {
      color: #9ca3af;
      font-size: 13px;
    } 
    .lead-card button[type=submit]{
      background: linear-gradient(135deg, #dc2626 0%, #ef4444 50%, #f87171 100%);
      color: #fff;
      border: 0;
      padding: 16px;
      border-radius: 12px;
      font: 700 14px Poppins;
      cursor: pointer;
      letter-spacing: .5px;
      text-transform: uppercase;
      transition: all 0.3s cubic-bezier(0.34, 1.56, 0.64, 1);
      box-shadow: 0 8px 20px -4px rgba(220,38,38,0.5);
      position: relative;
      overflow: hidden;
    }
    .lead-card button[type=submit]::before {
      content: '';
      position: absolute;
      top: 0;
      left: -100%;
      width: 100%;
      height: 100%;
      background: linear-gradient(90deg, transparent, rgba(255,255,255,0.2), transparent);
      transition: left 0.5s ease;
    }
    .lead-card button[type=submit]:hover::before {
      left: 100%;
    }
    .lead-card button[type=submit]:hover{
      transform: translateY(-3px);
      box-shadow: 0 14px 28px -4px rgba(220,38,38,0.5);
    }
    .lead-card button[type=submit]:active {
      transform: translateY(-1px);
    }
    .lead-card-footer {
      display: flex;
      align-items: center;
      justify-content: center;
      gap: 6px;
      margin-top: 14px;
      font-size: 11px;
      color: #9ca3af;
    }
    .lead-card-footer svg {
      width: 14px;
      height: 14px;
      color: #10b981;
    }
    .lead-msg {
      display: none;
      margin-top: 10px;
      padding: 10px;
      border-radius: 8px;
      font-size: 13px;
      font-weight: 600;
      text-align: center;
      background: #fee;
      color: #dc2626;
    }
    @media (min-width: 768px){
      .lead-card h2{font-size:18px;}
    }
    @media (min-width:1024px){
      .lead-card{padding:32px 28px;}
      .lead-card h2{font-size:22px;}
      .lead-card form{gap:14px;}
      .lead-card input{padding:16px 16px 16px 46px;}
      .lead-card button[type=submit]{padding:18px;font-size:15px;}
    }
    /* Modal */
    .modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,.45);display:none;align-items:center;justify-content:center;z-index:2000;} .modal-overlay.show{display:flex;} .modal-box{background:#fff;padding:30px 26px;border-radius:20px;max-width:420px;width:92vw;box-shadow:0 24px 60px rgba(0,0,0,.18);text-align:center;} .modal-title{margin:0 0 14px;font:800 22px/1.2 Poppins;} .modal-text{margin:0 0 18px;font:500 14px/1.55 Inter;color:#6b7280;} .modal-btn{background:var(--primary-600);color:#fff;border:0;padding:12px 20px;border-radius:14px;font:700 14px Poppins;cursor:pointer;}

    /* ================= Desktop Enhancements (mobile-first preservado) ================= */
    @media (min-width: 768px){
      /* Header vira horizontal simples */
      .menu-toggle{display:none!important;}
      .menu-panel{position:static!important;display:block!important;opacity:1!important;visibility:visible!important;transform:none!important;background:transparent!important;box-shadow:none!important;padding:0!important;}
      .menu-panel ul{display:flex;gap:32px;align-items:center;margin:0;}
      .menu-panel li{list-style:none;}
      .menu-panel a{font:600 14px/1 Poppins,Inter;color:#374151;text-decoration:none;transition:.25s;color:#374151;}
      .menu-panel a:hover{color:var(--primary-600);}
      .menu-panel .sep{display:none;}
    }
    @media (min-width: 1024px){
      /* Hero mais impactante e espaçado no desktop */
      .has-fixed-header section:first-child .bg-white{ padding:48px 56px; max-width:880px; }
      .ofertas-hero-title{ font-size:clamp(40px,5vw,56px); margin-bottom:0; line-height:1.15; }
      .ofertas-hero-sub{ font-size:clamp(19px,1.5vw,24px); margin-top:20px; }
      .hero-section { padding-top: 48px!important; }
      
      /* Container principal mais largo */
      #offersContainer {
        max-width: 1280px!important;
        padding-left: 3rem!important;
        padding-right: 3rem!important;
      }
    }
    @media (min-width: 1280px){
      .has-fixed-header{padding-top:calc(var(--ab-header-h) + 48px);} /* mais respiro */
      .ofertas-hero-title{ font-size:56px; }
      .ofertas-hero-sub{ font-size:24px; max-width:720px; }
    }
    /* Seções de carrossel (listas horizontais) viram grid em telas grandes */
    @media (min-width: 1100px){
      #maioresDescontosEmbed [data-slider],
      #utilizadosSemanaEmbed [data-slider],
      #fitnessSaudeEmbed [data-slider],
      #lazerEmbed [data-slider],
      #petEmbed [data-slider]{
        display:flex;flex-wrap:wrap;overflow:visible!important;gap:32px!important;padding-right:0;padding-left:0;
      }
      #maioresDescontosEmbed .ab-offer-card,
      #utilizadosSemanaEmbed .ab-offer-card,
      #fitnessSaudeEmbed .ab-offer-card,
      #lazerEmbed .ab-offer-card,
      #petEmbed .ab-offer-card{min-width:260px;max-width:260px;}
      /* Centralizar conjunto */
      #maioresDescontosEmbed,
      #utilizadosSemanaEmbed,
      #fitnessSaudeEmbed,
      #lazerEmbed,
      #petEmbed{padding-left:0;padding-right:0;}
    }
    /* Partners carousel: aumenta largura e reduz altura do bloco em desktop para caber mais contexto */
    @media (min-width: 1024px){
      .partners-card{max-width:1080px;}
      .partner-logo{height:140px;}
      
      /* Espaçamento melhorado entre seções desktop */
      main section {
        margin-top: 3rem;
      }
      main section:first-child {
        margin-top: 0;
      }
      .mt-6 {
        margin-top: 3.5rem !important;
      }
      .mt-8 {
        margin-top: 4rem !important;
      }
      .mt-10 {
        margin-top: 5rem !important;
      }
      .mt-12 {
        margin-top: 6rem !important;
      }
      .mt-16 {
        margin-top: 8rem !important;
      }
    }
    @media (min-width: 1400px){
      .partners-card{max-width:1200px;}
      .partner-logo{height:150px;}
      
      /* Carrossel de promoções: altura maior em telas grandes */
      .promo-slide {
        min-height: 320px;
      }
    }
    /* Melhora leve em telas ultra largas: restringir largura de parágrafos dentro do hero */
    @media (min-width:1600px){
      .ofertas-hero-sub{max-width:800px;}
      .has-fixed-header section:first-child .bg-white{ padding:56px 72px; max-width:960px; }
      
      /* Container ainda mais largo em telas muito grandes */
      #offersContainer {
        max-width: 1440px!important;
        padding-left: 4rem!important;
        padding-right: 4rem!important;
      }
      
      /* Aumenta largura das seções */
      .experiences-section,
      section[aria-label="Benefícios de ser membro"],
      section[aria-label="Chamada para ação"] {
        max-width: 1280px!important;
      }
    }
    /* Utilitário: sombra mais suave no hero para desktop evitar peso visual */
    @media (min-width:1024px){
      .shadow-soft{box-shadow:0 30px 60px -18px rgba(0,0,0,.10),0 8px 16px -6px rgba(0,0,0,.08)!important;}
      
      /* Cards de benefícios maiores e mais espaçados */
      .benefits-card {
        padding: 32px!important;
      }
      .benefits-card h3 {
        font-size: 1.125rem!important;
      }
      .benefits-card p {
        font-size: 0.9375rem!important;
      }
      .benefits-card .flex-shrink-0 {
        width: 56px!important;
        height: 56px!important;
      }
      .benefits-card [data-lucide] {
        width: 28px!important;
        height: 28px!important;
      }
      
      /* Grid de benefícios mais espaçado */
      .benefits-card + .benefits-card {
        margin-left: 0;
      }
      section[aria-label="Benefícios de ser membro"] .grid {
        gap: 1.5rem!important;
      }
      
      /* CTA mais impactante */
      .cta-gradient-box {
        padding: 56px 48px!important;
      }
      .cta-gradient-box h2 {
        font-size: 2.75rem!important;
        margin-bottom: 1rem!important;
        line-height: 1.15!important;
      }
      .cta-gradient-box p {
        font-size: 1.25rem!important;
        line-height: 1.6!important;
      }
      .cta-gradient-box .text-xs,
      .cta-gradient-box .md\\:text-sm {
        font-size: 1rem!important;
      }
      .cta-gradient-box a {
        padding: 16px 32px!important;
        font-size: 1.0625rem!important;
      }
    }
    /* Acessibilidade foco visível */
    .menu-panel a:focus-visible, button:focus-visible, .ab-cta:focus-visible{outline:3px solid var(--primary);outline-offset:3px;border-radius:6px;}
  /* ================= Fim Desktop Enhancements ================= */

    /* Sombras suaves para banners (harmoniza com a home) */
    .ab-shadow-red-soft{box-shadow:0 10px 30px rgba(196,39,41,.08);}
    
    /* Banner responsivo - preenche 100% sem barras laterais */
    .banner-promo {
      width: 100%;
      height: auto;
      display: block;
      object-fit: contain;
      object-position: center;
      background: transparent;
    }
    
    /* Mobile: altura automática para não cortar */
    @media (max-width: 767px) {
      .banner-promo {
        max-height: 260px;
      }
    }
    
    /* Tablet: altura intermediária */
    @media (min-width: 768px) and (max-width: 1023px) {
      .banner-promo {
        max-height: 240px;
      }
    }
    
    /* Desktop: altura bem controlada e compacta */
    @media (min-width: 1024px) {
      .banner-promo {
        max-height: 260px;
      }
    }
    @media (min-width: 1600px) {
      .banner-promo {
        max-height: 280px;
      }
    }

    /* ================= Assinatura (card informativo) ================= */
    .sub-card{
      margin: 8px auto 0 auto;
      max-width: 900px;
      background: linear-gradient(180deg,#ffffff 0%,#fff6f6 100%);
      border: 1px solid #fde2e2;
      border-radius: 24px;
      padding: 18px 18px 20px 18px;
      box-shadow: 0 14px 28px rgba(196,39,41,.08), 0 8px 10px rgba(0,0,0,.04);
      text-align:center;
    }
    .sub-title{
      font: 800 20px/1.2 Poppins,Inter,system-ui;
      color:#111827;
      margin: 6px 0 10px 0;
    }
    @media(min-width:768px){.sub-title{font-size:24px;}}
    .sub-sub{
      font: 500 14px/1.5 Inter,system-ui;
      color:#4b5563;
      margin: 0 auto 12px auto;
      max-width: 680px;
    }
    .sub-highlight{
      display:inline-block;
      background:#111827;
      color:#fff;
      font: 700 14px/1 Inter;
      padding:6px 10px;
      border-radius:999px;
      margin-bottom:10px;
    }
    .sub-prices{display:flex;gap:10px;justify-content:center;align-items:baseline;margin:8px 0 6px 0;flex-wrap:wrap}
    .sub-price-hero{font:800 22px/1 Poppins;color:#c42729}
    .sub-price-after{font:600 14px/1 Inter;color:#6b7280}
    .sub-bullets{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-top:6px}
    .sub-badge{background:#fff;border:1px solid #e5e7eb;color:#374151;border-radius:999px;padding:6px 10px;font:600 12px/1 Inter}
    .sub-cta{margin-top:12px;display:flex;gap:10px;justify-content:center;flex-wrap:wrap}
  .sub-btn{appearance:none;border:0;border-radius:14px;padding:10px 18px;font:700 14px/1 Inter;cursor:pointer;transition:.35s cubic-bezier(.34,1.56,.64,1);position:relative;overflow:visible}
  /* Botão primário (Acesso Gratuito) reforçado */
    .sub-btn--primary{
      background:linear-gradient(135deg,#c42729 0%,#ff4d4d 45%,#c42729 100%);
      background-size:220% 220%;
      color:#fff;
      box-shadow:0 14px 36px -10px rgba(196,39,41,.55),0 4px 14px -4px rgba(196,39,41,.35);
      font-size:16px;
      letter-spacing:.12em;
      padding:16px 30px;
      padding-right:50px; /* Espaço extra para o badge em desktop/tablet */
      text-transform:uppercase;
      border:2px solid #fb7185;
      animation:subBtnPulse 4s ease-in-out infinite;
    }
    @keyframes subBtnPulse{0%,100%{background-position:0% 50%;box-shadow:0 14px 36px -10px rgba(196,39,41,.55),0 4px 14px -4px rgba(196,39,41,.35);}50%{background-position:100% 50%;box-shadow:0 18px 44px -8px rgba(196,39,41,.65),0 6px 18px -4px rgba(196,39,41,.4);} }
  .sub-btn--primary::after{content:"100% GRATUITO";position:absolute;top:-8px;right:-8px;font:700 9px/1 Inter;letter-spacing:.15em;padding:5px 10px;border-radius:999px;background:#fff;color:#c42729;box-shadow:0 4px 12px rgba(0,0,0,.15);white-space:nowrap;z-index:1;}
    .sub-btn--primary:hover{filter:brightness(1.05);transform:translateY(-4px) scale(1.04);background-position:100% 50%;}
    .sub-btn--primary:active{transform:translateY(-1px) scale(1.02);}
    .sub-btn--primary:focus-visible{outline:3px solid #fb7185;outline-offset:3px;}
    @media (max-width:520px){
      .sub-btn--primary{font-size:15px;padding:14px 22px;letter-spacing:.1em;padding-right:22px;}
      .sub-btn--primary::after{display:none;} /* economiza espaço no mobile */
    }
    .sub-btn--ghost{background:#fff;color:#c42729;border:1px solid #fca5a5}
    .sub-btn--ghost:hover{background:#fff5f5}
    .sub-btn--ghost{background:#fff;color:#c42729;border:1px solid #fca5a5}
    .sub-fineprint{font:500 12px/1.4 Inter;color:#6b7280;margin-top:8px}

    /* ================= Como Usar + Lead Section (lado a lado no desktop) ================= */
    .how-lead-wrapper {
      max-width: 900px;
      margin: 0 auto;
      padding: 0 16px;
      display: flex;
      flex-direction: column;
      gap: 24px;
    }
    @media (min-width: 768px) {
      .how-lead-wrapper {
        flex-direction: row;
        align-items: stretch;
        gap: 24px;
        max-width: 900px;
      }
      .how-lead-wrapper > * {
        flex: 1;
      }
    }
    @media (min-width: 1024px) {
      .how-lead-wrapper {
        max-width: 1080px;
        gap: 40px;
      }
      .how-embed {
        padding: 20px;
        border-radius: 20px;
      }
    }

    .how-section {
      margin: 0;
      padding: 0;
    }
    .how-embed {
      background: linear-gradient(180deg, #ffffff 0%, #fff9f9 100%);
      border: 1px solid #fde2e2;
      border-radius: 16px;
      padding: 12px;
      box-shadow: 0 8px 16px rgba(196,39,41,.05), 0 2px 6px rgba(0,0,0,.02);
      overflow: hidden;
      height: 100%;
      display: flex;
      align-items: center;
    }
    .how-embed img {
      width: 100%;
      height: auto;
      display: block;
      border-radius: 10px;
      object-fit: contain;
    }
    /* ================= Fim Como Usar Section ================= */

    /* Headline com linhas fixas (idêntica à principa.html) */
    .ofertas-hero-title--fixed{display:inline-grid;width:max-content;margin-inline:auto;text-align:center;text-wrap:balance;}
    .ofertas-hero-title--fixed .line{display:block;width:100%;white-space:nowrap;}
    @media (max-width:420px){.ofertas-hero-title--fixed{font-size:26px;}}
    @media (max-width:360px){.ofertas-hero-title--fixed{font-size:24px;}}
    @media (max-width:420px){.ofertas-hero-title{font-size:30px;} .ofertas-hero-sub{font-size:15px;}}
    @media (max-width:360px){.ofertas-hero-title{font-size:26px;} .ofertas-hero-sub{font-size:14px;}}

    /* ================= Stories Instagram Style ================= */
    .stories-container {
      width: 100%;
      overflow-x: auto;
      overflow-y: hidden;
      scrollbar-width: none;
      padding: 16px 0;
      scroll-behavior: auto;
    }
    .stories-container::-webkit-scrollbar {
      display: none;
    }
    .stories-wrapper {
      display: flex;
      gap: 16px;
      padding: 0 16px;
      min-width: min-content;
      animation: slideUpHero 0.6s ease-out 0.3s both;
    }
    .story-item {
      flex-shrink: 0;
      display: flex;
      flex-direction: column;
      align-items: center;
      gap: 8px;
      cursor: pointer;
      transition: all 0.3s cubic-bezier(0.34, 1.56, 0.64, 1);
      animation: fadeInScale 0.5s ease-out backwards;
    }
    .story-item:nth-child(1){animation-delay:0.35s;}
    .story-item:nth-child(2){animation-delay:0.4s;}
    .story-item:nth-child(3){animation-delay:0.45s;}
    .story-item:nth-child(n+4){animation-delay:0.5s;}
    .story-item:hover {
      transform: translateY(-8px) scale(1.08);
    }
    .story-ring {
      width: 80px;
      height: 80px;
      border-radius: 50%;
      background: linear-gradient(135deg, #f09433 0%, #e6683c 25%, #dc2743 50%, #cc2366 75%, #bc1888 100%);
      padding: 3px;
      position: relative;
      box-shadow: 0 4px 20px rgba(220, 39, 67, 0.25);
      transition: all 0.3s ease;
    }
    .story-item:hover .story-ring {
      box-shadow: 0 8px 28px rgba(220, 39, 67, 0.4);
      transform: scale(1.05);
    }
    .story-ring.viewed {
      background: linear-gradient(135deg, #d1d5db 0%, #f3f4f6 100%);
      opacity: 0.6;
    }
    .story-avatar {
      width: 100%;
      height: 100%;
      border-radius: 50%;
      background: white;
      padding: 6px;
      display: flex;
      align-items: center;
      justify-content: center;
      overflow: hidden;
    }
    .story-avatar img {
      width: 100%;
      height: 100%;
      object-fit: contain;
      border-radius: 50%;
    }
    .story-name {
      font-size: 12px;
      font-weight: 600;
      color: #1a1a1a;
      max-width: 80px;
      white-space: nowrap;
      overflow: hidden;
      text-overflow: ellipsis;
      text-align: center;
    }

    /* Story Modal */
    .story-modal {
      position: fixed;
      inset: 0;
      background: rgba(0, 0, 0, 0.95);
      z-index: 9999;
      display: none;
      align-items: center;
      justify-content: center;
      padding: 20px;
    }
    .story-modal.active {
      display: flex;
    }
    .story-modal-content {
      position: relative;
      max-width: 500px;
      width: 100%;
      height: 90vh;
      max-height: 800px;
      background: white;
      border-radius: 16px;
      overflow: hidden;
      display: flex;
      flex-direction: column;
    }
    .story-modal-header {
      display: flex;
      align-items: center;
      gap: 12px;
      padding: 16px;
      background: white;
      border-bottom: 1px solid #e5e7eb;
    }
    .story-modal-avatar {
      width: 40px;
      height: 40px;
      border-radius: 50%;
      background: #f3f4f6;
      padding: 4px;
      display: flex;
      align-items: center;
      justify-content: center;
      overflow: hidden;
    }
    .story-modal-avatar img {
      width: 100%;
      height: 100%;
      object-fit: contain;
      border-radius: 50%;
    }
    .story-modal-info {
      flex: 1;
    }
    .story-modal-name {
      font-weight: 600;
      font-size: 14px;
      color: #111827;
    }
    .story-modal-time {
      font-size: 12px;
      color: #6b7280;
    }
    .story-modal-close {
      background: transparent;
      border: none;
      color: #374151;
      cursor: pointer;
      font-size: 24px;
      padding: 4px;
      display: flex;
      align-items: center;
      justify-content: center;
      transition: color 0.2s;
    }
    .story-modal-close:hover {
      color: #111827;
    }
    .story-modal-body {
      flex: 1;
      display: flex;
      align-items: center;
      justify-content: center;
      background: #f9fafb;
      position: relative;
      overflow: hidden;
    }
    .story-modal-image {
      width: 100%;
      height: 100%;
      object-fit: contain;
      padding: 20px;
    }
    .story-modal-nav {
      position: absolute;
      top: 50%;
      transform: translateY(-50%);
      background: rgba(255, 255, 255, 0.9);
      border: none;
      width: 40px;
      height: 40px;
      border-radius: 50%;
      display: flex;
      align-items: center;
      justify-content: center;
      cursor: pointer;
      font-size: 20px;
      color: #111827;
      transition: all 0.2s;
      z-index: 10;
    }
    .story-modal-nav:hover {
      background: white;
      transform: translateY(-50%) scale(1.1);
    }
    .story-modal-nav.prev {
      left: 10px;
    }
    .story-modal-nav.next {
      right: 10px;
    }
    .story-modal-nav:disabled {
      opacity: 0.3;
      cursor: not-allowed;
    }
    .story-modal-nav:disabled:hover {
      transform: translateY(-50%);
    }
    .story-progress-bar {
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      height: 3px;
      background: rgba(255, 255, 255, 0.3);
    }
    .story-progress-fill {
      height: 100%;
      background: white;
      width: 0%;
      transition: width 0.1s linear;
    }
    .story-modal-footer {
      padding: 16px;
      background: white;
      border-top: 1px solid #e5e7eb;
      text-align: center;
    }
    .story-modal-cta {
      background: var(--primary-600);
      color: white;
      border: none;
      padding: 12px 24px;
      border-radius: 999px;
      font-weight: 700;
      font-size: 14px;
      text-transform: uppercase;
      letter-spacing: 0.5px;
      cursor: pointer;
      transition: all 0.2s;
      width: 100%;
      max-width: 300px;
    }
    .story-modal-cta:hover {
      background: var(--primary);
      transform: translateY(-1px);
    }

    @media (max-width: 480px) {
      .story-ring {
        width: 70px;
        height: 70px;
      }
      .story-name {
        font-size: 11px;
        max-width: 70px;
      }
      .story-modal-content {
        max-width: 100%;
        height: 100vh;
        max-height: 100vh;
        border-radius: 0;
      }
    }
    /* ================= Fim Stories ================= */
    /* ================= Login Top Button + WhatsApp Float ================= */
    .btn-login-top {
      appearance:none;
      background:#fff;
      color:#c42729;
      font:600 13px/1 Poppins,Inter;
      padding:10px 18px;
      border-radius:999px;
      letter-spacing:.03em;
      text-transform:none;
      border:1px solid #e5e7eb;
      box-shadow:0 2px 4px rgba(0,0,0,.04),0 4px 12px -4px rgba(196,39,41,.15);
      transition:all .35s cubic-bezier(0.34,1.56,0.64,1);
      display:inline-flex;
      align-items:center;
      justify-content:center;
      gap:6px;
      white-space:nowrap;
      position:relative;
      overflow:hidden;
    }
    .btn-login-top::after {
      content:"";
      position:absolute;inset:0;
      background:radial-gradient(circle at 30% 30%, rgba(196,39,41,.12), transparent 60%);
      opacity:0;transition:opacity .4s ease;
    }
    .btn-login-top:hover{
      transform:translateY(-2px);
      color:#b91c1e;
      border-color:#fca5a5;
      background:#fff5f5;
      box-shadow:0 6px 16px -4px rgba(196,39,41,.25);
    }
    .btn-login-top:hover::after{opacity:1;}
    .btn-login-top:active{transform:translateY(0);filter:brightness(.98);}
    .btn-login-top:focus-visible{outline:3px solid #c42729;outline-offset:3px;}
    @media(min-width:768px){.btn-login-top{font-size:13px;padding:12px 22px;}}
    @media(min-width:768px){.btn-login-top{font-size:13px;padding:12px 20px;}}
    .whatsapp-float{
      position:fixed;
      bottom:18px;
      right:18px;
      background:#25D366;
      color:#fff;
      font:600 14px/1 Inter,system-ui;
      display:flex;
      align-items:center;
      gap:8px;
      padding:14px 18px;
      border-radius:999px;
      text-decoration:none;
      box-shadow:0 12px 28px rgba(0,0,0,0.12);
      z-index:500;
      transition:all .3s cubic-bezier(0.34,1.56,0.64,1);
    }
    .whatsapp-float:hover{transform:translateY(-4px);box-shadow:0 18px 36px rgba(0,0,0,0.18);background:#1ebe5a;}
    .whatsapp-float svg{width:22px;height:22px;}
    @media(max-width:480px){.whatsapp-float{padding:12px 16px;font-size:13px;bottom:14px;right:14px;}}
    /* ================= Fim Login Top Button + WhatsApp Float ================= */

    /* ================= Seção de Autoridade - Parceiros ================= */
    .partners-authority-section {
      animation: slideUpHero 0.6s ease-out 0.4s both;
    }

    .partners-grid-item {
      position: relative;
      overflow: hidden;
      background: linear-gradient(135deg, #f9fafb 0%, #f3f4f6 100%);
      transition: all 0.35s cubic-bezier(0.34, 1.56, 0.64, 1);
    }

    .partners-grid-item:hover {
      box-shadow: 0 12px 32px rgba(196,39,41,0.15);
      transform: translateY(-6px) scale(1.04);
    }

    .partners-grid-item::before {
      content: '';
      position: absolute;
      inset: 0;
      background: linear-gradient(135deg, rgba(196,39,41,0.05) 0%, rgba(196,39,41,0) 100%);
      opacity: 0;
      transition: opacity 0.3s ease;
      z-index: 1;
    }

    .partners-grid-item:hover::before {
      opacity: 1;
    }

    /* Benefícios Cards */
    .benefits-card {
      animation: fadeInScale 0.6s ease-out backwards;
      position: relative;
      overflow: hidden;
    }

    .benefits-card::before {
      content: '';
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
      background: linear-gradient(135deg, rgba(196,39,41,0.02) 0%, transparent 100%);
      opacity: 0;
      transition: opacity 0.3s ease;
    }

    .benefits-card:hover::before {
      opacity: 1;
    }

    .benefits-card:nth-child(1) { animation-delay: 0.45s; }
    .benefits-card:nth-child(2) { animation-delay: 0.5s; }
    .benefits-card:nth-child(3) { animation-delay: 0.55s; }
    .benefits-card:nth-child(4) { animation-delay: 0.6s; }
    .benefits-card:nth-child(5) { animation-delay: 0.65s; }
    .benefits-card:nth-child(6) { animation-delay: 0.7s; }

    /* Carrossel Mobile */
    .benefits-carousel {
      overflow: hidden;
      animation: slideUpHero 0.6s ease-out 0.4s both;
    }

    .benefits-carousel-track {
      display: flex;
      width: 100%;
    }

    .benefits-carousel-slide {
      display: flex;
      align-items: stretch;
      min-width: 100%;
    }

    .benefits-carousel-btn {
      width: 40px;
      height: 40px;
      border-radius: 50%;
      background: linear-gradient(135deg, #c42729 0%, #ff5555 100%);
      color: white;
      border: none;
      font-size: 24px;
      cursor: pointer;
      display: flex;
      align-items: center;
      justify-content: center;
      transition: all 0.3s ease;
      box-shadow: 0 4px 12px rgba(196,39,41,0.2);
    }

    .benefits-carousel-btn:hover {
      transform: scale(1.1);
      box-shadow: 0 6px 16px rgba(196,39,41,0.3);
    }

    .benefits-carousel-btn:active {
      transform: scale(0.95);
    }

    .benefits-carousel-dots {
      display: flex;
      gap: 6px;
      align-items: center;
    }

    .benefits-carousel-dot {
      width: 10px;
      height: 10px;
      border-radius: 50%;
      background: #d1d5db;
      border: none;
      cursor: pointer;
      transition: all 0.3s ease;
    }

    .benefits-carousel-dot.active {
      background: #c42729;
      transform: scale(1.3);
      box-shadow: 0 0 8px rgba(196,39,41,0.3);
    }

    .benefits-carousel-dot:hover {
      background: #fb7185;
    }

    /* Estatísticas Cards */
    .stats-card {
      animation: fadeInScale 0.6s ease-out backwards;
    }

    .stats-card:nth-child(1) { animation-delay: 0.5s; }
    .stats-card:nth-child(2) { animation-delay: 0.55s; }
    .stats-card:nth-child(3) { animation-delay: 0.6s; }
    .stats-card:nth-child(4) { animation-delay: 0.65s; }

    .stats-number {
      background: linear-gradient(135deg, #c42729 0%, #ff5555 100%);
      -webkit-background-clip: text;
      -webkit-text-fill-color: transparent;
      background-clip: text;
    }

    /* CTA Section */
    .cta-gradient-box {
      animation: slideUpHero 0.6s ease-out 0.7s both;
    }

    .cta-gradient-box::before {
      content: '';
      position: absolute;
      inset: 0;
      background: linear-gradient(45deg, rgba(255,255,255,0.1) 0%, transparent 50%);
      border-radius: inherit;
      pointer-events: none;
    }

    /* Responsivo melhorado para a grid */
    @media (max-width: 640px) {
      .partners-grid-item {
      .catalog-merchant-logo{width:82px;height:82px;bottom:-34px;}
      .promo-body--catalog{padding-top:50px;}
      .catalog-offer-merchant{font-size:12px;}
        padding: 0;
      }
      .partners-grid-item img {
        max-width: 90%;
        max-height: 90%;
      }
      .benefits-card {
        padding: 24px !important;
      }
      .benefits-card h3 {
        font-size: 1.05rem !important;
      }
      .benefits-card p {
        font-size: 0.875rem !important;
      }
    }

    /* ================= Fim Seção de Autoridade ================= */

    /* ================= Área de Anúncios (Banner Rotativo) ================= */
    .ab-ad-rotator {
      background: #fff;
      border: 1px solid rgba(0,0,0,.06);
      border-radius: 22px;
      overflow: hidden;
      width: 100%;
      box-shadow: 0 10px 24px rgba(0,0,0,.06);
    }
    /* Tablet e desktop: usar largura maior para os GIFs respirarem melhor */
    @media (min-width: 768px) {
      .ab-ad-rotator {
        max-width: 840px;
        margin: 0 auto;
      }
    }
    @media (min-width: 1024px) {
      .ab-ad-rotator {
        max-width: 920px;
      }
    }
    @media (min-width: 1280px) {
      .ab-ad-rotator {
        max-width: 920px;
      }
    }
    @media (min-width: 1600px) {
      .ab-ad-rotator {
        max-width: 960px;
      }
    }
    .ab-ad-viewport { position: relative; width: 100%; }
    .ab-ad-slide { display: none; width: 100%; text-decoration: none; color: inherit; }
    .ab-ad-slide.is-active { display: block; }
    .ab-ad-slide picture, .ab-ad-slide img { display: block; width: 100%; height: auto; }
    .ab-ad-slide img { background: #fff; }
    
    .ad-rotator-item {
      display: block;
      width: 100%;
    }
    .ad-rotator-item img {
      width: 100%;
      height: auto;
      max-height: none;
      display: block;
    }
    @media (min-width: 768px) {
      .ad-rotator-item img {
        max-height: none;
      }
    }
    @media (min-width: 1024px) {
      .ad-rotator-item img {
        max-height: none;
      }
    }
    @media (min-width: 1280px) {
      .ad-rotator-item img {
        max-height: none;
      }
    }
    @media (min-width: 1600px) {
      .ad-rotator-item img {
        max-height: none;
      }
    }
    .ab-ad-dots {
      display: flex;
      justify-content: center;
      gap: 8px;
      padding: 12px 14px 14px;
      background: rgba(255,255,255,.92);
      border-top: 1px solid rgba(0,0,0,.05);
    }
    .ab-ad-dot {
      width: 9px;
      height: 9px;
      border-radius: 999px;
      border: 1px solid rgba(17,24,39,.25);
      background: rgba(17,24,39,.12);
      cursor: pointer;
      padding: 0;
    }
    .ab-ad-dot[aria-current="true"] {
      background: var(--primary);
      border-color: rgba(0,0,0,.08);
    }
    .ab-ad-dot:focus-visible {
      outline: 3px solid rgba(227,52,54,.22);
      outline-offset: 2px;
    }

    @media (max-width: 640px) {
      .ab-ad-rotator { border-radius: 18px; }
      .ab-ad-dots { padding: 10px 12px 12px; }
    }

    /* ================= Pop-up de Anúncio (obrigatório fechar) ================= */
    .ab-no-scroll { overflow: hidden; }
    .ab-ad-popup-overlay {
      position: fixed;
      inset: 0;
      background: rgba(0,0,0,.60);
      display: none;
      align-items: center;
      justify-content: center;
      padding: 18px;
      z-index: 9999;
      backdrop-filter: blur(4px);
    }
    .ab-ad-popup-overlay.is-active { display: flex; }
    .ab-ad-popup {
      position: relative;
      width: min(520px, 100%);
      background: linear-gradient(135deg, #ffffff 0%, #f8f9fa 100%);
      border-radius: 24px;
      overflow: hidden;
      box-shadow: 0 25px 50px rgba(0,0,0,.25);
      border: 1px solid rgba(255,255,255,.5);
      padding: 48px 32px 40px;
      text-align: center;
    }
    .ab-ad-popup-close {
      position: absolute;
      top: 16px;
      right: 16px;
      width: 40px;
      height: 40px;
      border-radius: 50%;
      border: none;
      background: rgba(0,0,0,.05);
      color: #6b7280;
      font-size: 24px;
      line-height: 1;
      display: flex;
      align-items: center;
      justify-content: center;
      cursor: pointer;
      transition: all 200ms ease;
      backdrop-filter: blur(10px);
    }
    .ab-ad-popup-close:hover { 
      background: rgba(0,0,0,.08);
      color: #111827;
    }
    .ab-ad-popup-close:focus-visible {
      outline: 2px solid var(--primary);
      outline-offset: 2px;
    }
    .ab-ad-popup-label {
      display: inline-block;
      background: rgba(227,52,54,.08);
      color: var(--primary);
      font-size: 12px;
      font-weight: 700;
      letter-spacing: 0.5px;
      padding: 6px 12px;
      border-radius: 6px;
      margin-bottom: 16px;
      text-transform: uppercase;
    }
    .ab-ad-popup-title {
      font-size: 28px;
      font-weight: 800;
      line-height: 1.3;
      margin: 0 0 12px 0;
      color: #111827;
      letter-spacing: -0.5px;
    }
    .ab-ad-popup-text {
      font-size: 15px;
      line-height: 1.6;
      color: #6b7280;
      margin: 0 0 28px 0;
      font-weight: 500;
    }
    .ab-ad-popup-cta {
      display: inline-flex;
      align-items: center;
      gap: 10px;
      background: linear-gradient(135deg, var(--primary), var(--primary-600));
      color: #fff;
      border: none;
      padding: 14px 28px;
      border-radius: 12px;
      font-size: 15px;
      font-weight: 700;
      cursor: pointer;
      transition: all 200ms ease;
      box-shadow: 0 10px 25px rgba(227,52,54,.25);
      text-decoration: none;
    }
    .ab-ad-popup-cta:hover {
      transform: translateY(-2px);
      box-shadow: 0 15px 35px rgba(227,52,54,.35);
    }
    .ab-ad-popup-cta:active { transform: translateY(0); }

    @media (max-width: 640px) {
      .ab-ad-popup { 
        border-radius: 18px;
        padding: 36px 24px 32px;
      }
      .ab-ad-popup-title {
        font-size: 24px;
      }
      .ab-ad-popup-text {
        font-size: 14px;
      }
    }
