.elementor-5476 .elementor-element.elementor-element-c3110f7 > .elementor-container{max-width:750px;}.elementor-5476 .elementor-element.elementor-element-c3110f7{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;}.elementor-5476 .elementor-element.elementor-element-c3110f7 > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}@media(max-width:767px){.elementor-5476 .elementor-element.elementor-element-59ebdc8{width:100%;}.elementor-5476 .elementor-element.elementor-element-35afe66{width:100%;max-width:100%;align-self:flex-start;}}/* Start custom CSS for html, class: .elementor-element-9c8f5c9 *//* impedir qualquer fundinho atrás do título */
.tc-wrapper, .tc-header{
  background: transparent !important;
  box-shadow: none !important;
  border: 0 !important;
}

/* evitar corte/rolagem horizontal no mobile */
html, body { overflow-x: hidden; }

/* MOBILE: ajustes finais */
@media (max-width: 767px){

  /* seção que contém headline+form: classe opcional tc-full na seção */
  .tc-full .elementor-container{
    max-width: none !important;
    padding: 0 !important;
  }

  /* card ocupa a largura sem gambiarras de 100vw */
  .tc-card{
    width: 100% !important;
    max-width: 100% !important;
    margin: 12px 0 36px !important;
    border-radius: 0 !important;
    padding: 16px 16px 20px !important;
    box-shadow: 0 10px 28px rgba(0,0,0,.08);
  }

  /* 1 coluna e inputs confortáveis */
  .wpcf7 form{
    grid-template-columns: 1fr !important;
    gap: 12px !important;
  }
  .wpcf7 input[type="text"],
  .wpcf7 input[type="email"],
  .wpcf7 input[type="tel"],
  .wpcf7 select,
  .wpcf7 textarea{
    width: 100% !important;
    padding: 13px 14px !important;
    font-size: 16px !important; /* evita zoom no iOS */
  }

  /* select e arquivo realmente 100% */
  .wpcf7 select{ display:block !important; width:100% !important; }

  .wpcf7 input[type="file"]{
    display:block !important;
    width:100% !important;
    box-sizing: border-box !important;
  }
  .wpcf7 input[type="file"]::file-.elementor-5476 .elementor-element.elementor-element-9c8f5c9-button{
    width:auto; /* mantém botão “Escolher” proporcional */
    min-width: 44%;
  }

  /* botão com área grande pro polegar */
  .wpcf7 .wpcf7-submit{
    width: 100% !important;
    font-size: 1.05rem !important;
    padding: 16px !important;
  }

  /* headline sem “quebrar vertical” */
  .tc-title, .tc-subtitle{
    word-break: normal !important;
    overflow-wrap: anywhere;
    white-space: normal !important;
    text-align: center;
  }
}/* End custom CSS */
/* Start custom CSS for column, class: .elementor-element-59ebdc8 *//* 1) Remover o "quadrado" do cabeçalho – deixar só texto */
.tc-wrapper{
  background: transparent !important;   /* sem fundo atrás do título */
  padding-top: 8px;
}
.tc-header{
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
}
.tc-header::before,
.tc-header::after{ display: none !important; }

/* Mantém a headline bonita (se quiser, ajuste tamanhos) */
.tc-title{ font-size: clamp(22px, 3.6vw, 38px); }
.tc-subtitle{ font-size: clamp(13px, 1.8vw, 18px); }

/* 2) MOBILE: Formulário 100% da tela (edge-to-edge), inputs confortáveis */
@media (max-width: 767px){
  /* estica o card até as bordas da viewport */
  .tc-card{
    max-width: none;
    width: 100vw;
    margin: 12px calc(50% - 50vw) 36px; /* truque pra encostar nas bordas */
    border-radius: 0;                    /* sem cantos arredondados na borda da tela */
    padding: 16px 16px 20px;
    box-shadow: 0 10px 28px rgba(0,0,0,.08);
  }

  .tc-wrapper{ padding: 6px 0 0; }

  /* 1 coluna, respiro menor e tipografia levemente maior */
  .wpcf7 form{
    grid-template-columns: 1fr !important;
    gap: 12px;
  }
  .wpcf7 input[type="text"],
  .wpcf7 input[type="email"],
  .wpcf7 input[type="tel"],
  .wpcf7 select,
  .wpcf7 textarea{
    padding: 13px 14px;
    font-size: 16px;
  }

  /* botão mais “clicável” no polegar */
  .wpcf7 .wpcf7-submit{
    font-size: 1.05rem;
    padding: 16px;
  }

  /* mantém o botão do arquivo limpo no mobile */
  .wpcf7 input[type="file"]::file-.elementor-5476 .elementor-element.elementor-element-59ebdc8-button{
    padding: 10px 12px;
  }
}/* End custom CSS */
/* Start custom CSS for section, class: .elementor-element-c3110f7 */:root{
  --brand:#b30059;         /* cor principal */
  --bg:#f5f7fb;            /* fundo da seção */
  --text:#1f2937;          /* texto principal */
  --muted:#6b7280;         /* texto suave */
  --radius:14px;
  --ring: 0 0 0 4px rgba(179,0,89,.12);
}

.tc-wrapper{
  padding: 24px 16px 0;
  background: var(--bg);
}
.tc-header{max-width: 760px; margin: 0 auto 8px; text-align: center;}
.tc-title{
  margin:0 0 8px;
  font-size: clamp(24px, 3.4vw, 38px);
  line-height:1.15;
  color: var(--text);
  font-weight: 800;
  letter-spacing: -0.02em;
}
.tc-subtitle{
  margin:0 auto;
  max-width: 680px;
  color: var(--muted);
  font-size: clamp(14px, 1.6vw, 18px);
}

/* CARD do formulário */
.tc-card{
  max-width: 760px;
  margin: 16px auto 48px;
  background:#fff;
  border-radius: var(--radius);
  box-shadow: 0 18px 40px rgba(0,0,0,.08);
  padding: 18px;
}
@media (min-width: 640px){
  .tc-card{ padding: 28px; }
}

/* GRID bonito (funciona mesmo sem wrappers, mas melhor com .tc-field) */
.wpcf7 form{
  display: grid;
  gap: 14px;
}
.tc-field{ display: grid; gap: 6px; }
.tc-field.full, .tc-actions.full{ grid-column: 1/-1; }

@media (min-width: 840px){
  .wpcf7 form{ grid-template-columns: 1fr 1fr; gap: 18px;}
}

/* Labels e campos */
.wpcf7-form label{ color: var(--muted); font-weight: 600; font-size: 0.95rem; }
.wpcf7 input[type="text"],
.wpcf7 input[type="email"],
.wpcf7 input[type="tel"],
.wpcf7 select,
.wpcf7 textarea{
  width: 100%;
  appearance: none;
  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 12px;
  padding: 12px 14px;
  font-size: 1rem;
  color: var(--text);
  transition: box-shadow .2s, border-color .2s, transform .04s;
}
.wpcf7 textarea{ min-height: 120px; resize: vertical; }

.wpcf7 input:focus,
.wpcf7 select:focus,
.wpcf7 textarea:focus{
  outline: none;
  border-color: var(--brand);
  box-shadow: var(--ring);
}

/* INPUT de arquivo com botão estilizado */
.wpcf7 input[type="file"]{
  padding: 10px;
  border-radius: 12px;
  border: 1px dashed #e5e7eb;
  background: #fafafa;
}
.wpcf7 input[type="file"]::-webkit-file-upload-button,
.wpcf7 input[type="file"]::file-.elementor-5476 .elementor-element.elementor-element-c3110f7-button{
  background: var(--brand);
  color: #fff;
  border: 0;
  border-radius: 10px;
  padding: 10px 14px;
  margin-right: 10px;
  cursor: pointer;
  font-weight: 600;
}
.wpcf7 input[type="file"]::-webkit-file-upload-button:hover,
.wpcf7 input[type="file"]::file-.elementor-5476 .elementor-element.elementor-element-c3110f7-button:hover{
  filter: brightness(.95);
}

/* Botão enviar */
.wpcf7 .wpcf7-submit{
  background: var(--brand);
  color: #fff;
  border: 0;
  border-radius: 12px;
  padding: 14px 18px;
  width: 100%;
  font-size: 1rem;
  font-weight: 700;
  letter-spacing:.2px;
  cursor:pointer;
  transition: transform .06s ease, box-shadow .2s ease, filter .2s;
  box-shadow: 0 10px 24px rgba(179,0,89,.25);
}
.wpcf7 .wpcf7-submit:hover{ transform: translateY(-1px); filter: brightness(.98); }
.wpcf7 .wpcf7-submit:active{ transform: translateY(0); }

/* Mensagens de resposta */
.wpcf7 form .wpcf7-response-output{
  margin: 10px 0 0;
  border: 0;
  border-radius: 10px;
  padding: 12px 14px;
  font-weight: 600;
}
.wpcf7 form.invalid .wpcf7-response-output{ background:#fff7ed; color:#9a3412; }
.wpcf7 form.sent .wpcf7-response-output{ background:#ecfdf5; color:#065f46; }
.wpcf7 form.failed .wpcf7-response-output{ background:#fef2f2; color:#b91c1c; }

/* Tira spinner feio do CF7 (opcional) */
.wpcf7 .wpcf7-spinner{ display:none; }/* End custom CSS */