/* ==========================================================================
   PROFILY DESIGN SYSTEM THEME OVERRIDE
   Baseado nas especificaÃ§Ãµes da ProFily (Contabilidade Digital)
   Cores: Deep Navy (#052430) e Sky Blue (#3FC1F0)
   Tipografia: Poppins & Baloo 2
   ========================================================================== */

@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@400;500;600;700;800&family=Baloo+2:wght@500;600;700&display=swap');

:root {
  --navy-900: #052430;
  --navy-800: #08415A;
  --navy-700: #0C4E6C;
  --navy-600: #125D7F;
  --sky-500: #3FC1F0;
  --sky-400: #63CFF5;
  --sky-300: #8DDCF8;
  --sky-200: #BAEBFC;
  --sky-100: #E4F7FE;
  --white: #FFFFFF;
  --gray-900: #101A20;
  --gray-700: #3B4A52;
  --gray-500: #6B7B84;
  --gray-300: #A9B7BE;
  --gray-200: #D6E0E4;
  --gray-100: #EEF4F6;
  --gray-50: #F7FAFB;

  --accent-primary: #3FC1F0;
  --accent-primary-hover: #63CFF5;
  --accent-primary-active: #2AA9DA;
  --text-primary: #052430;
  --text-secondary: #3B4A52;
  --text-muted: #6B7B84;
  --surface-page: #F7FAFB;
  --surface-card: #FFFFFF;
  --surface-dark: #052430;

  --font-display: 'Poppins', system-ui, sans-serif;
  --font-body: 'Poppins', system-ui, sans-serif;
  --font-accent: 'Baloo 2', 'Poppins', system-ui, sans-serif;
}

/* Tipografia global Poppins */
body, html, input, button, select, textarea,
h1, h2, h3, h4, h5, h6, p, span, a, label, li, div {
  font-family: 'Poppins', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;
}

/* Header & Navbar */
.main-header {
  background-color: #FFFFFF !important;
  box-shadow: 0 2px 16px rgba(5, 36, 48, 0.06) !important;
}

.profily-brand-header {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  text-decoration: none !important;
}

.profily-brand-header img {
  height: 38px !important;
  width: auto !important;
  object-fit: contain !important;
}

.profily-brand-header .brand-text {
  display: flex;
  flex-direction: column;
  line-height: 1;
}

.profily-brand-header .brand-name {
  font-family: 'Poppins', sans-serif !important;
  font-weight: 800 !important;
  font-size: 23px !important;
  letter-spacing: -0.02em !important;
  color: #052430 !important;
}

.profily-brand-header .brand-tagline {
  font-family: 'Baloo 2', 'Poppins', sans-serif !important;
  font-weight: 600 !important;
  font-size: 10px !important;
  color: #3FC1F0 !important;
  letter-spacing: 0.05em !important;
  text-transform: uppercase !important;
  margin-top: 2px !important;
}

/* BotÃµes PrimÃ¡rios com estilo Pill e Sky Blue */
.btn-primary, 
.atom-button--primary, 
button.btn-primary, 
a.btn-primary,
.main-header .btn-primary,
[class*="button--primary"],
[class*="btn--primary"],
.badge-primary,
.cta-primary {
  background-color: #3FC1F0 !important;
  border-color: #3FC1F0 !important;
  color: #052430 !important;
  font-weight: 700 !important;
  border-radius: 999px !important;
  transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1) !important;
  box-shadow: 0 4px 14px rgba(63, 193, 240, 0.35) !important;
}

.btn-primary:hover, 
.atom-button--primary:hover, 
button.btn-primary:hover, 
a.btn-primary:hover,
[class*="button--primary"]:hover,
[class*="btn--primary"]:hover {
  background-color: #63CFF5 !important;
  border-color: #63CFF5 !important;
  color: #052430 !important;
  box-shadow: 0 6px 20px rgba(63, 193, 240, 0.45) !important;
  transform: translateY(-1px) !important;
}

/* BotÃµes SecundÃ¡rios */
.btn-outline-primary,
.atom-button--secondary,
[class*="btn-outline"] {
  color: #052430 !important;
  border-color: #052430 !important;
  border-radius: 999px !important;
  font-weight: 600 !important;
  transition: all 0.2s ease !important;
}

.btn-outline-primary:hover,
.atom-button--secondary:hover,
[class*="btn-outline"]:hover {
  background-color: #052430 !important;
  color: #FFFFFF !important;
  border-color: #052430 !important;
}

/* Cores de Destaque e Textos */
.text-primary, [class*="text-primary"] {
  color: #052430 !important;
}

.text-accent, .highlight-color {
  color: #3FC1F0 !important;
}

/* Pontinhos e acentos visuais no final de tÃ­tulos */
.dot, .hero__dot, [class*="__dot"] {
  color: #3FC1F0 !important;
  background-color: #3FC1F0 !important;
}

/* Footer - Deep Navy Profily */
#footer, 
.organism-footer,
footer.organism-footer {
  background-color: #052430 !important;
  color: rgba(255, 255, 255, 0.85) !important;
  border-top: 3px solid #3FC1F0 !important;
}

.profily-brand-footer {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  text-decoration: none !important;
  margin-bottom: 16px !important;
}

.profily-brand-footer img {
  height: 42px !important;
  width: auto !important;
  object-fit: contain !important;
}

.profily-brand-footer .brand-text {
  display: flex;
  flex-direction: column;
  line-height: 1.1;
}

.profily-brand-footer .brand-name {
  font-family: 'Poppins', sans-serif !important;
  font-weight: 800 !important;
  font-size: 26px !important;
  letter-spacing: -0.02em !important;
  color: #FFFFFF !important;
}

.profily-brand-footer .brand-tagline {
  font-family: 'Baloo 2', 'Poppins', sans-serif !important;
  font-weight: 600 !important;
  font-size: 11px !important;
  color: #3FC1F0 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  margin-top: 3px !important;
}

/* Links do Footer */
.organism-footer a, 
.organism-footer .atom-link {
  color: rgba(255, 255, 255, 0.72) !important;
  transition: color 0.15s ease !important;
}

.organism-footer a:hover, 
.organism-footer .atom-link:hover {
  color: #3FC1F0 !important;
}

.organism-footer h4, 
.organism-footer h5, 
.organism-footer h6, 
.organism-footer strong,
.organism-footer [class*="title"] {
  color: #FFFFFF !important;
  font-weight: 700 !important;
}

/* CartÃµes e SeÃ§Ãµes */
.card, [class*="card"] {
  border-radius: 14px !important;
  border-color: #D6E0E4 !important;
  box-shadow: 0 4px 20px rgba(5, 36, 48, 0.05) !important;
}

/* Badges e tags */
.badge, [class*="badge"] {
  border-radius: 999px !important;
}

/* Scroll suave */
html {
  scroll-behavior: smooth;
  max-width: 100%;
  overflow-x: hidden;
}

body {
  max-width: 100%;
  overflow-x: hidden;
}

/* Contém o carrossel capturado, cuja largura inline excede o viewport. */
.organism-testimony__carousel-clients {
  width: 100% !important;
  max-width: 100% !important;
  overflow: hidden !important;
}

#carousel-customer.carousel-customer {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 24px !important;
  width: 100% !important;
  max-width: 100% !important;
  transform: none !important;
  animation: none !important;
}

#carousel-customer .carousel-customer__card,
#carousel-customer .molecule-card-customer-macae__content,
#carousel-customer .depoiment-head,
#carousel-customer .info-person,
#carousel-customer .depoiment-body {
  width: auto !important;
  max-width: 100% !important;
}

#carousel-customer .carousel-customer__card:nth-child(n + 4) {
  display: none !important;
}

@media (max-width: 767px) {
  #carousel-customer.carousel-customer {
    grid-template-columns: 1fr !important;
  }

  #carousel-customer .carousel-customer__card:nth-child(n + 2) {
    display: none !important;
  }
}

.main-header__navbar-brand[data-profily-logo-fixed] {
  display: inline-flex !important;
  align-items: center !important;
  text-decoration: none !important;
}
.profily-header-mark { display:block; width:52px; height:42px; object-fit:contain; }
.profily-header-copy { display:flex; flex-direction:column; margin-left:8px; line-height:1; }
.profily-header-copy strong { color:#052430; font-family:Poppins,sans-serif; font-size:22px; font-weight:800; }
.profily-header-copy small { margin-top:4px; color:#3fc1f0; font-family:Poppins,sans-serif; font-size:9px; font-weight:700; letter-spacing:.45px; text-transform:uppercase; }

/* Profi — assistente visual (sem interação nesta etapa) */
.profi-assistant {
  position: fixed;
  right: 24px;
  bottom: 22px;
  z-index: 10020;
  display: flex;
  align-items: center;
  gap: 12px;
  pointer-events: none;
  font-family: Poppins, sans-serif;
}
.profi-assistant__bubble {
  position: relative;
  max-width: 190px;
  padding: 12px 16px;
  border: 1px solid rgba(5,36,48,.1);
  border-radius: 18px 18px 4px 18px;
  background: #fff;
  color: #052430;
  box-shadow: 0 10px 30px rgba(5,36,48,.18);
  font-size: 14px;
  font-weight: 700;
  line-height: 1.25;
}
.profi-assistant__bubble::after {
  content: '';
  position: absolute;
  right: -9px;
  bottom: 10px;
  width: 18px;
  height: 18px;
  background: #fff;
  transform: rotate(45deg);
  border-radius: 0 3px 0 0;
}
.profi-assistant__avatar {
  position: relative;
  width: 104px;
  height: 104px;
  overflow: hidden;
  flex: 0 0 104px;
  border: 5px solid #fff;
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 12px 34px rgba(5,36,48,.24);
}
.profi-assistant__avatar img {
  position: absolute;
  top: -1%;
  left: 0;
  width: 500%;
  max-width: none !important;
  height: 102%;
  object-fit: fill;
}
@media (max-width: 600px) {
  .profi-assistant { right: 12px; bottom: 14px; gap: 8px; }
  .profi-assistant__avatar { width: 76px; height: 76px; flex-basis: 76px; border-width: 4px; }
  .profi-assistant__bubble { max-width: 145px; padding: 10px 12px; font-size: 12px; }
}

#section-hero img.image-hero[src*="contador-charles-contabilizei"],
#section-hero img.organism-hero__image[src*="contador-charles-contabilizei"] {
  object-fit: cover !important;
  object-position: center !important;
}

/* Ajuste fino do Profi: proporção preservada, avatar menor e fala com atraso. */
.profi-assistant__avatar {
  width: 88px;
  height: 88px;
  flex-basis: 88px;
  border-width: 4px;
}
.profi-assistant__avatar img {
  top: -35%;
  left: 0;
  width: auto !important;
  max-width: none !important;
  height: 170% !important;
  object-fit: contain !important;
}
.profi-assistant__bubble {
  opacity: 0;
  visibility: hidden;
  transform: translateX(8px) scale(.96);
  animation: profiBubbleIn .35s ease 3s forwards;
}
@keyframes profiBubbleIn {
  to {
    opacity: 1;
    visibility: visible;
    transform: translateX(0) scale(1);
  }
}
@media (max-width: 600px) {
  .profi-assistant__avatar { width: 68px; height: 68px; flex-basis: 68px; }
  .profi-assistant__avatar img { top: -35%; height: 170% !important; width: auto !important; }
}

.profi-assistant__bubble { animation: none !important; }
.profi-assistant--speaking .profi-assistant__bubble {
  animation: profiBubbleIn .35s ease forwards !important;
}
