:root {
  --gna-blue: #0b1b36;
  --gna-gold: #c9a24a;
  --gna-silver: #bfc4cb;
  --gna-black: #0a0a0a;
  --gna-white: #ffffff;
  --gna-slate-text-dark: #334155;    /* Texto escuro de alto contraste sobre fundos claros (WCAG AAA) */
  --gna-slate-text-light: #e2e8f0;   /* Texto claro de alto contraste sobre fundos escuros (WCAG AAA) */
  --gna-slate-text-muted: #cbd5e1;   /* Texto secundário sobre fundos escuros */
}

html {
  scroll-behavior: smooth;
  scroll-padding-top: 100px;
}

body {
  color: var(--gna-blue);
  font-family: Hauora, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif !important;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
}

.zero-font {
  font-family: Hauora, Arial, sans-serif !important;
}

/* ==========================================================================
   HIERARQUIA TIPOGRÁFICA (UI/UX TYPOGRAPHY SCALE)
   ========================================================================== */

/* H1 - Título Hero: Máximo destaque e impacto visual */
h1,
.heading-style-h1 {
  font-family: Hauora, Arial, sans-serif !important;
  font-size: clamp(2.5rem, 5vw, 3.875rem) !important; /* 40px - 62px */
  font-weight: 400 !important; /* mesmo peso do h1 do blog (blog.css) */
  line-height: 1.14 !important;
  letter-spacing: -0.025em !important;
  color: #ffffff !important;
  margin-top: 0 !important;
  margin-bottom: 1.5rem !important;
}

/* H2 - Títulos de Seções: Tamanho e peso padronizados em todo o site */
h2,
.heading-style-h2,
.gna-pillars h2,
.section_auth .readiness_content h2,
.gna-footer h2,
.section_faqs .heading-style-h2 {
  font-family: Hauora, Arial, sans-serif !important;
  font-size: clamp(2rem, 3.2vw, 2.75rem) !important; /* 32px - 44px */
  font-weight: 400 !important; /* mesmo peso do h2 do blog (blog.css) */
  line-height: 1.22 !important;
  letter-spacing: -0.02em !important;
  margin-top: 0 !important;
  margin-bottom: 1.15rem !important;
}

/* Cores de H2 de acordo com o fundo */
.hero_section h2,
.section_founded h2,
.section_auth h2,
.section_casestudies h2,
.section_faqs h2,
.gna-footer h2,
.card_action h2,
.heading-style-h2.text-color-withe {
  color: #ffffff !important;
}
.gna-pillars h2,
.section_industries .heading-style-h2 {
  color: var(--gna-blue) !important;
}

/* H3 - Títulos de Subseções e Cards Principais */
h3,
.heading-style-h3,
.gna-pillar-copy h3,
.blog_slide-description h3,
.card_item_green h3 {
  font-family: Hauora, Arial, sans-serif !important;
  font-size: clamp(1.25rem, 1.8vw, 1.5rem) !important; /* 20px - 24px */
  font-weight: 500 !important; /* mesmo peso do .blog-card h3 (blog.css) */
  line-height: 1.3 !important;
  letter-spacing: -0.015em !important;
  margin-top: 0 !important;
}
.gna-pillar-copy h3,
.blog_slide-description h3 {
  color: var(--gna-blue) !important;
}

/* H4 & H5 - Títulos Secundários de Cards, Módulos e FAQ */
h4,
h5,
.heading-style-h4,
.heading-style-h5,
.faq_q,
.footer-card-title,
.heading_text {
  font-family: Hauora, Arial, sans-serif !important;
  font-size: 1.15rem !important; /* ~18.5px */
  line-height: 1.4 !important;
  letter-spacing: -0.01em !important;
}
h4,
h5,
.heading-style-h4,
.heading-style-h5,
.faq_q {
  font-weight: 600 !important;
}
.footer-card-title,
.heading_text {
  font-weight: 500 !important; /* original usa medium nesses dois, não semi-bold */
}

/* Eyebrows, Overlines e Badges (Contexto de Categoria) */
.gna-pillars-eyebrow,
.gna-footer-eyebrow,
.chip_lab,
.text_chip,
.text_chip_small,
.chip_link,
.chip_home,
.chip_label {
  font-family: Hauora, Arial, sans-serif !important;
  font-size: 0.8125rem !important; /* 13px */
  font-weight: 600 !important; /* mesmo peso dos chips/eyebrows do blog (blog.css) */
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  line-height: 1.2 !important;
}

/* Eyebrows acima de headlines de seção (não os badges "grey" dentro de cards) */
.chip_lab.text,
.gna-footer .gna-footer-eyebrow {
  color: var(--gna-gold) !important;
}

/* ==========================================================================
   DESCRIÇÕES E TEXTOS (BODY COPY) - LEGIBILIDADE & CONFORTO VISUAL UI/UX
   ========================================================================== */

/* Subtítulo Hero / Lead: Leitura fluida, sem cansar a vista */
.hero_section .text-size-regular {
  font-size: clamp(1.125rem, 1.35vw, 1.25rem) !important; /* 18px - 20px */
  font-weight: 400 !important;
  line-height: 1.65 !important;
  color: var(--gna-slate-text-light) !important;
  max-width: 680px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  margin-bottom: 2.25rem !important;
}

/* Intros das seções */
.gna-pillars-intro {
  font-size: 1.0625rem !important; /* 17px */
  line-height: 1.65 !important;
  color: var(--gna-slate-text-dark) !important;
  margin: 0 !important;
  max-width: 620px !important;
}

.section_auth .readiness_content p {
  font-size: 1.0625rem !important;
  line-height: 1.65 !important;
  color: var(--gna-slate-text-light) !important;
  max-width: 540px !important;
  margin: 0 !important;
}

.gna-footer-callout-copy > p:last-child {
  font-size: 1.0625rem !important;
  line-height: 1.65 !important;
  color: var(--gna-slate-text-light) !important;
  max-width: 580px !important;
  margin: 0 !important;
}

/* Descrições em Cards e Seções Gerais (Body Padrão: 16px, line-height 1.65) */
.gna-pillar-copy p,
.blog_slide-items p,
.blog_slide-items .text-style-2lines,
.zh-cs-body,
.text-size-regular.zh-cs-body {
  font-size: 0.9375rem !important; /* 15px */
  line-height: 1.6 !important;
  letter-spacing: normal !important;
  color: var(--gna-slate-text-dark) !important;
}

.gna-pillar-copy p {
  max-width: 270px !important;
  margin: 0 !important;
}

/* Descrições em superfícies escuras */
.section_founded .light,
.section_founded .text-color-withe.light,
.section_founded p,
.card_action .text-color-gery,
.section_faqs .text-color-gery,
.accordion-item-content-details .text-size-medium,
.gna-footer p,
.gna-footer-brand p,
.gna-footer-note {
  font-size: 1rem !important;
  line-height: 1.65 !important;
  color: var(--gna-slate-text-light) !important;
}

.card_action .text-color-gery {
  color: var(--gna-slate-text-muted) !important;
}

/* FAQ: Pergunta e Resposta */
.section_faqs .accordion-item-title .faq_q {
  font-size: 1.15rem !important;
  font-weight: 600 !important;
  color: #ffffff !important;
  line-height: 1.4 !important;
}
.section_faqs .accordion-item-content-details {
  padding-top: 10px !important;
  padding-bottom: 14px !important;
}
.section_faqs .accordion-item-content-details .text-size-medium,
.section_faqs .text-color-gery {
  font-size: 1rem !important;
  line-height: 1.7 !important;
  color: var(--gna-slate-text-muted) !important;
}

/* Cards com texto em 2 linhas (Integrantes) */
.text-weight-medium.text-style-2lines {
  font-size: 0.9375rem !important;
  line-height: 1.6 !important;
  color: var(--gna-slate-text-dark) !important;
  font-weight: 500 !important; /* .text-weight-medium original usa font-weight--medium (500) */
}
.section_founded .text-weight-medium.text-style-2lines {
  color: var(--gna-slate-text-light) !important;
}

/* Rodapé */
.gna-footer-column h3 {
  margin: 0 0 10px !important;
  color: var(--gna-gold) !important;
  font-family: Hauora, Arial, sans-serif !important;
  font-size: 0.8125rem !important;
  font-weight: 600 !important; /* mesmo peso do .gna-footer-column h3 no blog (blog.css) */
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
}
.gna-footer-column a,
.gna-footer-bottom a {
  color: var(--gna-slate-text-muted) !important;
  text-decoration: none !important;
  font-size: 0.9375rem !important;
  font-weight: 400 !important;
  line-height: 1.5 !important;
  transition: color 0.2s ease !important;
}
.gna-footer-column a:hover,
.gna-footer-bottom a:hover {
  color: var(--gna-gold) !important;
}
.gna-footer-bottom small {
  color: #94a3b8 !important;
  font-size: 0.8125rem !important;
}
.gna-footer-bottom .gna-footer-credit {
  color: var(--gna-slate-text-muted) !important;
  white-space: nowrap !important;
}
.gna-footer-bottom .gna-footer-credit strong {
  color: #ffffff !important;
  font-weight: 600 !important;
}
.gna-footer-bottom .gna-footer-credit:hover strong {
  color: var(--gna-gold) !important;
}

/* ==========================================================================
   COMPONENTES VISUAIS & LAYOUT
   ========================================================================== */

.hero_section.hero_bg {
  background: var(--gna-blue) !important;
}
.hero_section > .zh-hero-unicorn {
  filter: grayscale(1) sepia(0.5);
  opacity: 0.15;
}
.hero_section:before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: radial-gradient(ellipse at 45% 60%, rgba(201, 162, 74, 0.13), transparent 58%);
}
.hero_section:after {
  content: "";
  position: absolute;
  left: -15%;
  right: -15%;
  height: 48%;
  bottom: -20%;
  border: 1px solid rgba(201, 162, 74, 0.3);
  border-radius: 50%;
  pointer-events: none;
}
.hero_section .text_nubmer {
  color: var(--gna-gold) !important;
}
.hero_section .text_chip_small,
.hero_section .chip_link,
.hero_section .chip_home,
.hero_section .chip_label {
  background: rgba(201, 162, 74, 0.12) !important;
  color: #ffffff !important;
}
.hero_section .text_chip {
  background: rgba(201, 162, 74, 0.22) !important;
  color: #ffffff !important;
}
.hero_section .text_chip_link {
  background: rgba(201, 162, 74, 0.12) !important;
  color: #ffffff !important;
  border-color: rgba(201, 162, 74, 0.3) !important;
}

.nav_logo_item {
  object-fit: contain;
}
.logo_footer {
  width: 200px !important;
  height: auto !important;
  object-fit: contain;
}
.gna-monograma {
  width: 70px !important;
  height: auto !important;
  object-fit: contain;
}
.signle_brand {
  width: 70px !important;
  max-width: 70px !important;
  height: auto !important;
}

.navbar {
  background: rgba(11, 27, 54, 0.97) !important;
}
.navbar .nav_link,
.navbar .menu-link,
.navbar .nav-menu_link {
  color: #ffffff !important;
}
.nav_menu_buttons .gna-nav-blog {
  color: #ffffff !important;
  text-decoration: none;
  font: 600 14px Hauora, Arial, sans-serif;
  white-space: nowrap;
  align-self: center;
  margin-right: 22px;
  transition: color 0.2s;
}
.nav_menu_buttons .gna-nav-blog:hover {
  color: var(--gna-gold) !important;
}
.nav_menu_buttons .gna-nav-blog:focus-visible {
  outline: 2px solid var(--gna-gold);
  outline-offset: 4px;
}

@media (min-width: 992px) {
  .navigation.navbar {
    background: transparent !important;
    box-shadow: none !important;
  }
  .navigation_container .nav_menu_item,
  .navigation_container.is-scrolled .nav_menu_item {
    left: 132px !important;
    right: auto !important;
    transform: none !important;
  }
}

.text-color-green,
.text-green,
.text_green,
.text-learn-green {
  color: var(--gna-gold) !important;
}
.cta-main,
.zh-cs-cta-pill,
.zh-cs-cta-icon {
  background: var(--gna-gold) !important;
  color: var(--gna-blue) !important;
  border-color: var(--gna-gold) !important;
}
.cta-main:hover,
.zh-cs-cta:hover .zh-cs-cta-pill {
  background: #dfbd69 !important;
}
.nav_menu,
.nav_component,
.nav-dropdown,
.nav_dropdown-list {
  --green: #c9a24a;
}

.section_founded,
.section_founded .card_green {
  background: var(--gna-blue) !important;
}
.section_founded .text-color-withe {
  color: #ffffff !important;
}
.card_action.light {
  background: var(--gna-blue) !important;
}
.card_action .card_item_green {
  background: var(--gna-blue) !important;
}
.section_founded .card_action {
  background: #162b4d !important;
  box-shadow: inset 0 0 0 1px rgba(201, 162, 74, 0.18);
}
.section_founded .card_item_green,
.section_founded .card_action .image_has_overlap {
  background: #162b4d !important;
}
.card_action .drak {
  color: #ffffff !important;
}
.card_action > .image_has_overlap.image {
  opacity: 0 !important;
}
.card_action .gna-card-art {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.card_action .image_has_overlap {
  background: var(--gna-blue);
}
.section_solutions .chip_lab.overlaping {
  background: var(--gna-blue) !important;
  color: var(--gna-gold) !important;
}

/* Seção Chancela / Readiness */
.section_auth .cta_card.is-readiness {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(0, 0.9fr);
  align-items: center;
  gap: clamp(32px, 5vw, 72px);
  min-height: 520px;
  height: auto;
  margin: 0;
  padding: clamp(40px, 5vw, 70px);
  background: var(--gna-blue) !important;
  background-image: none !important;
}
.section_auth .readiness_content {
  width: 100%;
  height: auto;
  padding: 0;
  display: flex;
  justify-content: center;
  align-items: flex-start;
}
.section_auth .readiness_content > .div_left {
  width: 100%;
}
.section_auth .readiness_content .div_left.element_center {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  max-width: 540px;
}
.section_auth .readiness_content .cta-main {
  margin-top: 30px;
}
.section_auth .readiness_photo {
  width: 100%;
  height: 100%;
  min-height: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}
.section_auth .readiness_book {
  position: static;
  inset: auto;
  display: block;
  width: min(100%, 440px);
  max-width: 100%;
  height: auto;
  max-height: none;
  margin: 0;
  object-fit: contain !important;
  filter: none !important;
  transform: none !important;
  cursor: default;
}

@media (max-width: 900px) {
  .section_auth .cta_card.is-readiness {
    grid-template-columns: 1fr;
    min-height: 0;
    padding: clamp(32px, 5vw, 52px);
  }
  .section_auth .readiness_content .div_left.element_center {
    max-width: 640px;
  }
  .section_auth .readiness_photo {
    height: auto;
    justify-content: center;
  }
  .section_auth .readiness_book {
    width: min(100%, 420px);
  }
}
@media (max-width: 600px) {
  .section_auth .cta_card.is-readiness {
    gap: 28px;
    padding: 30px 24px;
  }
  .section_auth .readiness_content .cta-main {
    margin-top: 24px;
  }
  .section_auth .readiness_book {
    width: min(100%, 340px);
  }
}

.image_card-industries {
  object-fit: cover !important;
}
.zh-cs-logo-panel {
  background: var(--gna-blue) !important;
}
.zh-cs-logo {
  filter: none !important;
  max-width: 78% !important;
  max-height: 120px !important;
  object-fit: contain;
}
.zh-cs-copy .icon_arrow.ruonder {
  background: var(--gna-blue);
  object-fit: contain;
  padding: 7px;
}
.comparison-awards_img {
  filter: none !important;
}
.zh-cgrid_logo {
  width: 170px !important;
  height: 42px !important;
  max-width: 90% !important;
  max-height: 42px !important;
}
.region-switcher[hidden],
[hidden],
#region-switcher,
#region-dropdown,
#region-btn {
  display: none !important;
}
.footer .zero-font,
.zero-font {
  color: var(--gna-gold) !important;
}
section[id] {
  scroll-margin-top: 95px;
}
.accordion-item-title:focus-visible {
  outline: 2px solid var(--gna-gold);
  outline-offset: 3px;
  border-radius: 12px;
}

/* ==========================================================================
   SEÇÃO PILARES (GNA PILLARS)
   ========================================================================== */

.gna-pillars {
  overflow: hidden;
  background: #f6f4f0;
  color: var(--gna-blue);
  padding: clamp(64px, 7vw, 112px) 0 72px;
}
.gna-pillars-inner {
  max-width: 1440px;
  margin: 0 auto;
  padding: 0 clamp(20px, 5vw, 64px);
}
.gna-pillars-header {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 24px;
  margin-bottom: 34px;
}
.gna-pillars-heading {
  max-width: 700px;
}
.gna-pillars-eyebrow {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 0 0 20px;
  color: var(--gna-gold);
}
.gna-pillars-eyebrow span {
  width: 24px;
  height: 1px;
  background: var(--gna-gold);
  display: inline-block;
}
.gna-pillars-controls {
  display: flex;
  gap: 10px;
  padding-bottom: 4px;
}
.gna-pillars-controls button {
  display: grid;
  place-items: center;
  width: 46px;
  height: 46px;
  border: 1px solid #bac1ca;
  border-radius: 50%;
  background: transparent;
  color: var(--gna-blue);
  font-size: 22px;
  cursor: pointer;
  transition: background 0.2s, color 0.2s, border-color 0.2s, transform 0.2s;
}
.gna-pillars-controls button:hover {
  background: var(--gna-blue);
  color: #ffffff;
  border-color: var(--gna-blue);
  transform: translateY(-2px);
}
.gna-pillars-controls button:focus-visible,
.gna-pillars-pause:focus-visible {
  outline: 2px solid var(--gna-gold);
  outline-offset: 3px;
}
.gna-showcase {
  overflow: visible !important;
}
.gna-showcase .swiper-wrapper {
  align-items: stretch;
}
.gna-pillar-card {
  position: relative;
  display: flex !important;
  flex-direction: column;
  justify-content: space-between;
  box-sizing: border-box;
  min-height: 310px !important;
  padding: 28px 26px 26px;
  border-radius: 20px;
  background: #ffffff;
  box-shadow: 0 10px 30px rgba(11, 27, 54, 0.065);
  border: 1px solid rgba(11, 27, 54, 0.055);
  transition: transform 0.3s, box-shadow 0.3s;
}
.gna-pillar-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 18px 40px rgba(11, 27, 54, 0.13);
}
.gna-pillar-top {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
}
.gna-pillar-number {
  font-size: 13px;
  letter-spacing: 0.08em;
  font-weight: 700;
  color: #a68135;
}
.gna-pillar-orbit {
  position: relative;
  width: 46px;
  height: 46px;
  border: 1px solid rgba(201, 162, 74, 0.5);
  border-radius: 50%;
  transform: rotate(-28deg);
}
.gna-pillar-orbit:before {
  content: "";
  position: absolute;
  left: -7px;
  right: -7px;
  top: 20px;
  border-top: 1px solid var(--gna-gold);
  transform: rotate(-25deg);
}
.gna-pillar-rule {
  width: 34px;
  height: 2px;
  background: var(--gna-gold);
  margin-top: 28px;
}
.gna-pillars-footer {
  display: flex;
  align-items: center;
  gap: 20px;
  margin-top: 27px;
}
.gna-pillars-count {
  min-width: 54px;
  font-size: 12px;
  letter-spacing: 0.07em;
  color: #6a7485;
}
.gna-pillars-current {
  color: var(--gna-blue);
  font-weight: 600;
}
.gna-pillars-progress {
  height: 2px;
  max-width: 220px;
  flex: 1;
  background: #d9d8d4;
  overflow: hidden;
}
.gna-pillars-progress span {
  display: block;
  height: 100%;
  width: 8.333%;
  background: var(--gna-gold);
  transition: width 0.45s;
}
.gna-pillars-pause {
  border: 0;
  background: none;
  padding: 8px 0 8px 8px;
  font-size: 12px;
  color: #647188;
  cursor: pointer;
}
.gna-pillars-pause:hover {
  color: var(--gna-blue);
}
.gna-showcase:not(.swiper-initialized) {
  overflow-x: auto !important;
  scroll-snap-type: x mandatory;
}
.gna-showcase:not(.swiper-initialized) .swiper-wrapper {
  gap: 16px;
}
.gna-showcase:not(.swiper-initialized) .swiper-slide {
  flex: 0 0 calc((100% - 48px) / 4);
  scroll-snap-align: start;
}

@media (max-width: 991px) {
  .gna-showcase:not(.swiper-initialized) .swiper-slide {
    flex-basis: calc((100% - 16px) / 2);
  }
}
@media (max-width: 600px) {
  .gna-pillars {
    padding: 64px 0 52px;
  }
  .gna-pillars-header {
    align-items: flex-start;
  }
  .gna-pillars-controls {
    align-self: flex-end;
  }
  .gna-pillars-controls button {
    width: 40px;
    height: 40px;
  }
  .gna-pillar-card {
    min-height: 272px !important;
    padding: 22px;
  }
  .gna-showcase:not(.swiper-initialized) .swiper-slide {
    flex-basis: 83%;
  }
  .gna-pillars-footer {
    margin-top: 20px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .gna-pillar-card,
  .gna-pillars-controls button {
    transition: none;
  }
}

/* ==========================================================================
   RODAPÉ (GNA FOOTER)
   ========================================================================== */

.gna-footer {
  box-sizing: border-box;
  background: var(--gna-blue) !important;
  color: #ffffff !important;
  padding: clamp(64px, 7vw, 104px) clamp(20px, 5vw, 64px) 26px;
}
.gna-footer * {
  box-sizing: border-box;
}
.gna-footer-wrap {
  max-width: 1200px;
  margin: 0 auto;
}
.gna-footer-callout {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 40px;
  padding-bottom: clamp(44px, 6vw, 76px);
  border-bottom: 1px solid rgba(191, 196, 203, 0.2);
}
.gna-footer-callout-copy {
  max-width: 660px;
}
.gna-footer-cta {
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  gap: 28px;
  flex: none;
  min-height: 50px;
  padding: 0 20px 0 24px;
  border-radius: 999px;
  background: var(--gna-gold);
  color: var(--gna-blue) !important;
  font-size: 13px;
  font-weight: 600;
  text-decoration: none;
  transition: background 0.2s, transform 0.2s;
}
.gna-footer-cta:hover {
  background: #dfbd69;
  transform: translateY(-2px);
}
.gna-footer-cta span {
  font-size: 20px;
  font-weight: 400;
}
.gna-footer-body {
  display: grid;
  grid-template-columns: 1.2fr 1fr;
  gap: 64px;
  padding: clamp(44px, 5vw, 68px) 0 clamp(54px, 6vw, 84px);
}
.gna-footer-logo {
  display: block;
  width: 148px;
  max-width: 100%;
  height: auto;
  object-fit: contain;
}
.gna-footer-nav {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 36px;
}
.gna-footer-column {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 14px;
}
.gna-footer-bottom {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  padding-top: 24px;
  border-top: 1px solid rgba(191, 196, 203, 0.2);
}
.gna-footer a:focus-visible {
  outline: 2px solid var(--gna-gold);
  outline-offset: 4px;
}

@media (max-width: 760px) {
  .gna-footer-callout {
    align-items: flex-start;
    flex-direction: column;
    gap: 28px;
  }
  .gna-footer-body {
    grid-template-columns: 1fr;
    gap: 40px;
  }
  .gna-footer-brand p {
    margin-top: 22px;
  }
}
@media (max-width: 520px) {
  .gna-footer {
    padding: 64px 20px 24px;
  }
  .gna-footer-nav {
    gap: 18px;
  }
  .gna-footer-column {
    gap: 13px;
  }
  .gna-footer-bottom {
    align-items: stretch;
    flex-direction: column;
    gap: 12px;
  }
  .gna-footer-bottom .gna-footer-credit {
    align-self: flex-end;
  }
}
@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }
}
