﻿/*   
Theme Name: AcoresPRO Theme
Theme URI: http://acorespro.com/
Description: AcoresPRO Wordpress Theme. Developed for custom themes made by AcoresPRO. Theme uses Bootstrap 5.3.2 and PHP 7.4.
Author: AcoresPRO
Author URI: https://acorespro.com
Version: 3.3
*/

html,
body {
  font-size: 14px;
  color: #000;
  font-weight: 400;
  line-height: 25px;
  overflow-x: hidden;
}

p {
  margin: 0;
  padding: 0;
  font-size: 16px;
  font-family: 'Jost', sans-serif;
}

a {
  font-family: 'Jost', sans-serif !important;
}

*,
::after,
::before {
  box-sizing: border-box;
}

.h1,
.h2,
.h3,
h1,
h2,
h3 {
  margin: 0;
  font-family: 'Jost', sans-serif;
}

*:focus {
  outline: 0 !important;
}

.jost {
  font-family: 'Jost', sans-serif;
}

.navbar {

  transition: background-color 0.4s ease;
}

.navbar-brand img {
  height: 40px;
  width: auto;
}

/* opcional: tornar os links do wp_nav_menu iguais aos do Bootstrap */
.offcanvas .navbar-nav .menu-item>a {
  display: block;
  padding: .5rem 0;
  text-decoration: none;
}

rs-fullwidth-wrap {
  z-index: 100;
}

.hero-cover {
  position: relative;
  min-height: 100vh;
  display: flex;
  align-items: center;
  margin-top: 0 !important;
}

.hero-cover::before {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(255, 255, 255, 0.2);
  pointer-events: none;
}

.hero-img {
  position: relative;
  height: 472px;
  display: flex;
  align-items: center;
}

.hero-img::before {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(255, 255, 255, 0.2);
  pointer-events: none;
}

.hero-content {
  position: relative;
  color: #fff
}

.hero-subtitle {
  display: inline-flex;
  align-items: center;
  gap: .5rem;
  font-weight: 600;
  font-size: 20px;
}

.btn-pill {
  border-radius: 999px;
  padding: .75rem 1.25rem
}

.text-green {
  color: #74BB20;
}

.bg-green {
  background: #74BB20 !important
}

.service-card {
  border: 1px solid #DEDEDE;
  border-radius: 14px;
  padding: 70px 24px 24px 24px;
  height: 100%;
  transition: all .2s ease
}

.serv-icon {
  border-radius: 99px;
  aspect-ratio: 1/1;
  width: 100px;
  height: 100px;
  border: 1px solid #DEDEDE;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate(-50%, -50%);
  background-color: white;
}

.service-card:hover {
  transform: translateY(-3px);
  background-color: #74BB20;
  border-color: #74BB20;
  color: white !important;
}

.service-card:hover .text-green {
  color: white !important;
}

.service-card:hover .serv-icon {
  border-color: #74BB20 !important;
}

.partners img {
  max-height: 90px;
  width: auto;
  filter: grayscale(0);
  opacity: .9
}

.subtitle {
  font-size: 18px;
  font-weight: 500;
  font-family: 'Jost', sans-serif;
}

footer a {
  text-decoration: none;
}

footer .links .fs-5>div,
footer .col-md-3 li {
  margin-top: 15px;
  color: white;
  font-size: 16px;
  font-weight: 400;
}

footer .links a,
footer .col-md-3 li a {
  color: white;
  font-weight: 400;
  transition: all .1s ease-in;
  font-size: 16px;
}

footer .links a:hover,
footer .col-md-3 li a:hover {
  color: #74BB20;
}

footer h5 {
  position: relative;
  margin-bottom: 30px;
}

footer h5::after {
  content: '';
  width: 63px;
  height: 1px;
  position: absolute;
  bottom: -10px;
  left: 0;
  border-top: 1px solid white;
}

.legals ul {
  gap: 1rem 3rem;
}

.legals a {
  color: #74BB20;
  transition: all .1s ease-in;
}

.legals a:hover {
  color: white;
}

footer .info svg {
  min-width: 20px;
  min-height: 20px;
  margin-right: 10px;
}

.redes a {
  border-radius: 5px;
  background-color: #74BB20;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 30px;
  height: 30px;
  transition: all .1s ease-in;
}

.redes a path {

  transition: all .1s ease-in;
}

.redes a:hover {
  background-color: white;

}

.redes a:hover path {
  fill: #74BB20;

}

.direitos .container {
  width: fit-content;
  background-color: #14201C;
  z-index: 1;
}

.direitos .container>div {
  color: white;
  font-size: 16px;
}

.direitos::before {
  content: '';
  width: 100vw;
  height: 1px;
  position: absolute;
  top: 50%;
  left: 0;
  border-bottom: 1px solid rgba(168, 193, 255, 0.15);
}

.btn-dark {
  background-color: #000 !important;
  border-color: #000 !important;
}

.btn-dark:hover {
  background-color: #008F00 !important;
  border-color: #008F00 !important;
}

.offcanvas-body {
  flex-grow: unset !important;
  direction: rtl;
}

.offcanvas-body a {
  color: rgba(51, 51, 51, 0.5);
  font-family: "Open Sans", sans-serif;
}

.offcanvas-body a:hover {
  color: rgba(51, 51, 51, 0.65);

}

.offcanvas-header button {
  box-shadow: none !important;
}

.offcanvas-header {
  direction: rtl;
  opacity: 0.4;
}

.offcanvas a:has(img):hover img {
  opacity: 0.2 !important;
}

.masonry {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
  gap: 1rem;
  grid-auto-flow: dense;
  align-items: start;
  /* prevent stretch artifacts */
}

.masonry figure {
  margin: 0;
}

/* kill default figure margins */

.tile {
  --c: 1;
  --r: 1;
  /* base 1×1 */
  aspect-ratio: var(--c) / var(--r);
  position: relative;
  overflow: hidden;
  border-radius: .5rem;
  background: #eee;
}

.tile.c2 {
  grid-column: span 2;
  --c: 2;
}

/* 2 columns wide, same row height */
.tile.r2 {
  --r: 2;
}

/* double height */
.tile.c2.r2 {
  /* 2×2, nothing else needed */
}

.tile>img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.lead-box {
  border-left: 3px solid #111;
  padding-left: 1.25rem;
}

.eyebrow {
  text-align: center;
  font-weight: 600;
  letter-spacing: .1px;
  font-size: clamp(1.05rem, 1.2vw + .8rem, 1.35rem);
  margin-bottom: .75rem;
}

/* FAQ */
.faq .accordion-item {
  border: 1px solid #ececec;
  border-radius: .75rem;
  overflow: hidden;
  margin-bottom: .75rem;
  box-shadow: 0 2px 10px rgba(0, 0, 0, .03)
}

.faq .accordion-button {
  font-weight: 600;
  padding-block: 1rem;
  border-radius: .5rem !important
}

.accordion-button:not(.collapsed) {
  background: #f7f7f7;
  box-shadow: none
}

.grid-wrapper>figure {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 100%;
  width: 100%;
}

.grid-wrapper>figure>img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  vertical-align: middle;
  display: inline-block;
}

.grid-wrapper {
  display: grid;
  grid-gap: 20px;
  grid-template-columns: repeat(auto-fit, minmax(20vw, 1fr));
  grid-auto-rows: 20vw;
  grid-auto-flow: dense;
  padding: 20px;
}

.grid-wrapper-serv {
  grid-template-columns: repeat(auto-fit, minmax(120px, 1fr)) !important;
  grid-auto-rows: 200px !important;
}
.grid-wrapper-serv figure{
	background:transparent !important;
	
}
.grid-wrapper-serv img{
	object-fit:contain !important;
	
}
.grid-wrapper-serv figure {
  margin: 1rem 0 0 0 !important;
  border-radius: 0px !important;
}

.grid-wrapper .c2 {
  grid-column: span 2;
}

.grid-wrapper .r2 {
  grid-row: span 2;
}

.grid-wrapper .big {
  grid-column: span 2;
  grid-row: span 2;
}

@media (max-width:992px) {
  form p:has(.hf-label) {
    width: 100% !important;
  }

  #authCanvas .offauth {
    flex-wrap: wrap;
  }

  #authCanvas .offauth .offimg {
    width: 100%;
    order:2;
  }

  #authCanvas {
    overflow-y: scroll;
  }
}

@media (max-width:768px) {
  .grid-wrapper {
    grid-gap: 10px !important;
    grid-template-columns: repeat(auto-fit, minmax(26vw, 1fr)) !important;
    grid-auto-rows: 26vw !important;
    padding: 10px !important;
  }
}

@media (max-width:576px) {

  .offrow,
  .offauth {
    flex-wrap: wrap;
    justify-content: end !important;
  }

  .offauth .offnav {
    width: 100% !important;
  }

  .offlogo {
    order: 2;
    width: 100% !important;
  }

  .links {
    text-align: center;
  }

  .address,
  #menu-links-legais {
    justify-content: center;
  }

  .logo-box {
    align-items: center !important;
  }

  footer h5::after {
    left: 50% !important;
    transform: translate(-50%, 0);
  }

  .grid-wrapper {
    grid-gap: 5px !important;
    grid-template-columns: repeat(auto-fit, minmax(40vw, 1fr)) !important;
    grid-auto-rows: 30vw !important;
    padding: 5px !important;
  }

}

.filters span,
.filters button {
  color: #000;
  text-decoration: none;
  font-family: 'Jost', sans-serif;
  font-size: 17px;
}

.filters button svg {
  transition: all ease-in-out 0.2s;
  transform: rotate(180deg);

}

.filters button.collapsed svg {
  transform: rotate(0deg);

}

.filters input {
  order: 2;
  opacity: 0;
}

.filters label {
  color: rgba(0, 0, 0, .5);
  /*font-size: 12px;*/
  /* Alteracoes 2025-12-17 */
  font-size: 16px;
  /* #END Alteracoes 2025-12-17 */
}

.filters label span {
  display: none;
}

.filters input:checked+label {
  color: #008F00;
  font-weight: 600;
}

.filters label:hover {
  color: #008F00;
  font-weight: 600;
  cursor: pointer;
}

.filter .destaques {
  display: none;
}

.filters>div {
  border-top: 1px solid #D9D9D9;
  padding: 20px 0 20px 0;
}

#storeFilters #search {
  border-radius: 99px;
  padding: 15px 30px;
  border: 1px solid #fff;
  outline: none !important;
  box-shadow: none !important;
  color: #6E757E;
  font-size: 20px;
  margin-bottom: 30px;
}

#storeFilters #search:focus {
  border: 1px solid #008F00;

}

.filter-btn button {
  width: fit-content;
  padding: 15px 30px;
  border: 2px solid #000;
  font-family: "Yantramanav", sans-serif;
  font-weight: 900;
  font-size: 14px;
  background: transparent;
  background-color: transparent;
  transition: all ease-in-out 0.2s;

}

.filter-btn button:hover {
  background: #000 !important;
  background-color: #000 !important;
  color: white;

}

#loadMore {
  font-family: 'Jost', sans-serif;
  padding: 15px 80px;
  font-size: 18px;
  font-weight: 500;
}

#productsGrid .card {
  border-radius: 0px;
  padding: 2px;
}

#productsGrid .card img {
  object-fit: contain;
  aspect-ratio: 1/1;
}

#productsGrid .card-title a {
  font-size: 20px;
  color: #000;
  font-family: 'Jost', sans-serif;
}

.overcard {
  position: absolute;
  opacity: 0;
  transition: all ease-in-out 0.2s;
  background-color: rgba(0, 0, 0, .3);
  width: 100%;
  height: 100%;
}

.overcard .btn {
  background-color: #74BB20;
  color: black;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  font-size: 15px;
  font-family: 'Jost', sans-serif;
  transition: all ease-in-out 0.2s;
}

.overcard .btn:hover {
  background-color: #008F00;
  color: white;

}

#productsGrid .card:hover .overcard {
  opacity: 1;

}

body:not(:has(.hero-img, .hero-cover, rs-fullwidth-wrap)) .navbar {
  background-color: white;
  box-shadow: var(--bs-box-shadow);
}

.lead-box p,
.sublead-box p {

  font-size: clamp(1.05rem, 1.2vw + .8rem, 1.35rem);
}

.woocommerce-account .woocommerce {
  margin: 100px 0 40px 0;
}

.woocommerce-account .woocommerce nav ul li a {
  font-family: 'Jost', sans-serif;
  color: #000;
  text-decoration: none;
  font-weight: 600;
  transition: all ease-in 0.1s;
}

.woocommerce-MyAccount-content a {
  text-decoration: none;
  color: #74BB20;
  font-weight: 600;
  transition: all ease-in 0.1s;
}

.woocommerce-account .woocommerce nav ul li a:hover,
.woocommerce-MyAccount-content a:hover {
  color: #008F00;

}

section:not(.hero-img) {
  margin-top: clamp(2.25rem, 5vw, 4rem);
  margin-bottom: clamp(2.25rem, 5vw, 4rem);
}

/* HERO */
.hero-wrap {
  min-height: 46vh;
  background: #f7f7f7 center/cover no-repeat;
  display: flex;
  align-items: flex-end;
}

.hero-inner {
  width: 100%;
  background: #fff;
  border-radius: .5rem .5rem 0 0;
  box-shadow: 0 10px 30px rgba(0, 0, 0, .08);
  padding: clamp(1rem, 3vw, 2rem);
}

.wpcf7 {
  width: 100%;
}

.wpcf7 form {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
}

.wpcf7 input,
.wpcf7 p:not(:has(.hf-label)),
.wpcf7 label,
.wpcf7 textarea {
  width: 100%;
}

input::placeholder,
textarea::placeholder,
.wpcf7 label {
  color: #5C5C5C;
}

.wpcf7-date {
  color: #5C5C5C;
}

.wpcf7-spinner {
  display: none !important;
}

.wpcf7 p:has(.hf-label) {
  width: 48%;
}

p {
  margin-bottom: 8px;
}

input:not([type="submit"]),
textarea {
  border-radius: 8px;
  border: 1px solid #D9D9D9;
  padding: 8px;
}

textarea {
  height: 136px;
}

input[type="submit"] {
  border-radius: 99px;
  width: 100%;
  text-align: center;
  padding: 15px;
  background-color: black;
  transition: 0.2s all ease-in;
  color: white;
  border-color: black;
  outline: none;
  margin-top: 20px;
}

input[type="submit"]:hover {
  background-color: #008F00;
}

.serv-gal {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
  width: 100%;
}

.serv-gal img {
  width: 48%;
  aspect-ratio: 16/9;
  object-fit: cover;
  margin-top: 10px;
}

.nossos-servs h3 {
  font-size: 28px;
  color: #74BB20;
  margin-bottom: 20px;
}

.nossos-servs p {
  font-size: 20px;
  color: rgba(0, 0, 0, 0.7)
}

.services-card {
  border: 1px solid #DEDEDE;
  border-radius: 14px;
  padding: 70px 14px 14px 14px;
  height: 100%;
  transition: all .2s ease
}

.product-text p {
  font-family: 'Jost', sans-serif;
  color: #6C7275 !important;
}

.product {
  margin-top: 50px;
}

.product .summary {
  display: flex;
  flex-direction: column;
}

.woocommerce-product-rating {
  order: 1;
}

.woocommerce-product-rating a {
  pointer-events: none;
  text-decoration: none;
  color: #141718;
  font-size: 12px;
}

.product_title {
  order: 2;
}

.product_text {
  order: 3;
}

.price {
  order: 4;
  display: flex;
  gap: 15px;
  margin: 30px 0 50px 0;
}

.price bdi {
  color: black;
  font-size: 28px;
  font-weight: 500 !important;
  font-family: 'Jost', sans-serif;
}

.price del {
  order: 2;
  position: relative;
}

.price del span bdi {
  font-size: 20px !important;
  color: #6C7275;

}

.price del::after {
  content: '';
  color: #6C7275 !important;
  width: 100%;
  height: 1px;
  border-top: 2px solid #6C7275;
  position: absolute;
  top: 40%;
  left: 0;

}

.woocommerce:where(body:not(.woocommerce-uses-block-theme)) div.product p.price {
  color: black !important;
}

input.qty {
  background-color: #F5F5F5;
  border-color: #F5F5F5;
  border-radius: 8px;
  font-size: 18px;
  font-weight: 700;

}

.woocommerce-message a {
  font-size: 18px;
}

.wc-block-cart-items .price {
  font-size: 18px;
}

.product .stock,
.product .product_meta,
.product .woocommerce-breadcrumb,
.product .woocommerce-tabs,
.product .related,
.single-product #sidebar {
  display: none;
}

.cart a {
  font-family: 'Jost', sans-serif;
}

.cart {
  order: 5;
  display: flex;
  flex-wrap: wrap;
  align-items: center !important;
  gap: 12px 8px !important;
}

form.cart::before,
form.cart::after,
.woocommerce-breadcrumb {
  display: none !important;
}

.cart .quantity {
  order: 1;
}

.cart .tinv-wishlist {
  order: 2;
  flex-grow: 1;

}

.cart .tinv-wishlist a {
  width: 100%;
  color: #000;
  text-decoration: none;
  border: 1px black solid;
  border-radius: 99px;
  padding: 15px;
  text-align: center;
  margin: 0 0 0 10px;
  font-size: 18px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0px !important;
  transition: all ease-in 0.1s;
}

.cart .tinv-wishlist a:hover {
  background-color: #000;
  color: white;

}

.cart .single_add_to_cart_button {
  order: 3;
  width: 100%;
  background: black !important;
  color: white !important;
  text-decoration: none;
  border: 1px black solid !important;
  border-radius: 99px !important;
  padding: 15px !important;
  text-align: center;
  margin: 0 0 0 10px;
  font-size: 18px !important;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all ease-in 0.1s;
  font-family: 'Jost', sans-serif;
  font-weight: 400 !important;
}

.onsale {
  background-color: #38CB89 !important;
}

.woocommerce-error,
.woocommerce-info,
.woocommerce-message {

  border-color: #74BB20 !important;
}

.woocommerce-info::before {
  color: #74BB20 !important;

}

.wishlist_item .product-action button {
  background: black !important;
  color: white !important;
  text-decoration: none;
  border: 1px black solid !important;
  border-radius: 99px !important;
  padding: 15px !important;
  text-align: center;
  margin: 0 0 0 10px;
  font-size: 18px !important;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all ease-in 0.1s;
  font-family: 'Jost', sans-serif;
  font-weight: 400 !important;
}

.tinv-wishlist {
  margin-top: 0 !important;
}

.woocommerce-MyAccount-navigation .is-active,
.woocommerce-MyAccount-navigation .is-active a {
  color: #008F00 !important;
}

.tinv-header,
.wc-block-cart-items .wc-block-components-product-metadata {
  display: none;
}

.wc-block-cart-items .price {
  margin: 0 !important;
}

.product-action button::before {
  font-family: "tinvwl-webfont" !important;
  content: "\e913" !important;
  display: block !important;
  color: white;
}

.product-action button span {
  display: none;
}

.product-action i {
  display: none !important;
}

@media (max-width:770px) {

  tbody .wishlist_item {
    display: flex !important;
  }

  .product-remove,
  .product-date,
  .product-thumbnail {
    display: none !important;
  }
}

.tinvwl_button_close {
  width: 100%;
  background: black !important;
  color: white !important;
  text-decoration: none;
  border: 1px black solid !important;
  border-radius: 99px !important;
  padding: 15px !important;
  text-align: center;
  margin: 0 0 0 10px;
  font-size: 18px !important;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all ease-in 0.1s;
  font-family: 'Jost', sans-serif;
  font-weight: 400 !important;
}

.wc-block-cart {
  margin-top: 80px !important;
}

.wc-block-cart__submit-button {
  width: 100%;
  background: black !important;
  color: white !important;
  text-decoration: none;
  border: 1px black solid !important;
  border-radius: 99px !important;
  padding: 15px !important;
  text-align: center;
  margin: 0 0 0 10px;
  font-size: 18px !important;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all ease-in 0.1s;
  font-family: 'Jost', sans-serif;
  font-weight: 400 !important;
}

.wc-block-cart-item__wrap .wc-block-components-product-name {
  text-decoration: none;
  font-size: 28px;
  font-weight: 600;
  color: #74BB20;
}

.wc-block-components-totals-coupon__button,
.wc-block-components-checkout-place-order-button {
  background: black !important;
  color: white !important;
  text-decoration: none;
  border: 1px black solid !important;
  border-radius: 99px !important;
  padding: 15px !important;
  text-align: center;
  margin: 0 0 0 10px;
  font-size: 18px !important;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all ease-in 0.1s;
  font-family: 'Jost', sans-serif;
  font-weight: 400 !important;
}

.wc-block-components-totals-coupon__button:disabled {
  background: #bcbcbc !important;
  border-color: #bcbcbc !important;

}

button {
  box-shadow: none !important;
}

.offimg {
  background-image: url("/wp-content/uploads/2025/09/fluid-pink-blue-wallpaper-8k-10.jpg");
  background-position: center center;
  background-size: cover;
  background-repeat: no-repeat;
  width: 700px;
  max-width: 100%;
  display: flex;
  flex-direction: column;
  justify-content: end;

}

.offtitle {
  width: 60%;
  color: white;
}

.offtitle strong {
  font-weight: 800;
}

.offdesc {
  width: 60%;
  color: rgba(255, 255, 255, 0.8);
}

.main-sobre-nos ul {
  list-style: none;
  padding-left: 50px;
}

.main-sobre-nos ul li {
  position: relative;
  margin-bottom: 30px;
}

.main-sobre-nos ul li::before {
  content: '';
  width: 30px;
  height: 30px;
  position: absolute;
  top: 0;
  left: -50px;
  background-image: url('/wp-content/uploads/2025/09/check.svg');
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center center;

}

.main-sobre-nos ul li h3 {
  margin-bottom: 10px;
}

.rgpd label {
  display: flex;
}

.rgpd label input {
  width: 15px;
  margin-right: 5px;
}

.page-template-template-contatos .navbar {
  background-color: white !important;
  box-shadow: var(--bs-box-shadow) !important;

}

#authCanvas .nav-link {
  color: #74BB20 !important;
}

#authCanvas .nav-link.active {
  background-color: #74BB20 !important;
  color: white !important;
}

#authCanvas a {
  color: #74BB20 !important;
}

#authCanvas .tab-content {
  width: 400px;
  max-width: 100%;
}
.home .card .card-img-top {
    aspect-ratio: 16/11;
    object-fit: contain;
}
.single-product .woocommerce-product-details__short-description{
	display:none;
}
.single-product div.product div.images img{
	    aspect-ratio: 1 / 1;
    object-fit: contain;
}

.galleryContainer {
  width: 80%;
  margin: 75px auto;
  margin-bottom: 75px;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  
}

.galleryVideo, .galleryImg {
  width: 350px;
  height: 350px;
  margin: 20px;
  object-fit: cover;
  max-width: none;
  height: 350px !important;
}