:root{
  --bento-box-padding-high: 60px 48px;
  --bento-box-padding-medium: 48px 24px;
  --bento-box-padding-small: 20px;	
  --bento-box-gap-row: 24px; 
  --bento-box-gap-column: 60px; 
  --bento-box-radius: 24px;
  --bento-box-bg: linear-gradient(113deg, #FFFAF9 -30.86%, #F1F7FF 75.24%);
  --bento-list-padding-y: 32px;
  --bento-list-padding-x: 48px;
  --bento-list-radius: 24px;
  --bento-list-bg: #FFFAF9;
  --bento-text-color: #000000;
  --bento-highlight-color: #F72717;
  --bento-glass-bg: rgba(255,255,255,0.18);
  --bento-glass-border: rgba(255,255,255,0.35);
  --bento-glass-blur: 12px;
}

/* =====================================
   List Box: responsive layout switching
   We render both DOM variants in PHP (default + icon_title) and toggle here.
   ===================================== */
.bento-list-box__variant--icon-title{display:none;}
.bento-list-box--icon-title .bento-list-box__variant--default{display:none;}
.bento-list-box--icon-title .bento-list-box__variant--icon-title{display:block;}

@media (max-width:1024px){
  .bento-list-box.bento-list-box--t-icon_title .bento-list-box__variant--default{display:none;}
  .bento-list-box.bento-list-box--t-icon_title .bento-list-box__variant--icon-title{display:block;}
}
@media (max-width:767px){
  .bento-list-box.bento-list-box--m-icon_title .bento-list-box__variant--default{display:none;}
  .bento-list-box.bento-list-box--m-icon_title .bento-list-box__variant--icon-title{display:block;}
}

/* Elementor editor preview uses "device mode" classes that may not match the iframe viewport.
   These duplicates ensure the responsive Layout selection (including option 4) previews correctly.
   (Frontend continues to rely on real breakpoints.) */
.elementor-device-tablet .bento-list-box.bento-list-box--t-icon_title .bento-list-box__variant--default{display:none;}
.elementor-device-tablet .bento-list-box.bento-list-box--t-icon_title .bento-list-box__variant--icon-title{display:block;}
.elementor-device-mobile .bento-list-box.bento-list-box--m-icon_title .bento-list-box__variant--default{display:none;}
.elementor-device-mobile .bento-list-box.bento-list-box--m-icon_title .bento-list-box__variant--icon-title{display:block;}
.bento-hero{border-radius:var(--bento-box-radius); padding:var(--bento-box-padding-high); gap:var(--bento-box-gap);}
.bento-box-high{border-radius:var(--bento-box-radius); padding:var(--bento-box-padding-high); row-gap:var(--bento-box-gap-row); column-gap: var( --bento-box-gap-column) !important}
.bento-box-medium{border-radius:var(--bento-box-radius); padding:var(--bento-box-padding-medium); row-gap:var(--bento-box-gap-row); column-gap: var( --bento-box-gap-column)}
.bento-box-small{border-radius:var(--bento-box-radius); padding:var(--bento-box-padding-small); row-gap:var(--bento-box-gap-row); column-gap: var( --bento-box-gap-column)}
.bento-highlight{color:var(--bento-highlight-color);}

/* =====================================
   Breadcrumb (pill)
   - Mirrors the CSS rules shared in the screenshot:
     display:flex; padding:12px 16px; justify-content:center; align-items:center; gap:8px;
     border-radius:80px;
   - Background supports solid/gradient/glass (same pattern used by List Item)
   ===================================== */
.bento-breadcrumb{
  display:inline-flex;
  padding:12px 16px;
  justify-content:center;
  align-items:center;
  gap:8px;
  border-radius:80px;
  background: var(--bento-breadcrumb-bg, #FFFAF9);
  width: auto;
  max-width: 100%;
  box-sizing: border-box;
	font-weight:bold;
}
.bento-breadcrumb__image{
  width: 20px;
  height: 20px;
  object-fit: contain;
  flex: 0 0 auto;
}
.bento-breadcrumb__icon{
  width:20px;
  height:20px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex:0 0 auto;
  color:inherit;
}
.bento-breadcrumb__icon svg{width:20px;height:20px;}
.bento-breadcrumb__icon svg,.bento-breadcrumb__icon svg *{fill:currentColor !important;stroke:currentColor !important;}
.bento-breadcrumb{ text-decoration:none; }
.bento-breadcrumb__text{
  min-width:0;
  overflow-wrap:anywhere;
  word-break:break-word;
  line-height:1.1;
}
.bento-breadcrumb--bg-gradient{
  --bento-breadcrumb-bg: linear-gradient(var(--bento-grad-angle,113deg), var(--bento-grad-c1,#FFFAF9) var(--bento-grad-p1,-30.86%), var(--bento-grad-c2,#F1F7FF) var(--bento-grad-p2,75.24%));
}
.bento-breadcrumb--glass{
  background:var(--bento-glass-bg) !important;
  border:1px solid var(--bento-glass-border) !important;
  backdrop-filter:blur(var(--bento-glass-blur));
  -webkit-backdrop-filter:blur(var(--bento-glass-blur));
  box-shadow:0 8px 24px rgba(0,0,0,0.08);
}

/* If the breadcrumb is a link, keep it looking like a pill (not an underlined link) */
a.bento-breadcrumb{ text-decoration:none; }
.bento-list-box{display:flex;align-self:stretch;color:var(--bento-text-color);}
.bento-list-box--vertical{flex-direction:column;gap:8px;padding:var(--bento-list-padding-y) var(--bento-list-padding-x);align-items:flex-start;border-radius:var(--bento-list-radius);background:var(--bento-list-bg);}
.bento-list-box--horizontal{flex-direction:row;gap:16px;padding:24px 24px;align-items:center;border-radius:16px;background:var(--bento-list-bg);}
.bento-list-box--icon-title{flex-direction:column;gap:12px;padding:var(--bento-list-padding-y) var(--bento-list-padding-x);align-items:flex-start;border-radius:var(--bento-list-radius);background:var(--bento-list-bg);} 
.bento-list-box--icon_title{flex-direction:column;gap:12px;padding:var(--bento-list-padding-y) var(--bento-list-padding-x);align-items:flex-start;border-radius:var(--bento-list-radius);background:var(--bento-list-bg);} 
.bento-list-box--icon-title .bento-list-box__title{margin:0;min-width:0;overflow-wrap:anywhere;word-break:break-word;}
.bento-list-box--icon-title .bento-list-box__text,
.bento-list-box--icon_title .bento-list-box__text{width:100%;}

/* Layout 4 (mobile default): ícone + título na primeira linha; texto abaixo ocupando toda a largura */
.bento-list-box--icon-title .bento-list-box__variant--icon-title,
.bento-list-box--icon_title .bento-list-box__variant--icon-title{
  display:grid;
  grid-template-columns:auto 1fr;
  grid-template-rows:auto auto;
  column-gap:16px;
  row-gap:6px;
  align-items:center;
}

/* In layout 4 we wrap title+text in .bento-list-box__content.
   On mobile/tablet we want the children (title/text) to participate in the grid,
   so we use display: contents. Desktop overrides this to allow vertical centering. */
.bento-list-box--icon-title .bento-list-box__variant--icon-title .bento-list-box__content,
.bento-list-box--icon_title .bento-list-box__variant--icon-title .bento-list-box__content{display:contents;}
.bento-list-box--icon-title .bento-list-box__variant--icon-title .bento-list-box__icon,
.bento-list-box--icon_title .bento-list-box__variant--icon-title .bento-list-box__icon{
  grid-column:1;
  grid-row:1;
  align-self:center;
}
.bento-list-box--icon-title .bento-list-box__variant--icon-title .bento-list-box__title,
.bento-list-box--icon_title .bento-list-box__variant--icon-title .bento-list-box__title{
  grid-column:2;
  grid-row:1;
}
.bento-list-box--icon-title .bento-list-box__variant--icon-title .bento-list-box__text,
.bento-list-box--icon_title .bento-list-box__variant--icon-title .bento-list-box__text{
  grid-column:1 / -1;
  grid-row:2;
  width:100%;
}

/* Se não houver título: texto ao lado do ícone */
.bento-list-box--no-title .bento-list-box__variant--icon-title .bento-list-box__text{
  grid-column:2;
  grid-row:1;
}

/* Layout 4 (desktop): ícone à esquerda, título + texto à direita (ambos centralizados ao ícone)
   Mantemos o comportamento mobile (título ao lado do ícone e texto abaixo) via media query abaixo. */
@media (min-width:768px){
  /* Desktop: two columns (icon | content). The content column becomes a flex column
     so the (title+text) block is vertically centered to the icon/glass background. */
  .bento-list-box--icon-title .bento-list-box__variant--icon-title,
  .bento-list-box--icon_title .bento-list-box__variant--icon-title{
    grid-template-rows:auto;
    align-items:center;
  }

  .bento-list-box--icon-title .bento-list-box__variant--icon-title .bento-list-box__content,
  .bento-list-box--icon_title .bento-list-box__variant--icon-title .bento-list-box__content{
    display:flex;
    flex-direction:column;
    justify-content:center;
    min-width:0;
  }

  /* On desktop the text should sit under the title in the right column (not full-width) */
  .bento-list-box--icon-title .bento-list-box__variant--icon-title .bento-list-box__text,
  .bento-list-box--icon_title .bento-list-box__variant--icon-title .bento-list-box__text{width:auto;}
}
.list-home h3{font-size:20px !important}

/* =====================
   Layout responsivo (padrão Elementor)
   - O controle "Layout" é responsivo e salva layout_tablet/layout_mobile.
   - No render, adicionamos classes:
     .bento-list-box--t-<layout>  (tablet)
     .bento-list-box--m-<layout>  (mobile)
   - Aqui aplicamos o estilo do layout escolhido apenas no breakpoint.
   ===================== */

@media (max-width:1024px){
  .bento-list-box.bento-list-box--t-vertical{flex-direction:column;gap:8px;padding:var(--bento-list-padding-y) var(--bento-list-padding-x);align-items:flex-start;border-radius:var(--bento-list-radius);background:var(--bento-list-bg);}
  .bento-list-box.bento-list-box--t-horizontal{flex-direction:row;gap:16px;padding:24px 32px;align-items:center;border-radius:16px;background:var(--bento-list-bg);}
  .bento-list-box.bento-list-box--t-compact{display:flex;width:100%;min-height:68px;padding:24px 20px;justify-content:center;align-items:flex-start;gap:20px;border-radius:24px;background:var(--bento-list-bg, #fff);box-shadow:4px 4px 24px 4px rgba(0,0,0,0.08);}
  .bento-list-box.bento-list-box--t-icon_title{flex-direction:column;gap:12px;padding:var(--bento-list-padding-y) var(--bento-list-padding-x);align-items:flex-start;border-radius:var(--bento-list-radius);background:var(--bento-list-bg);}
  .bento-list-box.bento-list-box--t-icon_title .bento-list-box__head{display:flex;align-items:center;gap:8px;width:100%;}
  .bento-list-box.bento-list-box--t-icon_title .bento-list-box__title{margin:0;min-width:0;overflow-wrap:anywhere;word-break:break-word;}
}

/* Elementor editor device preview (tablet): apply responsive layout styles even when the viewport width
   doesn't match the breakpoint. */
.elementor-device-tablet .bento-list-box.bento-list-box--t-vertical{flex-direction:column;gap:8px;padding:var(--bento-list-padding-y) var(--bento-list-padding-x);align-items:flex-start;border-radius:var(--bento-list-radius);background:var(--bento-list-bg);}
.elementor-device-tablet .bento-list-box.bento-list-box--t-horizontal{flex-direction:row;gap:16px;padding:24px 32px;align-items:center;border-radius:16px;background:var(--bento-list-bg);}
.elementor-device-tablet .bento-list-box.bento-list-box--t-compact{display:flex;width:100%;min-height:68px;padding:24px 20px;justify-content:center;align-items:flex-start;gap:20px;border-radius:24px;background:var(--bento-list-bg, #fff);box-shadow:4px 4px 24px 4px rgba(0,0,0,0.08);}
.elementor-device-tablet .bento-list-box.bento-list-box--t-icon_title{flex-direction:column;gap:12px;padding:var(--bento-list-padding-y) var(--bento-list-padding-x);align-items:flex-start;border-radius:var(--bento-list-radius);background:var(--bento-list-bg);}
.elementor-device-tablet .bento-list-box.bento-list-box--t-icon_title .bento-list-box__head{display:flex;align-items:center;gap:8px;width:100%;}
.elementor-device-tablet .bento-list-box.bento-list-box--t-icon_title .bento-list-box__title{margin:0;min-width:0;overflow-wrap:anywhere;word-break:break-word;}

@media (max-width:767px){
  .bento-list-box.bento-list-box--m-vertical{flex-direction:column;gap:8px;padding:var(--bento-list-padding-y) var(--bento-list-padding-x);align-items:flex-start;border-radius:var(--bento-list-radius);background:var(--bento-list-bg);}
  .bento-list-box.bento-list-box--m-horizontal{flex-direction:row;gap:16px;padding:20px;align-items:flex-start;border-radius:16px;background:var(--bento-list-bg);}
  /* Opção 2 no mobile: ícone centralizado verticalmente, texto do outro lado */
  .bento-list-box.bento-list-box--m-horizontal .bento-list-box__icon{align-self:center;}
  .bento-list-box.bento-list-box--m-compact{display:flex;width:100%;min-height:68px;padding:20px 16px;justify-content:center;align-items:flex-start;gap:16px;border-radius:24px;background:var(--bento-list-bg, #fff);box-shadow:4px 4px 24px 4px rgba(0,0,0,0.08);}
  .bento-list-box.bento-list-box--m-icon_title{flex-direction:column;gap:12px;padding:var(--bento-list-padding-y) var(--bento-list-padding-x);align-items:flex-start;border-radius:var(--bento-list-radius);background:var(--bento-list-bg);}
  .bento-list-box.bento-list-box--m-icon_title .bento-list-box__head{display:flex;align-items:center;gap:8px;width:100%;}
  .bento-list-box.bento-list-box--m-icon_title .bento-list-box__title{margin:0;min-width:0;overflow-wrap:anywhere;word-break:break-word;}
	.list-home h3{font-size:18px !important}
}

/* Elementor editor device preview (mobile): apply responsive layout styles even when the viewport width
   doesn't match the breakpoint. */
.elementor-device-mobile .bento-list-box.bento-list-box--m-vertical{flex-direction:column;gap:8px;padding:var(--bento-list-padding-y) var(--bento-list-padding-x);align-items:flex-start;border-radius:var(--bento-list-radius);background:var(--bento-list-bg);}
.elementor-device-mobile .bento-list-box.bento-list-box--m-horizontal{flex-direction:row;gap:16px;padding:20px;align-items:flex-start;border-radius:16px;background:var(--bento-list-bg);}
.elementor-device-mobile .bento-list-box.bento-list-box--m-horizontal .bento-list-box__icon{align-self:center;}
.elementor-device-mobile .bento-list-box.bento-list-box--m-compact{display:flex;width:100%;min-height:68px;padding:20px 16px;justify-content:center;align-items:flex-start;gap:16px;border-radius:24px;background:var(--bento-list-bg, #fff);box-shadow:4px 4px 24px 4px rgba(0,0,0,0.08);}
.elementor-device-mobile .bento-list-box.bento-list-box--m-icon_title{flex-direction:column;gap:12px;padding:var(--bento-list-padding-y) var(--bento-list-padding-x);align-items:flex-start;border-radius:var(--bento-list-radius);background:var(--bento-list-bg);}
.elementor-device-mobile .bento-list-box.bento-list-box--m-icon_title .bento-list-box__head{display:flex;align-items:center;gap:8px;width:100%;}
.elementor-device-mobile .bento-list-box.bento-list-box--m-icon_title .bento-list-box__title{margin:0;min-width:0;overflow-wrap:anywhere;word-break:break-word;}

/* =========================================================
   Responsive Layout override (Elementor responsive select)
   O controle responsivo "Layout" salva valores em:
   - layout (desktop)
   - layout_tablet
   - layout_mobile
   No render, adicionamos classes:
   - bento-list-box--t-<layout_tablet>
   - bento-list-box--m-<layout_mobile>
   Essas regras aplicam o layout escolhido no breakpoint.
   ========================================================= */

@media (max-width:1024px){
  .bento-list-box.bento-list-box--t-vertical{flex-direction:column;gap:8px;padding:var(--bento-list-padding-y) var(--bento-list-padding-x);align-items:flex-start;border-radius:var(--bento-list-radius);background:var(--bento-list-bg);} 
  .bento-list-box.bento-list-box--t-horizontal{flex-direction:row;gap:16px;padding:24px 32px;align-items:center;border-radius:16px;background:var(--bento-list-bg);} 
  .bento-list-box.bento-list-box--t-compact{display:flex;width:100%;min-height:68px;padding:24px 20px;justify-content:center;align-items:flex-start;gap:20px;border-radius:24px;background:var(--bento-list-bg, #fff);box-shadow:4px 4px 24px 4px rgba(0,0,0,0.08);} 
  .bento-list-box.bento-list-box--t-icon_title{flex-direction:column;gap:12px;padding:var(--bento-list-padding-y) var(--bento-list-padding-x);align-items:flex-start;border-radius:var(--bento-list-radius);background:var(--bento-list-bg);} 
  .bento-list-box.bento-list-box--t-icon_title .bento-list-box__head{display:flex;align-items:center;gap:8px;width:100%;}
  .bento-list-box.bento-list-box--t-icon_title .bento-list-box__title{margin:0;min-width:0;overflow-wrap:anywhere;word-break:break-word;}
}

@media (max-width:767px){
  .bento-list-box.bento-list-box--m-vertical{flex-direction:column;gap:8px;padding:var(--bento-list-padding-y) var(--bento-list-padding-x);align-items:flex-start;border-radius:var(--bento-list-radius);background:var(--bento-list-bg);} 
  .bento-list-box.bento-list-box--m-horizontal{flex-direction:row;gap:16px;padding:20px;align-items:flex-start;border-radius:16px;background:var(--bento-list-bg);} 
  .bento-list-box.bento-list-box--m-compact{display:flex;width:100%;min-height:68px;padding:20px 16px;justify-content:center;align-items:flex-start;gap:16px;border-radius:24px;background:var(--bento-list-bg, #fff);box-shadow:4px 4px 24px 4px rgba(0,0,0,0.08);} 
  .bento-list-box.bento-list-box--m-icon_title{flex-direction:column;gap:12px;padding:var(--bento-list-padding-y) var(--bento-list-padding-x);align-items:flex-start;border-radius:var(--bento-list-radius);background:var(--bento-list-bg);} 
  .bento-list-box.bento-list-box--m-icon_title .bento-list-box__head{display:flex;align-items:center;gap:8px;width:100%;}
  .bento-list-box.bento-list-box--m-icon_title .bento-list-box__title{margin:0;min-width:0;overflow-wrap:anywhere;word-break:break-word;}
}
.bento-list-box.bento-list-box--glass{background:var(--bento-glass-bg) !important;border:1px solid var(--bento-glass-border) !important;backdrop-filter:blur(var(--bento-glass-blur));-webkit-backdrop-filter:blur(var(--bento-glass-blur));box-shadow:0 8px 24px rgba(0,0,0,0.08);}
.bento-list-box--bg-gradient{--bento-list-bg:linear-gradient(var(--bento-grad-angle,113deg), var(--bento-grad-c1,#FFFAF9) var(--bento-grad-p1,-30.86%), var(--bento-grad-c2,#F1F7FF) var(--bento-grad-p2,75.24%));}
.bento-list-box--bg-solid{}
.bento-list-box__icon{width:48px;height:48px;display:inline-flex;align-items:center;justify-content:center;color:var(--bento-icon-color, var(--bento-highlight-color));}
.bento-list-box__icon i{color:inherit !important;}
.bento-list-box__icon svg{width:48px;height:48px;}
.bento-list-box__icon svg,.bento-list-box__icon svg *{fill:currentColor !important;stroke:currentColor !important;}
/* Extra safety for some SVG icon packs that use <use> or inline fill/stroke attributes */
.bento-list-box__icon use{fill:currentColor !important;stroke:currentColor !important;}
.bento-list-box__icon [fill]:not([fill="none"]){fill:currentColor !important;}
.bento-list-box__icon [stroke]:not([stroke="none"]){stroke:currentColor !important;}
.bento-list-box__content{display:flex;flex-direction:column;gap:8px;width:100%;}


/* ============================
   Bento Text – Tag independente de estilo
   Mantém o visual mesmo trocando P/H1/H2/H3...
============================ */
.bento-text__content{margin:0;}
.bento-text__content *{color:inherit;}
.bento-list-box__title{margin:0;color:var(--bento-text-color);line-height: normal; min-width:0;white-space:normal;overflow-wrap:anywhere;word-break:break-word;}
.bento-list-box__text{font-size:16px;line-height:1.2;font-family:Ubuntu,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;}
.bento-inf-carousel{position:relative}
.bento-inf-carousel__viewport{overflow:hidden;width:100%}
.bento-inf-carousel__track{display:flex;gap:24px;width:max-content}
.bento-inf-carousel__item{flex:0 0 auto}
.bento-inf-carousel__img{display:block;height:64px;width:auto}
@media (max-width:767px){:root{--bento-list-padding-y:24px;--bento-list-padding-x:24px;}.bento-list-box--horizontal{padding:20px;border-radius:16px;align-items:flex-start;}.bento-list-box--horizontal .bento-list-box__icon{align-self:center;}}


/* Bento Button - Outline variant
   - Herda padding do botão global do Elementor
   - Força apenas borda/texto e tamanho de fonte conforme especificação
*/
.bento-btn--outline{
  background: transparent !important;
  border: 1px solid var(--bento-btn-outline-border, currentColor) !important;
  color: var(--bento-btn-outline-color, currentColor) !important;
  font-size: 16px !important;
  transition: height .25s ease;
}

.bento-btn--outline:hover{
	background-color:#000 !important;
	color:#FFF !important;
}
.bento-btn--outline .elementor-button-text{ color: inherit !important; }
/* Extra: sobrescreve atributos inline comuns */
.bento-btn .elementor-button-icon [fill]:not([fill="none"]){
  fill: currentColor !important;
}
.bento-btn .elementor-button-icon [stroke]:not([stroke="none"]){
  stroke: currentColor !important;
}

/* Bento Button - Text variant (transparente, sem borda) */
.bento-btn.bento-btn--text{
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  padding: 0 !important;
}
.bento-btn.bento-btn--text:hover{
  opacity: 0.92;
}
.bento-btn.bento-btn--text .elementor-button-text{ color: inherit !important; font-weight:400; }
.bento-btn.bento-btn--text svg, .bento-btn.bento-btn--text svg *{ fill: currentColor; stroke: currentColor; }




/* Bento List Item - Opção 3 (Compacto) */
.bento-list-box--compact{
  display:flex;
  width:100%;
  padding: 24px 20px;
  justify-content:center;
  align-items:flex-start;
  gap:20px;
  border-radius:24px;
  background: var(--bento-list-bg, #fff);
  box-shadow: 4px 4px 24px 4px rgba(0,0,0,0.08);
}
.bento-list-box--compact .bento-list-box__icon{
  flex:0 0 auto;
}
.bento-list-box--compact .bento-list-box__content{
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:0px;
  min-width:0;
}
.bento-list-box__eyebrow{
  font-size:12px;
  line-height:1;
  font-weight:600;
  color: var(--bento-highlight-color, #F72717);
  text-transform:none;
  background-color: #D5D8DD;
  position: absolute;
  padding: 8px;
  border-radius: 50px;
  top: -12px;
  left: 20px;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.70) 0%, rgba(241, 247, 255, 0.70) 100%);
  border: 1px solid #D5D8DD;
}
.bento-list-box--compact .bento-list-box__title{
  margin:0;
}


/* Underline helper for [brackets] */
.bento-underline{
  text-decoration: underline;
  text-underline-offset: 0.12em;
}


/* Bento Accordion (single box) */
.bento-accordion-list{display:flex;flex-direction:column;gap:16px;width:100%;}
.bento-accordion__item{
  border-style: solid;
  border-width: 1px;
  border-color: rgba(0,0,0,0.08);
  border-radius: 24px;
  padding: 16px 24px;
  width: 100%;
  box-sizing: border-box;
}
.bento-accordion__header{
  width: 100%;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap: 16px;
  padding: 16px 0;
  background: transparent;
  border: 0;
  cursor: pointer;
  text-align: left;
  /* Force line wrapping on mobile/long questions. Some themes/Elementor kits
     apply nowrap to headings/buttons, preventing wrapping. */
  white-space: normal;
}
.bento-accordion__title{
  margin:0;
  font-size: 20px;
  font-weight: 700;
  flex: 1 1 0%;
  min-width: 0;
  max-width: 100%;
  white-space: normal !important;
  overflow: visible;
  overflow-wrap: anywhere;
  word-break: break-word;
}
.bento-accordion__icon{
  display:flex;
  width:18px;
  height:18px;
  color:#000;
  flex:0 0 auto;
  transition: transform .2s ease;
}
.bento-accordion__icon svg{ width:100%; height:100%; }
.bento-accordion__item.is-open .bento-accordion__icon{
  transform: rotate(180deg);
}
.bento-accordion__panel{
  /* Keep padding at 0 when closed, otherwise the panel still takes vertical space
     even with height: 0 and the answer can look "already open". */
  padding: 0;
}

/* Apply spacing only when the item is open */

.bento-accordion__content{
  font-family: Ubuntu, sans-serif;
  font-size: 16px;
}
.swiper-pagination-bullet{
	width: 11px !important;
    height: 4px !important;
    border-radius: 7px !important;
    background-color: #FFF !important;
	opacity:1 !important;
}
.swiper-pagination{
	background: rgba(213, 216, 221, 0.40);
	border-radius:100px;
	padding:5px;
	display:flex;

}
.swiper-pagination-bullet-active{
	background-color: #F72717 !important;
}

.bento-accordion__panel{
  overflow: hidden;
  height: 0;
  padding-left:16px;

}

.bento-accordion__panel[hidden]{
  display: none !important;
}

@media (prefers-reduced-motion: no-preference){
  .bento-accordion__panel{ transition: height .25s ease; }
  .bento-accordion__icon{ transition: transform .2s ease; }
}


/* Bento Button - Black variant */
.bento-btn.bento-btn--black{
  background:#000;
  border-color:#000;
  color:#fff;
}
.bento-btn.bento-btn--black:hover{
  opacity:0.92;
}

/* Ensure font icons inherit color */

.bento-list-box__icon i,
.bento-list-box__icon i:before{color:inherit !important;}

.bento-btn .elementor-button-icon svg{fill:currentColor;stroke:currentColor;}

p{
	margin:0;
	padding:0;
}


/* Responsive ListBox layout overrides (tablet/mobile) */
@media (max-width:1024px){
  .bento-list-box.bento-list-box--t-vertical{
    flex-direction:column;
    gap:8px;
    padding:var(--bento-list-padding-y) var(--bento-list-padding-x);
    align-items:flex-start;
    border-radius:var(--bento-list-radius);
    background:var(--bento-list-bg);
  }
  .bento-list-box.bento-list-box--t-horizontal{
    flex-direction:row;
    gap:16px;
    padding:24px 32px;
    align-items:center;
    border-radius:16px;
    background:var(--bento-list-bg);
  }
  .bento-list-box.bento-list-box--t-compact{
    display:flex;
    width:100%;
    min-height:68px;
    padding:24px 20px;
    justify-content:center;
    align-items:flex-start;
    gap:20px;
    border-radius:24px;
    background: var(--bento-list-bg, #fff);
    box-shadow: 4px 4px 24px 4px rgba(0,0,0,0.08);
  }
  .bento-list-box.bento-list-box--t-icon_title{
    flex-direction:column;
    gap:12px;
    padding:var(--bento-list-padding-y) var(--bento-list-padding-x);
    align-items:flex-start;
    border-radius:var(--bento-list-radius);
    background:var(--bento-list-bg);
  }
}
@media (max-width:767px){
  .bento-list-box.bento-list-box--m-vertical{
    flex-direction:column;
    gap:8px;
    padding:var(--bento-list-padding-y) var(--bento-list-padding-x);
    align-items:flex-start;
    border-radius:var(--bento-list-radius);
    background:var(--bento-list-bg);
  }
  .bento-list-box.bento-list-box--m-horizontal{
    flex-direction:row;
    gap:16px;
    padding:24px 32px;
    align-items:center;
    border-radius:16px;
    background:var(--bento-list-bg);
  }
  .bento-list-box.bento-list-box--m-compact{
    display:flex;
    width:100%;
    min-height:68px;
    padding:24px 20px;
    justify-content:center;
    align-items:flex-start;
    gap:20px;
    border-radius:24px;
    background: var(--bento-list-bg, #fff);
    box-shadow: 4px 4px 24px 4px rgba(0,0,0,0.08);
  }
  .bento-list-box.bento-list-box--m-icon_title{
    flex-direction:column;
    gap:12px;
    padding:var(--bento-list-padding-y) var(--bento-list-padding-x);
    align-items:flex-start;
    border-radius:var(--bento-list-radius);
    background:var(--bento-list-bg);
  }
}


/* Mobile responsive overrides */
@media (max-width:767px){
  /* Bento Hero mobile padding: L/R 24, top 48, bottom 20 */
  .bento-hero{
    padding: 48px 24px 20px 24px !important;
  }

  /* Bento Box mobile padding: 20 */
  .bento-box-high{
    padding: 48px 24px !important;
  }
	
  .bento-box-medium{
    padding: 24px !important;
  }
  .bento-box-small{
    padding: 20px !important;
  }


  /* List Box Option 1 (vertical) mobile: padding 24 all sides */
  .bento-list-box--vertical{
    padding: 24px !important;
  }
}


/* Bento Button - Mobile full width */
@media (max-width:767px){
  .elementor-widget-bento_button .bento-btn{
    width:100% !important;
    display:flex !important;
    justify-content:center;
    box-sizing:border-box;
  }
}


.bento-list-box__variant--default{display:flex;width:100%;min-width:0;}
.bento-list-box--vertical .bento-list-box__variant--default{flex-direction:column;align-items:flex-start;gap:8px;}
.bento-list-box--horizontal .bento-list-box__variant--default{flex-direction:row;align-items:center;gap:16px;}
.bento-list-box--compact .bento-list-box__variant--default{flex-direction:row;align-items:flex-start;gap:20px;}

@media (max-width:1024px){
  .bento-list-box.bento-list-box--t-vertical .bento-list-box__variant--default{flex-direction:column;align-items:flex-start;gap:8px;}
  .bento-list-box.bento-list-box--t-horizontal .bento-list-box__variant--default{flex-direction:row;align-items:center;gap:16px;}
  .bento-list-box.bento-list-box--t-compact .bento-list-box__variant--default{flex-direction:row;align-items:flex-start;gap:20px;}
}
@media (max-width:767px){
  .bento-list-box.bento-list-box--m-vertical .bento-list-box__variant--default{flex-direction:column;align-items:flex-start;gap:8px;}
  .bento-list-box.bento-list-box--m-horizontal .bento-list-box__variant--default{flex-direction:row;align-items:flex-start;gap:16px;}
  .bento-list-box.bento-list-box--m-compact .bento-list-box__variant--default{flex-direction:row;align-items:flex-start;gap:16px;}
}

/* Elementor editor device preview (tablet/mobile) */
.elementor-device-tablet .bento-list-box.bento-list-box--t-vertical .bento-list-box__variant--default{flex-direction:column;align-items:flex-start;gap:8px;}
.elementor-device-tablet .bento-list-box.bento-list-box--t-horizontal .bento-list-box__variant--default{flex-direction:row;align-items:center;gap:16px;}
.elementor-device-tablet .bento-list-box.bento-list-box--t-compact .bento-list-box__variant--default{flex-direction:row;align-items:flex-start;gap:20px;}
.elementor-device-mobile .bento-list-box.bento-list-box--m-vertical .bento-list-box__variant--default{flex-direction:column;align-items:flex-start;gap:8px;}
.elementor-device-mobile .bento-list-box.bento-list-box--m-horizontal .bento-list-box__variant--default{flex-direction:row;align-items:flex-start;gap:16px;}
.elementor-device-mobile .bento-list-box.bento-list-box--m-compact .bento-list-box__variant--default{flex-direction:row;align-items:flex-start;gap:16px;}


/* ============================
   Bento Icon List
   - Desktop: grid "icon title" / ". text"
   - Mobile:  grid "icon title" / "text text"
   - Double glass background behind icon (outer+inner)
   - Background sizes are proportional to the icon size
============================ */
.bento-iconlist{
  display:flex;
  flex-direction:column;
  gap:16px;

  /* sizing */
  --bento-il-icon: 36px;
  --bento-il-inner-m: 1.40;
  --bento-il-outer-m: 1.80;
  --bento-il-inner: calc(var(--bento-il-icon) * var(--bento-il-inner-m));
  --bento-il-outer: calc(var(--bento-il-icon) * var(--bento-il-outer-m));

  /* glass */
  --bento-il-angle: 0deg;
  --bento-il-c1: #FFFFFF;
  --bento-il-c2: #F1F7FF;
  --bento-il-alpha: 30%;
  --bento-il-blur: 12px;
  --bento-il-border-alpha: 0.35;

  /* colors */
  --bento-il-highlight: #F72717;
}

.bento-iconlist__item{
  display:flex;
  align-items:center;
  gap:16px;
}

.bento-iconlist__iconwrap{
  grid-area: icon;
  position:relative;
  width:var(--bento-il-outer);
  height:var(--bento-il-outer);
  display:flex;
  align-items:center;
  justify-content:center;
  flex-shrink:0;
}

.bento-iconlist__content{
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:flex-start;
  text-align:left;
}

.bento-iconlist__iconwrap::before,
.bento-iconlist__iconwrap::after{
  content:"";
  position:absolute;
  left:50%;
  top:50%;
  transform:translate(-50%,-50%);
  border-radius:999px;
  background:linear-gradient(
    var(--bento-il-angle),
    color-mix(in srgb, var(--bento-il-c1) var(--bento-il-alpha), transparent) 0%,
    color-mix(in srgb, var(--bento-il-c2) var(--bento-il-alpha), transparent) 100%
  );
  border:1px solid rgba(255,255,255,var(--bento-il-border-alpha));
  -webkit-backdrop-filter: blur(var(--bento-il-blur));
  backdrop-filter: blur(var(--bento-il-blur));
}

.bento-iconlist__iconwrap::before{
  width:var(--bento-il-outer);
  height:var(--bento-il-outer);
  opacity:0.65;
}

.bento-iconlist__iconwrap::after{
  width:var(--bento-il-inner);
  height:var(--bento-il-inner);
  opacity:1;
}

.bento-iconlist__icon{
  position:relative;
  z-index:1;
  display:flex;
  align-items:center;
  justify-content:center;
  color:var(--bento-il-highlight);
}

.bento-iconlist__title{
  grid-area:title;
  margin:0;
}

.bento-iconlist__text{
  grid-area:text;
}

.bento-iconlist__text p{margin:0;}

/* When there is no title, text takes the title slot (side-by-side with the icon) */
.bento-iconlist__item--no-title{
  /* desktop: same as default flex layout */
}

.bento-iconlist__item--no-title .bento-iconlist__text,
.bento-iconlist__text--solo{
  grid-area:text;
}

@media (max-width:767px){
  /* Mobile: grid layout (icon + title on first row; text full width under) */
  .bento-iconlist__item{
    display:grid;
    grid-template-columns:auto 1fr;
    grid-template-areas:
      "icon title"
      "text text";
    column-gap:16px;
    row-gap:8px;
    align-items: center;
  }

  /* Make the wrapper not interfere with grid placement on mobile */
  .bento-iconlist__content{
    display:contents;
  }

  /* no-title mobile: keep text beside icon */
  .bento-iconlist__item--no-title{
    grid-template-areas:
      "icon text";
    align-items:center;
  }
}
       .carrosel .swiper-wrapper {
      -webkit-transition-timing-function: linear !important;
      -moz-transition-timing-function: linear !important;
      -o-transition-timing-function: linear !important;
      transition-timing-function: linear !important;
    }

/* Bento Heading Visual Styles - permite tag semântica diferente do estilo visual */
.bento-heading--style-h1 {
    font-size: 40px !important;
    font-weight: 700 !important;
}

.bento-heading--style-h2 {
    font-size: 36px !important;
    font-weight: 700 !important;
}

.bento-heading--style-h3 {
    font-size: 28px !important;
    font-weight: 600 !important;
}

.bento-heading--style-h4 {
    font-size: 20px !important;
    font-weight: 600 !important;
}

.bento-heading--style-h5 {
    font-size: 18px !important;
    font-weight: 600 !important;
}

.bento-heading--style-h6 {
    font-size: 16px !important;
    font-weight: 600 !important;
}

.bento-heading--style-p {
    font-size: 16px !important;
    font-family: var(--bento-font) !important;
    font-weight: 400 !important;
}

@media(max-width: 767px) {
    .bento-heading--style-h1 {
        font-size: 28px !important;
    }

    .bento-heading--style-h2 {
        font-size: 24px !important;
    }

    .bento-heading--style-h3 {
        font-size: 20px !important;
    }

    .bento-heading--style-h4 {
        font-size: 18px !important;
    }

    .bento-heading--style-h5 {
        font-size: 16px !important;
    }

    .bento-heading--style-h6 {
        font-size: 14px !important;
    }

    .bento-heading--style-mobile-h1 {
        font-size: 28px !important;
        font-weight: 700 !important;
    }

    .bento-heading--style-mobile-h2 {
        font-size: 24px !important;
        font-weight: 700 !important;
    }

    .bento-heading--style-mobile-h3 {
        font-size: 20px !important;
        font-weight: 600 !important;
    }

    .bento-heading--style-mobile-h4 {
        font-size: 18px !important;
        font-weight: 600 !important;
    }

    .bento-heading--style-mobile-h5 {
        font-size: 16px !important;
        font-weight: 600 !important;
    }

    .bento-heading--style-mobile-h6 {
        font-size: 14px !important;
        font-weight: 600 !important;
    }

    .bento-heading--style-mobile-p {
        font-size: 14px !important;
        font-family: var(--bento-font) !important;
        font-weight: 400 !important;
    }
}

.elementor-device-mobile .bento-heading--style-mobile-h1 {
    font-size: 28px !important;
    font-weight: 700 !important;
}
.elementor-device-mobile .bento-heading--style-mobile-h2 {
    font-size: 24px !important;
    font-weight: 700 !important;
}
.elementor-device-mobile .bento-heading--style-mobile-h3 {
    font-size: 20px !important;
    font-weight: 600 !important;
}
.elementor-device-mobile .bento-heading--style-mobile-h4 {
    font-size: 18px !important;
    font-weight: 600 !important;
}
.elementor-device-mobile .bento-heading--style-mobile-h5 {
    font-size: 16px !important;
    font-weight: 600 !important;
}
.elementor-device-mobile .bento-heading--style-mobile-h6 {
    font-size: 14px !important;
    font-weight: 600 !important;
}
.elementor-device-mobile .bento-heading--style-mobile-p {
    font-size: 14px !important;
    font-family: var(--bento-font) !important;
    font-weight: 400 !important;
}


/* Bento Blog Search */
.bento-blog-search{position:relative;}
.bento-blog-search__form{position:relative;}
.bento-blog-search__field{
  display:flex;
  align-items:center;
  width:100%;
  border:1px solid #6D7787;
  border-radius:40px;
  padding:8px 24px;
  gap:8px;
}
.bento-blog-search__icon{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;}
.bento-blog-search__icon svg{width:1em;height:1em;}
.bento-blog-search__input{
  border:0 !important;
  outline:none !important;
  background:transparent !important;
  width:100%;
  min-width:0;
  font: inherit;
}
.bento-blog-search__suggestions{
  position:absolute;
  top:calc(100% + 8px);
  left:0;
  right:0;
  z-index:99;
  background:#fff;
  border:1px solid rgba(0,0,0,0.08);
  border-radius:12px;
  box-shadow:0 10px 30px rgba(0,0,0,0.08);
  padding:6px;
  display:none;
  width:400px;
}
.bento-blog-search.is-open .bento-blog-search__suggestions{display:block;}
.bento-blog-search__item{
  display:block;
  padding:10px 12px;
  border-radius:10px;
  text-decoration:none;
  color:inherit;
}
.bento-blog-search__item:hover,
.bento-blog-search__item.is-active{background:rgba(0,0,0,0.06);}
.bento-blog-search__title{font-weight:600;}
.bento-blog-search__meta{font-size:12px;opacity:0.7;margin-top:2px;}
.bento-blog-search__empty{padding:10px 12px;opacity:0.7;}
.bento-blog-search mark{    background: #f72717;
    padding: 2px 4px;
    border-radius: 3px;
    color: #FFF;
    font-weight: normal;}

/* =========================================================
   BENTO BLOG SEARCH — ESTILO PILL + DROPDOWN
   Cole tudo de uma vez.
   ========================================================= */

/* Variáveis (você pode sobrescrever via Elementor / CSS global) */
.bento-blog-search {
  --bento-border: #6D7787;
  --bento-border-hover: #4f5968;
  --bento-border-focus: #1a73e8;
  --bento-focus-ring: rgba(26,115,232,.15);

  --bento-bg: #ffffff;
  --bento-text: #0b0f14;
  --bento-placeholder: #6D7787;
  --bento-icon: #6D7787;

  --bento-font: Ubuntu, system-ui, -apple-system, Segoe UI, Roboto, Arial;

  --bento-radius: 40px;
  --bento-pad-y: 8px;
  --bento-pad-x: 24px;
  --bento-gap: 8px;

  position: relative;
  width: 100%;
  max-width: 520px; /* ajuste se quiser */
}

/* Caso o widget renderize só <form class="bento-blog-search"> */
.bento-blog-search form,
form.bento-blog-search {
  position: relative;
  width: 100%;
}

/* =========================================
   PILL / CAIXA
   Preferido: .bento-blog-search__box
   Fallback: o próprio form vira a caixa
   ========================================= */
.bento-blog-search__box,
form.bento-blog-search {
  display: flex;
  align-items: center;
  gap: var(--bento-gap);

  padding: var(--bento-pad-y) var(--bento-pad-x);
  border-radius: var(--bento-radius);
  border: 1px solid var(--bento-border);
  background: var(--bento-bg);

  transition: border-color .15s ease, box-shadow .15s ease, background .15s ease;
}

/* Hover */
.bento-blog-search__box:hover,
form.bento-blog-search:hover {
  border-color: var(--bento-border-hover);
}

/* Focus */
.bento-blog-search__box:focus-within,
form.bento-blog-search:focus-within {
  border-color: var(--bento-border-focus);
  box-shadow: 0 0 0 4px var(--bento-focus-ring);
}

/* =========================================
   ÍCONE
   Preferido: span.bento-blog-search__icon
   ========================================= */
.bento-blog-search__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--bento-icon);
  font-size: 16px;
  line-height: 1;
}

/* Se você usar SVG no ícone */
.bento-blog-search__icon svg {
  width: 16px;
  height: 16px;
  fill: currentColor;
}

/* Ícone depois (no widget, basta aplicar a classe no wrapper) */
.bento-blog-search.is-icon-after .bento-blog-search__box,
form.bento-blog-search.is-icon-after {
  flex-direction: row-reverse;
}

/* =========================================
   INPUT
   ========================================= */
.bento-blog-search input[type="search"],
.bento-blog-search input[type="text"] {
  flex: 1;
  border: 0;
  outline: 0;
  background: transparent;

  font-family: var(--bento-font);
  font-size: 14px;
  font-weight: 400;
  color: var(--bento-text);

  padding: 0;
  min-height: 24px;
}

/* Placeholder */
.bento-blog-search input[type="search"]::placeholder,
.bento-blog-search input[type="text"]::placeholder {
  color: var(--bento-placeholder);
  opacity: 1;
}

/* Remove X padrão do input search (Chrome/Safari) */
.bento-blog-search input[type="search"]::-webkit-search-cancel-button {
  -webkit-appearance: none;
}

/* Botão (se existir) */
.bento-blog-search button {
  border: 0;
  background: transparent;
  padding: 0;
  margin: 0;
  cursor: pointer;
  color: var(--bento-icon);
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

/* =========================================
   DROPDOWN DE SUGESTÕES (AJAX)
   Estrutura esperada:
   .bento-blog-search__suggestions
     .bento-blog-search__suggestion
       .bento-blog-search__suggestion-title
       .bento-blog-search__suggestion-meta (opcional)
   ========================================= */
.bento-blog-search__suggestions {
  position: absolute;
  top: calc(100% + 8px);
  left: 0;
  right: 0;

  background: #fff;
  border: 1px solid rgba(0,0,0,.08);
  border-radius: 16px;
  box-shadow: 0 10px 30px rgba(0,0,0,.10);

  overflow: hidden;
  z-index: 999;

  /* aparência mais “leve” */
  backdrop-filter: blur(10px);
}

.bento-blog-search__suggestion {
  display: flex;
  gap: 10px;
  padding: 12px 16px;
  align-items: center;
  cursor: pointer;

  font-family: var(--bento-font);
  font-size: 14px;
}

.bento-blog-search__suggestion:hover,
.bento-blog-search__suggestion.is-active {
  background: rgba(0,0,0,.04);
}

.bento-blog-search__suggestion-title {
  color: #111;
}

.bento-blog-search__suggestion-meta {
  margin-left: auto;
  font-size: 12px;
  color: #6D7787;
  white-space: nowrap;
}

/* Termo em destaque dentro da sugestão */
.bento-blog-search__hl {
  font-weight: 700;
}

/* Estado “sem resultados” (se você renderizar) */
.bento-blog-search__empty {
  padding: 12px 16px;
  font-family: var(--bento-font);
  font-size: 14px;
  color: #6D7787;n
}

.bento-blog-search__button {
  background: transparent !important;
  border: 0;
  padding: 0 !important;
  margin: 0;

  display: inline-flex;
  align-items: center;
  justify-content: center;

  color: var(--bento-icon, #6D7787);
  cursor: pointer;

  /* remove estilos nativos */
  box-shadow: none;
  outline: none;
}

/* remove fundo no foco (Chrome / Safari) */
.bento-blog-search__button:focus,
.bento-blog-search__button:focus-visible {
  outline: none;
  box-shadow: none;
}