/*
 * Banner (hero) da v6 no celular e no tablet: fundo creme liso, foto recortada abaixo do logo
 * (<img class="gc-hero-foto-mobile"> no index.html) e textos sem nada por trás.
 * Desktop (acima de 1024px) fica como o original do Elementor.
 */
/* Foto do hero: só aparece no celular e no tablet (no desktop ela é o fundo da section) */
.gc-hero-foto-mobile { display: none; }
/* Hero empilhado no celular e no tablet: fundo creme liso, foto recortada abaixo do logo, textos sem nada por trás */
@media (max-width: 1024px) {
  body .elementor-1663 .elementor-element.elementor-element-93944dc {
    --min-height: 0px;
    --padding-top: 24px;
    --padding-bottom: 28px;
    --padding-left: 20px;
    --padding-right: 20px;
  }
  body .elementor-1663 .elementor-element.elementor-element-93944dc:not(.elementor-motion-effects-element-type-background) {
    background-image: none;
    background-color: #F9F3E8;
  }
  body .elementor-1663 .elementor-element.elementor-element-a9c33d9 { --gap: 12px 12px; --row-gap: 12px; }
  body .elementor-1663 .elementor-element.elementor-element-7d07a5f { --container-widget-width: 36%; width: 36%; max-width: 36%; }
  .gc-hero-foto-mobile {
    display: block; width: 100%; margin: 4px 0 8px;
    aspect-ratio: 16 / 10; border-radius: 16px; overflow: hidden;
  }
  .gc-hero-foto-mobile img { width: 100%; height: 100%; object-fit: cover; object-position: 88% 40%; display: block; }
  body .elementor-1663 .elementor-element.elementor-element-5e1128c .elementor-heading-title,
  body .elementor-1663 .elementor-element.elementor-element-0ae07b5 .elementor-heading-title { font-size: 27px; line-height: 1.15em; }
  body .elementor-1663 .elementor-element.elementor-element-0ae07b5 > .elementor-widget-container { margin-top: -8px; }
  body .elementor-1663 .elementor-element.elementor-element-48a7cc8 .elementor-heading-title { font-size: 15px; line-height: 1.5em; }
  body .elementor-1663 .elementor-element.elementor-element-db6a698 { --align-self: stretch; width: 100%; }
  body .elementor-1663 .elementor-element.elementor-element-db6a698 > .elementor-widget-container { margin-top: 4px; }
  body .elementor-1663 .elementor-element.elementor-element-db6a698 .elementor-button { width: 100%; padding: 15px 20px; font-size: 15px; }
  body .elementor-1663 .elementor-element.elementor-element-6d0055d { --container-widget-width: 100%; width: 100%; max-width: 100%; }
  body .elementor-1663 .elementor-element.elementor-element-6d0055d .elementor-icon-list-items.elementor-inline-items {
    display: grid; grid-template-columns: 1fr 1fr; gap: 8px 10px; margin-inline: 0;
  }
  body .elementor-1663 .elementor-element.elementor-element-6d0055d .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item { margin-inline: 0; }
  body .elementor-1663 .elementor-element.elementor-element-6d0055d .elementor-icon-list-item > .elementor-icon-list-text { font-size: 12.5px; line-height: 1.35em; }
}
/* Tablet (768-1024px): mesma estrutura empilhada, com texto e foto maiores */
@media (min-width: 768px) and (max-width: 1024px) {
  body .elementor-1663 .elementor-element.elementor-element-93944dc { --padding-top: 40px; --padding-bottom: 44px; --padding-left: 48px; --padding-right: 48px; }
  body .elementor-1663 .elementor-element.elementor-element-a9c33d9 { --width: 100%; --gap: 16px 16px; --row-gap: 16px; }
  body .elementor-1663 .elementor-element.elementor-element-7d07a5f { --container-widget-width: 22%; width: 22%; max-width: 22%; }
  .gc-hero-foto-mobile { aspect-ratio: 16 / 8; border-radius: 20px; }
  body .elementor-1663 .elementor-element.elementor-element-5e1128c .elementor-heading-title,
  body .elementor-1663 .elementor-element.elementor-element-0ae07b5 .elementor-heading-title { font-size: 40px; }
  body .elementor-1663 .elementor-element.elementor-element-48a7cc8 .elementor-heading-title { font-size: 19px; }
  body .elementor-1663 .elementor-element.elementor-element-db6a698 { --align-self: flex-start; width: auto; }
  body .elementor-1663 .elementor-element.elementor-element-db6a698 .elementor-button { width: auto; padding: 18px 48px; font-size: 16px; }
  body .elementor-1663 .elementor-element.elementor-element-6d0055d .elementor-icon-list-items.elementor-inline-items { grid-template-columns: repeat(4, auto); justify-content: start; gap: 8px 24px; }
  body .elementor-1663 .elementor-element.elementor-element-6d0055d .elementor-icon-list-item > .elementor-icon-list-text { font-size: 14px; }
}
