/* Minha Contabilidade: paleta e tipografia da marca sobre o modelo Consora */
:root {
  --mc-navy: #13223f;
  --mc-yellow: #ffe14f;
  --mc-yellow-soft: #fff0a6;
  --mc-pink: #ff0050;
  --mc-blue: #008fc4;
  --mc-light: #f2f5fa;

  --tp-ff-body: "Lato", sans-serif;
  --tp-ff-heading: "Montserrat", sans-serif;
  --tp-ff-tt-pro: "Montserrat", sans-serif;
  --tp-text-body: #5b6475;
  --tp-theme-primary: var(--mc-yellow);
  --tp-theme-secondary: var(--mc-navy);
  --tp-theme-gray: #e3e8f0;
  --tp-theme-white: var(--mc-light);
  --tp-finance-primary: var(--mc-yellow);
  --tp-finance-secondary: var(--mc-navy);
  --tp-finance-gray: #e3e8f0;
  --tp-finance-white: var(--mc-light);
}

html { scroll-behavior: smooth; }
html, body { overflow-x: clip; }
main [id] { scroll-margin-top: 90px; }

body, p, input, textarea, button { font-family: var(--tp-ff-body); }
h1, h2, h3, h4, h5, h6,
.tp-section-title, .tp-fi-hero-title, .tp-fi-cta-title, .loading-title { font-family: var(--tp-ff-heading); letter-spacing: -0.02em; }

/* títulos um pouco menores: Montserrat é mais larga que a fonte original */
.tp-fi-hero-title { font-size: clamp(40px, 6.2vw, 96px); line-height: 1.05; }
.tp-section-title { font-size: clamp(30px, 3.4vw, 52px); }
.tp-fi-testimonial-title { font-size: clamp(20px, 2vw, 30px); line-height: 1.4; }
@media (max-width: 575px) {
  .tp-fi-hero-title br, .tp-section-title br { display: none; }
}

/* fundo claro do modelo (#F7F7F5) -> azul bem claro da marca */
[data-bg-color="#F7F7F5"] { background-color: var(--mc-light) !important; }
.tp-fi-hero-overlay::before { background: linear-gradient(90deg, rgba(242, 245, 250, .97) 0%, rgba(242, 245, 250, .9) 45%, rgba(242, 245, 250, 0) 100%); right: 20%; }

/* fotos do Unsplash preenchendo os espaços dos placeholders */
img.mc-cover { object-fit: cover; }
.tp-fi-banner-wrapper img.mc-cover { width: 100%; height: 100%; }

/* faixa de regimes tributários (no lugar dos logos de empresas) */
.tp-fi-brand-slider-item { opacity: .55; }
.tp-fi-brand-slider-item:hover { opacity: 1; }
.mc-regime { display: inline-block; font-family: var(--tp-ff-heading); font-weight: 700; font-size: 20px; color: var(--mc-navy); white-space: nowrap; }

/* cards de números */
.mc-stories-logo { max-width: 210px; }
.tp-fi-stories-item[data-bg-color="#13223F"] { background: var(--mc-navy) radial-gradient(circle at 85% 15%, rgba(255, 225, 79, .25), transparent 55%); }
.tp-fi-stories-item[data-bg-color="#13223F"] .tp-fi-stories-item-logo img { filter: hue-rotate(-45deg) saturate(1.6) brightness(1.15); }
.mc-avatars { display: inline-flex; }
.mc-avatars img { width: 48px; height: 48px; border-radius: 50%; object-fit: cover; border: 3px solid #fff; }
.mc-avatars img + img { margin-left: -14px; }

/* selo do parceiro com o logo da marca */
.mc-badge-logo { width: 220px; background: #fff; padding: 18px 22px; border-radius: 8px; box-shadow: 0 10px 30px rgba(19, 34, 63, .15); }

/* sublinhado dos subtítulos na cor da marca */
.tp-section-sub::before { background: var(--mc-yellow) !important; }

/* seção de contato com formulário */
.mc-contact { padding: 70px 60px; }
@media (max-width: 991px) { .mc-contact { padding: 50px 24px; } }
.mc-contact-info .tp-fi-cta-title { margin-bottom: 20px; }
.mc-contact-lead { font-size: 18px; margin-bottom: 30px; }
.mc-contact-list { list-style: none; padding: 0; margin: 0 0 30px; }
.mc-contact-list li { display: flex; flex-direction: column; margin-bottom: 18px; color: var(--mc-navy); font-weight: 700; font-size: 18px; }
.mc-contact-list li span { font-weight: 400; font-size: 14px; opacity: .75; }
.mc-contact-list a { color: var(--mc-navy); }
.mc-contact-list a:hover { color: var(--mc-pink); }
.mc-form-card { background: #fff; border-radius: 10px; padding: 40px; box-shadow: 0 20px 50px rgba(19, 34, 63, .12); }
@media (max-width: 575px) { .mc-form-card { padding: 28px 20px; } }
.mc-form-card h4 { font-size: 26px; color: var(--mc-navy); margin-bottom: 6px; }
.mc-form-card > p { margin-bottom: 24px; }
.mc-form label { display: block; font-size: 14px; font-weight: 700; color: var(--mc-navy); margin-bottom: 6px; }
.mc-form input, .mc-form textarea { width: 100%; height: auto; padding: 13px 16px; margin-bottom: 18px; font-size: 16px; color: var(--mc-navy); background: var(--mc-light); border: 1px solid #dde3ee; border-radius: 6px; outline: none; }
.mc-form input:focus, .mc-form textarea:focus { border-color: var(--mc-blue); background: #fff; }
.mc-form textarea { resize: vertical; min-height: 110px; }
.mc-success { padding: 14px 18px; margin-bottom: 20px; border-radius: 6px; background: #e7f7ee; color: #146c43; font-weight: 700; }

/* rodapé */
.tp-footer-contact-tel { display: block !important; }
.mc-map { width: 100%; height: 170px; border: 0; border-radius: 8px; }
.mc-credits p { font-size: 14px; line-height: 1.7; }
.mc-credits a { color: var(--mc-pink); }

/* card de serviço com foto: escurece a imagem para o texto ficar legível */
.tp-fi-service-item-2 { position: relative; overflow: hidden; }
.tp-fi-service-item-2::before { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(19, 34, 63, .25) 0%, rgba(19, 34, 63, .9) 100%); }
.tp-fi-service-item-2 > * { position: relative; }

/* barra do card de economia de impostos */
.tp-fi-value-graph-range { background: var(--mc-navy); }
.tp-fi-value-graph-icon span { background: #fff; color: var(--mc-navy); }
.mc-contact .tp-section-sub::before { background: #fff !important; }
@media (max-width: 575px) { .loading-title { font-size: 28px; } }
.tp-fading-circle .tp-circle:before { background-color: var(--mc-yellow); }
.tp-section-sub.primary-color::before { background: #2a3d63 !important; }
