/* Invest Master — ritmo vertical entre secções (padding simétrico).
   O tema original usava .rts-section-gapTop só em cima e .rts-section-gapBottom
   só em baixo, o que alternava blocos “colados” e blocos com o dobro do espaço.
   Aqui as três utilities passam a usar o mesmo bloco top+bottom, nos mesmos
   breakpoints do .rts-section-gap. O hero da home (.index-seven-area) fica
   de fora para manter o visual do banner 7. */
body .rts-section-gap:not(.index-seven-area),
body .rts-section-gapTop:not(.index-seven-area),
body .rts-section-gapBottom:not(.index-seven-area) {
  padding-top: 120px;
  padding-bottom: 120px;
}

/* Home section 02 — selo com cantos suaves */
.im-section-two-title .pre {
  border-radius: 8px !important;
}

/* Home section 02 — manter o frame original ao trocar para imagens horizontais */
.rts-about-area-6 .about-6-thumbnail-left-wrapper.im-section-two-gallery .single-thumbnail {
  flex: 1 1 0;
  aspect-ratio: 582 / 759;
  border-radius: 20px;
  overflow: hidden;
}

.rts-about-area-6 .about-6-thumbnail-left-wrapper.im-section-two-gallery .im-section-two-image {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.rts-about-area-6 .about-6-thumbnail-left-wrapper.im-section-two-gallery .im-section-two-image--left {
  object-position: 68% center;
}

.rts-about-area-6 .about-6-thumbnail-left-wrapper.im-section-two-gallery .im-section-two-image--right {
  object-position: 54% center;
}

/* Projeto Invest Master — padronização de botões com o raio do cabeçalho */
body .rts-btn,
body button.rts-btn,
body .rts-btn.btn-primary,
body .rts-btn.btn-primary.btn-white,
body .rts-btn.btn-border,
body button[type="submit"],
body input[type="submit"],
body input[type="button"] {
  border-radius: 100px !important;
}

/* Newsletter (home) — aplicar nova cor primária no card */
.rts-cta-area-one .cta-main-area-wrapper-one {
  background-image: none;
  background-color: var(--color-primary, #00346e);
}

/* Home — depoimentos com a nova cor primária e contraste forte */
.rts-client-review-two.bg-black-content.bg-client-r-h2 {
  background-color: transparent;
  background-image:
    linear-gradient(180deg, var(--color-primary, #00346e) 0%, var(--color-primary, #00346e) 56%, transparent 56%),
    url(../images/testimonials/02.webp);
  background-position: top center, top center;
  background-repeat: no-repeat, no-repeat;
}

.rts-client-review-two.bg-black-content.bg-client-r-h2 .title-style-three-between .pre,
.rts-client-review-two.bg-black-content.bg-client-r-h2 .title-style-three-between .title {
  color: #ffffff;
}

.rts-client-review-two.bg-black-content.bg-client-r-h2 .button-area .rts-btn.btn-primary.btn-white {
  background: #ffffff;
  color: var(--color-primary, #00346e);
  border: 1px solid #ffffff;
}

.rts-client-review-two.bg-black-content.bg-client-r-h2 .button-area .rts-btn.btn-primary.btn-white:hover {
  background: transparent;
  color: #ffffff;
  border-color: #ffffff;
}

/* Páginas internas claras — aplicar o mesmo fundo azul do header sticky da home */
.header-transparent.im-solid-header {
  background: var(--color-primary, #00346e);
  box-shadow: 0px 7px 18px rgba(24, 16, 16, 0.0509803922);
}

.header-transparent.im-solid-header.header--sticky.sticky {
  background: var(--color-primary, #00346e);
}

/* Home / Quem Somos — team: Instagram circular no hover do card */
.investmaster-team-section .team-single-one-start .team-image-area a .team-social {
  opacity: 0;
  transition: opacity 0.4s ease;
}

.investmaster-team-section .team-single-one-start .team-image-area a:hover .team-social {
  opacity: 1;
}

.investmaster-team-section .team-single-one-start .team-image-area a .team-social .main {
  display: none;
}

.investmaster-team-section .team-single-one-start .team-image-area a .team-social .team-social-one {
  position: static !important;
  transform: none !important;
  opacity: 1 !important;
}

.investmaster-team-section .team-single-one-start .team-image-area a .team-social .team-social-one i {
  margin-bottom: 0;
  font-family: "Font Awesome 6 Brands", "Font Awesome 5 Brands" !important;
  font-weight: 400 !important;
  font-style: normal;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* Home team — estabilizar o frame das fotos e evitar quebra com arquivos de proporções diferentes */
.investmaster-team-section .team-single-one-start .team-image-area a {
  aspect-ratio: 1 / 1.08;
  background: #f3f4f7;
}

.investmaster-team-section .team-single-one-start .team-image-area a img {
  display: block;
  width: 100%;
  height: 100%;
  aspect-ratio: auto;
  object-fit: cover;
  object-position: center top;
}

/* Home parceiros — remover só o espaçamento superior da seção abaixo do time */
body .rts-trusted-client.rts-section-gap {
  padding-top: 0;
}

/* About — section "Nossa história": limpar elementos flutuantes e dar mais fôlego ao texto */
.im-about-story-section .left-thumbnail-about-area-two > img {
  display: block;
  width: 100%;
  max-width: 490px;
  margin: 0 auto;
}

.im-about-story-section .about-inner-content-two {
  padding-left: clamp(20px, 3vw, 44px);
}

.im-about-story-section .about-inner-content-two .about-between-wrapper {
  display: block;
  margin-top: 30px;
}

.im-about-story-section .about-inner-content-two .about-between-wrapper .disc {
  max-width: 56ch;
  margin-bottom: 28px;
}

.im-about-story-section .about-inner-content-two .about-between-wrapper .check-wrapper-area {
  max-width: 56ch;
}

.im-about-story-section .about-inner-content-two .about-between-wrapper .single-check + .single-check {
  margin-top: 10px;
}

@media only screen and (max-width: 991px) {
  .im-about-story-section .about-inner-content-two {
    padding-left: 0;
  }
}

/* About — section "Muito além da corretagem": título com quebra mais equilibrada e CTA sem vídeo */
.business-goal-area-2.im-about-purpose-section .consultancy-style-one .title-style-two {
  max-width: 680px;
}

.business-goal-area-2.im-about-purpose-section .consultancy-style-one .title-style-two .im-balance-title {
  max-width: 13.5ch;
  text-wrap: balance;
}

.business-goal-area-2.im-about-purpose-section .consultancy-style-one .button-wrapper {
  gap: 0;
}

@media only screen and (max-width: 1199px) {
  .business-goal-area-2.im-about-purpose-section .consultancy-style-one .title-style-two .im-balance-title {
    max-width: 100%;
  }
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
  body .rts-section-gap:not(.index-seven-area),
  body .rts-section-gapTop:not(.index-seven-area),
  body .rts-section-gapBottom:not(.index-seven-area) {
    padding-top: 80px;
    padding-bottom: 80px;
  }
}
@media only screen and (max-width: 767px) {
  body .rts-section-gap:not(.index-seven-area),
  body .rts-section-gapTop:not(.index-seven-area),
  body .rts-section-gapBottom:not(.index-seven-area) {
    padding-top: 60px;
    padding-bottom: 60px;
  }
}

/* Home — formulário de agendamento sem foto de fundo (o tema define bg em .appoinment-area-seven) */
.appoinment-area-seven.im-appointment-plain {
  background-image: none;
  background-attachment: scroll;
  background-color: #f5f6f7;
  position: relative;
  overflow: hidden;
}

/* Decoração — mesmas formas flutuantes do hero em index-three (.banner-three-box-clip-area .all-shape) */
.appoinment-area-seven.im-appointment-plain .im-appointment-all-shape {
  pointer-events: none;
  position: absolute;
  inset: 0;
  z-index: 0;
}

.appoinment-area-seven.im-appointment-plain .im-appointment-all-shape img {
  position: absolute;
  max-width: min(24vw, 128px);
  height: auto;
}

@media only screen and (min-width: 992px) {
  .appoinment-area-seven.im-appointment-plain .im-appointment-all-shape img {
    max-width: min(16vw, 152px);
  }
}

/* Três âncoras distintas (cantos / zonas opostas) para preencher a secção inteira */
.appoinment-area-seven.im-appointment-plain .im-appointment-all-shape img.one {
  left: clamp(8px, 4vw, 48px);
  top: clamp(12px, 10%, 72px);
  animation: jump-2 5s linear infinite;
}

.appoinment-area-seven.im-appointment-plain .im-appointment-all-shape img.two {
  right: clamp(8px, 3vw, 40px);
  top: clamp(24px, 22%, 100px);
  left: auto;
  animation: rotateIt 10s linear infinite;
}

.appoinment-area-seven.im-appointment-plain .im-appointment-all-shape img.three {
  left: clamp(12px, 8vw, 96px);
  bottom: clamp(10px, 8%, 64px);
  top: auto;
  animation: jump-2 3s linear infinite;
}

@media only screen and (max-width: 575px) {
  .appoinment-area-seven.im-appointment-plain .im-appointment-all-shape img.two {
    top: 8%;
    right: 2%;
  }

  .appoinment-area-seven.im-appointment-plain .im-appointment-all-shape img.three {
    left: auto;
    right: clamp(10px, 6vw, 32px);
    bottom: 6%;
  }
}

@media (prefers-reduced-motion: reduce) {
  .appoinment-area-seven.im-appointment-plain .im-appointment-all-shape img {
    animation: none;
  }
}

.appoinment-area-seven.im-appointment-plain > .container {
  position: relative;
  z-index: 1;
}

.appoinment-area-seven.im-appointment-plain .appoinment-main-wrapper-7 {
  background: #ffffff;
  box-shadow: 0 12px 40px rgba(28, 37, 57, 0.08);
}

.appoinment-area-seven.im-appointment-plain .appoinment-main-wrapper-7 span {
  color: #5d666f;
  border-color: rgba(32, 40, 45, 0.12);
}

.appoinment-area-seven.im-appointment-plain .appoinment-main-wrapper-7 .title {
  color: #1c2539;
}

/* Invest Master — menu: itens mais próximos; respiro entre menu e logo / CTA (home + páginas internas) */
@media only screen and (min-width: 1200px) {
  .header-transparent.header-seven .header-transparent-main-wrapper .logo img {
    max-height: 40px;
    width: auto;
    object-fit: contain;
  }
  .header-transparent.header-seven .nav-area ul {
    gap: 30px;
  }
  .header-transparent.header-seven .nav-area {
    margin-left: clamp(40px, 5vw, 104px);
    margin-right: clamp(40px, 5vw, 104px);
  }
  .header-one .main-header .nav-area ul {
    gap: 24px;
  }
  .header-one .main-header .nav-area {
    margin-left: clamp(32px, 4vw, 88px);
    margin-right: clamp(96px, 7vw, 168px);
  }
  .header-two .nav-area ul {
    gap: 24px;
  }
}

@media only screen and (max-width: 1199px) {
  .header-transparent.header-seven .header-transparent-main-wrapper .logo img {
    max-height: 58px;
    width: auto;
    object-fit: contain;
  }
}

@media only screen and (max-width: 767px) {
  /* Hero mobile: conteúdo alinhado à esquerda */
  .index-seven-area.with-video .banner-seven-inner-content {
    text-align: left;
    padding-left: 10px !important;
    max-width: none;
    margin-left: 0;
    margin-right: 0;
  }
  .index-seven-area.with-video .banner-seven-inner-content .pre-title {
    justify-content: flex-start;
    text-align: left;
    margin-left: 0;
    margin-right: 0;
  }
  .index-seven-area.with-video .banner-seven-inner-content .title {
    text-align: left;
  }
  .index-seven-area.with-video .banner-seven-inner-content .disc {
    text-align: left;
    margin-left: 0;
    margin-right: 0;
  }
  .index-seven-area.with-video .banner-seven-inner-content .rts-btn {
    margin-left: 0 !important;
    margin-right: 0;
    display: inline-flex;
  }

  /* Header mobile: logo e botão menu menores */
  .header-transparent.header-seven .header-transparent-main-wrapper .logo img {
    max-height: 44px;
  }
  .header-transparent.header-seven .header-transparent-main-wrapper #menu-btn {
    width: 46px;
    height: 46px;
    min-width: 46px;
    padding: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
  }
  .header-transparent.header-seven .header-transparent-main-wrapper #menu-btn img {
    width: 18px;
    height: auto;
  }

  /* Section 02 (home): reduzir gap entre imagens e conteúdo no mobile */
  .rts-about-area-6 .col-lg-5.pl--30.mt_md--100.mt_sm--100 {
    margin-top: 28px !important;
    padding-left: 12px !important;
    padding-right: 12px;
  }

  .rts-about-area-6 .about-6-inner-content-content {
    text-align: center;
  }

  .rts-about-area-6 .about-6-inner-content-content .title-style-one.left {
    text-align: center;
  }

  .rts-about-area-6 .about-6-inner-content-content .title-style-one.left .title,
  .rts-about-area-6 .about-6-inner-content-content .title-style-one.left .title .split-line {
    text-align: center !important;
    justify-content: center;
  }

  .rts-about-area-6 .about-6-inner-content-content .title-style-one.left .pre {
    margin-left: auto;
    margin-right: auto;
  }

  .rts-about-area-6 .about-6-inner-content-content .rts-btn {
    margin-left: auto;
    margin-right: auto;
    display: inline-flex;
  }

  /* FAQ mobile: corrigir quebra de palavras e alinhamento do ícone */
  .investmaster-faq-home .faq-wrapper-inner-page .accordion-item .accordion-header button {
    display: block;
    position: relative;
    width: 100%;
    padding-right: 44px !important;
    white-space: normal;
    word-break: normal;
    overflow-wrap: break-word;
    text-wrap: auto;
    line-height: 1.4;
  }

  .investmaster-faq-home .faq-wrapper-inner-page .accordion-item .accordion-header button::after {
    position: absolute;
    right: 16px;
    top: 28px;
    margin: 0;
  }
}

/* ─── Carrossel de logos de parceiros (Swiper) ─────────────────────────── */
.brand-list-area-wrapper .right-brand-area-wrapper.im-parceiros-swiper-wrap {
  flex: 1;
  min-width: 0;
  max-width: 100%;
}

/* Título “Parceiros”: linhas simétricas (flex) + tipografia = .title-style-three .pre (design system) */
.rts-trusted-client:has(.im-parceiros-client-track) .title-area-client-client.im-parceiros-title-area {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(14px, 2.8vw, 28px);
  flex-wrap: nowrap;
  max-width: 100%;
  margin-left: auto;
  margin-right: auto;
  padding: 0 clamp(8px, 2vw, 20px);
}

/* Hero da home — centraliza o indicador de rolagem */
.banner-seven-swiper-wrapper .to-bottom-area.im-hero-scroll-center {
  left: 50%;
  bottom: 38px;
  top: auto;
  transform: translateX(-50%);
  writing-mode: horizontal-tb;
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.banner-seven-swiper-wrapper .to-bottom-area.im-hero-scroll-center i {
  transform: none;
}

.rts-trusted-client:has(.im-parceiros-client-track) .title-area-client-client.im-parceiros-title-area::before,
.rts-trusted-client:has(.im-parceiros-client-track) .title-area-client-client.im-parceiros-title-area::after {
  content: none !important;
  display: none !important;
}

.rts-trusted-client:has(.im-parceiros-client-track) .im-parceiros-title-line {
  flex: 1 1 0;
  min-width: 24px;
  height: 2px;
  background: var(--color-primary, #00346e);
  border-radius: 1px;
}

.rts-trusted-client:has(.im-parceiros-client-track) p.client-title.im-parceiros-title-text {
  flex: 0 1 auto;
  max-width: max-content;
  margin: 0;
  font-family: var(--font-secondary, "DM Sans", serif);
  font-size: 18px;
  font-weight: 500;
  line-height: 1.45;
  color: var(--color-body, #5d666f);
  text-transform: none;
  letter-spacing: 0;
}

@media only screen and (max-width: 575px) {
  /* Igual ao tema base: sem linhas no extra-pequeno */
  .rts-trusted-client:has(.im-parceiros-client-track) .im-parceiros-title-line {
    display: none;
  }

  .rts-trusted-client:has(.im-parceiros-client-track) .title-area-client-client.im-parceiros-title-area {
    display: block;
    padding: 0;
  }

  .rts-trusted-client:has(.im-parceiros-client-track) p.client-title.im-parceiros-title-text {
    margin-left: auto;
    margin-right: auto;
  }
}

/* Parceiros (mobile): título com mesma escala da section Team */
@media only screen and (max-width: 767px) {
  .rts-trusted-client:has(.im-parceiros-client-track) p.client-title.im-parceiros-title-text {
    font-family: var(--font-primary);
    font-weight: 700;
    font-size: 32px;
    line-height: 1.35;
    color: #1c2539;
  }
}

@media only screen and (max-width: 575px) {
  .rts-trusted-client:has(.im-parceiros-client-track) p.client-title.im-parceiros-title-text {
    font-size: 26px;
  }
}

.im-parceiros-carousel {
  width: 100%;
  overflow: hidden;
}

/* Marquee infinito — rolagem contínua e suave */
.im-parceiros-marquee--ready {
  overflow: hidden;
  width: 100%;
  -webkit-mask-image: linear-gradient(
    90deg,
    transparent 0%,
    #000 6%,
    #000 94%,
    transparent 100%
  );
  mask-image: linear-gradient(
    90deg,
    transparent 0%,
    #000 6%,
    #000 94%,
    transparent 100%
  );
}

.im-parceiros-marquee--ready:hover .im-parceiros-marquee__viewport {
  animation-play-state: paused;
}

.im-parceiros-marquee__viewport {
  display: flex;
  width: max-content;
  will-change: transform;
  animation: im-parceiros-marquee-scroll var(--im-marquee-duration, 42s) linear infinite;
}

@keyframes im-parceiros-marquee-scroll {
  from {
    transform: translate3d(0, 0, 0);
  }
  to {
    transform: translate3d(-50%, 0, 0);
  }
}

.im-parceiros-marquee__track {
  display: flex;
  align-items: center;
  flex-shrink: 0;
  gap: clamp(16px, 2.5vw, 28px);
  padding-right: clamp(16px, 2.5vw, 28px);
}

.im-parceiros-marquee__item {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}

.im-parceiros-marquee__item .single {
  width: auto;
  min-width: 0;
  height: auto;
  min-height: 0;
  padding: 10px 22px;
  margin: 0;
  background: transparent !important;
  box-shadow: none !important;
  border-radius: 0;
  cursor: default;
}

.im-parceiros-marquee__item img {
  width: auto;
  max-width: 220px;
  max-height: 64px;
  object-fit: contain;
  display: block;
}

@media only screen and (min-width: 768px) {
  .im-parceiros-marquee__item img {
    max-width: 260px;
    max-height: 76px;
  }
}

@media only screen and (min-width: 1200px) {
  .im-parceiros-marquee__item img {
    max-width: 300px;
    max-height: 88px;
  }
}

@media only screen and (max-width: 575px) {
  .im-parceiros-marquee__item .single {
    padding: 10px 6px;
  }

  .im-parceiros-marquee__item img {
    max-width: 132px;
    max-height: 64px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .im-parceiros-marquee--ready {
    -webkit-mask-image: none;
    mask-image: none;
  }

  .im-parceiros-marquee__viewport {
    animation: none;
    flex-wrap: wrap;
    width: 100%;
    justify-content: center;
    gap: 12px;
  }

  .im-parceiros-marquee__track[aria-hidden="true"] {
    display: none;
  }
}

.im-parceiros-carousel .swiper-slide {
  width: auto;
  display: flex;
  align-items: center;
  justify-content: center;
  height: auto;
  box-sizing: border-box;
}

/* Sem cartão branco: anula .client-three-wrapper .single do tema base */
.client-three-wrapper.im-parceiros-client-track .swiper-slide .single {
  width: auto;
  min-width: 0;
  height: auto;
  min-height: 0;
  padding: 10px 22px;
  margin: 0;
  background: transparent !important;
  box-shadow: none !important;
  border-radius: 0;
  cursor: default;
}

.client-three-wrapper.im-parceiros-client-track .swiper-slide .single:hover {
  transform: none;
}

.im-parceiros-carousel .swiper-slide .single-image,
.im-parceiros-carousel .swiper-slide .single {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0;
}

.client-three-wrapper.im-parceiros-client-track .swiper-slide img,
.im-parceiros-carousel .swiper-slide img {
  width: auto;
  max-width: 220px;
  max-height: 64px;
  object-fit: contain;
}

@media only screen and (min-width: 768px) {
  .client-three-wrapper.im-parceiros-client-track .swiper-slide img,
  .im-parceiros-carousel .swiper-slide img {
    max-width: 260px;
    max-height: 76px;
  }
}

@media only screen and (min-width: 1200px) {
  .client-three-wrapper.im-parceiros-client-track .swiper-slide img,
  .im-parceiros-carousel .swiper-slide img {
    max-width: 300px;
    max-height: 88px;
  }
}

@media only screen and (max-width: 575px) {
  .client-three-wrapper.im-parceiros-client-track .swiper-slide img,
  .im-parceiros-carousel .swiper-slide img {
    max-width: 132px;
    max-height: 64px;
  }

  .client-three-wrapper.im-parceiros-client-track .swiper-slide .single {
    padding: 10px 6px;
  }
}

.client-three-wrapper.im-parceiros-client-track {
  display: block;
  width: 100%;
}

.brand-area-main-wrapper--box.im-parceiros-box-swiper {
  display: block;
  width: 100%;
}

.brand-area-main-wrapper--box.im-parceiros-box-swiper .swiper-wrapper {
  align-items: center;
}

.brand-area-main-wrapper--box.im-parceiros-box-swiper .single-brand {
  border: none !important;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 12px 16px;
}

.brand-area-main-wrapper--box.im-parceiros-box-swiper .single-brand img {
  max-height: 48px;
  max-width: 150px;
  object-fit: contain;
}

/* Rodapé footer-two — coluna Endereço: título alinhado a “Contato” + mapa minimalista (paleta :root) */
.footer-two-single-wized.right.im-footer-address {
  margin-top: 0;
}

.im-footer-address .im-footer-address-line {
  margin: 0 0 14px;
  font-size: 16px;
  line-height: 1.55;
  color: var(--color-body, #5d666f);
}

.im-footer-address .im-footer-address-line a {
  color: var(--color-heading-1, #1c2539);
  font-weight: 500;
  text-decoration: none;
  border-bottom: 1px solid rgba(28, 37, 57, 0.12);
  transition: color var(--transition, 0.3s), border-color var(--transition, 0.3s);
  display: inline-block;
}

/* O tema base oculta <br> abaixo de 1200px; aqui precisamos manter a quebra do endereço */
.im-footer-address .im-footer-address-line a br {
  display: inline !important;
}

.im-footer-address .im-footer-address-line a:hover {
  color: var(--color-primary, #00346e);
  border-bottom-color: rgba(32, 40, 45, 0.28);
}

.im-footer-address .im-footer-map-wrap {
  position: relative;
  border-radius: 18px;
  overflow: hidden;
  background: var(--color-white, #fff);
  border: 1px solid rgba(32, 40, 45, 0.08);
  box-shadow: 0 12px 36px rgba(28, 37, 57, 0.08);
}

.im-footer-address .im-footer-map-wrap iframe {
  display: block;
  width: 100%;
  height: 200px;
  border: 0;
  filter: grayscale(1) contrast(1.02) opacity(0.94);
  transition: filter 0.35s ease, opacity 0.35s ease;
}

.im-footer-address .im-footer-map-wrap:hover iframe,
.im-footer-address .im-footer-map-wrap:focus-within iframe {
  filter: grayscale(0.35) contrast(1) opacity(1);
}

@media (prefers-reduced-motion: reduce) {
  .im-footer-address .im-footer-map-wrap iframe {
    transition: none;
  }
}

.im-footer-address .im-footer-map-link {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin-top: 12px;
  font-size: 15px;
  font-weight: 500;
  color: var(--color-primary, #00346e);
  text-decoration: none;
  transition: color var(--transition, 0.3s);
}

.im-footer-address .im-footer-map-link:hover {
  color: var(--color-heading-1, #1c2539);
  text-decoration: underline;
  text-underline-offset: 3px;
}

.im-footer-address .im-footer-map-link:focus-visible {
  outline: 2px solid var(--color-primary, #00346e);
  outline-offset: 3px;
  border-radius: 2px;
}

.im-footer-address .im-footer-map-link__ic {
  font-size: 0.95em;
  opacity: 0.85;
}

@media only screen and (max-width: 767px) {
  /* Rodapé mobile: centralizar todas as informações */
  .rts-footer-area.footer-two .footer-two-single-wized,
  .rts-footer-area.footer-two .footer-two-single-wized.left,
  .rts-footer-area.footer-two .footer-two-single-wized.two,
  .rts-footer-area.footer-two .footer-two-single-wized.right {
    text-align: center;
    margin-left: auto;
    margin-right: auto;
  }

  .rts-footer-area.footer-two .footer-two-single-wized .wized-title-area {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
  }

  .rts-footer-area.footer-two .footer-two-single-wized .wized-2-body ul li a {
    justify-content: center;
  }

  .rts-footer-area.footer-two .footer-two-single-wized .contact-info-1 {
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
    gap: 8px;
  }

  .rts-footer-area.footer-two .footer-two-single-wized .contact-info-1 .disc {
    margin-left: 0;
    align-items: center;
  }

  .rts-footer-area.footer-two .im-footer-address .im-footer-address-line {
    text-align: center;
  }

  .rts-footer-area.footer-two .im-footer-address .im-footer-address-line a {
    white-space: normal;
  }

  .rts-footer-area.footer-two .im-footer-address .im-footer-map-link {
    justify-content: center;
    width: 100%;
  }

  .rts-copy-right-1 .copyright-h-2-wrapper {
    flex-direction: column;
    justify-content: center;
    text-align: center;
    gap: 8px;
  }

  .rts-copy-right-1 .copyright-h-2-wrapper .right {
    width: 100%;
    text-align: center;
  }

  .rts-footer-area.footer-two .footer-two-single-wized.left .rts-btn {
    margin-left: auto;
    margin-right: auto;
    display: inline-flex;
  }

  /* Depoimentos mobile: remover CTA lateral e centralizar conteúdo */
  .rts-client-review-two .title-style-three-between {
    justify-content: center;
    text-align: center;
  }

  .rts-client-review-two .title-style-three-between .title-style-three.left {
    margin-left: auto;
    margin-right: auto;
    text-align: center;
  }

  .rts-client-review-two .title-style-three-between .title-style-three.left .title,
  .rts-client-review-two .title-style-three-between .title-style-three.left .pre {
    text-align: center;
  }

  .rts-client-review-two .title-style-three-between .button-area {
    display: none !important;
  }

  .rts-client-review-two .mySwiperh2_clients {
    text-align: center;
  }
}

/* Depoimentos — só remove foto/logo; tipografia e padding vêm de style.css */
.rts-client-reviews-h2.im-testimonial-card .review-header .discription {
  margin-left: 0;
}

.rts-client-reviews-h2.im-testimonial-card .review-body .body-end {
  justify-content: flex-end;
}
