/* QA mobile — Dra. Dellaquila (#01–#13) */
:root {
  --qa-gold: #dbb42c;
  --qa-ivory: #fff8e1;
  --qa-navy: #01222f;
  --qa-footer: #05556c;
}

/* Textos brancos do site → Ivory Glow #FFF8E1 */
body,
.body,
.body-2,
.body-3,
.body-4,
.body-5,
.body-6 {
  color: var(--qa-ivory) !important;
}

.hh-heading,
.ha-heading,
.hp-heading,
.hp-inner-heading,
.hv-header-heading,
.footer-heading,
.in-heading,
.ih-heading,
.ph-heading-wrapper h1,
.home-spot .heading,
.heading,
.a11y-stat-number,
.ah-content-heading,
.hs-text,
.paragraph-20px,
.paragraph-30px,
.paragraph-35px,
.hv-column-text,
.a11y-h5-lock,
.in-text,
.hp-inner,
.pb-wrapper,
.pb-text,
.text-block,
.text-block-4,
.in-wrapper,
.ih-first-row-link,
.link-span,
.white,
.ha-paragraph,
.hp-paragraph,
.hv-header,
.ph-paragraph,
.hh-content {
  color: var(--qa-ivory) !important;
}

.hp-heading strong,
.hv-header-heading strong,
.footer-heading strong,
.a11y-h5-lock strong,
.hv-column-text strong {
  color: inherit !important;
}

.hv-column-text,
.hv-heading-card-text {
  color: #fff8e1cc !important;
}

/* Fundos claros continuam com texto escuro */
.section.bg-white,
.section.bg-white :is(h1, h2, h3, h4, p, div, span, strong, em),
.at-heading,
.av-heading,
.about-team,
.about-values,
.button-card-big,
.button-card-big div,
.navbar-menu-link,
.in-badge,
.in-badge div {
  color: #0d0a09 !important;
}

.button-card-big,
.button-card-big div {
  color: #000 !important;
}

.at-heading {
  color: var(--azul-petróleo, #01222f) !important;
}

.in-badge,
.in-badge div {
  color: var(--qa-navy) !important;
}

.home-venture .paragraph-2 {
  color: #97d3d3 !important;
}

/* #01 — acento em EFICIÊNCIA: Thunder do export está ausente; Manrope tem o glifo */
.hh-heading {
  font-family: Thunder, Manrope, Montserrat, sans-serif;
}

/* #06 — rodapé: teal #05556C */
.container.no-bottom-padding,
.container-3.no-bottom-padding,
.fm-background-border {
  background-color: var(--qa-footer) !important;
  border-color: var(--qa-footer) !important;
}

.footer-middle,
.footer-middle :is(a, div, p),
.footer-link,
.footer-bottom,
.footer-bottom :is(a, div, p) {
  color: var(--qa-ivory) !important;
}

.footer-text,
.footer-bottom .footer-text,
.footer-middle .footer-text {
  color: #000 !important;
}

.fm-inner .image-2,
.fm-inner .image-5 {
  filter: brightness(0) invert(1);
}

.w-webflow-badge {
  display: none !important;
  visibility: hidden !important;
  pointer-events: none !important;
}

.footer-bottom {
  gap: 15px !important;
}

/* #12 — botões/badges de Serviços */
.in-badge {
  background-color: var(--qa-gold) !important;
  background-image: none !important;
  color: var(--qa-navy) !important;
}

.in-badge div {
  color: var(--qa-navy) !important;
}

/* #10 — remover o 7 entre o título */
.ph-heading-wrapper .a11y-count-lock {
  display: none !important;
}

/* Home / Sobre Nós: as 3 fotos com o mesmo tamanho */
.home-about .ha-images {
  display: flex;
  align-items: stretch;
  justify-content: space-between;
}

.home-about .ha-image,
.home-about .ha-image._1 {
  flex: 1 1 0;
  width: 33.333% !important;
  max-width: none !important;
  height: 420px !important;
  object-fit: cover;
  object-position: center;
}

/* Home / Áreas: fotos da galeria com o mesmo tamanho */
.home-portfolio .hp-image-wrapper {
  display: flex;
  align-items: stretch;
}

.home-portfolio .hp-image,
.home-portfolio .hp-image._1,
.home-portfolio .hp-image._2 {
  flex: 1 1 0;
  width: 33.333% !important;
  max-width: none !important;
  height: 420px !important;
  object-fit: cover;
  object-position: center;
}

.home-portfolio .hp-image-left,
.home-portfolio .hp-image-right {
  width: 180px !important;
  height: 220px !important;
  object-fit: cover;
  object-position: center;
}

/* Entre em Contato: galeria com fotos no mesmo tamanho (4:3) */
.footer-carousel,
.footer-carousel-wrapper {
  align-items: center !important;
}

.footer-carousel-wrapper {
  margin-top: 0 !important;
}

.footer-image,
.footer-image._1,
.footer-image._2,
.footer-image._3,
.footer-image._4 {
  width: 360px !important;
  height: 270px !important;
  max-width: none !important;
  margin-bottom: 0 !important;
  object-fit: cover;
  object-position: center;
  flex: none;
}

/* Títulos display: quebrar linha em vez de vazar */
.hp-heading,
.ha-heading,
.footer-heading,
.hv-header-heading,
.av-heading,
.at-heading,
.ih-heading,
.ph-heading-wrapper h1,
.hp-inner-heading {
  max-width: 100%;
  white-space: normal;
  overflow-wrap: break-word;
  overflow: visible;
}

@media screen and (max-width: 767px) {
  /* #01 — logo menor (não usar .image sozinha: no mobile ela vira 80px dos ícones) */
  .nav-brand .image {
    width: 118px !important;
    max-width: 118px !important;
    height: auto !important;
    flex: none;
  }

  /* #02 — citação cabe na bola */
  .hs-content {
    max-width: min(72vw, 280px);
    padding-left: 16px;
    padding-right: 16px;
  }

  .hs-content .heading {
    font-size: 16px !important;
    line-height: 1.35 !important;
    margin-bottom: 10px;
    font-style: italic;
  }

  .hs-text,
  .hs-text .bold-text-8 {
    font-size: 13px !important;
  }

  /* #04 #05 #08 #10 — títulos grandes, mas visíveis */
  .ha-heading,
  .hp-heading,
  .av-heading {
    font-size: clamp(42px, 12vw, 68px) !important;
    line-height: 0.9 !important;
  }

  .footer-header {
    flex-flow: column !important;
    align-items: flex-start !important;
  }

  .footer-heading {
    width: 100% !important;
    max-width: 100% !important;
    font-size: clamp(28px, 8.4vw, 42px) !important;
    line-height: 1.05 !important;
    padding-top: 0.12em;
  }

  .footer-link {
    white-space: normal;
  }

  .fm-inner,
  .fm-inner .container-2 {
    display: flex !important;
    flex-direction: column;
    align-items: center !important;
    justify-content: center;
    text-align: center;
    width: 100%;
  }

  .fm-inner .image-2,
  .fm-inner .image-5 {
    width: 90% !important;
    max-width: 90%;
    height: auto !important;
    display: block;
    margin: 0 auto;
  }

  .footer-links {
    align-items: center !important;
    text-align: center;
    width: 100%;
  }

  /* Home / Nossa atuação: textos menores no mobile, no padrão do site */
  .home-venture .hv-header-heading {
    max-width: 100%;
    font-size: clamp(32px, 9vw, 48px) !important;
    line-height: 0.95 !important;
  }

  .home-venture .paragraph-30px {
    font-size: 16px !important;
    line-height: 1.4 !important;
    max-width: 100%;
  }

  .home-venture .a11y-h5-lock,
  .home-venture .bold-text-2,
  .home-venture .bold-text-3,
  .home-venture .bold-text-4,
  .home-venture .bold-text-5,
  .home-venture .bold-text-6,
  .home-venture .bold-text-7 {
    font-size: 22px !important;
    line-height: 1.15 !important;
  }

  .home-venture .paragraph-2 {
    font-size: 14px !important;
    padding-top: 0 !important;
    margin-top: -5px !important;
  }

  .home-venture .hv-column-text,
  .home-venture .hv-column-text strong {
    font-size: 15px !important;
    line-height: 1.3 !important;
  }

  .home-venture .hv-column-border {
    height: auto !important;
  }

  .at-heading {
    font-size: clamp(52px, 16vw, 88px) !important;
    line-height: 0.85 !important;
  }

  .ph-heading-wrapper h1,
  .ih-heading {
    font-size: clamp(40px, 11vw, 64px) !important;
    line-height: 0.9 !important;
  }

  .hp-inner-heading {
    font-size: clamp(32px, 11vw, 52px) !important;
    line-height: 0.9 !important;
    padding-top: 12px;
  }

  /* #07 — números visíveis */
  .a11y-stat-number {
    font-size: clamp(48px, 15vw, 76px) !important;
    line-height: 0.9 !important;
  }

  /* #03 — fotos da home no mesmo tamanho */
  .home-about .ha-images {
    flex-direction: column;
    align-items: stretch;
  }

  .home-about .ha-image,
  .home-about .ha-image._1 {
    width: 100% !important;
    height: 220px !important;
    object-fit: cover;
  }

  .hp-image-wrapper {
    flex-direction: column;
    align-items: stretch;
  }

  .home-portfolio .hp-image,
  .home-portfolio .hp-image._1,
  .home-portfolio .hp-image._2 {
    width: 100% !important;
    height: 220px !important;
    object-fit: cover;
  }

  .home-portfolio .hp-image-left,
  .home-portfolio .hp-image-right {
    width: 140px !important;
    height: 180px !important;
  }

  /* #05 #09 — fotos de contato no mesmo tamanho */
  .footer-image,
  .footer-image._1,
  .footer-image._2,
  .footer-image._3,
  .footer-image._4 {
    width: 240px !important;
    height: 180px !important;
    max-width: none !important;
    margin-bottom: 0 !important;
    object-fit: cover;
    object-position: center;
  }

  /* Detalhe do serviço: sem sticky/fixed, fontes menores, conteúdo rolável */
  .ic-content {
    position: relative !important;
    inset: auto !important;
    top: auto !important;
    right: auto !important;
    bottom: auto !important;
    left: auto !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: visible !important;
    padding: 28px 16px 40px !important;
  }

  .ic-block,
  .ic-wrapper,
  .ic-left,
  .ic-right,
  .ic-image-wrapper {
    height: auto !important;
    max-height: none !important;
    overflow: visible !important;
  }

  .ic-right {
    max-width: 100% !important;
    width: 100% !important;
  }

  .ic-heading {
    font-size: clamp(24px, 7.5vw, 32px) !important;
    line-height: 1.15 !important;
    margin-bottom: 8px !important;
  }

  .ic-text {
    font-size: 15px !important;
    line-height: 1.4 !important;
  }

  .ic-right-heading {
    font-size: 13px !important;
    line-height: 1.25 !important;
  }

  .ic-content .paragraph-25px {
    font-size: 15px !important;
    line-height: 1.4 !important;
    padding: 14px 16px !important;
    margin-top: 8px !important;
  }

  .investors-cms,
  .container.c-investor-cms {
    height: auto !important;
    max-height: none !important;
    overflow: visible !important;
  }

  .ic-content.is-closed {
    display: none !important;
  }

  .investors-cms:has(.ic-content.is-closed) {
    padding-bottom: 70vh;
  }

  .in-wrapper {
    scroll-margin-top: 88px;
    padding-top: 18px !important;
    padding-bottom: 18px !important;
    grid-column-gap: 12px !important;
  }

  .in-wrapper.qa-origin-flash {
    position: relative;
  }

  .in-wrapper.qa-origin-flash::after {
    content: "";
    position: absolute;
    inset: 0;
    background: #fff;
    pointer-events: none;
    z-index: 0;
    animation: qa-origin-psyche 2.2s ease-in-out 1 forwards;
  }

  .in-wrapper.qa-origin-flash > * {
    position: relative;
    z-index: 1;
  }

  @keyframes qa-origin-psyche {
    0%, 100% { opacity: 0; }
    40% { opacity: 0.18; }
  }

  .in-heading {
    font-size: 22px !important;
    line-height: 1.25 !important;
  }

  .in-badge {
    font-size: 12px !important;
    padding: 5px 12px !important;
  }

  .in-wrapper .in-text {
    display: block !important;
    opacity: 1 !important;
    width: 100%;
    flex-basis: 100%;
    font-size: 13px !important;
    line-height: 1.4 !important;
    font-weight: 400;
    color: var(--qa-ivory) !important;
  }
}

@media screen and (max-width: 479px) {
  .nav-brand .image {
    width: 96px !important;
    max-width: 96px !important;
    height: auto !important;
  }

  .hh-heading {
    font-size: 11vw !important;
    line-height: 0.95;
  }

  .hs-content .heading {
    font-size: 14px !important;
    line-height: 1.3 !important;
  }

  .ha-heading,
  .hp-heading {
    font-size: clamp(36px, 10.5vw, 48px) !important;
  }

  .footer-heading {
    font-size: clamp(26px, 8vw, 36px) !important;
  }

  .at-heading {
    font-size: clamp(44px, 14vw, 64px) !important;
  }

  .ph-heading-wrapper h1,
  .ih-heading {
    font-size: clamp(34px, 10vw, 48px) !important;
  }

  .hp-inner-heading {
    font-size: clamp(28px, 9.5vw, 40px) !important;
  }

  .a11y-stat-number {
    font-size: clamp(40px, 14vw, 56px) !important;
  }

  .home-venture .hv-header-heading {
    font-size: clamp(28px, 8.5vw, 40px) !important;
  }

  .home-venture .paragraph-30px {
    font-size: 15px !important;
  }

  .home-venture .a11y-h5-lock,
  .home-venture .bold-text-2,
  .home-venture .bold-text-3,
  .home-venture .bold-text-4,
  .home-venture .bold-text-5,
  .home-venture .bold-text-6,
  .home-venture .bold-text-7 {
    font-size: 20px !important;
  }

  .home-venture .paragraph-2 {
    font-size: 13px !important;
    padding-top: 0 !important;
    margin-top: -5px !important;
  }

  .home-venture .hv-column-text,
  .home-venture .hv-column-text strong {
    font-size: 14px !important;
  }

  .ic-heading {
    font-size: clamp(22px, 7vw, 28px) !important;
  }

  .ic-text,
  .ic-content .paragraph-25px {
    font-size: 14px !important;
  }

  .in-heading {
    font-size: 20px !important;
  }

  .in-badge {
    font-size: 11px !important;
    padding: 4px 10px !important;
  }
}
