/* ============================================================
   RESPONSIVE — Mobile 0-767px | Tablet 768-1023px | Desktop 1024px+
   ============================================================ */

/* ══════════════════════════════════════════════════════════
   TABLET (768px – 1023px)
   ══════════════════════════════════════════════════════════ */
@media (max-width: 1024px) {

  /* ── Tokens ── */
  :root {
    --text-display: 52px;
    --text-hero:    68px;
    --text-h2:      48px;
    --text-h3:      36px;
    --text-md:      22px;
    --space-112:    72px;
    --space-60:     40px;
  }

  /* ── Header ── */
  .site-header {
    padding: 16px var(--space-60);
  }

  .header-logo-wrap {
    width: 120px;
    height: 55px;
  }

  /* ── Hero: conteúdo ocupa mais largura no tablet ── */
  .hero__title    { max-width: 100%; }
  .hero__subtitle { max-width: 100%; }
  .hero__content  { max-width: 62%; }

  /* ── Stats bar: 3 itens em linha com flex-wrap seguro ── */
  .stats-bar__inner {
    gap: var(--space-32);
    flex-wrap: wrap;
    justify-content: space-between;
  }

  /* ── About: coluna — foto em cima, texto abaixo ── */

  .about-split {
    flex-direction: column;
  }

  /* about-b tem content primeiro no HTML → inverte para foto ficar em cima */
  .about-b .about-split {
    flex-direction: column-reverse;
  }

  .about-split__photo {
    width: 100%;
    min-height: 780px;
  }

  .about-split__content {
    width: 100%;
    min-height: auto;
  }

  .about-a .about-split__content { padding-right: var(--space-60); padding-top: 60px; padding-bottom: 60px; }
  .about-b .about-split__content { padding-right: var(--space-60); gap: 32px; padding-top: 60px; padding-bottom: 60px; }
  .about-b__stats { height: auto; gap: var(--space-28); }

  /* ── Parcerias ── */
  .parcerias-header {
    flex-direction: column;
    gap: var(--space-24);
  }

  .parcerias-cards {
    flex-direction: column;
    align-items: stretch;
  }

  .parcerias-cards .partnership-card {
    max-width: 100%;
    min-height: auto;
  }

  .partnership-card {
    min-height: auto;
    gap: 70px;
  }

  /* ── Operacional tablet: sem sticky, etapas como cards ──
     Não herdar o scroll-driven do desktop.
     Cada etapa é um bloco legível com imagem + texto.     */
  .operacional-layout {
    flex-direction: column;
    gap: 0;
  }

  .operacional-sticky {
    display: none;
  }

  .op-step-img-mobile {
    display: block;
    width: 100%;
    aspect-ratio: 16 / 9;
    object-fit: cover;
    border-radius: var(--radius-md);
    margin-top: var(--space-24);
  }

  .op-step {
    min-height: auto;
    padding: var(--space-40) 0;
    border-bottom: 1px solid var(--color-brand-green-100);
    opacity: 1 !important;
    transform: none !important;
    transition: none !important;
  }

  .op-step-desc{
    max-width: none;
  }

  .op-step:last-child {
    border-bottom: none;
  }

  .op-step__body {
    opacity: 1 !important;
    transition: none !important;
  }

  .op-step-number {
    color: var(--color-brand-green-500) !important;
    transition: none !important;
    font-size: 100px;
  }

  /* ── Compromissos: 2 colunas ── */
  .compromissos-grid {
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: auto;
    min-height: auto;
  }

  .card-producao {
    grid-column: 1 / span 2;
    grid-row: auto;
    min-height: 700px;
  }

  .card-producao__title{
    max-width: none;
  }

  /* ── Depoimentos: 2 por linha ── */
  .depoimentos-cards {
    flex-wrap: wrap;
    justify-content: center;
    gap: var(--space-24);
    padding: var(--space-40) 0;
  }

  .testimonial-card {
    max-width: calc(50% - 12px);
    min-width: 260px;
  }

  /* ── FAQ ── */
  .section-faq__inner {
    flex-direction: column;
    gap: var(--space-40);
  }

  .faq-heading { width: 100%; }
  .faq-list    { width: 100%; }

  .accordion-trigger { white-space: normal; }

  /* ── CTA ── */
  .section-cta__title { font-size: 44px; }

  .section-cta__inner{
    min-height: 500px;
  }

  /* ── Footer: 2 colunas ── */
  .footer__inner {
    flex-wrap: wrap;
   /* gap: var(--space-48);*/
  }

  .footer-col-contact h3, .footer-social__title, .footer-col-title{
    font-size: 24px;
  }

  .footer-tagline{
    font-size: 32px;
  }

  .footer-col-brand    { width: 100%; }
  .footer-col-contact  { width: calc(50% - 20px); }
  .footer-col-location { width: calc(50% - 20px); }

}

/* ══════════════════════════════════════════════════════════
   MOBILE (0 – 767px)
   ══════════════════════════════════════════════════════════ */
@media (max-width: 767px) {

  /* Tokens móvel */
  :root {
    --text-display: 40px;
    --text-hero:    36px;
    --text-h2:      36px;
    --text-h3:      28px;
    --text-h4:      20px;
    --text-lg:      18px;
    --text-md:      16px;
    --space-112: 64px;
    --space-60:  24px;
    --space-40:  28px;
  }

  /* Header mobile */
  .site-header {
    padding: 12px var(--space-24);
  }

  .header-logo-wrap {
    width: 100px;
    height: 46px;
  }

  /*.hero__video-wrap{
    transform: scale(1.7) translateY(-20.5%);
  }*/

  /* Lang-toggle mobile: exibe iniciais PT / EN */
  .lang-label-full  { display: none; }
  .lang-label-short { display: inline; }

  /* Gap menor no toggle mobile para caber no header */
  .lang-toggle { gap: var(--space-8); }
  .lang-btn    { padding: 6px 14px; font-size: 15px; }

  /* Hero mobile */
  .hero__inner {
    padding: 0 var(--space-24) var(--space-40);
  }

  .hero__content { max-width: 100%; }

  .hero__title {
    font-size: clamp(28px, 20vw, 42px);
    max-width: 100%;
  }

  .hero__subtitle { font-size: 16px; max-width: 100%; }

  /* Hero video: zoom no mobile para destacar o trator.
     transform aplicado no elemento video (não no wrapper),
     contido pelo overflow:hidden do .hero__video-wrap.
     Nenhuma outra seção é afetada.                      */
  .hero__video {
    transform: scale(1.55);
    transform-origin: center 100%;
  }

  /* Stats bar */
  .stats-bar__inner {
    flex-direction: column;
    gap: var(--space-56);
    align-items: flex-start;
    /*padding: var(--space-40) var(--space-24);*/
  }

  .stats-bar{
    background-size: 370% auto;
    background-position: 0% 12%;
  }



  /* About: herda flex-direction:column do tablet — apenas ajusta altura e padding */
  .about-split__photo {
    min-height: 400px;
  }

  .about-split__content {
    padding: var(--space-40) var(--space-24);
    min-height: auto;
  }

  .about-a .about-split__content { padding-right: var(--space-24); padding-top: 60px; padding-bottom: 60px; }
  .about-b .about-split__content { padding-right: var(--space-24); gap: 40px; padding-bottom: 60px; padding-top: 60px; }

  .about-b__stats { height: auto; gap: 40px; }

  .stat-item{
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    flex-wrap: nowrap;
    justify-content: flex-start;
    gap: var(--space-8);
  }

  .stat-item__value{
    /*font-size: var(--text-h4);*/
    font-size: 24px;
  }

  .about-b__stat-icon{
    width: 56px;
    height: 56px;
  }


  /* Parcerias header */
  .parcerias-header { align-items: flex-start; }

  .section-parcerias__inner { padding: 0 var(--space-24); }

  .section-operacional {
    padding-top: 40px;
  }

  /* Operacional mobile: single column, sem sticky */
  .operacional-layout {
    flex-direction: column;
  }

  .operacional-sticky {
    display: none;
  }

  .op-step-img-mobile {
    display: block;
    width: 100%;
    aspect-ratio: 16 / 9;
    object-fit: cover;
    border-radius: var(--radius-md);
    margin-top: var(--space-24);
  }

  .operacional-inner {
    gap: var(--space-32);
    padding: var(--space-40) var(--space-24);
  }

  .op-step {
    min-height: auto;
    padding: 40px 0;
  }

  /* Em mobile: sem muting de texto */
  .op-step__body {
    opacity: 1 !important;
    transition: none !important;
  }

  .op-step-number {
    color: var(--color-brand-green-500) !important;
    transition: none !important;
  }

  /* Compromissos grid — 1 coluna */
  .compromissos-grid {
    grid-template-columns: 1fr;
    grid-template-rows: auto;
    min-height: auto;
  }

  .card-producao {
    grid-column: 1;
    grid-row: auto;
    min-height: 700px;
  }

  .section-compromissos__inner {
    padding: var(--space-64) var(--space-24);
    gap: var(--space-40);
  }

  /* Depoimentos */
  .depoimentos-cards {
    flex-direction: column;
    align-items: stretch;
    padding: var(--space-24) 0;
  }

  .testimonial-card {
    max-width: 100%;
    min-width: 0;
  }

  .section-depoimentos__inner {
    padding: var(--space-64) var(--space-24) var(--space-40);
  }

  .testimonial-card__quote { width: 40px; }

  /* FAQ */
  .section-faq__inner {
    flex-direction: column;
    padding: var(--space-64) var(--space-24);
    gap: var(--space-32);
  }

  .faq-heading { width: 100%; }
  .faq-list { width: 100%; }

  .accordion-trigger {
    white-space: normal;
    font-size: var(--text-md);
  }

  /* CTA */
  .section-cta__title { font-size: 32px; }
  .section-cta__inner { min-height: auto; padding: 80px var(--space-24); }

  /* Footer */
  .footer__inner {
    flex-direction: column;
    gap: 60px;
    padding: var(--space-64) var(--space-24);
  }

  .footer-col-brand{
    gap: var(--space-24);
  }

  .footer-logo{
    height: 100px;
  }

  .footer-col-brand   { width: 100%; }
  .footer-col-contact { width: 100%; gap: 32px;}
  .footer-col-location { width: 100%; }

  .footer-bottom {
    flex-direction: column;
    align-items: flex-start;
    padding: var(--space-24);
    gap: var(--space-8);
  }

  .footer-contacts{
    gap: 24px;
  }

  .footer-col-contact h3, .footer-social__title, .footer-col-title{
    font-size: 20px;
  }

  .social-btn{
    width: 50px;
    height: 50px;
  }

}

/* ══════════════════════════════════════════════════════════
   DESKTOP — garante max-width e layout original
   ══════════════════════════════════════════════════════════ */
@media (min-width: 1440px) {
  .stats-bar__inner,
  .section-parcerias__inner,
  .operacional-inner,
  .section-compromissos__inner,
  .section-depoimentos__inner,
  .section-faq__inner,
  .section-cta__inner,
  .footer__inner {
    /*max-width: 1440px;*/
    margin-left: auto;
    margin-right: auto;
  }
}
