/*
  Journal - Advanced Opencart Theme Framework
  Version 2.6.7
  Copyright (c) 2016 Digital Atelier
  http://journal.digital-atelier.com/
*/
/******************************
REFINE CATEGORIES + DESCRIPTION
*******************************/
.text-empty, .not_found {
  padding-bottom: 10px;
  padding-top: 10px; }

.category-info {
  margin-bottom: 20px; }
  .category-info p {
    margin-bottom: 15px; }

.category-info img,
.category-info .image img {
  margin-right: 15px;
  margin-bottom: 10px;
  display: block;
  float: left;
  max-width: 100%;
  width: auto;
  height: auto; }

/******************************
 REFINE SUBCATEGORIES
*******************************/
h2.refine {
  margin-bottom: 0;
  border: none;
  display: none; }

.refine-images {
  margin-right: -15px; }

#refine-images .owl-controls {
  margin-top: 4px; }

#refine-images .owl-wrapper-outer {
  overflow: hidden; }

.refine-image {
  float: left;
  text-align: center;
  padding-right: 15px;
  margin-bottom: 15px; }
  .refine-image a {
    display: block;
    padding: 7px;
    transition: background-color .2s; }
    .refine-image a span {
      transition: all 0.2s; }
  .refine-image img {
    width: 100%;
    height: auto;
    margin-bottom: 5px; }

.owl-item .refine-image {
  float: none; }

.refine-category-name {
  display: table;
  width: 100%;
  text-align: center; }

.category-list {
  position: relative;
  margin-top: 20px; }
  .category-list > ul {
    margin: 0;
    padding-left: 10px;
    min-height: 35px;
    line-height: 33px; }
    .category-list > ul > li {
      color: white;
      position: relative;
      display: inline-block; }
      .category-list > ul > li > a {
        padding: 0 6px;
        color: inherit;
        font-size: 12px;
        font-weight: bold;
        transition: all 0.2s; }
    .category-list > ul > li:after {
      position: absolute;
      content: "|"; }
    .category-list > ul > li:last-of-type:after {
      content: ""; }
    .category-list > ul > li:first-child > a {
      padding-left: 0; }

.product-filter {
  padding-left: 0;
  width: 100%;
  transition: color .2s; }

    .product-filter > div b {
      position: relative;
      font-weight: normal; }
  .product-filter .product-compare {
    float: left;
    color: inherit;
    font-family: inherit; }
    .product-filter .product-compare a {
      text-decoration: none;
      color: inherit;
      transition: all 0.2s; }
      .product-filter .product-compare a:before {
        padding-left: 1px;
        float: left;
        margin-right: 5px; }
  .product-filter .display {
    float: left;
    padding-left: 5px; }
    .product-filter .display a {
      position: relative; }
    .product-filter .display a + a {
      left: -14px; }
      .product-filter .display a + a i {
        margin-right: 0 !important;
        transition: all 0.2s; }
  .product-filter .limit {
    margin: 0 10px; }

.description-category{
  width: 100%;
  padding: 5px 20px 20px;
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
}
.description-category-image{
  height: 100%;
  justify-content: center;
  padding: 15px;
}
/******************************
PRODUCT GRID
*******************************/
.ie .main-products, .main-products.product-list {
  width: 100%; }

.product-grid,
.product-list,
#content .box-product {
  padding-top: 20px; }

.backface :before, .backface :after {
  -webkit-backface-visibility: hidden; }

.product-grid, #content .box-product {
  margin-right: -20px;
  overflow: visible; }

.product-wrapper {
  margin-right: 20px; }

.product-wrapper:hover {
  transition: all 0.3s; }

.product-details {
  padding-bottom: 6px;
  position: relative;
  z-index: 2; }



.product-grid-item {
  text-align: center;
  position: relative;
  z-index: 1;
  background-color: transparent;
  margin-bottom: 50px; }
  .product-grid-item .image {
    width: 100%;
    position: relative;
    z-index: 1; }
    .product-grid-item .image > a {
      width: 100%;
      display: block;
      text-align: center;
      background-color: transparent; }
      .product-grid-item .image > a img {
        position: relative;
        display: block;
        width: 100%;
        height: auto;
        border-radius: inherit; }
  .product-grid-item .name {
    width: 100%;
    display: table;
    table-layout: fixed;
    position: relative;
    overflow: hidden; }
    
  .product-grid-item .description {
    display: none;
    padding: 8px; }

  .product-grid-item .price {
    font-weight: bold;
    text-align: center;
    font-family: Helvetica, Arial, sans-serif;
    font-size: 15px;
    display: inline-block;
    margin: 0px 0 10px 0; }
    .product-grid-item .price br {
      display: none; }
  .product-grid-item hr {
    height: 0;
    display: none;
    background-color: transparent; }
  .product-grid-item .price-old {
    color: #EA2E49;
    font-size: 13px;
    text-decoration: line-through; }
  .product-grid-item .price-new {
    font-weight: bold;
    padding-left: 5px; }
  .product-grid-item .price-tax {
    display: none; }
 



.p-over {
  width: 100%;
  height: 100%;
  background: transparent;
  position: absolute;
  top: 0;
  left: 0;
  border-radius: inherit;
  z-index: 2;
  opacity: 0;
  visibility: hidden;
  -ms-filter: 'progid:DXImageTransform.Microsoft.Alpha(Opacity=0)' !important;
  transition: all .2s ease-out; }

.product-grid-item:hover .p-over, .product-list-item:hover .p-over {
  -ms-filter: 'progid:DXImageTransform.Microsoft.Alpha(Opacity=0)' !important;
  visibility: visible; }

/******************************
PRODUCT LIST
*******************************/
.product-list-item {
  background-color: #f4f4f4;
  margin-bottom: 20px;
  padding: 10px; }
  .product-list-item .product-details {
    margin-left: 215px;
    background-color: transparent; }
    
  .product-list-item .left {
    position: relative; }
  .product-list-item .image {
    width: 200px;
    float: left;
    margin-right: 15px;
    position: relative; }
    .product-list-item .image > a {
      display: block;
      overflow: hidden; }
      .product-list-item .image > a > img {
        width: 100%;
        float: left;
        border-radius: inherit;
        height: auto; }
  .product-list-item .name a {
    font-size: 14px;
    padding-bottom: 5px;
    display: block;
    border-bottom: 1px solid #E4E4E4;
    display: inline-block;
    text-overflow: ellipsis;
    width: 100%;
    overflow: hidden; }
 
  .product-list-item .price {
    font-weight: bold;
    text-align: left;
    padding: 8px 0;
    font-family: Helvetica, Arial, sans-serif;
    font-size: 16px;
    display: inline-block; }
  .product-list-item .price-old {
    color: #EA2E49;
    font-size: 90%;
    text-decoration: line-through; }
  .product-list-item .price-new {
    font-weight: bold;
    padding-left: 5px; }
  .product-list-item .price-tax {
    opacity: .7;
    font-weight: normal;
    font-size: 75%;
    text-align: left;
    display: block;
    padding-top: 5px;
    display: none; }
  .product-list-item .description {
    padding: 0 0 12px 0;
    color: #5F6874; }
  .product-list-item .cart {
    float: left;
    margin-right: 10px; }

.product-list-item.lt400 .product-list-item .image {
  width: 100%;
  float: none;
  margin-bottom: 10px; }
  .product-list-item.lt400 .product-list-item .image img {
    float: none; }

/******************************
 WISHLIST / COMPARE
*******************************/
.product-grid-item .wishlist, .product-grid-item .compare, .product-list-item .wishlist, .product-list-item .compare {
  position: relative;
  display: inline-block;
  padding: 0 5px;
  margin-bottom: 3px; }
  .product-grid-item .wishlist a, .product-grid-item .compare a, .product-list-item .wishlist a, .product-list-item .compare a {
    display: block;
    font-size: 11px;
    text-align: center;
    position: relative; }
    .product-grid-item .wishlist a i, .product-grid-item .compare a i, .product-list-item .wishlist a i, .product-list-item .compare a i {
      transition: background-color .2s;
      color: inherit;
      display: inline-block;
      text-align: center; }
      .product-grid-item .wishlist a i:before, .product-grid-item .compare a i:before, .product-list-item .wishlist a i:before, .product-list-item .compare a i:before {
        width: 100%; }

.oc2 .product-grid-item .compare {
  padding-left: 0; }

.product-grid-item .image .wishlist, .product-grid-item .image .compare {
  position: absolute;
  bottom: 8px;
  z-index: 99;
  transition: opacity 0.2s; }
.product-grid-item .image .wishlist {
  left: 5px; }
.product-grid-item .image .compare {
  right: 5px; }

.journal-carousel .product-grid-item .image .wishlist [data-hint]:after {
  left: 0;
  -webkit-transform: translate3d(0, 0, 0) translateX(0);
  -moz-transform: translate3d(0, 0, 0) translateX(0);
  -ms-transform: translate3d(0, 0, 0) translateX(0);
  transform: translate3d(0, 0, 0) translateX(0); }
.journal-carousel .product-grid-item .image .compare [data-hint]:after {
  left: auto;
  right: 0;
  -webkit-transform: translate3d(0, 0, 0) translateX(0);
  -moz-transform: translate3d(0, 0, 0) translateX(0);
  -ms-transform: translate3d(0, 0, 0) translateX(0);
  transform: translate3d(0, 0, 0) translateX(0); }

.product-list-item .image .wishlist, .product-list-item .image .compare {
  position: absolute;
  bottom: 8px; }
.product-list-item .cart {
  float: none;
  display: block; }
.product-list-item .wishlist a i, .product-list-item .compare a i {
  background-color: transparent;
  padding-right: 3px; }
.product-list-item .wishlist {
  margin-top: 10px;
  padding-left: 0; }
  .product-list-item .wishlist a {
    text-align: left; }
.product-list-item .compare {
  margin-top: 0;
  text-align: left; }

.inline-button .cart {
  display: inline-block;
  margin-bottom: 5px; }
.inline-button hr {
  display: block; }

.product-grid-item:hover, .owl-carousel .owl-item:hover {
  z-index: 3; }

/******************************
 PAGINATION
*******************************/
.pagination {
  display: inline-block;
  margin-bottom: 20px;
  width: 100%;
  padding: 10px; }
  .pagination:after {
    content: ".";
    display: block;
    clear: both;
    visibility: hidden;
    height: 0; }
  .pagination .links {
    float: left; }
  .pagination ul, .pagination li {
    margin: 0;
    padding: 0;
    list-style: none; }
  .pagination a, .pagination b, .pagination li {
    display: inline-block;
    width: 26px;
    height: 26px;
    line-height: 25px;
    text-align: center;
    text-decoration: none;
    background-color: white;
    font-weight: bold;
    font-family: inherit;
    margin-right: 4px;
    transition: all .2s; }
  .pagination b, .pagination .active {
    background-color: #EA2E49;
    color: white; }
  .pagination .results {
    color: inherit;
    float: right;
    padding-right: 5px; }
  .pagination .links + .results {
    margin-top: 4px; }

/******************************
OC 2.0
*******************************/
.oc2 .product-list-item .description {
  height: auto !important; }
.oc2 .product-list-item .rating {
  margin-bottom: 0; }

/*categorias jlm*/
.category-header-2 .title-search{
  color: rgb(66, 71, 135);
  font-weight: 500;
  font-size: 16px;
}
.category-header-2 .row.content .buttons #button-search:hover{
  color: rgb(66, 71, 135);
  background-color: rgb(222, 162, 60);
}
.category-header-2 .row.content .buttons{
  margin: 0;
  margin-left: 10px;
  line-height: unset;
  padding: 0;
}
.category-header-2 .row.content .buttons #button-search{
  line-height: 50px;
  border: none;
  font-weight: 500;
  width: 100%;
  text-align: center;
  border-radius: 10px;
}
.category-header-2 .row.content #input-search{
  line-height: 50px;
  padding: 0 20px;

  border-radius: 10px;
  font-weight: 600;
}
.category-header-2 .row.content .hidden{
  display: none;
}

.category-header-2 .product-grid-item .rating{
display: none;
}
.product-grid-item .rating{
display: none;
}
.category-list.new {
  display: flex;
  overflow: hidden;
  justify-content: center;
  flex-wrap: wrap;
}
.category-list.new .category.sf-checked{
  background-color: rgb(222, 162, 60);
  color: rgb(66, 71, 135)
}
.category-list.new .category input{
  display: none
}
.category-list.new .category{
  margin: 5px;
  line-height:2;
  border-radius: 5px;
}

.journal-sf .ver-todos{
  background: rgb(222, 162, 60);
  width: max-content;
  font-weight: 600;
  padding: 7px 20px;
  line-height: 2;
  border-radius: 5px;
  text-transform: uppercase;
  display: block;
  margin: 0 auto;
  cursor: pointer;
  margin-top: 30px;
}

.journal-sf.hide > .box .category-list.new{
  display: none;
}
.journal-sf h3.title-categories{
  text-align: center;
  color: rgb(66,71,135);
  text-transform: uppercase;
}


.filter-title .heading-title + .product-filter .sort.sort-custom-select .selected-sort-display{
  text-align: center;
}
.filter-title .heading-title + .product-filter .sort.sort-custom-select{
  text-align: right;
}
.filter-title .heading-title + .product-filter{
  max-width: 300px;
}
.filter-title h1.heading-title{
  width: max-content;
  width: 100%;
}
.filter-title{
    align-items: center;
  display: flex;
}


.sort-custom-select {
    position: relative;
    display: inline-flex;
    align-items: center;
    font-family: 'montserrat';
    font-weight: 600;
}

.product-filter .sort-custom-select b {
    margin-right: 5px;
    width: max-content;
    font-weight: 600;
}

.selected-sort-display span {
    color: rgb(66, 71, 135);
    display: -webkit-box;
    /* Necessário para -webkit-line-clamp */
    -webkit-line-clamp: 2;
    /* Limita a 2 linhas */
    -webkit-box-orient: vertical;
    /* Organiza o conteúdo verticalmente */
    overflow: hidden;
    /* Esconde o conteúdo extra */
    text-overflow: ellipsis;
    /* Adiciona os três pontos */
    /* Opcional: define uma altura da linha para um controle mais preciso (ajuste conforme sua fonte) */
    line-height: 1.2;
  
    max-width: 150px;
}

.selected-sort-display {
  display: flex;
  justify-content: center;
  align-items: center;
    height: 40px;
    padding: 8px 12px;
    border: 1px solid rgb(66, 71, 135);
    border-radius: 4px;
    cursor: pointer;
    width: 200px;
    position: relative;
    z-index: 998;
    padding-right: 30px;
}

.selected-sort-display::after {
    content: "\e62e";
    /* Seta para baixo */
    position: absolute;
    right: 10px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 20px;
    color: rgb(66, 71, 135);
}

.selected-sort-display.active::after {
    content: "\e62d";
    /* Seta para cima quando ativo */
}

.selected-sort-display.active {
    border-radius: 5px 5px 0 0;
}

/* Estilos para a lista customizada (o "dropdown" em si) */
.custom-sort-list {
    width: 200px;
    list-style: none;
    padding: 0;
    margin: 0;
    /* Remove margem padrão para alinhar com o display */
    border: 1px solid rgb(66, 71, 135);

    text-align: center;
    border-radius: 0 0 5px 5px;
    /* Apenas cantos inferiores arredondados */
    background-color: #fff;
    position: absolute;
    /* Posiciona a lista sobre outros elementos */
    top: 99%;
    /* Inicia logo abaixo do selected-sort-display */

    right: 0;
    z-index: 9999;
    /* Garante que fique acima de outros conteúdos */
    max-height: 200px;
    /* Para rolagem se houver muitos itens */
    overflow-y: auto;
    box-shadow: none;
    display: none;
    /* Por padrão, a lista fica oculta */
}

.custom-sort-list.active {
    display: block;
    /* Torna a lista visível quando ativa */
}

.custom-sort-list li {
    padding: 8px 12px;
    cursor: pointer;
    border-bottom: 1px solid #eee;
    color: rgb(66, 71, 135);
    font-weight: 600;
}

.custom-sort-list li:last-child {
    border-bottom: none;
}

.custom-sort-list li:hover {
    background-color: #f0f0f0;
}

.custom-sort-list li.selected {
    background-color: rgb(66, 71, 135);
    font-weight: bold;
    color: rgb(255, 255, 255);
}
.category-header-2 .row.pagination {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.category-header-2 .row.pagination .links li:hover a{
   color: rgb(66, 71, 135);
}
.category-header-2 .row.pagination .links li a {
  color: rgb(200,200,200);
  padding-bottom: 5px;
}
.category-header-2 .row.pagination .links li.active span{
  color: rgb(200,200,200);
    padding-bottom: 3px;
  border-bottom: 2px solid rgb(200,200,200);
  
}

#all-categories{
 background: rgb(222, 162, 60);  
   color: rgb(66, 71, 135);
  display: none;
  margin: 20px auto 0 ;
  width: 30px;
  height: 30px;
  text-align: center;
  border-radius: 15px;
}
.show-more +  #all-categories{
  display: block;
  cursor: pointer;
}
.show-more.show + #all-categories .icon-angle::after{
   content: "\e62d";
  line-height: 20px;
}
#all-categories .icon-angle::after{
font-size: 25px;
  font-weight: 600;
  line-height: 30px;
  content: "\e62e";
}

@media (max-width: 760px){
#box-categories .title-categories::after {
  font-size: 25px;
  font-weight: 600;
  line-height: 0px;
  top: 5px;
  content: "\e62e";
}
#box-categories.mobile-show .title-categories::after {
  content: "\e62d";
}
#box-categories #filtro-ver-todos,
#box-categories  #all-categories,
#box-categories .category-list{
  display: none;
}
#box-categories.mobile-show #filtro-ver-todos, 
#box-categories.mobile-show  #all-categories,
#box-categories.mobile-show .category-list{
  display: block;
}
    .journal-sf.hide .title-categories{
  background: transparent;
  padding: 20px 10px 0;
}
.journal-sf.hide .category-list + #all-categories{
  display: none;
}
#content.search-page .title-search {
  text-align: center;
}
#content.search-page .title-search + .content{
  display: flex;
  justify-content: center;
}
    .journal-sf.hide .title-categories{
  background: transparent;
  padding: 20px 10px 0;
}
.journal-sf.hide .category-list + #all-categories{
  display: none;
}
#content.search-page .title-search {
  text-align: center;
}
#content.search-page .title-search + .content{
  display: flex;
  justify-content: center;
}
.category-header-2 #content,
.category-header-2 .row.main-products{
    overflow: hidden ;
}
 .category-list.new {
  overflow: scroll;
}

.category-list.new .category{
  margin: 0;
  text-align: center;
  border-bottom: 1px solid rgb(83,89,166);
  border-radius: 0;
}
.category-list.new{
  border-radius: 0;
  margin-top: 0;
  display: block;
}
.category-list.new .category{
    display: block;
}
.title-categories {
  background: rgb(222, 162, 60);
  color: rgb(66, 71, 135);
  padding: 10px 0;
}
.title-categories .mobile {
  text-transform: none;  
}
.category-header-2#container #content{
  padding: 0;
}
.category-header-2 .banner-categorias .static-banner{
  margin-bottom: 0;
}
#all-categories {
  width: 100%;
  border-radius: 0;
  margin-top: 0;
  height: 40px;
}
#all-categories .icon-angle{
  display: flex;
  justify-content: center;
  align-items: center;
}
.show-more.show + #all-categories .icon-angle::before{
    content: 'reduzir lista';
}
#all-categories .icon-angle::before{
  content: 'Expandir lista';
  font-family: inherit;
 font-size: 15px;
  font-weight: 500;
 
  margin-right: 5px;
  text-transform: capitalize;
  
}
.category-header-2 .row.main-products .product-grid-item .product-thumb{
  margin: 0 5px;
}
.category-header-2 .row.main-products .product-grid-item{
  margin-bottom: 20px;
}
.category-header-2  .row.main-products{
  padding: 0 10px;
  margin: 0 auto;
}
.category-header-2 .filter-title .product-filter .sort .selected-sort-display{
  border-color: transparent;
  border-radius: 0;
  border-bottom-color: rgb(66, 71, 135);
}
.category-header-2 .filter-title  .product-filter .sort b{
  display: block;
  white-space: nowrap;
}
.category-header-2 .filter-title .heading-title{
  text-align: center;
  margin-top: 15px;

}
.filter-title {
  padding: 0 10px 30px;
  flex-direction: column-reverse;
  text-align: center;
  justify-content: center;
  align-items: center;
}
}