/* GCFC V30 — ajustes exclusivos para iPhone/iPad Safari. Desktop e Android inalterados. */
@supports (-webkit-touch-callout: none) {
  @media (max-width: 820px) {
    html.gcfc-ios, html.gcfc-ios body { overflow-x: hidden !important; }

    /* Vídeos no WebKit */
    html.gcfc-ios video.gcfc-video-surface,
    html.gcfc-ios video[data-gcfc-autoplay] {
      -webkit-transform: translateZ(0);
      transform: translateZ(0);
      -webkit-backface-visibility: hidden;
      backface-visibility: hidden;
    }

    /* HOME — marquee contínuo, sem arraste e sem faixa preta */
    html.gcfc-ios .certified-companies,
    html.gcfc-ios .logo-marquee { overflow: hidden !important; background: #050505 !important; }
    html.gcfc-ios .logo-marquee { touch-action: pan-y !important; -webkit-overflow-scrolling: auto !important; }
    html.gcfc-ios .logo-marquee-track {
      width: max-content !important;
      min-width: max-content !important;
      animation-play-state: running !important;
      -webkit-animation-play-state: running !important;
      will-change: transform;
      -webkit-transform: translate3d(0,0,0);
      transform: translate3d(0,0,0);
    }
    html.gcfc-ios .logo-marquee-group { flex: 0 0 auto !important; background:#050505 !important; }

    /* HOME — jornada, texto desaparece somente após o vídeo realmente tocar */
    html.gcfc-ios .trust-journey-video-card { overflow: hidden !important; }
    html.gcfc-ios .trust-journey-video-card video,
    html.gcfc-ios .trust-journey-poster { width:100% !important; height:100% !important; object-fit:contain !important; }
    html.gcfc-ios .trust-journey-video-card.is-playing .trust-journey-video-copy,
    html.gcfc-ios .trust-journey-video-card.is-playing .trust-journey-video-overlay,
    html.gcfc-ios .trust-journey-video-card.is-playing .trust-journey-play,
    html.gcfc-ios .trust-journey-video-card.is-playing .trust-journey-poster {
      opacity:0 !important; visibility:hidden !important; pointer-events:none !important;
    }

    /* HOME — Benefícios: conteúdo sempre antes do selo no iPhone */
    html.gcfc-ios .gcfc-benefits-layout,
    html.gcfc-ios .gcfc-benefits-layout.is-consumers { display:flex !important; flex-direction:column !important; }
    html.gcfc-ios .gcfc-benefits-content,
    html.gcfc-ios .gcfc-benefits-layout.is-consumers .gcfc-benefits-content { order:1 !important; transform:none !important; grid-row:auto !important; }
    html.gcfc-ios .gcfc-benefits-visual,
    html.gcfc-ios .gcfc-benefits-layout.is-consumers .gcfc-benefits-visual { order:2 !important; transform:none !important; grid-row:auto !important; }

    /* Como funciona / investimento: respiro abaixo da header */
    html.gcfc-ios body.page-como-funciona .method-hero,
    html.gcfc-ios body.page-investimento main > .hero { padding-top: 190px !important; }

    /* Jornada em Como funciona: sem sobreposição */
    html.gcfc-ios #jornada .journey-track { display:flex !important; flex-direction:column !important; gap:18px !important; }
    html.gcfc-ios #jornada .journey-step { position:relative !important; inset:auto !important; transform:none !important; width:100% !important; margin:0 !important; }

    /* Matriz pública: + centralizado */
    html.gcfc-ios .matrix .dimension-toggle,
    html.gcfc-ios .matrix .dimension-icon,
    html.gcfc-ios .matrix .accordion-icon,
    html.gcfc-ios .matrix .criteria-icon {
      display:flex !important; align-items:center !important; justify-content:center !important;
      text-align:center !important; line-height:1 !important;
    }

    /* FAQs em todas as páginas */
    html.gcfc-ios body main .faq-item { width:100% !important; max-width:100% !important; min-width:0 !important; overflow:hidden !important; box-sizing:border-box !important; }
    html.gcfc-ios body main .faq-answer { width:100% !important; max-width:100% !important; min-width:0 !important; margin:0 !important; padding:0 18px 22px !important; overflow:hidden !important; box-sizing:border-box !important; }
    html.gcfc-ios body main .faq-answer > div,
    html.gcfc-ios body main .faq-answer-inner { width:100% !important; max-width:100% !important; min-width:0 !important; padding:0 !important; box-sizing:border-box !important; }
    html.gcfc-ios body main .faq-answer p,
    html.gcfc-ios body main .faq-answer li { width:100% !important; max-width:100% !important; margin:0 !important; padding:0 !important; text-align:left !important; text-align-last:auto !important; white-space:normal !important; overflow-wrap:anywhere !important; word-break:normal !important; line-height:1.72 !important; }
    html.gcfc-ios body main .faq-item.open .faq-answer { max-height:none !important; height:auto !important; }
    html.gcfc-ios body.faq-clean-page main .faq-answer { padding:0 20px 24px !important; }

    /* Consumidor — abas e informações complementares */
    html.gcfc-ios .limits-stage,
    html.gcfc-ios .limits-panel,
    html.gcfc-ios .limits-panel.active { overflow:visible !important; height:auto !important; max-height:none !important; }
    html.gcfc-ios .limits-panel.active { display:block !important; }
    html.gcfc-ios .limits-list,
    html.gcfc-ios .limits-item,
    html.gcfc-ios .limits-item-copy { opacity:1 !important; visibility:visible !important; transform:none !important; }

    /* Sobre nós — painéis e vídeos de equipe */
    html.gcfc-ios .story-visual,
    html.gcfc-ios .story-dashboard { height:auto !important; max-height:none !important; overflow:visible !important; }
    html.gcfc-ios .person-media { position:relative !important; }
    html.gcfc-ios .person-video { display:block !important; opacity:1 !important; }

    /* Blog e Contato — alinhamento mobile */
    html.gcfc-ios .blog-hero,
    html.gcfc-ios .contact-hero { padding-top:150px !important; }
    html.gcfc-ios .blog-hero-inner,
    html.gcfc-ios .blog-hero .hero-copy-block,
    html.gcfc-ios .contact-hero .hero-content { text-align:center !important; }
    html.gcfc-ios .blog-hero .hero-copy,
    html.gcfc-ios .blog-hero .gcfc-hero-subtitle,
    html.gcfc-ios .contact-hero .gcfc-hero-subtitle { text-align:center !important; text-align-last:center !important; margin-inline:auto !important; }
    html.gcfc-ios .blog-hero .button-primary,
    html.gcfc-ios .blog-hero .button-secondary { min-height:50px !important; min-width:200px !important; padding:0 22px !important; }
    html.gcfc-ios .featured-main,
    html.gcfc-ios .featured-side-card { -webkit-tap-highlight-color:transparent; }
    html.gcfc-ios .featured-main.is-video-playing .featured-poster,
    html.gcfc-ios .featured-side-card.is-video-playing .featured-poster,
    html.gcfc-ios .featured-main.is-video-playing .featured-play-indicator,
    html.gcfc-ios .featured-side-card.is-video-playing .featured-play-indicator { opacity:0 !important; visibility:hidden !important; }

    /* Contato — setas dentro dos cards */
    html.gcfc-ios .self-link { position:relative !important; padding-right:48px !important; overflow:hidden !important; }
    html.gcfc-ios .self-link::after,
    html.gcfc-ios .self-link .arrow,
    html.gcfc-ios .self-link .self-arrow { right:18px !important; top:50% !important; transform:translateY(-50%) !important; }
  }
}
