.elementor-10 .elementor-element.elementor-element-676dd164{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-10 .elementor-element.elementor-element-5fce568e > .elementor-widget-container{padding:0px 0px 0px 0px;}.elementor-10 .elementor-element.elementor-element-e07e803{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-10 .elementor-element.elementor-element-97c59ac{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-10 .elementor-element.elementor-element-d69f8e5{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:96px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-10 .elementor-element.elementor-element-d73c7a2{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-10 .elementor-element.elementor-element-8c26257{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-10 .elementor-element.elementor-element-2960fc3{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-10 .elementor-element.elementor-element-ea7bf74 > .elementor-widget-container{padding:0px 0px 0px 0px;}.elementor-10 .elementor-element.elementor-element-2b66267{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-10 .elementor-element.elementor-element-dee5f99{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-10 .elementor-element.elementor-element-d09ff0d{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-10 .elementor-element.elementor-element-62e2ba8{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}@media(min-width:2400px){.elementor-10 .elementor-element.elementor-element-d69f8e5{--margin-top:96px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}}@media(max-width:1366px){.elementor-10 .elementor-element.elementor-element-d69f8e5{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-10 .elementor-element.elementor-element-8c26257{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-10 .elementor-element.elementor-element-2960fc3{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}}@media(max-width:1200px){.elementor-10 .elementor-element.elementor-element-5fce568e > .elementor-widget-container{padding:0px 0px 0px 0px;}.elementor-10 .elementor-element.elementor-element-d69f8e5{--padding-top:0px;--padding-bottom:024px;--padding-left:24px;--padding-right:24px;}.elementor-10 .elementor-element.elementor-element-8c26257{--padding-top:72px;--padding-bottom:72px;--padding-left:24px;--padding-right:24px;}.elementor-10 .elementor-element.elementor-element-2960fc3{--padding-top:72px;--padding-bottom:72px;--padding-left:24px;--padding-right:24px;}}@media(max-width:1024px){.elementor-10 .elementor-element.elementor-element-d69f8e5{--padding-top:0px;--padding-bottom:0px;--padding-left:16px;--padding-right:16px;}.elementor-10 .elementor-element.elementor-element-8c26257{--padding-top:0px;--padding-bottom:0px;--padding-left:16px;--padding-right:0px;}.elementor-10 .elementor-element.elementor-element-2960fc3{--margin-top:96px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:16px;--padding-right:16px;}}@media(max-width:767px){.elementor-10 .elementor-element.elementor-element-676dd164{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-10 .elementor-element.elementor-element-5fce568e > .elementor-widget-container{padding:0px 0px 0px 0px;}.elementor-10 .elementor-element.elementor-element-d69f8e5{--padding-top:0px;--padding-bottom:0px;--padding-left:12px;--padding-right:12px;}.elementor-10 .elementor-element.elementor-element-8c26257{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-10 .elementor-element.elementor-element-2960fc3{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}}/* Start custom CSS for html, class: .elementor-element-5fce568e */.grid-hero{
    display: grid;
    grid-template-columns: 1fr minmax(0, 1280px) 1fr;
    position: relative;
    width: 100%;
    margin-block-start: -80px;
}
.container-imagem {
    grid-column: 1 / -1;   
    grid-row: 1 / 2;       
    z-index: 1;
    overflow: hidden;
}

.elementor-10 .elementor-element.elementor-element-5fce568e img{
    overflow: hidden !important;
}

.container-textos{
    grid-column: 2 / 3;    /* só a coluna central */
    grid-row: 1 / 2;       /* mesma linha da imagem */
    z-index: 2;
}

.container-boxed{
    display: flex;
    flex-direction: column;
    height: 100%;
    justify-content: center;
    transform: translateY(32px);
}

.container-interno-esquerdo{
    display: flex;
    flex-direction: column;
    width: 100%;        
    max-width: 700px; 
    border: 1px solid red;
    background-color: rgba(255, 255, 255, 0.1);
   -webkit-backdrop-filter: blur(10px);
   backdrop-filter: blur(10px);
   padding: 2rem;
   border-radius: 1rem;
   border: 1px solid rgba(227, 227, 227, 0.5);
   box-shadow: 0px 4px 30px rgba(0, 0, 0, 0.1);
}

.eyebrow{
   font-family: "AfacadFlux", sans-serif;
   text-transform: uppercase;
   font-size: 0.9rem;
   font-weight: 200;
   line-height: 1.5em;
   background: linear-gradient(90deg, rgba(89, 156, 197, 0.8) 0%, rgba(97, 125, 157, 0.9) 50%, rgba(104, 92, 115, 0.8) 100%);
   color: #fff;
   letter-spacing: 0.5px;
   padding: 0.25rem 0.95rem;
   border-radius: 1rem;
   align-self: start;
   filter: brightness(1.2);
}

.elementor-10 .elementor-element.elementor-element-5fce568e h1{
    font-family: "BarlowCondensed", sans-serif;
    font-size: 5.625rem;
    font-weight: 700;
    text-transform: uppercase;
    line-height: 1.1em;
    color: #003B7A;
    margin-top: 0;
    opacity: 0.9;
}

.subtitle, .reforca-cta{
    font-family: "AfacadFlux", sans-serif;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.4em;
    color: #181818;
}

.reforca-cta{
    margin-bottom: 0;
}

.btn {
    font-family: "AfacadFlux", sans-serif;
    font-size: 1rem;
    font-weight: 350;
    line-height: 1em;
    display: inline-block;
    margin-top: 1rem;
    margin-bottom: 1rem;
    padding: 1rem 3rem;
    background: rgba(158, 39, 42, 0.6);
    color: #fff;
    letter-spacing: 0.5px;
    border-radius: 8px;
    transition: filter 0.5s ease;
    text-align: center;
    position: relative;
}

.btn::before{
    position: absolute;
    content: "";
    inset: 0;
    pointer-events: none;
    background: rgba(158, 39, 42, 0.4);
    border-radius: 8px;
    mix-blend-mode: lighten;
}

.btn:hover {
    filter: brightness(1.3) contrast(1.0);
    color: #fff;
}

.reforca-cta span{
    font-weight: 700;
    position: relative;
}

.reforca-cta span::after{
    position: absolute;
    content: "";
    bottom: 0;
    left: 0;
    width: 100%;
    height: 2px;
    background: #9E272A;
    transform-origin: left;
    animation: 3s sublinhado infinite ease-in-out;
}

@keyframes sublinhado{
    0%{
        transform: scaleX(0%);
    }
    20%{
        transform: scaleX(100%);
    }
    100%{
        transform: scaleX(100%);
    }
}


.container-interno-direito{
    align-self: flex-end;
    box-shadow: 0px 4px 30px rgba(0, 0, 0, 0.2);
    border-radius: 16px;
}

.cidades{
    display: flex;
    flex-direction: column;
    background-color: rgba(255, 255, 255, 0.3);
   -webkit-backdrop-filter: blur(10px);
   backdrop-filter: blur(10px);
   padding: 1.5rem;
   border: 1px solid rgba(227, 227, 227, 0.5);
   border-radius: 16px;
}

.colunas{
    display: flex;
    gap: 57px;
}

h2.title-cidades{
    font-family: "AfacadFlux", sans-serif;
    font-weight: 600;
    font-size: 1rem;
    text-transform: uppercase;
    line-height: 1.6em;
    margin-bottom: 13px;
    margin-top: 0;
    color: #181818;
    border-bottom: 1px solid #181818;
    
}

ul.lista-cidades{
    display: flex;
    flex-direction: column;
    padding-left: 0;
    justify-content: space-between;
}

li.item-cidade{
    align-items: center;
    gap: 8px;
    font-family: "AfacadFlux", sans-serif;
    font-weight: 350;
    letter-spacing: 0.3px;
    color: #181818;
    list-style-type: none;
}

@media (max-width:1366px){
    
    .elementor-10 .elementor-element.elementor-element-5fce568e img{
        max-width: none; 
        height: 800px;
}
    .elementor-10 .elementor-element.elementor-element-5fce568e h1{
    font-size: 4rem;
    margin-bottom: 8px;
}

    .efeito-vidro{
        padding: 2rem;
    }
    
    .cidades{
        padding: 1.2rem;
    }
    
    .btn{
        margin-top: 0;
    }
    
    .eyebrow{
        font-size: 0.8rem;
        font-weight: 300;
    }
}

@media (min-width: 1201px) and (max-width: 1366px){
    .container-boxed{
        padding-right: 24px;
        padding-left: 24px;
    }
}

@media (max-width:767px){
    .container-boxed{
        gap: 1rem;
    }
    .container-textos{
        padding: 0.75rem;
    }
    .elementor-10 .elementor-element.elementor-element-5fce568e img{
        max-width: none; 
        height: 780px;
        position: relative;
        left: -300px;
    }
    
    .elementor-10 .elementor-element.elementor-element-5fce568e h1{
        font-size: 3rem;
    }
    .colunas{
        gap: 1rem;
        justify-content: space-between;
    }
    .btn{
        padding: 1rem 1.5rem;
    }
    .container-interno-esquerdo{
        padding: 0.72rem;
    }
    .container-interno-direito{
        align-self: stretch;
    }
    .cidades{
        padding: 1rem;
    }
    li.item-cidade{
        letter-spacing: 0px;
    }
}

@media (min-width: 1367px) and (max-width: 1557px){
    .elementor-10 .elementor-element.elementor-element-5fce568e img{
        max-width: none; 
        height: 960px;
    }
    .container-interno-direito{
        transform: translateY(20px);
    }
}

@media (min-width: 768px) and (max-width: 1024px){
    .container-interno-direito{
        align-self: center;
    }
    .container-interno-esquerdo{
        align-self: center;
    }
    .container-boxed{
        transform: translateY(32px);
        gap: 1rem;
    }
}

@media (min-width: 1025px) and (max-width: 1200px){
    .container-boxed{
        padding-left: 24px;
        gap: 1rem;
        padding-right: 24px;
    }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-3f9e6bb */#secao-empresas{
    display: flex;
    flex-direction: column;
   
}

.tag-empresas{
    font-weight: 200;
    text-transform: uppercase;
    width: fit-content;

    margin: 0;
}

.grid-logo{
    display: flex;
    gap: 2rem;
    flex-wrap: wrap;
}

.logo-cliente {
  height: auto;
  max-width: 100%; 
  display: block;
  filter: grayscale(100%);
  opacity: 0.7;
  transition: 0.3s;
  align-self: center;
}

.logo-cliente:hover {
  filter: grayscale(0%);
  opacity: 1;
}

.scroller {
  max-width: 1280px;
}

.scroller__inner {
  padding-block: 1rem;
  display: flex;
  flex-wrap: wrap;
  gap: 3rem;
}

.scroller[data-animated="true"] {
  overflow: hidden;
  -webkit-mask: linear-gradient(
    90deg,
    transparent,
    white 20%,
    white 80%,
    transparent
  );
  mask: linear-gradient(90deg, transparent, white 20%, white 80%, transparent);
}

.scroller[data-animated="true"] .scroller__inner {
  width: max-content;
  flex-wrap: nowrap;
  animation: scroll var(--_animation-duration, 40s)
    var(--_animation-direction, forwards) linear infinite;
}

.scroller[data-direction="right"] {
  --_animation-direction: reverse;
}

.scroller[data-direction="left"] {
  --_animation-direction: forwards;
}

.scroller[data-speed="fast"] {
  --_animation-duration: 20s;
}

.scroller[data-speed="slow"] {
  --_animation-duration: 60s;
}

.scroller[data-direction="left"] .logo-cliente {
    border-radius: 100vw;
}

@keyframes scroll {
  to {
    transform: translate(calc(-50% - 0.5rem));
  }
}

/* general styles */

:root {
  --clr-neutral-100: hsl(0, 0%, 100%);
  --clr-primary-100: hsl(205, 15%, 58%);
  --clr-primary-400: hsl(215, 25%, 27%);
  --clr-primary-800: hsl(217, 33%, 17%);
  --clr-primary-900: hsl(218, 33%, 9%);
}

@media(max-width: 767px){
    .grid-logo{
    display: flex;
    justify-content: center;
    gap: 1rem;
    }
    .logo-1{
    width: 90px;
    }
    .logo-2{
    width: 150px;
    }
    .logo-3{
        width: 130px;
        order: 4;
    }
    .logo-4{
        width: 90px;
        order: 3;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-e07e803 */@media (max-width: 767px){
    .elementor-10 .elementor-element.elementor-element-e07e803 {
    margin-top: 64px;
    padding: 0 12px;
  }
}

/* BREAKPOINT: Tablet (768px ou mais) */
@media (min-width: 768px) {
  .elementor-10 .elementor-element.elementor-element-e07e803 {
    margin-top: 64px;
    padding: 0 16px;
  }
}

/* BREAKPOINT: Desktop (1024px ou mais) */
@media (min-width: 1024px) {
  .elementor-10 .elementor-element.elementor-element-e07e803 {
    margin-top: 96px;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-8841051 */.carousel{
    display: flex;
    background: #9E272A;
    padding: 1rem 0;
    overflow-x: auto;
}

.carousel::-webkit-scrollbar{
    display: none;
}

.group{
    display: flex;
    animation: spin 25s infinite linear;
}

.card{
    min-width: max-content;
}

.faixa-animada{
    font-family: 'BarlowCondensed', sans-serif;
    font-weight: 600;
    font-size: 2.5rem;
    text-transform: uppercase;
    color: #fff;
    white-space: nowrap;
    padding-left: 0.5rem;
}

.faixa-animada strong{
    text-decoration: underline;
}

@keyframes spin{
    from { transform: translateX(0); }
    to { transform: translateX(-100%); }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-888568e */.container-porque{
    display: flex;
    flex-direction: column;
    gap: 2rem;
    padding: 2rem 0;
}

.container-cards-porque{
    display: grid;
    grid-template-areas: 
    "item-1 item-2 item-2"
    "item-1 item-3 item-4";
    gap: 1rem;
}

.container-cards-porque .item-1 {
    grid-area: item-1;
}
.container-cards-porque .item-2 {
    grid-area: item-2;
}
.container-cards-porque .item-3 {
    grid-area: item-3;
}
.container-cards-porque .item-4 {
    grid-area: item-4;
}

.card-porque{
    border-radius: 20px;
    padding: 1.5rem;
    position: relative;
    display: block;
    overflow: hidden;
    backdrop-filter: blur(15px);
    -webkit-backdrop-filter: blur(15px);
    
    /* Gradiente glassmorphism */
    background: linear-gradient(135deg, 
        rgba(255, 255, 255, 0.25) 0%,
        rgba(255, 255, 255, 0.15) 25%,
        rgba(255, 255, 255, 0.10) 50%,
        rgba(255, 255, 255, 0.05) 75%,
        rgba(255, 255, 255, 0.15) 100%
    );
    
    /* Sombras para profundidade */
    box-shadow: 
        0 8px 32px rgba(0, 0, 0, 0.2),
        inset 0 1px 0 rgba(255, 255, 255, 0.4),
        inset 0 -1px 0 rgba(255, 255, 255, 0.1);
    
    border: 1px solid rgba(255, 255, 255, 0.2);
    
    /* Transição suave */
    transition: all 0.3s ease;
}

.card-porque:hover{
    transform: translateY(-2px);
    box-shadow: 
        0 12px 40px rgba(0, 0, 0, 0.25),
        inset 0 1px 0 rgba(255, 255, 255, 0.5),
        inset 0 -1px 0 rgba(255, 255, 255, 0.15);
    
    background: linear-gradient(135deg, 
        rgba(255, 255, 255, 0.3) 0%,
        rgba(255, 255, 255, 0.2) 25%,
        rgba(255, 255, 255, 0.15) 50%,
        rgba(255, 255, 255, 0.1) 75%,
        rgba(255, 255, 255, 0.2) 100%)
}

.card-porque::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 1px;
    background: linear-gradient(90deg, 
        transparent 0%,
        rgba(255, 255, 255, 0.8) 20%,
        rgba(255, 255, 255, 0.8) 80%,
        transparent 100%
    );
}

.card-porque::after {
    content: '';
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 60%;
    height: 40%;
    background: linear-gradient(180deg, 
        rgba(255, 255, 255, 0.1) 0%,
        transparent 100%
    );
    border-radius: 20px 20px 50% 50%;
    pointer-events: none;
}

@media(max-width:767px){
    .container-cards-porque{
        grid-template-areas: 
        "item-1"
        "item-2"
        "item-3"
        "item-4";
    }
    .card-porque{
    padding: 1rem;
}
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-d69f8e5 */.elementor-10 .elementor-element.elementor-element-d69f8e5{
    background: linear-gradient(135deg, #73C3EB 0%, #4292BA 100%);
}

.elementor-10 .elementor-element.elementor-element-d69f8e5 h2{
    color: #FFF;
}

.elementor-10 .elementor-element.elementor-element-d69f8e5 h3{
    font-family: "AfacadFlux", sans-serif;
    text-transform: uppercase;
    font-size: 1.25rem;
    font-weight: 600;
    color: #fff;
    margin-top: 0;
}

.texto-porque{
    font-family: "AfacadFlux", sans-serif;
    color: #f2f2f2;
    line-height: 1.6em;
}



.elementor-10 .elementor-element.elementor-element-d69f8e5 p span{
    padding: 0 0.2rem;
    background-image: linear-gradient(#AF5053, #AF5053);
    background-position: 0% 50%; 
    background-repeat: no-repeat;
    border-radius: 0.2rem;
    box-decoration-break: clone;
    -webkit-box-decoration-break: clone;
}



@media (max-width: 767px){
    .elementor-10 .elementor-element.elementor-element-d69f8e5 {
    margin-top: 64px;
    padding: 0 12px;
  }
}

/* BREAKPOINT: Tablet (768px ou mais) */
@media (min-width: 768px) {
  .elementor-10 .elementor-element.elementor-element-d69f8e5 {
    margin-top: 64px;
    padding: 0 16px;
  }
}

/* BREAKPOINT: Desktop (1024px ou mais) */
@media (min-width: 1024px) {
  .elementor-10 .elementor-element.elementor-element-d69f8e5 {
    margin-top: 96px;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-b908c56 */.nossa-historia {
    margin-top: 128px;
    display: flex;
    gap: 8rem;
}

.nossa-historia div, .nossa-historia figure {
    width: 50%;
}

.nossa-historia h2 {
    margin-top: 0;
}

.nossa-historia p {
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.5em;
    color: #181818;
}

.nossa-historia a {
    font-size: 1.25rem;
    text-transform: uppercase;
    font-weight: 500;
    letter-spacing: 0.1px;
    display: flex;
    align-items: center;
}

.nossa-historia svg {
    width: 24px;
    height: 24px;
}

@media(max-width: 767px) {
    .nossa-historia {
        margin-top: 64px;
        flex-direction: column;
        gap: 2rem;
    }
    .nossa-historia div, .nossa-historia figure {
        width: 100%;
    }
    .conteudo-texto p {
        margin-block-end: 1.3rem;
    }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-2071dfa */.container-servicos{
    display: flex;
    flex-direction: column;
}

.espaco-interno {
    padding-inline-start: 12px;
}

.container-todos-carrosseis{
    display: flex;
    flex-direction: column;
    gap: 3rem;
}

.carrossel{
    display: flex;
    overflow-x: auto;
    gap: 1em;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
}

.card-servicos{
    flex: 0 0 20em;
    scroll-snap-align: start;
}

.card-servicos img{
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    border-radius: 8px;
}

.titulo-servico{
    display: flex;
    gap: 2rem;
    align-items: center;
}

.elementor-10 .elementor-element.elementor-element-2071dfa h3{
    color: #001730;
    font-weight: 600;
}

.elementor-10 .elementor-element.elementor-element-2071dfa svg{
    animation: apontar 1.5s ease-in-out infinite;
}

.link-servico {
    display: block;
    margin-block-end: 1rem;
    color: #9E272A;
    font-weight: 600;
    text-decoration: underline !important;
}

@keyframes apontar {
    0%, 100% { transform: translateX(0); }
    50% { transform: translateX(10px); 
    }
}

.banner-servicos {
    margin-top: 1rem;
}

.banner-servicos h4 {
    font-family: "AfacadFlux", sans-serif;
    text-transform: uppercase;
    font-size: 1.25rem;
    font-weight: 700;
    color: #003B79;
    margin-bottom: 8px;
}

.banner-servicos p {
    font-family: "AfacadFlux", sans-serif;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.4em;
    color: #181818;
}

.banner-servicos p a{
    color: #003B7A;
    font-weight: 500;
}

.banner-servicos p a:hover{
    color: #9E272A;
}

.container-servicos h2 {
        margin-top: 0;
}

@media(max-width:767px){
    .card-servicos{
        flex: 0 0 75vw;
    }
    .elementor-10 .elementor-element.elementor-element-2071dfa svg{
    width: 100px;
    }
    .titulo-servico{
        padding-right: 12px;
    }
    .elementor-10 .elementor-element.elementor-element-2071dfa h3{
        width: 60%;
        margin-bottom: 0.5rem;
        line-height: 1.1em;
    }
    .carrossel{
        scrollbar-width:none;
        padding-right: 12px;
    }
    .elementor-10 .elementor-element.elementor-element-2071dfa svg{
        margin-top: 5px;
    }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-ea7bf74 */.container-principal {
    display: flex;
    gap: 20px;
    height: 600px;
    overflow: hidden;
    mask-image: linear-gradient(transparent, black 10%, black 90%, transparent);
    -webkit-mask-image: linear-gradient(transparent, black 10%, black 90%, transparent);
}

.coluna-carrossel {
    flex: 1;
    min-width: 300px;
}

.trilho {
    display: flex;
    flex-direction: column;
}

/* Animação para subir */
.anima-subir {
    animation: subir 40s linear infinite;
}

/* Animação para descer */
.anima-descer {
    animation: descer 40s linear infinite;
}

@keyframes subir {
    0% { transform: translateY(0); }
    100% { transform: translateY(-50%); } /* Sobe até a metade (onde começa a repetição) */
}

@keyframes descer {
    0% { transform: translateY(-50%); }
    100% { transform: translateY(0); }
}

/* Pausa ao passar o mouse para o cliente ler */
.container-principal:hover .trilho {
    animation-play-state: paused;
}

.link-perfil{
    padding-bottom: 12px;
    color: #484848;
}

.link-perfil a{
    color: #003B7A;
    font-weight: 500;
}

.link-perfil a:hover{
    color: #9E272A;
}

h2.titulo-secao{
    font-size: 2.5rem;
    font-weight: 600;
    color: #001F3F;
    line-height: 1.1em;
    margin-block-start: 0;
}

.destaque-titulo{
    color: #9E272A;
}

.card-depoimento{
    margin-bottom: 32px;
    break-inside: avoid;
}
#primero-texto-objecao{
    margin-top: 0;
}

.texto-objecao{
    text-transform: uppercase;
    font-size: 1.25rem;
    font-weight: 600;
    color: #003B79;
    margin-bottom: 8px;
}

.depoimento{
    color: #484848;
}

.destaque{
    font-weight: 700;
}

.container-interno {
    border-radius: 20px;
    padding: 1rem;
    position: relative;
    display: block;
    background: linear-gradient(135deg, rgba(255,255,255,0.3), rgba(173,216,230,0.2)); 
    z-index: 0;
    box-shadow:
  inset 0 4px 12px rgba(255,255,255,0.65),
  inset 0 0 25px rgba(255,255,255,0.55);
}

 /* vidro */
.container-interno::before {
  content: '';
  position: absolute;
  inset: 0;
  border-radius: inherit;
  box-shadow: inset 0 0 0 2px rgba(173, 216, 230, 0.5);
}

.container-interno::after {
  content: '';
  position: absolute;
  inset: 0;
  border-radius: inherit;
  box-shadow: inset 0 0 15px 8px rgba(255, 255, 255, 0.5),
              inset 0 0 0 4px rgba(173, 216, 230, 0.5);
  pointer-events: none; 
}

.container-imagem{
    display: flex;
    gap: 1rem;
}

.imagem-depoimento {
    aspect-ratio: 1 / 1;
    position: relative;
    border-radius: 50px;
}

.nome-depoimentos{
    margin-bottom: 0;
    font-weight: 600;
    letter-spacing: 0.2px;
    color: #484848;
    text-transform: uppercase;
}

@media (min-width:1025px) and (max-width: 1200px) {
    .coluna-carrossel:nth-child(3) {
        display: none; 
    }
}

@media (min-width:768px) and (max-width: 1024px) {
    .coluna-carrossel:nth-child(3), 
    .coluna-carrossel:nth-child(4) {
        display: none; 
    }
}

@media(max-width:767px){
    h2.titulo-secao{
        padding: 0;
    }
    .container-principal {
        display: block; 
        height: auto; 
        overflow: visible; 
        mask-image: none;  
        -webkit-mask-image: none;
    }
    .coluna-carrossel {
        display: block;
        width: 100%;
    }
    .trilho {
        display: flex;
        flex-direction: column;
        transform: none;
        animation: none; 
    }
    
    #ultimo-card{
        margin-bottom: 0;
    }
    .trilho .card-depoimento:nth-child(n+4) {
        display: none; 
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-2960fc3 */@media (max-width: 767px) {
  .elementor-10 .elementor-element.elementor-element-2960fc3 {
    padding: 0 12px;
  }
}

@media (min-width: 768px) {
  .elementor-10 .elementor-element.elementor-element-2960fc3 {
    padding: 0 16px;
  }
}

@media (min-width: 1024px) and (max-width:1291px){
    .elementor-10 .elementor-element.elementor-element-2960fc3 .e-con-inner{
        padding-bottom: 0;
    }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-fb78998 */.nossa-equipe{
    display: flex;
    gap: 5rem;
}

.textos-equipe{
    display: flex;
    width: 50%;
    flex-direction: column;
    gap: 1.5rem;
}

.descricao{
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.elementor-10 .elementor-element.elementor-element-fb78998 p.descricao-equipe{
    font-family: "AfacadFlux", sans-serif;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.4em;
    color: #181818;
}

#btn-equipe{
    margin: 0;
    background: rgba(158, 39, 42, 1);
}

.grade-funcionarios{
    display: grid;
    width: 50%;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));   
    gap: 1rem;
    place-items: center;
}

.grade{
    display: grid;
    border-radius: 1rem;
    align-items: end;
    position: relative;
    overflow: hidden;
    transition: transform 0.3s ease;
    box-shadow:
  inset 4px 4px 28px rgba(0, 0, 0, 0.03);
}

.grade:hover {
    transform: scale(1.02);
    box-shadow: 0 8px 20px rgba(0,0,0,0.2);
}

.shine {
  position: absolute;
  top: 0;
  left: -60%;
  width: 40%;
  height: 100%;
  background: linear-gradient(
    120deg,
    transparent 0%,
    rgba(255, 255, 255, 0.5) 50%,
    transparent 100%
  );
  transform: skewX(-20deg);
  pointer-events: none;
  opacity: 0;
}

.grade:hover .shine {
  animation: shinePass 0.7s ease-in-out;
}

@keyframes shinePass {
  0% {
    left: -60%;
    opacity: 0;
  }
  10% {
    opacity: 1;
  }
  35% {
    left: 120%;
    opacity: 0;
  }
  45% {
    left: -60%;
    opacity: 0;
  }
  55% {
    opacity: 1;
  }
  80% {
    left: 120%;
    opacity: 0;
  }
  100% {
    left: 120%;
    opacity: 0;
  }
}

.elementor-10 .elementor-element.elementor-element-fb78998 img{
    width: 80%;
    display: block;
    margin: 0 auto;
    object-fit: cover;
    grid-column: 1/2;
    grid-row: 1/2;
}

.elementor-10 .elementor-element.elementor-element-fb78998 article{
    grid-column: 1/2;
    grid-row: 1/2;
    background: rgba(158,39,42,0.7);
    text-align: center;
    color: #fff;
    padding: 0.5rem 0;
    backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  border-top: 1px solid rgba(255, 255, 255, 0.4);
   position: relative;
  overflow: hidden;
  transition: transform 0.4s ease, background 0.4s ease;
}

.grade article:hover {
  background: rgba(158, 39, 42, 0.35);
  transform: translateY(3px);
}

.grade article::before {
  content: "";
  position: absolute;
  top: 0;
  left: -50%;
  width: 50%;
  height: 1px;
  background: linear-gradient(to right, transparent, rgba(255, 255, 255, 0.8), transparent);
  animation: brilho-borda 3s linear infinite;
}

@keyframes brilho-borda {
  0% {
    left: -50%;
  }
  100% {
    left: 100%;
  }
}

.elementor-10 .elementor-element.elementor-element-fb78998 h3{
    margin: 0;
    font-size: 1.3rem;
    font-weight: 450;
    letter-spacing: 0.2px;
}

.elementor-10 .elementor-element.elementor-element-fb78998 p{
    color: #DCDCDC;
    margin: 0;
    font-weight: 350;
}

@media(max-width: 1200px){
    .textos-equipe{
        padding-right: 0;
        gap: 0.3rem;
    }
    .grade-funcionarios{
        align-content: start;
    }
}

@media(max-width:767px){
    .nossa-equipe{
        flex-direction: column;
    }
    .textos-equipe{
        width:100%;
    }
    .grade-funcionarios{
    width: 100%;
    gap: 2rem;
    padding: 0.5rem;
    }
    .elementor-10 .elementor-element.elementor-element-fb78998 img{
    width: 70%;
    text-align: center;
    display: block;
    margin: 0 auto;
    }
    .nossa-equipe{
        gap: 2rem;
    }
}

@media(max-width:558px){
    .grade-funcionarios{
        grid-template-columns: 1fr;
    }
}

@media(min-width: 559px) and (max-width: 1200px){
    .grade-funcionarios{
        grid-template-columns: repeat(2, 1fr);
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-dee5f99 *//* BREAKPOINT: Celular (até 767px) */
@media (max-width: 767px) {
  .elementor-10 .elementor-element.elementor-element-dee5f99 {
    margin-top: 64px;
    padding: 0 12px;
  }
}

/* BREAKPOINT: Tablet (768px ou mais) */
@media (min-width: 768px) and (max-width:1291px) {
  .elementor-10 .elementor-element.elementor-element-dee5f99 {
    margin-top: 64px;
    padding: 0 16px;
  }
}

@media (min-width:1292px){
    .elementor-10 .elementor-element.elementor-element-dee5f99{
        margin-top: 96px;
    }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-d746a6b */:root {
  interpolate-size: allow-keywords;
}

.faq-section{
    display: flex;
    gap: 5rem;
}

.container-faq{
    display: flex;
    flex-direction: column;
    width: 50%;
    gap: 1rem;
}

.acordeao{
    display: flex;
    flex-direction: column;
    width: 50%;
    gap: 1rem;
}

details{
   background: linear-gradient(145deg, #ffffff, #e6e6e6); 
    border-radius: 1rem;
    padding: 1rem;
    box-shadow: 
      8px 8px 16px #d1d9e6, 
      -8px -8px 16px #ffffff;
    transition: all 0.3s ease;
}

details::details-content {
  height: 0;
  overflow: hidden;
  transition: height 0.5s ease, content-visibility 0.5s ease;
  transition-behavior: allow-discrete;
}

details[open]::details-content {
  height: auto; 
}

.acordeao details .faq-content img,
.acordeao details .faq-content .subtitle {
  opacity: 0;
  transform: translateY(10px);
  transition: opacity 0.4s ease-in-out, transform 0.4s ease-in-out;
}

.acordeao details[open] .faq-content img,
.acordeao details[open] .faq-content .subtitle {
  opacity: 1;
  transform: translateY(0);
}

.acordeao details[open] .faq-content img {
  transition-delay: 0.1s;
}

.acordeao details[open] .faq-content .subtitle {
  transition-delay: 0.2s;
}

summary{
    border-bottom: 1px solid #7E1F22;
    display: flex; 
    align-items: center;
    justify-content: space-between;
    cursor: pointer;
    list-style: none; 
    font-weight: 600;
    color: #333;
    outline: none;
}

summary::-webkit-details-marker {
    display: none;
}

.question-text {
    flex: 1; 
    margin-left: 15px;
}

summary::after {
    content: '❯'; 
    font-weight: 100;
    font-size: 15px;
    color: #7E1F22;
    transition: transform 0.3s cubic-bezier(.09,.58,.28,1.42);
    margin-right: 5px;
    transform: rotate(270deg);
    
}

.texto-objecao{
    padding-right: 1rem;
}

details[open] summary::after {
    transform: rotate(90deg);
  }

.faq-content{
    display: flex;
    gap: 1rem;
    padding-top: 1rem;
}

.elementor-10 .elementor-element.elementor-element-d746a6b img{
    width: 48px;
    height: 48px;
    position: relative;
    width: 60px;
    height: 60px;
    border-radius: 50%;
    background: #fff;
    border: 3px solid #fff; /* Borda branca igual da imagem */
    box-shadow: 0 4px 6px rgba(0,0,0,0.1); 
    flex-shrink: 0; 
}

.elementor-10 .elementor-element.elementor-element-d746a6b img::after {
    content: '';
    position: absolute;
    inset: 0; /* Cobre tudo */
    border-radius: 50%;
    /* AJUSTE AQUI: Sombra interna mais suave e uniforme */
    box-shadow: inset 0 0 10px rgba(0, 0, 0, 0.2); /* Sem deslocamento (0 0), apenas blur e spread */
    pointer-events: none; 
  }

.elementor-10 .elementor-element.elementor-element-d746a6b .subtitle{
    padding-left: 0;
    list-style-type: none;
    margin-bottom: 0;
}

.lista-faq{
    display: flex;
    flex-direction: column;
}

@media(max-width:767px){
    .faq-section{
        flex-direction: column;
        gap: 2rem;
    }
    .acordeao{
        width: 100%;
    }
    .container-faq{
        width: 100%;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-d09ff0d *//* BREAKPOINT: Celular (até 767px) */
@media (max-width: 767px) {
  .elementor-10 .elementor-element.elementor-element-d09ff0d {
    margin-top: 64px;
    padding: 0 12px;
  }
}

/* BREAKPOINT: Tablet (768px ou mais) */
@media (min-width: 768px) {
  .elementor-10 .elementor-element.elementor-element-d09ff0d {
    margin-top: 64px;
    padding: 0 16px;
  }
}

/* BREAKPOINT: Desktop (1024px ou mais) */
@media (min-width: 1024px) {
  .elementor-10 .elementor-element.elementor-element-d09ff0d {
    margin-top: 96px;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-3b71c89 */.form-e-mapa{
    display: flex;
    gap: 5rem;
}

.form-container { background: #f9f9f9; padding: 25px; border-radius: 10px;  box-shadow: 0 4px 15px rgba(0,0,0,0.1); width:50%; }
#titulo-form{ margin-top: 0; font-family: "BarlowCondensed", sans-serif; font-size: 2.5rem; font-weight: 600 !important;
    color: #001F3F; line-height: 1.1em; }

#form-vidracaria{
    letter-spacing: 0.5px;
}    

.form-group { margin-bottom: 15px; display: flex; flex-direction: column; }
.form-group label { font-weight: bold; margin-bottom: 5px; color: #555; }
.form-group input, .form-group textarea { padding: 10px; border: 1px solid #ccc; border-radius: 5px; font-size: 16px; }
.form-group input[readonly] { background-color: #eee; cursor: not-allowed; }
.row { display: flex; gap: 10px; flex-wrap: wrap; }
.btn-submit { background: #28a745; color: white; border: none; padding: 15px; width: 100%; border-radius: 5px; font-size: 18px; font-weight: bold; cursor: pointer; transition: 0.3s; margin-top: 10px; }
.btn-submit:hover { background: #218838; }

.texto-informativo{
    font-size: 0.90rem;
    margin-bottom: 0.5rem;
}

.mapa{
    width: 50%;
    display: flex;
    flex-direction: column;
}

.elementor-10 .elementor-element.elementor-element-3b71c89 iframe{
    margin-bottom: 2rem;
}

.como-chegar{
    background: #003A78; 
    color: #fff;
    padding: 1rem 0;
    text-decoration: none;
    border-radius: 5px;
    display: flex;
    justify-content: center;
    width: 100%;
    box-sizing: border-box;
    gap: 0.5rem; 
    letter-spacing: 0.5px;
    border: 2px solid #003A78;
}
.como-chegar:hover{
    background: #002E60; 
    color: #DCDCDC;
}
@media (max-width: 880px) { 
    .row { flex-direction: column; 
    }
    .form-e-mapa{
        flex-direction: column;
        gap: 2rem;
    }
    .form-container, .mapa{
        width: 100%;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-62e2ba8 *//* BREAKPOINT: Celular (até 767px) */
@media (max-width: 767px) {
  .elementor-10 .elementor-element.elementor-element-62e2ba8 {
    margin-top: 64px;
    padding: 0 12px;
  }
}

/* BREAKPOINT: Tablet (768px ou mais) */
@media (min-width: 768px) {
  .elementor-10 .elementor-element.elementor-element-62e2ba8 {
    margin-top: 64px;
    padding: 0 16px;
  }
}

/* BREAKPOINT: Desktop (1024px ou mais) */
@media (min-width: 1024px) {
  .elementor-10 .elementor-element.elementor-element-62e2ba8 {
    margin-top: 96px;
  }
}/* End custom CSS */