@font-face { font-family: 'Proxima Nova'; font-weight: 200; font-style: normal; src: url('../../fonts/proxima_nova_thin-webfont.woff2') format('woff2'), url('../../fonts/proxima_nova_thin-webfont.woff') format('woff'); }
@font-face { font-family: 'Proxima Nova'; font-weight: 300; font-style: normal; src: url('../../fonts/proxima_nova_light-webfont.woff2') format('woff2'), url('../../fonts/proxima_nova_light-webfont.woff') format('woff'); }
@font-face { font-family: 'Proxima Nova'; font-weight: 400; font-style: normal; src: url('../../fonts/proxima_nova_regular-webfont.woff2') format('woff2'), url('../../fonts/proxima_nova_regular-webfont.woff') format('woff'); }
@font-face { font-family: 'Proxima Nova'; font-weight: 500; font-style: normal; src: url('../../fonts/proxima_nova_semibold-webfont.woff2') format('woff2'), url('../../fonts/proxima_nova_semibold-webfont.woff') format('woff'); }
@font-face { font-family: 'Proxima Nova'; font-weight: 600; font-style: normal; src: url('../../fonts/proxima_nova_bold-webfont.woff2') format('woff2'), url('../../fonts/proxima_nova_bold-webfont.woff') format('woff'); }
@font-face { font-family: 'Proxima Nova'; font-weight: 700; font-style: normal; src: url('../../fonts/proxima_nova_extrabold-webfont.woff2') format('woff2'), url('../../fonts/proxima_nova_extrabold-webfont.woff') format('woff'); }
@font-face { font-family: 'Proxima Nova'; font-weight: 800; font-style: normal; src: url('../../fonts/proxima_nova_black-webfont.woff2') format('woff2'), url('../../fonts/proxima_nova_black-webfont.woff') format('woff'); }

body { text-align: center;}
body, td { color: #304148; font-weight: 400; font-family: "Proxima Nova","Segoe UI","Roboto","Helvetica Neue","Noto Sans","Liberation Sans",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";}
body > section > .container { padding-left: 8%; padding-right: 8%; }
a, h1, h2, h4 { color: #231F20; transition: 0.3s;}
h1, h2 { line-height: 100%;}
hr { border-top-color: #ffffff; opacity: 0.75;}
section strong { font-weight: 600;}

.btn { width: 100%; background-color: #FFCA05; z-index: 1; position: relative; overflow: hidden; border: none; border-radius: 12px; padding-left: 30px; padding-right: 30px; font-weight: 500; min-width: 200px; width: 30%; align-self: center; color: #000; background: transparent; cursor: pointer; transition: all 0.6s ease; position: relative; display: inline-block; outline: none;}

.btn-primario { padding: 12px 30px; background-color: #FFCA05; border-color: #FFCA05;}
.btn-primario::after { position: absolute; content: ""; width: 0; height: 100%; top: 0; left: 0; z-index: -1; background-color: #202020; border-radius: 12px; transition: width 0.6s ease; border: none}
.btn-primario:hover { color: #FFCA05;}
.btn-primario:hover::after { width: 100%;}
.btn-primario:active { top: 2px;}

.btn-secundary { padding: 12px 30px; background-color: #f8f8f8; border-color: #ffffff; color: #231F20;}
.btn-secundary:hover { background-color: #ffffff; border-color: #ffffff;}
.btn-check:checked+.btn, .btn.active, .btn.show, .btn:first-child:active, :not(.btn-check)+.btn:active { background-color: #231F20; border-color: #231F20;}
.btn-whatsapp { background-color: #25d366 !important; border-color: #25d366 !important; padding: 14px 30px 10px 30px;}
.btn-whatsapp:hover { background-color: #2bf978 !important; border-color: #2bf978 !important; }
.btn-whatsapp::before { content: "\f232"; font-family: "Font Awesome 6 Brands"; margin-right: 6px; font-size: 1.65em; -webkit-font-smoothing: antialiased; display: var(--fa-display,inline-block); font-style: normal; font-variant: normal; line-height: 1; text-rendering: auto; vertical-align: middle; position: relative; top:-2px; }
.breadcrumb-item+.breadcrumb-item::before,
.breadcrumb-item, .breadcrumb-item.active { color: #757575; font-size: 0.9rem;}
.breadcrumb-item.active { font-weight: 500;}
.swiper-button-prev { background-image: url('../../img/swiper_prev.webp');}
.swiper-button-next { background-image: url('../../img/swiper_next.webp');}
.swiper-slide img { width: 100%; height: auto;}
.justify-content-between .swiper-container { width: 100% !important; max-width: 100% !important;}
.justify-content-between .swiper-wrapper { justify-content:space-between;}
.accordion .collapsed { background-color: #4e5b61; color: #FFF; }
.accordion-item { border:none; margin-bottom: 10px; border-radius: 0 !important;}
.accordion-button { border-radius: 0 !important; font-weight: 500;}
.accordion-button:focus { box-shadow: none; }
.accordion-button:not(.collapsed) { box-shadow: none; background-color: #231F20; color: #FFF;}
.accordion-button::after { display: inline-block; content: ""; border-top: 0.35em solid; border-right: 0.35em solid transparent; border-bottom: 0; border-left: 0.35em solid transparent; background: none; width: auto; height: auto; }
.accordion-body { background-color: #f6f7f7;}
.form-control, .form-control:focus, .form-select, .form-select:focus { background-color: #f5f6f7; border-radius: 0; border-color: #f5f6f7; color: #818e95;}
.form-floating label, form { color: #818e95}
.form-floating>.form-control-plaintext~label, .form-floating>.form-control:focus~label, .form-floating>.form-control:not(:placeholder-shown)~label, .form-floating>.form-select~label { color: #304148; font-size: 0.9rem;}
.form-floating>.form-control-plaintext~label::after, .form-floating>.form-control:focus~label::after, .form-floating>.form-control:not(:placeholder-shown)~label::after, .form-floating>.form-select~label::after { background: transparent;}
.form-floating.empty label { color: #818e95; transform:none; font-size: 1rem;}
.form-floating input[type=file] { color:transparent; position: relative;}
.form-floating input[type=file]::before { content: 'Anexar arquivo (Formato PDF)'; display: inline-block; height: 63px; line-height: 63px; background-color: #f5f6f7; color: #818e95; padding: 0 .75rem; outline: none; white-space: nowrap; -webkit-user-select: none; cursor: pointer; position: absolute; left: 0; top: 0; }
.form-floating input[type=file]::after { content: "\f0c6"; font:normal 900 1em/1 'Font Awesome 6 Free'; color: #818e95; -webkit-font-smoothing: antialiased; display: var(--fa-display,inline-block); font-style: normal; font-variant: normal; line-height: 1; text-rendering: auto; position: absolute; right: 24px; top: 22px; }
.dropdown.select button { padding-left: 1rem; padding-right: 1rem;}
.dropdown.select button::after { float: right; border-width: 0.45em; margin-top: 8px;}
.dropdown.select ul { position: relative !important; transform: none !important; border-radius: 0; background-color: #f6f7f7;}
.dropdown.select a:hover { color: #231F20; background: transparent;}
.page-link { color: #304148; border-color: #304148 !important; width: 42px; height: 42px; text-align: center; font-weight: 500; padding: 0; line-height: 42px; }
.page-link.icon { font-size: 1.5rem; line-height: 38px };
.page-link:hover { background-color: #f5f6f7;}
.active>.page-link, .page-link.active { background-color: #231F20; border-color: #231F20;}

.bg-grey { background-color: #f5f6f7;}
.bd-grey { border: 10px solid #e3e5e7;}
.txt-grey { color: #304148;}
.source { border-top: 1px solid #304148; border-bottom: 1px solid #304148; padding: 18px 0; margin: 50px 0;} 
.source a { color:#304148; text-decoration: none; display: block; background: url('../../img/ico_link.webp') right center no-repeat; width: 99%;} 
.source a:hover { color: #231F20; background-image: url('../../img/ico_link_hover.webp');} 
.title { margin-top: 20px;}
.title h1 + p { color: #788388; font-size: 1.2rem; line-height: 110%;}

#logo { width: 150px; position: relative; top: 0px; }
header { padding: 10px 0; width: 100%; background-color: #231F20; z-index: 100;} 
header .offcanvas-header, header .offcanvas-body, header .navbar-nav { width: 100%;}
header .navbar-brand, header .navbar-brand:hover { color: #FFF;}
header .navbar-brand em { font-size: 0.78rem; position: relative; top:5px; left: 5px;}
header .navbar-toggler { border:none}
header .nav-link, header .dropdown-item  { color: #ffffff;}
header .dropdown-toggle::before { display: inline-block; margin-left: 0.255em; vertical-align: 0.255em; content: ""; border-top: 0.3em solid; border-right: 0.3em solid transparent; border-bottom: 0; border-left: 0.3em solid transparent; margin-right: 10px; }
header .navbar-nav > .dropdown > .dropdown-toggle::before, header .dropdown-toggle::after { display: none;}
header .navbar-nav > .dropdown > .dropdown-menu { border:none}
header .navbar-nav > .dropdown > .dropdown-menu > li > .dropdown-item { padding-left: 1.15rem; padding-right: 1.5rem; min-width: 190px;}
header .navbar-nav .dropdown-menu .dropdown-menu { position: relative; border: none; padding-left: 1rem; padding-top: 0;}
header .navbar-nav .dropdown-menu .dropdown-menu .dropdown-item { padding-top: 0.1rem; padding-bottom: 0.1rem;}
header .dropdown-item:focus, header .dropdown-item:hover, header .dropdown-item.show { background: transparent !important; color: #ffffff;}
header .dropdown-item.active, header .dropdown-item:active { background: transparent !important;}
header .dropdown-toggle.show, header .navbar-nav .nav-link.show { font-weight: 500;}
header .dropdown.has-submenu .dropdown-item { margin-left: 22px;}
header .dropdown.has-submenu .dropdown-item.dropdown-toggle { margin-left: 0;}
header .ms-lg-3 { margin-right: 1rem;}
header .header_social li{ list-style: none; }
header .header_social ul{ padding: 0 10px; margin:  0; }
header .header_social li img{ width:  35px; }

footer {background-color: #FFCA05; padding: 100px 0 0;  border-top: 1px solid #231F20;}
footer .row .container { height: 100%;}
footer form { margin-bottom: 100px;}
footer input { height: 60px; margin-bottom: 20px; background-color: #222222; border: 1px solid #231F20; border-radius: 12px; color: #fff; padding-left: 20px;}
footer textarea { height: 140px; margin-bottom: 20px; background-color: #222222; border: 1px solid #231F20; border-radius: 12px; color: #fff; padding: 20px 0 0 20px;}
footer h5 { color: #231F20;}
footer ul { padding: 0;}
footer li { color: #231F20; list-style: none;}
footer a{ text-decoration: none; color: #231F20;}
footer .footer_social { gap: 10px;}
.copy { background-color: #FFCA05; padding: 30px 0; color: #231F20;}
.copy p { margin: 0;}
.copy a { color: #231F20; text-decoration: underline;}

.swiper-wrapper {
    display: flex;
}
.swiper-slide {
    flex-shrink: 0;
}


#banner.carousel-dark .carousel-indicators [data-bs-target] { width: 14px; height: 14px; background-color: transparent; border: 2px solid white; margin: 0 5px; opacity: 1; border-radius: 50px; }
#banner.carousel-dark .carousel-indicators [data-bs-target].active { background-color: white;}

.line_title { text-align: center; position: relative;}
.line_title h2 { display: inline-block; position: relative; padding: 0 20px;}
.line_title h2::before,
.line_title h2::after { content: "";  position: absolute;  top: 50%;  width: calc(50% - 60px); height: 1px;}
.line_title h2::before { right: 100%; margin-right: 0;}
.line_title h2::after { left: 100%; margin-left: 0;}

.line_title h2::before { right: 100%; margin-right: 20px;}
.line_title h2::after { left: 100%; margin-left: 20px;}

.line_title_yellow h2 {color: #FFCA05;}
.line_title_yellow h2::before, .line_title_yellow h2::after { background-color: #FFCA05;}

.line_title_dark h2 {color: #000;}
.line_title_dark h2::before, .line_title_dark h2::after { background-color: #000;}

#home-sobre{ padding:100px 0; background-color:#f3f3f5}
#home-sobre .col-md-6 { position: relative;}
#home-sobre .img-box{   height: 50%; width: 50%; background-color: #FFFFFF; opacity: 0.4; position: absolute; z-index: 1; top: -20px; left: -10px;}
#home-sobre img{width:100%; position:relative; z-index: 2; box-shadow: 0px 4px 4px 0px rgba(0,0,0,0.25);}
#home-sobre p{ color: #231F20; margin-top: 30px; text-align: justify;}
#home-sobre .col-md-12 { margin: 100px 0;}
#home-sobre .btn { box-shadow: 0px 4px 4px 0px rgba(0,0,0,0.25);}

#numeros {  background-image: linear-gradient(to bottom, #231F20 0, #231F20 50%, #f3f3f5 50%);  position: relative; z-index: 1;}
#numeros::after {  content: '';  position: absolute;  top: 50%;  left: 0;  width: 100%;  height: 10px; background: linear-gradient(to bottom, rgba(0, 0, 0, 0.2), transparent); z-index: 2;}

#numeros .row {  background-color: white; border-radius: 12px; box-shadow: 0px 4px 4px 0px rgba(0,0,0,0.45); position: relative; z-index: 3; /* Garante que o .row esteja acima do sombreamento */}
#numeros .numeros-box { display: flex; flex-direction: column; align-items: center; margin: 30px 0;}
#numeros .dash { border-right: 1px solid gray;}

#home-produtos { padding: 100px 0; background-color: #231F20;}
#home-produtos .produto_card { display: flex; align-items: flex-end; position: relative; overflow: hidden; border-radius: 12px; box-shadow: 0px 4px 4px 0px rgba(0,0,0,0.25);}
#home-produtos .produto_card::before { content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-color: rgba(0, 0, 0, 0.5); opacity: 0; transition: opacity 0.3s ease; z-index: 1;}
#home-produtos .produto_card:hover::before { opacity: 1;}
#home-produtos .produtos_texto {  background-color: #231F20; color: white; width: 100%; position: relative; z-index: 2;}
#home-produtos .produto_card div h5 { width: 95%; padding-top: 10px;}
#home-produtos .produto_card div p { width: 95%; display: none; opacity: 0; transform: translateY(20px); transition: opacity 0.3s ease, transform 0.3s ease;}
#home-produtos .produto_card:hover div p { display: block; opacity: 1; transform: translateY(0);}

#home-noticias {background-color: #231F20; padding: 100px 0; position: relative; overflow: hidden; width: 100%;}
#home-noticias .home-noticias_svg { position: absolute; top: -5rem; right: 5rem; height: fit-content; width: fit-content; border-radius: 0px; z-index: -1;  max-width: 100vw;}
#home-noticias .col-md-12 {padding-bottom: 50px;}
#home-noticias .col-md-4 { color: #fff;}
#home-noticias .col-md-4 a { text-decoration: none; color: #FFCA05;}
#home-noticias .col-md-4 a:hover{ background-color: #FFCA05; color: #161616; border-radius: 45px; padding: 5px 20px;}
#home-noticias .home_noticias_container { gap: 60px 0;}
#home-noticias .btn { width: 30%; align-self: center; color: #000000; background: transparent; cursor: pointer; transition: all 0.6s ease; position: relative; display: inline-block; outline: none;}
#home-noticias .btn { background-color: #FFCA05; z-index: 1; position: relative; overflow: hidden; border: none;}
#home-noticias .btn::after { position: absolute; content: ""; width: 0; height: 100%; top: 0; left: 0; z-index: -1; background-color: #161616; border-radius: 12px; transition: width 0.6s ease; border: 1px solid #FFCA05;}
#home-noticias .btn:hover {  color: #FFCA05;}
#home-noticias .btn:hover::after { width: 100%;}
#home-noticias .btn:active { top: 2px;}
#home-noticias p {  white-space: nowrap; overflow: hidden; text-overflow: ellipsis;}
#home-noticias h5 {   display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; text-overflow: ellipsis;}

#categorias { background-color: #231F20; padding: 100px 0;}

#categorias .categoria_img { height: 100%; width: 100%; background-size: cover; background-position: center; border-radius: 12px; position: relative; transition: transform 0.3s ease; overflow: hidden; z-index: 1; box-shadow: 0px 4px 4px 0px rgba(0,0,0,0.25);}
#categorias .col-md-3 a { z-index: 4; display: none;}
#categorias .categoria_img::before { content: ""; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-color: rgba(0, 0, 0, 0); transition: opacity 0.3s ease; z-index: 2;}
#categorias .categoria_img:hover::before { background-color: rgba(0, 0, 0, 0.5); transition: opacity 0.3s ease;}
#categorias .categoria_img:hover { transform: scale(1.05);}
#categorias .categoria_img:hover a{ display: block;}
#categorias .col-md-3 { color: #fff; margin-bottom: 30px; }
#categorias .produtos_texto { text-align: center; padding-top: 15px; font-size: 20px; font-weight: bold;}
#categorias .produtos_texto h5 { margin: 0;}
#categorias .produtos_texto p{ font-size: 20px; font-weight: bold;}

.sobre_min_banner .min_banner_img { position: relative; object-fit: cover;}
.sobre_min_banner .min_banner_img::before { content: ""; position: absolute; width: 100%; left: 0; height: 100%; z-index: 2; background-color: #0000003f;}

#sobre { background-color: #231F20; color: #ffffff;}
#sobre .col-md-12{ margin: 100px 0 100px 0;}

#produtos { background-color: #231F20;}
#produtos .line_title { display: flex; justify-content: center; align-items: center; padding: 50px ;}
#produtos a{ color: #ffffff; text-decoration: none;}
#produtos a:hover{ color: #aa9a9a;}
#produtos p{ color: #ffffff;}
#produtos .container { padding-top: 100px; padding-bottom: 100px;}
#produtos .galeria .row { margin-top: 50px; gap: 50px 0;}
#produtos .galeria .row .col-md-3 .galeria_iamgens{ position: relative; transition: all .3s; border-radius: 12px; box-shadow: 0px 4px 4px 0px rgba(0,0,0,0.25);}
#produtos .galeria .row .col-md-3 .galeria_iamgens::before{ content: ''; position: absolute; height: 100%; width: 100%; background-color: #00000044; border-radius: 12px;}
#produtos .galeria .row .col-md-3 .galeria_iamgens:hover{ transform: scale(1.05);}
#produtos .galeria .row .col-md-3 .galeria_iamgens:hover::before{ opacity: 0;}
#produtos .galeria .galeria_titulo { display: flex; justify-content: center; align-items: center; height: 100%;}
#produtos .galeria .galeria_titulo p{ color: #000000; z-index: 99;}

#noticias { padding: 100px 0; background-color: #231F20;}
#noticias h3 { color: #fff;  display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; text-overflow: ellipsis;}
#noticias .row .col-md-4 h3 a{ color: #fff; text-decoration: none;}
#noticias .row .col-md-4 h3 a:hover{ color: #adadad; text-decoration: none;}
#noticias .row .col-md-4 h5,
#noticias .row .col-md-4 h6{ color: #fff; opacity: .8;}
#noticias .row{ margin-top: 100px; gap: 100px 0;}


#noticia { background-color: #231F20; color: #fff;}
#noticia .card-body {background-color: #231F20; color: #fff; text-align: justify;}

.img-darken {
    width: 100%;
    height: 100%;
    object-fit: cover;
    filter: brightness(50%); /* Escurece a imagem */
}

.banner-text {
    position: absolute;
    bottom: 5%;
    left: 5%;
    color: white;
    font-size: calc(100% - 3px);
}

.banner-text h2 {
    font-size: 2em;
    margin: 0;
}

.banner-text p {
    font-size: 1.2em;
    margin: 10px 0 0;
}

@media (min-width: 992px) {
    #home-produtos .carousel-item .produto_card {
        width: 271px;
        height: 320px;
    }
    #home-produtos .carousel-item .d-flex {
        gap: 16px;
    }
}
@media (max-width: 991.98px) {
    #home-produtos .carousel-item .produto_card {
        width: 100%;
        height: 200px;
    }
    #home-produtos .carousel-item .d-flex {
        flex-direction: column;
        align-items: center;
    }
}


@media (max-width: 991px) {
    header .navbar-nav .nav-link.show, header .navbar-nav .nav-link:hover, header .navbar-nav .nav-link:focus { background: transparent !important; color: #231F20;}
    header .navbar-nav > .dropdown > .dropdown-menu { padding-top: 0;}
    header .navbar-nav > .dropdown > .nav-link.show { padding-bottom: 0;}
    footer ul { margin: 30px 0}
    footer ul li { margin-bottom: 2px;}
    footer .logos { margin-bottom: 30px;}
    footer .footer_social { display: flex; justify-content: center;}
}

@media (min-width: 576px) and (max-width:767px) {
    .container, .container-sm { max-width: 576px;}
    .over-grid { width: 110%; margin-left: -5%; }
}

@media (min-width: 640px) and (max-width:767px) {
    .over-grid { width: 130%; margin-left: -15%; }
}

@media (min-width: 768px) and (max-width:991px) {
    .over-grid { width: 120%; margin-left: -10%; }
}

@media (max-width: 289px) {
    header .navbar-brand em { display: none;}
}

@media (min-width: 992px) {
    body { text-align: left;}
    header .navbar .nav-link { color: white; font-weight: 500;}
    header .navbar .nav-link:hover { color: #a6adb0;}
    header .navbar .offcanvas { position: relative; top: -12px; }
    header .navbar .language { position: absolute; top: -35px; right:0;}
    header .navbar-brand em { top: -8px; font-size: 1rem;}
    header .navbar-nav > .dropdown:hover > .dropdown-menu { display: block; margin-top: -3px; border:none; border-top: 4px solid #a6adb0;}
    header .navbar-nav > .dropdown > .dropdown-menu > .dropdown-menu-arrow { top: -28px; left: 15%; width: 0; height: 0; position: relative; }
    header .navbar-nav > .dropdown > .dropdown-menu > .dropdown-menu-arrow:before, 
    header .navbar-nav > .dropdown > .dropdown-menu > .dropdown-menu-arrow:after { content: ""; position: absolute; display: block; width: 0; height: 0; border-width: 7px 8px; border-style: solid; border-color: transparent; z-index: 1001; }
    header .navbar-nav > .dropdown > .dropdown-menu > .dropdown-menu-arrow:after { bottom: -18px; right: -8px; border-bottom-color: #a6adb0; }
    header .navbar-nav > .dropdown > .dropdown-menu > .dropdown-menu-arrow:before { bottom: -17px; right: -8px; border-bottom-color: rgba(0,0,0,.15); }
}

@media (min-width: 1200px) {
    .h1, h1 { font-size: 3rem; }
    .title h1 + p { font-size: 1.5rem;}
    header .navbar .offcanvas { position: relative; top: -5px; }
    header .navbar .language { position: absolute; top: -50px; right:0;}
    header .navbar-brand em { font-size: 1.3rem;}
}

@media (min-width: 1600px) {
    html, body, td { font-size: 1.1em;}
    .container { max-width:1400px;}
    header .container, footer .container { max-width: 86%;}
    header .navbar .offcanvas { position: relative; top: -10px; }
    header .dropdown.has-submenu .dropdown-item { margin-left: 25px;}
}

/* ============ desktop view ============ */
@media all and (min-width: 992px) {
	.dropdown-menu li{ position: relative; 	}
	.nav-item .submenu{ 
		display: none;
		position: absolute;
		left:100%; top:-7px;
	}
	.nav-item .submenu-left{ 
		right:100%; left:auto;
	}
	.dropdown-menu > li:hover > .submenu{ display: block; }
}	
/* ============ desktop view .end// ============ */

/* ============ small devices ============ */
@media (max-width: 991px) {
  .dropdown-menu .dropdown-menu{
      margin-left:0.7rem; margin-right:0.7rem; margin-bottom: .5rem;
  }
}	
/* ============ small devices .end// ============ */