.elementor-kit-7{--e-global-color-primary:#182E26;--e-global-color-secondary:#2F4A3D;--e-global-color-text:#1F2421;--e-global-color-accent:#41936B;--e-global-color-116acde:#A7B8A6;--e-global-color-88ffa0e:#F8F5EF;--e-global-color-74a3676:#E6EEE6;--e-global-color-507556f:#E8DDCC;--e-global-color-8601839:#DDD5C8;--e-global-color-bac5947:#62675F;--e-global-color-a4d7b7f:#F8F5EFE6;--e-global-color-01a19bd:#FFFFFF;--e-global-typography-primary-font-family:"Playfair Display";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Inter";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Inter";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Inter";--e-global-typography-accent-font-weight:700;color:var( --e-global-color-bac5947 );font-family:"Inter", Sans-serif;font-size:16px;font-weight:400;line-height:1.6em;}.elementor-kit-7 button,.elementor-kit-7 input[type="button"],.elementor-kit-7 input[type="submit"],.elementor-kit-7 .elementor-button{background-color:#182E26;font-family:"Inter", Sans-serif;font-size:14px;line-height:18px;color:#FFFFFF;box-shadow:0px 10px 15px -6px rgba(0,0,0,0.5);border-radius:8px 8px 8px 8px;padding:12px 24px 12px 24px;}.elementor-kit-7 button:hover,.elementor-kit-7 button:focus,.elementor-kit-7 input[type="button"]:hover,.elementor-kit-7 input[type="button"]:focus,.elementor-kit-7 input[type="submit"]:hover,.elementor-kit-7 input[type="submit"]:focus,.elementor-kit-7 .elementor-button:hover,.elementor-kit-7 .elementor-button:focus{background-color:#2F4A3D;}.elementor-kit-7 e-page-transition{background-color:#FFBC7D;}.elementor-kit-7 p{margin-block-end:5px;}.elementor-kit-7 a{color:var( --e-global-color-accent );}.elementor-kit-7 h1{color:var( --e-global-color-text );font-family:"Playfair Display", Sans-serif;font-size:64px;font-weight:600;line-height:1.05em;}.elementor-kit-7 h2{color:var( --e-global-color-text );font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-kit-7 h3{color:var( --e-global-color-text );font-family:"Inter", Sans-serif;font-size:32px;font-weight:700;line-height:1.2em;}.elementor-kit-7 h4{color:var( --e-global-color-text );font-family:"Inter", Sans-serif;font-size:24px;line-height:1.2px;}.elementor-kit-7 h5{color:var( --e-global-color-text );font-size:18px;font-weight:900;}.elementor-kit-7 h6{color:var( --e-global-color-text );font-family:"Inter", Sans-serif;font-size:18px;font-weight:600;}.elementor-kit-7 label{color:var( --e-global-color-text );font-family:"Inter", Sans-serif;font-size:16px;font-weight:500;line-height:16px;}.elementor-kit-7 input:not([type="button"]):not([type="submit"]),.elementor-kit-7 textarea,.elementor-kit-7 .elementor-field-textual{font-family:"Inter", Sans-serif;font-size:16px;font-weight:500;line-height:16px;color:var( --e-global-color-text );accent-color:#62675F;background-color:#FFFFFF;border-style:solid;border-width:1px 1px 1px 1px;border-color:#DDD5C8;border-radius:8px 8px 8px 8px;padding:14px 16px 14px 16px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1200px;}.e-con{--container-max-width:1200px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}
/* Start custom CSS *//* =========================================================
   ONE — Custom CSS revisado
   - Cores da paleta -> variáveis globais (via aliases legíveis)
   - Transparências -> color-mix (sem criar global novo)
   - Bug de nesting da .legal-page corrigido
   NÃO inclui o bloco .elementor-kit-7 (isso é Estilo do Tema -> ajuste na UI)
   ========================================================= */

/* --- Mapa legível dos globais (mantenha no topo) --------- */
body{
  --brand:    var(--e-global-color-primary);   /* #182E26 */
  --brand-2:  var(--e-global-color-secondary); /* #2F4A3D */
  --ink:      var(--e-global-color-text);      /* #1F2421 */
  --accent:   var(--e-global-color-accent);    /* #41936B */
  --sage:     var(--e-global-color-116acde);   /* #A7B8A6 */
  --offwhite: var(--e-global-color-88ffa0e);   /* #F8F5EF */
  --mint:     var(--e-global-color-74a3676);   /* #E6EEE6 */
  --sand:     var(--e-global-color-507556f);   /* #E8DDCC */
  --border:   var(--e-global-color-8601839);   /* #DDD5C8 */
  --muted:    var(--e-global-color-bac5947);   /* #62675F */
  --white:    #fff;
  --danger:   #861B1B;
  --dangerbg: #FFF5F5;
  --dangerbdc:#D9A3A3;
}

/* --- Rodapé (mobile) ------------------------------------ */
@media screen and (max-width: 767px){
  .footer_menu ul{
    flex-direction: column;
    gap: 10px;
    text-align: center;
    align-content: center;
    align-items: center;
    justify-content: center;
  }
}

/* =========================== HOME ======================== */
.nb1:before{ content: "01"; }
.nb2:before{ content: "02"; }
.nb3:before{ content: "03"; }
.nb4:before{ content: "04"; }

.number:before{
  position: absolute;
  font-family: "Inter";
  width: 48px;
  height: 48px;
  border-radius: 24px;
  background: var(--brand);      
  z-index: 1;
  display: flex;
  left: -24px;
  top: 0;
  line-height: 14px;
  font-size: 14px;
  justify-content: center;
  align-items: center;
  color: var(--offwhite);        
  font-weight: 700;
}

/* =========================== SOBRE ======================= */
.elementor-widget-n-carousel .e-n-carousel{
  padding-bottom: 10px;
}

/* =========================== CONTATO ===================== */
.dg-contact-form{ position: relative; }

.dg-contact-form .elementor-message{
  margin-top: 16px;
  padding: 12px 16px;
  border-radius: 10px;
  font-family: Inter, sans-serif;
  font-size: 13px;
  line-height: 1.4;
  font-weight: 500;
}

/* Erro — cores semânticas fora da paleta.
   Se reutilizar em outros templates, vire tokens --danger* */
.dg-contact-form .elementor-message.elementor-message-danger{
  color: var(--danger);
  background: var(--dangerbg);
  border: 1px solid var(--dangerbdc);
}

/* Sucesso */
.dg-contact-form .elementor-message.elementor-message-success{
  color: var(--brand);           
  background: var(--mint);       
  border: 1px solid var(--sage); 
}

/* Informativa */
.dg-contact-form .elementor-message.elementor-message-info{
  color: var(--ink);              
  background: var(--offwhite);    
  border: 1px solid var(--border);
}

.dg-contact-form .elementor-field-option{
  display: flex;
  gap: 10px;
  flex-direction: row;
  align-items: start;
}
.dg-contact-form .elementor-field-option label{
  line-height: 1.45;
  cursor: pointer;
}
.dg-contact-form .elementor-field-option label a{
  text-decoration: underline;
  color: inherit;
  text-transform: lowercase;
  font-weight: 600;
}
.dg-contact-form .elementor-field-option label a:hover{
  text-decoration: none;
}

.dg-contact-form .elementor-field-type-acceptance input[type="checkbox"]{
  margin-top: 2px;
  width: 16px;
  height: 16px;
  accent-color: var(--brand);    
  flex: 0 0 auto;
}

.ambiente .elementor-icon{ opacity: 0.6; }

/* ========================= LEGAL PAGE ==================== */
.legal-page h2{
  font-family: "Inter", Sans-Serif;
  font-size: 18px;
  line-height: 1.2;
  font-weight: 700;
  color: var(--ink);                        
  margin: 32px 0 16px;
  border-bottom: 1px solid var(--border);   
  padding: 4px;
}
.legal-page h4{
  font-family: "Inter", Sans-Serif;
  font-size: 15px;
  line-height: 1.2;
  font-weight: 500;
  color: var(--muted);                      
  margin: 10px auto 0;
}
.legal-page p{
  font-family: "Inter", sans-serif;
  font-size: 15px;
  line-height: 1.5;
  font-weight: 500;
  color: var(--muted);                      
  padding: 10px 20px;
  margin: 0 auto;
  text-align: justify !important;
}
.legal-page ul{
  margin: 0 0 5px 48px;
  padding: 0;
}
.legal-page li{
  font-family: "Inter", sans-serif;
  font-size: 15px;
  line-height: 1.5;
  color: var(--muted);                      
  font-weight: 500;
}
.legal-page strong{
  color: var(--ink);                        
  font-weight: 700;
}
.legal-page a{
  color: var(--brand);                      
  font-weight: 600;
  text-decoration: underline;
}

.legal-page table{
  width: calc(100% - 20px);
  border-collapse: collapse;
  margin: 1em auto 1.5em;
  font-size: inherit;
}
.legal-page th{
  background: var(--brand-2);   
  color: var(--white);          
  padding: 10px 12px;
  text-align: left;
}
.legal-page td{
  padding: 9px 12px;
  border-bottom: 1px solid var(--border);   
  vertical-align: top;
  font-size: inherit;
  line-height: 1.5;
  color: var(--muted);                      
  text-align: left;
}
.legal-page tr:nth-child(even) td{
  background: var(--offwhite);  
}
.legal-page hr{
  border: none;
  border-top: 1px solid var(--border);      
  margin: 2.5em 0;
}

/* ============================ BLOG ======================= */
.dg-drop .elementor-nav-menu--dropdown.elementor-nav-menu__container{
  box-shadow: 0px 8px 7px -6px rgba(0,0,0,0.5);
}
.dg-title h1 span{
  font-size: 16px;
  color: var(--accent);        
  font-weight: 700;
}

.dg-terms .elementor-post-info__terms-list{
  visibility: hidden;
  display: flex !important;
  flex-wrap: wrap;
  gap: 5px 0px;
}
.dg-terms a.elementor-post-info__terms-list-item{
  visibility: visible;
  color: var(--offwhite) !important;   
  background: var(--brand-2);          
  padding: 5px 12px;
  border-radius: 20px;
}
.dg-terms a.elementor-post-info__terms-list-item:hover{
  background: var(--brand);            
}

@media (max-width: 767px){
  body.blog .elementor-loop-container.elementor-grid,
  body.archive .elementor-loop-container.elementor-grid,
  body.search .elementor-loop-container.elementor-grid{
    display: grid !important;
    grid-template-columns: minmax(0, 420px) !important;
    justify-content: center !important;
  }
  body.blog .elementor-loop-container.elementor-grid .e-loop-item,
  body.archive .elementor-loop-container.elementor-grid .e-loop-item,
  body.search .elementor-loop-container.elementor-grid .e-loop-item{
    width: 100% !important;
    max-width: 420px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
}


.elementor-kit-7 {

  --e-global-typography-primary-font-family: "Playfair Display";
  --e-global-typography-primary-font-weight: 600;
  --e-global-typography-secondary-font-family: "Inter";
  --e-global-typography-secondary-font-weight: 400;
  --e-global-typography-text-font-family: "Inter";
  --e-global-typography-text-font-weight: 400;
  --e-global-typography-accent-font-family: "Inter";
  --e-global-typography-accent-font-weight: 700;
  color: var(--e-global-color-bac5947);
  font-family: "Inter", Sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.6em;
}

.elementor-kit-7 button,
.elementor-kit-7 input[type="button"],
.elementor-kit-7 input[type="submit"],
.elementor-kit-7 .elementor-button {
  background-color: var(--brand);
  font-family: "Inter", Sans-serif;
  font-size: 14px;
  line-height: 18px;
  color: var(--white);
  box-shadow: 0px 10px 15px -6px rgba(0, 0, 0, 0.5);
  border-radius: 8px 8px 8px 8px;
  padding: 12px 24px 12px 24px;
}

.elementor-kit-7 button:hover,
.elementor-kit-7 button:focus,
.elementor-kit-7 input[type="button"]:hover,
.elementor-kit-7 input[type="button"]:focus,
.elementor-kit-7 input[type="submit"]:hover,
.elementor-kit-7 input[type="submit"]:focus,
.elementor-kit-7 .elementor-button:hover,
.elementor-kit-7 .elementor-button:focus {
  background-color: var(--brand-2);
}

.elementor-kit-7 e-page-transition {
  background-color: #FFBC7D;
}

.elementor-kit-7 p {
  margin-block-end: 5px;
}

.elementor-kit-7 a {
  color: var(--e-global-color-accent);
}

.elementor-kit-7 h1 {
  color: var(--e-global-color-text);
  font-family: "Playfair Display", Sans-serif;
  font-size: 64px;
  font-weight: 600;
  line-height: 1.05em;
}

.elementor-kit-7 h2 {
  color: var(--e-global-color-text);
  font-family: var(--e-global-typography-primary-font-family), Sans-serif;
  font-weight: var(--e-global-typography-primary-font-weight);
}

.elementor-kit-7 h3 {
  color: var(--e-global-color-text);
  font-family: "Inter", Sans-serif;
  font-size: 32px;
  font-weight: 700;
  line-height: 1.2em;
}

.elementor-kit-7 h4 {
  color: var(--e-global-color-text);
  font-family: "Inter", Sans-serif;
  font-size: 24px;
  line-height: 1.2px;
}

.elementor-kit-7 h5 {
  color: var(--e-global-color-text);
  font-size: 18px;
  font-weight: 900;
}

.elementor-kit-7 h6 {
  color: var(--e-global-color-text);
  font-family: "Inter", Sans-serif;
  font-size: 18px;
  font-weight: 600;
}

.elementor-kit-7 label {
  color: var(--e-global-color-text);
  font-family: "Inter", Sans-serif;
  font-size: 16px;
  font-weight: 500;
  line-height: 16px;
}

.elementor-kit-7 input:not([type="button"]):not([type="submit"]),
.elementor-kit-7 textarea,
.elementor-kit-7 .elementor-field-textual {
  font-family: "Inter", Sans-serif;
  font-size: 16px;
  font-weight: 500;
  line-height: 16px;
  color: var(--e-global-color-text);
  accent-color: var(--muted);
  background-color: var(--white);
  border-style: solid;
  border-width: 1px 1px 1px 1px;
  border-color: var(--border);
  border-radius: 8px 8px 8px 8px;
  padding: 14px 16px 14px 16px;
}

.elementor-section.elementor-section-boxed>.elementor-container {
  max-width: 1200px;
}

.e-con {
  --container-max-width: 1200px;
}

.elementor-widget:not(:last-child) {
  --kit-widget-spacing: 20px;
}

.elementor-element {
  --widgets-spacing: 20px 20px;
  --widgets-spacing-row: 20px;
  --widgets-spacing-column: 20px;
}

h1.entry-title {
  display: var(--page-title-display);
}

@media(max-width:1024px) {
  .elementor-section.elementor-section-boxed>.elementor-container {
    max-width: 1024px;
  }

  .e-con {
    --container-max-width: 1024px;
  }
}

@media(max-width:767px) {
  .elementor-section.elementor-section-boxed>.elementor-container {
    max-width: 767px;
  }

  .e-con {
    --container-max-width: 767px;
  }
}

.single-post.no-post-thumbnail .post-featured {
  display: none !important;
}

.elementor-kit-7 button,
.elementor-kit-7 input[type="button"],
.elementor-kit-7 input[type="submit"],
.elementor-kit-7 .elementor-button {
  background-color: var(--brand);
  font-family: "Inter", Sans-serif;
  font-size: 14px;
  line-height: 18px;
  color: var(--white);
  box-shadow: 0px 10px 15px -6px rgba(0, 0, 0, 0.5);
  border-radius: 8px 8px 8px 8px;
  padding: 12px 24px 12px 24px;
}

.elementor-kit-7 button:hover,
.elementor-kit-7 button:focus,
.elementor-kit-7 input[type="button"]:hover,
.elementor-kit-7 input[type="button"]:focus,
.elementor-kit-7 input[type="submit"]:hover,
.elementor-kit-7 input[type="submit"]:focus,
.elementor-kit-7 .elementor-button:hover,
.elementor-kit-7 .elementor-button:focus {
  background-color: var(--brand-2);
}

.elementor-kit-7 e-page-transition {
  background-color: #FFBC7D;
}

.elementor-kit-7 p {
  margin-block-end: 5px;
}

.elementor-kit-7 a {
  color: var(--e-global-color-accent);
}

.elementor-kit-7 h1 {
  color: var(--e-global-color-text);
  font-family: "Playfair Display", Sans-serif;
  font-size: 64px;
  font-weight: 600;
  line-height: 1.05em;
}

.elementor-kit-7 h2 {
  color: var(--e-global-color-text);
  font-family: var(--e-global-typography-primary-font-family), Sans-serif;
  font-weight: var(--e-global-typography-primary-font-weight);
}

.elementor-kit-7 h3 {
  color: var(--e-global-color-text);
  font-family: "Inter", Sans-serif;
  font-size: 32px;
  font-weight: 700;
  line-height: 1.2em;
}

.elementor-kit-7 h4 {
  color: var(--e-global-color-text);
  font-family: "Inter", Sans-serif;
  font-size: 24px;
  line-height: 1.2px;
}

.elementor-kit-7 h5 {
  color: var(--e-global-color-text);
  font-size: 18px;
  font-weight: 900;
}

.elementor-kit-7 h6 {
  color: var(--e-global-color-text);
  font-family: "Inter", Sans-serif;
  font-size: 18px;
  font-weight: 600;
}

.elementor-kit-7 label {
  color: var(--e-global-color-text);
  font-family: "Inter", Sans-serif;
  font-size: 16px;
  font-weight: 500;
  line-height: 16px;
}

.elementor-kit-7 input:not([type="button"]):not([type="submit"]),
.elementor-kit-7 textarea,
.elementor-kit-7 .elementor-field-textual {
  font-family: "Inter", Sans-serif;
  font-size: 16px;
  font-weight: 500;
  line-height: 16px;
  color: var(--e-global-color-text);
  accent-color: var(--muted);
  background-color: var(--white);
  border-style: solid;
  border-width: 1px 1px 1px 1px;
  border-color: var(--border);
  border-radius: 8px 8px 8px 8px;
  padding: 14px 16px 14px 16px;
}

.elementor-section.elementor-section-boxed>.elementor-container {
  max-width: 1200px;
}

.e-con {
  --container-max-width: 1200px;
}

.elementor-widget:not(:last-child) {
  --kit-widget-spacing: 20px;
}

.elementor-element {
  --widgets-spacing: 20px 20px;
  --widgets-spacing-row: 20px;
  --widgets-spacing-column: 20px;
}

h1.entry-title {
  display: var(--page-title-display);
}

@media(max-width:1024px) {
  .elementor-section.elementor-section-boxed>.elementor-container {
    max-width: 1024px;
  }

  .e-con {
    --container-max-width: 1024px;
  }
}

@media(max-width:767px) {
  .elementor-section.elementor-section-boxed>.elementor-container {
    max-width: 767px;
  }

  .e-con {
    --container-max-width: 767px;
  }
}

.single-post.no-post-thumbnail .post-featured {
  display: none !important;
}/* End custom CSS */