/* reset by rafaux */
* { margin: 0px; padding: 0px; border: 0px; font-weight: normal; font-size: 100%; list-style: none; line-height: 1; outline: 0px; background: none; -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; text-rendering: optimizeLegibility; -webkit-font-smoothing: antialiased; -moz-font-smoothing: antialiased; -ms-font-smoothing: antialiased; -o-font-smoothing: antialiased; font-smoothing: antialiased; }

/* var */
:root { --bg: #FDFAF1; --bg2: #F8F4E6; --olive: #4B5136; --apple: #F0EAC8; --whitegreen: #FFFFE1; --fonttitle: 'Zapf Humanist 601'; }

/* global class */
.container { display: block; width: auto; max-width: 1300px; height: auto; margin: 0px auto; }

/* base */
a { color: var(--oliver); text-decoration: none; transition: all .5s ease; }
body { background: var(--bg2); color: var(--olive); font: normal 16px 'Suisse Int\'l', sans-serif; overflow-x: hidden; }
body.home::after { position: absolute; z-index: -1; top: 0px; left: 0px; width: 100%; height: 100vh; background-color: var(--bg); content: ''; }
em { font-style: normal; }
input, textarea, select, button { font: normal 16px 'Suisse Int\'l', sans-serif; appearance: none; -webkit-appearance: none; border-radius: 0px; cursor: pointer; }
input[type=submit], button { transition: all .5s ease; }
input:-webkit-autofill,
input:-webkit-autofill:hover, 
input:-webkit-autofill:focus {  -webkit-text-fill-color: var(--olive); -webkit-box-shadow: 0 0 0px 1000px var(--whitegreen) inset; transition: background-color 5000s ease-in-out 0s; }

/* top */
#top { position: relative; width: 100%; height: 37px; padding: 0px 20px; background-color: var(--olive); text-align: center; }
#top p { display: block; line-height: 37px; font-family: var(--fonttitle); font-size: 12px; color: #fff; }
#top .right { position: absolute; top: 50%; right: 20px; display: flex; justify-content: space-between; align-items: center; gap: 20px; transform: translateY(-50%); }
#top span a { font-family: var(--fonttitle); font-size: 12px; color: #fff; }
#top span a i { margin-right: 3px; }

/* header */
#header { position: relative; width: 100%; height: 90px; }
#header .container { display: flex; height: 90px; justify-content: space-between; align-items: center; }
#header span.logo img { position: absolute; top: 50%; left: 50%; width: 110px; height: auto; transform: translate(-50%, -50%); }
#header span.toggle { display: none; position: absolute; top: 52%; left: 20px; width: 24px; height: 20px; transform: translateY(-50%); border-top: 1.5px solid var(--olive); cursor: pointer; transition: all .5s ease; }
#header span.toggle::before { position: absolute; top: 4px; left: 0px; width: 100%; height: 1px; background-color: var(--olive); transition: all .5s ease; content: ''; }
#header span.toggle::after { position: absolute; top: 9px; left: 0px; width: 100%; height: 1px; background-color: var(--olive); transition: all .5s ease; content: ''; }
#header span.toggle.on { border-top: transparent; }
#header span.toggle.on::before { top: 6px; transform: rotate(45deg); }
#header span.toggle.on::after { top: 6px; transform: rotate(-45deg); }
#header .right { display: flex; gap: 24px; justify-content: space-between; align-items: center; }
#header .right img { display: inline-block; width: 20px; height: 20px; vertical-align: middle; }
#header .right span.cart { position: relative; }
#header .right span.cart sup { position: absolute; top: 65%; left: 50%; transform: translate(-50%, -50%); color: var(--olive); font-family: 'Arial'; font-weight: bold; font-size: 9px; }
#header .right span.user i { display: inline-block; width: auto; font-size: 24px; vertical-align: middle; }
#header .right span.user b { display: inline-block; width: auto; margin-left: 4px; font-size: 12px; vertical-align: middle; text-transform: capitalize; }
#header .right span.search i,
#header .right span.fav i { font-size: 22px; }
#header nav ul { display: flex; justify-content: space-between; align-items: center; gap: 60px; }
#header nav ul li { position: relative; font-family: var(--fonttitle); font-size: 12px; text-transform: uppercase; }
#header nav ul li.alt { margin-left: 300px; }
#header nav ul li a.nav-link { position: relative; display: inline-block; transition: transform .3s ease; }
#header nav ul li a.nav-link::after { position: absolute; top: 0px; left: 0px; width: 100%; height: 40px; background-color: transparent; content: ''; }
#header nav ul li ul { position: absolute; z-index: 20; top: 30px; left: -20px; width: calc(100% + 50px); height: auto; display: flex; flex-direction: column; gap: 20px; padding: 20px; background-color: var(--apple); border-radius: 15px; opacity: 0; visibility: hidden; transform: translateY(10px); transition: opacity .3s ease, transform .3s ease, visibility .3s ease; }
#header nav ul li ul li a:hover { text-decoration: underline; }
#header nav ul li:hover ul { opacity: 1; visibility: visible; transform: translateY(0); }

/* box search */
.tamanho-links { margin-bottom: 10px; display: flex !important; visibility: visible !important; opacity: 1 !important; }
.tamanho-links li { display: inline-block !important; opacity: 1 !important; visibility: visible !important; }
tr:has(.tamanho-links) { display: table-row !important; }
/* var links ui */
.variations select { display: none; }
.woocommerce div.product form.cart .variations select { display: none !important; }
.woocommerce div.product form.cart .variations .select2, 
.woocommerce div.product form.cart .variations .select2-container { display: none !important; }
#calc_shipping_postcode { width: 100%; margin-bottom: 20px; }
/* Exceção para o select de tamanho */
.variations .tamanho-select { display: block !important; width: 100%; padding: 10px; border: 1px solid #ddd; border-radius: 4px; font-size: 14px; background-color: #fff; cursor: pointer; appearance: auto; -webkit-appearance: auto; }
.variations tr:has(.tamanho-select) { display: table-row !important; }
.variations .label { font-weight: 600; padding-right: 15px; }
/* Preço da variação - SEMPRE ESCONDIDO (o JS copia para o topo) */
.single_variation_wrap .woocommerce-variation-price { display: none !important; opacity: 0 !important; visibility: hidden !important; }
.single_variation .woocommerce-variation-price { display: none !important; }
.woocommerce-variation-price { display: none !important; }
.woocommerce-variation-price .price { display: none !important; opacity: 0 !important; visibility: hidden !important; }
.variation-links { display: flex; flex-wrap: wrap; gap: 10px; }
.variation-links li { display: inline-block; }
.variation-links li a { display: inline-block; padding: 8px 12px; border: 1px solid var(--olive); border-radius: 20px; color: var(--olive); font-size: 11px; text-transform: uppercase; transition: all 0.3s ease; }
.variation-links li.active a { background-color: var(--apple); border-color: var(--apple); color: var(--olive) }
.variation-links li.active a::before { position: absolute; top: -6px; right: -8px; color: var(--olive); font-family: 'Font Awesome 5 Pro'; content: '\f057'; }
.variation-links li.disabled { 
    display: none !important;
}
.variation-links li.disabled a { border-color: #999; color: #999; }
#box-search { position: fixed; z-index: 20; top: -400px; left: 0px; width: 100%; height: auto; transition: all 1s ease; }
#box-search.on { top: 0px; }
#box-search sub { display: none; position: fixed; top: 0px; width: 100%; height: 100vh; background-color: rgba(0,0,0,.5); }
#box-search form { position: relative; z-index: 2; display: block; width: 100%; height: auto; padding: 40px; background-color: var(--olive); }
#box-search form sup { position: absolute; bottom: -10px; left: 50%; width: auto; padding: 6px 15px; border-radius: 20px; background-color: var(--whitegreen); color: var(--olive); font-size: 12px; text-transform: lowercase; transform: translateX(-50%); cursor: pointer; }
#box-search fieldset { display: flex; justify-content: space-between; align-items: center; }
#box-search fieldset label:first-of-type { width: calc(100% - 60px); padding-right: 20px; }
#box-search fieldset label:last-of-type { width: 60px; }
#box-search fieldset label input[type=search] { width: 100%; height: 60px; padding: 0px 40px; border: 1px solid var(--apple); color: var(--apple); border-radius: 100px; font-size: 18px; }
#box-search fieldset label input[type=search]::placeholder { color: var(--apple); }
#box-search fieldset label button { width: 100%; height: 60px; background-color: var(--apple); color: var(--olive); text-align: center; line-height: 60px; font-size: 24px; border-radius: 100px; }

/* banner */
#banner { position: relative; width: calc(100% - 80px); height: auto; margin: 0px 40px; overflow: hidden; }
#banner section,
#banner section article { position: relative; width: 100%; height: auto; border-radius: 40px; overflow: hidden; }
#banner figure { margin: 0px !important; }
#banner figure img { width: 100%; height: auto; }
#banner figure img.mobile { display: none; }
#banner figcaption { position: absolute; z-index: 2; top: 50%; left: 50%; margin-left: -500px; transform: translateY(-50%); }
#banner figcaption h2 { display: block; font-family: var(--fonttitle); font-size: 60px; text-transform: uppercase; }
#banner figcaption p  { display: block; margin: 10px 0px 20px 0px; font-family: var(--fonttitle); font-size: 22px; }
#banner figcaption span a { display: inline-block; width: auto; padding: 16px 26px; background-color: var(--olive); color: #fff; border-radius: 60px; text-transform: uppercase; font-size: 13px; }
#banner figcaption span a:hover { transform: scale(1.1); box-shadow: 0px 20px 20px rgba(0,0,0,.2); }
#banner .slick-dots { position: absolute; z-index: 20; bottom: 20px; left: 50%; width: auto; height: auto; transform: translateX(-50%); }
#banner .slick-dots li:only-child { display: none; }
#banner .slick-dots li { display: inline-block; width: 10px; height: 10px; margin: 0px 10px; border: 2px solid var(--bg2); border-radius: 100%; text-indent: -9999em; cursor: pointer; }
#banner .slick-dots li.slick-active { background-color: var(--bg2); }
#banner.opc { opacity: .4; }

/* bar */
#bar { display: block; width: 100%; max-width: 100%; height: auto; margin: 0px auto 60px auto; padding: 0px 40px; }
#bar section { display: flex; align-items: center; padding: 20px; background-color: var(--apple); border-radius: 30px; }
#bar section article { display: flex; justify-content: center; align-items: center; gap: 15px; position: relative; width: 25%; }
#bar section article p { display: block; line-height: 1.3; font-weight: bold; font-size: 12px; letter-spacing: .5px; }
#bar section article i { font-size: 24px; }

/* start */
#start { margin-top: 80px; }
#start h6 { display: block; margin-bottom: 40px; text-align: center; font-family: var(--fonttitle); font-size: 24px; text-transform: uppercase; }
#start article { width: 100%; height: auto; margin: 0px 5px; }
#start article img { width: 100%; height: auto; }
#start .slick-list { margin: 0px -5px; }
#start .slick-dots { display: flex; justify-content: center; margin: 20px 0px 70px 0px; gap: 30px; }
#start .slick-dots li { width: 12px; height: 12px; border-radius: 100%; border: 2px solid var(--olive); text-indent: -9999em; cursor: pointer; }
#start .slick-dots li.slick-active { background-color: var(--olive); }

/* feed */
.feed { margin-bottom: 50px; }
.feed header h6 { display: block; margin-bottom: 50px; text-align: center; font-family: var(--fonttitle); font-size: 26px; text-transform: uppercase; }
.feed section { display: inline-block; width: 100%; }
.feed section article { display: block; height: auto; text-align: center; }
.feed section article figure { position: relative; width: 100%; height: 120px; background: var(--bg2); }
.feed section article figure img { position: absolute; top: 50%; left: 50%; width: 120%; height: 100%; object-fit: cover; mix-blend-mode: darken; transform: translate(-50%, -50%); transition: all .5s ease; }
.feed section article figure img:last-of-type { opacity: 0; }
.feed section article figure:hover img:first-of-type { opacity: 0; }
.feed section article figure:hover img:last-of-type { opacity: 1; }
.feed section article span { padding-right: 0px !important; font-size: 14px; line-height: 1.6; }
.feed section article .amount * { font-weight: bold; }
.feed section article h3 { display: block; margin-bottom: 20px; padding: 0px 30px; line-height: 1.2; }
.feed section article del { display: none; }
.feed section article ins { display: block; margin-top: 7px; text-decoration: none !important; }
.feed .slick-dots { display: inline-block; width: 100%; height: auto; margin-top: 30px; text-align: center; }
.feed .slick-dots li:only-child { display: none; }
.feed .slick-dots li { display: inline-block; width: 10px; height: 10px; margin: 0px 10px; border: 2px solid var(--olive); border-radius: 100%; text-indent: -9999em; cursor: pointer; }
.feed .slick-dots li.slick-active { background-color: var(--olive); }
.feed .arrow { position: absolute; z-index: 20; top: 50%; transform: translateY(-50%); color: var(--olive); }
.feed .arrow.arrow-prev { left: 0px; }
.feed .arrow.arrow-next { right: 0px; }
.feed.int { padding-top: 80px; }
.feed.int section { display: grid; grid-template-columns: repeat(4, 1fr); grid-gap: 30px; }
.feed.int header h6 { font-size: 36px; text-transform: uppercase; }

/* category */
#category { margin-bottom: 50px; }
#category header h6 { display: block; margin-bottom: 50px; text-align: center; font-family: var(--fonttitle); font-size: 26px; text-transform: uppercase; }
#category section { display: grid; grid-template-columns: repeat(3, 1fr); grid-gap: 30px; }
#category section article { position: relative; display: block; width: 100%; height: 500px; border-radius: 40px; overflow: hidden; }
#category section article img { display: block; width: 100%; height: 500px; object-fit: cover; transition: all 1s ease; }
#category section article:hover img { transform: scale(1.1); }
#category section article strong { position: absolute; z-index: 2; top: 50%; left: 50%; font-family: var(--fonttitle); font-size: 46px; transform: translate(-50%, -50%); text-transform: uppercase; color: #F8F7D8; }
.product-category-header { display: grid; grid-template-columns: 40% 1fr; grid-gap: 20px; }
.product-category-header figure { width: 100%; height: 260px; border-radius: 40px; background-color: #000; overflow: hidden; }
.product-category-header figure img { width: 100%; height: 100%; object-fit: cover; }
.product-category-header section { width: 100%; height: 260px; padding: 40px; border-radius: 40px; background-color: var(--whitegreen); }
.product-category-header section h1 { display: block; margin-bottom: 12px; padding-bottom: 12px; text-transform: uppercase; font-size: 30px; font-family: var(--fonttitle); border-bottom: 1.5px solid var(--olive); }
.product-category-header section strong { display: block; margin-bottom: 12px; line-height: 1.6; font-weight: bold; }
.product-category-header section .category-description { display: block; line-height: 1.4; }

/* about home */
#about-home section { display: flex; align-items: center; gap: 60px; margin-bottom: 60px; padding: 0px 160px; }
#about-home section figure { width: 35%; }
#about-home section figure img { width: 100%; height: auto; }
#about-home section article { display: flex; flex-direction: column; width: 65%; gap: 20px; }
#about-home section article h6 { display: block; font-family: var(--fonttitle); font-size: 26px; text-transform: uppercase; }
#about-home section article p { display: block; line-height: 1.6; font-size: 14px; }
#about-home section article p:last-of-type { padding-top: 20px; border-top: 1px solid var(--olive); }

/* shop side */
.shop-side article h1 { display: none !important; }
.yith-wcan-filters, .shop-side aside nav { display: block; margin-bottom: 20px; }
.yith-wcan-filters .yith-wcan-filter { margin-bottom: 0px !important; }
.yith-wcan-filters .yith-wcan-filter .filter-items .filter-item { position: relative; padding-left: 25px; font-size: 13px !important; }
.yith-wcan-filters .yith-wcan-filter .filter-items .filter-item.active > label > a,
.yith-wcan-filters ¸yith-wcan-filter .filter-items .filter-item > label > a:hover { font-size: 13px !important; color: var(--olive) !important; }
.yith-wcan-filters .yith-wcan-filter .filter-items .filter-item > label > a { font-size: 13px !important; }
.shop-side .shop { display: flex; justify-content: space-between; align-items: flex-start; }
.shop-side aside { width: 320px; }
.shop-side aside.on { opacity: 1; }
.shop-side aside span.abrir-filtro { display: none; position: fixed; z-index: 1000; bottom: 40px; left: 20px; width: auto; height: 30px; padding: 0px 20px; border-radius: 60px; background-color: var(--olive); color: #fff; font-weight: bold; font-size: 13px; line-height: 30px; cursor: pointer; }
.shop-side aside .filter-item input,
.shop-side aside nav li a::before { position: absolute; top: 0px; left: 0px; width: 15px; height: 15px; margin-right: 10px; background-color: var(--bg2); border-radius: 100%; border: 1px solid var(--olive); vertical-align: middle; content: ''; }
.shop-side aside nav li input { top: 2px; }
.shop-side aside .filter-item input:checked,
.shop-side aside .block strong { display: inline-block; margin-bottom: 20px; font-family: var(--fonttitle); font-size: 20px; }
.shop-side aside .block span { display: inline-block; margin-bottom: 20px; font-family: var(--fonttitle); font-size: 14px; }
.shop-side aside .block span b a { padding: 6px 14px; border-radius: 50px; color: var(--olive); font-family: 'Suisse Int\'l';  }
.shop-side aside .block span b.on a { border: 1px solid var(--olive); }
.shop-side aside .block header { position: relative; }
.shop-side aside .block header sup { display: none; position: absolute; top: -40px; right: -34px; width: 30px; height: 30px; background-color: var(--olive); color: #fff; border-radius: 100%; cursor: pointer; text-align: center; line-height: 30px; }
.shop-side aside nav ul.filter-pedras { display: none; }
.shop-side aside nav li { position: relative; margin-bottom: 10px; padding-left: 25px; font-size: 13px; line-height: 1.4; cursor: pointer; }
.shop-side aside nav li.on a::before,
.shop-side aside .filter-item input:checked { background-color: var(--olive); }
.shop-side aside .filter-clear { display: inline-block; width: 100%; height: auto; }
.shop-side aside .filter-clear a { display: inline-block; width: auto; padding: 10px 20px; border: 1px solid var(--olive); color: var(--olive); border-radius: 50px; font-size: 13px; font-family: 'Suisse Int\'l'; }
.shop-side aside .filter-clear a:hover { background-color: var(--olive); color: #fff; }
.shop-side article { width: calc(100% - 320px); padding-left: 40px; }
.shop-side aside .aside-filter { display: none; justify-content: space-between; align-items: center; cursor: pointer; }
.shop-side aside .aside-filter strong { font-weight: bold; font-size: 13px; }

/* banner side */
#banner-side .container { display: flex; margin-bottom: 50px; justify-content: space-between; align-items: center; }
#banner-side section { width: 50%; }
#banner-side section h1 { display: block; font-family: var(--fonttitle); font-size: 48px; text-transform: uppercase; }
#banner-side section p  { display: block; margin: 10px 0px 20px 0px; font-size: 15px; }
#banner-side section span a { display: inline-block; width: auto; padding: 16px 26px; background-color: var(--olive); color: #fff; border-radius: 60px; text-transform: uppercase; font-size: 13px; }
#banner-side section span a:hover { transform: scale(1.1); box-shadow: 0px 20px 20px rgba(0,0,0,.2); }
#banner-side figure { width: 50%; height: 510px; border-radius: 30px; overflow: hidden; }
#banner-side figure img { display: block; width: 100%; height: 100%; object-fit: cover; }

/* green */
#green { margin-bottom: 50px; }
#green section { position: relative; display: flex; justify-content: space-around; align-items: flex-start; width: 100%; height: auto; margin-bottom: 1px; padding: 60px 90px 50px 90px; background-color: var(--olive); border-radius: 40px; }
#green section aside { width: 35%; padding-right: 60px; }
#green section aside h4 { font-size: 26px; color: var(--whitegreen); line-height: 1.4; }
#green section aside h5 { font-size: 22px; color: var(--apple); }
#green section aside h5::before { display: block; width: 30px; height: 5px; margin-bottom: 20px; background-color: var(--apple); content: ''; }
#green section aside span a { display: inline-block; width: auto; margin-top: 44px; padding: 16px 26px; border: 1px solid var(--apple); color: var(--apple); border-radius: 60px; text-transform: uppercase; font-size: 13px; }
#green section aside span a:hover { background-color: var(--apple); color: var(--olive); transform: scale(1.1); box-shadow: 0px 20px 20px rgba(0,0,0,.2); }
#green section.green1 article { display: flex; padding-top: 10px; justify-content: space-between; gap: 30px; }
#green section.green1 article p { width: 50%; font-size: 12px; line-height: 1.8; color: var(--apple); }
#green section article { width: 65%; }
#green section article span { position: relative; display: block; width: 47%; margin-bottom: 16px; padding: 0px 0px 16px 45px; color: var(--apple); border-bottom: 1px solid #838076; font-size: 13px; }
#green section article span:last-of-type { border-bottom: none; }
#green section article span img { position: absolute; top: -4px; left: 0px; width: 24px; height: 24px; }
#green section span.logo img { position: absolute; bottom: 70px; right: 80px; width: 50px; height: auto; }

/* product */
.product { margin-bottom: 60px !important; }
.product section { display: grid; grid-template-columns: 50% 50%; }
.product section figure { position: relative; margin: 0px; background-color: #F8F4E6; }
.product section figure::before { position: absolute; top: 0px; right: 0px; width: 50vmax; height: 100%; background-color: #F8F4E6; content: ''; }
.product section figure img { width: 100%; height: 100%; object-fit: contain; mix-blend-mode: darken; }
.product section article { position: relative; padding: 50px 100px 20px 50px; background-color: #FDFAF1; }
.product section article * { position: relative; z-index: 2; }
.product section article .simplefavorite-button { position: absolute; top: 20px; right: 0px; font-size: 22px; color: var(--olive); }
.product section article .simplefavorite-button.loading { display: none !important; }
.product section article h1 { font-family: var(--fonttitle); font-size: 30px; line-height: 1.2; text-transform: uppercase; }
.product section article span.sku_wrapper { display: block; margin: 10px 0px 20px 0px; font-size: 12px; }
.product section article .variations tr { display: block; margin-bottom: 10px; }
.product section article p { margin-bottom: 40px; line-height: 1.6; font-size: 13px !important; }
.product section article p.price del { display: block !important; }
.product section article p.price del span.amount { display: none; }
.product section article p.price ins span.amount { color: var(--olive) !important; }
.product section article p.price ins { text-decoration: none; }
.product .woocommerce-product-details__short-description { display: none !important; }
.product .woocommerce-product-gallery { width: 100% !important; }
.product section article span.amount { display: block; margin-bottom: 8px; font-family: var(--fonttitle); font-size: 20px !important; color: var(--olive) !important; }
.product section article p.price { margin-top: 10px !important; margin-bottom: -5px !important; }
.product section article small { display: block; margin-bottom: 10px; font-size: 12px; }
.product section article select { display: block; width: 100%; height: 36px; margin-bottom: 16px; padding: 0px 20px; background: #fff url('../img/arrow.png') no-repeat right 20px center; color: var(--olive); background-size: 24px; font-size: 12px; }
.product section article input[type=number] { display: block; width: 75px !important; height: 36px; background-color: #fff; border: none !important; font-size: 12px; border-radius: 50px; }
.product section article .quantity::before { display: block; margin-bottom: 10px; font-size: 12px; content: "Quantidade"; }
.product section article button[type=submit] { display: block !important; width: 100% !important; margin-top: 30px !important; padding: 0px !important; background-color: var(--olive) !important; color: #fff; line-height: 40px !important; font-size: 12px !important; border-radius: 50px !important; }
.product section article button[type=submit]:hover { background-color: var(--apple); color: var(--olive); transform: scale(1.1); box-shadow: 0px 20px 20px rgba(0,0,0,.2); }
.product section.line1 article::before { position: absolute; top: 0px; left: 0px; width: 50vmax; height: 100%; background-color: #FDFAF1; content: ''; }
.product section.line2 article { padding: 30px 50px; }
.product section.line2 article blockquote { display: block; margin-bottom: 20px; padding-bottom: 20px; border-bottom: 2px solid var(--olive); font-size: 18px; }
.product section.line2 article .item { margin-bottom: 20px; padding-bottom: 20px; border-bottom: 1px solid var(--olive); }
.product section.line2 article .item:last-of-type { border-bottom: none; }
.product section.line2 article .item p { margin-bottom: 20px; }
.product section.line2 article .item p:last-of-type { margin-bottom: 0px; }
.product section.line2 article h4 { display: block; margin-bottom: 30px; font-family: var(--fonttitle); font-size: 26px; text-transform: uppercase; }
.product section.line2 article h5 { display: block; margin-bottom: 20px; }
.product section.line2 article h5 img { display: inline-block; width: 40px; height: 40px; margin-right: 7px; vertical-align: middle; }
.product section.line2 article nav li { position: relative; margin-top: 20px; padding-top: 20px; border-top: 1px solid var(--olive); cursor: pointer; overflow: hidden; }
.product section.line2 article nav li img { position: absolute; top: 20px; left: 0px; width: 120px; height: auto; border-radius: 10px; opacity: 0; transition: all .3s ease; }
.product section.line2 article nav li strong { position: relative; display: block; font-size: 14px; text-transform: uppercase; }
.product section.line2 article nav li strong sup { position: absolute; top: 0px; right: 0px; }
.product section.line2 article nav li em { display: none; font-style: normal; font-size: 13px; line-height: 1.4; }
.product section.line2 article nav li.on { padding-left: 150px; }
.product section.line2 article nav li.on strong { margin-bottom: 20px; }
.product section.line2 article nav li.on img { opacity: 1; }
.product section.line2 article img.img-embalagem-sustentavel { display: block; width: 65%; max-width: 100%; height: auto; margin-bottom: 30px; }
.product section.line2 article:first-of-type::before { position: absolute; top: 0px; right: 0px; width: 50vmax; height: 100%; background-color: #F8F4E6; content: ''; }
.product section.line2 article:last-of-type::before { position: absolute; top: 0px; left: 0px; width: 50vmax; height: 100%; background-color: #fff; content: ''; }

    /* product -> thumbnails */
    .main-thumbnails { position: relative; display: inline-block; width: 100%; height: auto; padding: 0px 80px !important; }
    .main-thumbnails li { position: relative; height: 100px; margin: 0px 5px; border-radius: 10px; overflow: hidden; cursor: pointer; }
    
    /* PERMITIR mudança de imagem por variação - galeria principal liberada */
    
    /* Desabilitar click direto nos thumbnails - só permitir links do lightbox */
    .main-thumbnails li { pointer-events: none !important; }
    .main-thumbnails li a[data-fancybox] { pointer-events: all !important; }
    .main-thumbnails li img { pointer-events: none !important; }
    
    /* Estilo para informação de estoque */
    #variation-stock-info { 
        margin-top: 20px !important; 
        margin-bottom: 20px !important;
        text-align: center !important;
        width: 100% !important;
        clear: both !important;
        position: relative !important;
        z-index: 999 !important;
    }
    #variation-stock-info .stock-alert {
        display: inline-block !important;
        color: var(--olive) !important;
        font-size: 12px !important;
        font-weight: normal !important;
        min-height: 20px !important;
        line-height: 1.4 !important;
    }
    
    /* Garantir que apareça após thumbnails */
    .main-thumbnails + #variation-stock-info {
        margin-top: 20px !important;
    }
    
    /* Estilos da barra de progresso de estoque */
    .stock-progress-container {
        animation: slideInUp 0.5s ease-out;
    }
    
    .stock-progress-text {
        animation: pulse 2s infinite;
        text-shadow: 0 1px 2px rgba(0,0,0,0.1);
    }
    
    .progress-bar-fill {
        background: var(--olive);
    }
    
    .stock-urgency {
        transition: all 0.3s ease;
    }
    
    /* Animações */
    @keyframes slideInUp {
        from {
            opacity: 0;
            transform: translateY(20px);
        }
        to {
            opacity: 1;
            transform: translateY(0);
        }
    }
    
    @keyframes pulse {
        0%, 100% {
            opacity: 1;
        }
        50% {
            opacity: 0.7;
        }
    }
    
    /* Efeito especial quando estoque está acabando */
    .stock-progress-container.urgent .stock-progress-text {
        animation: urgentPulse 0.5s infinite;
        color: #d32f2f !important;
    }
    
    @keyframes urgentPulse {
        0%, 100% {
            opacity: 1;
            transform: scale(1);
        }
        50% {
            opacity: 0.8;
            transform: scale(1.05);
        }
    }
    
    .main-thumbnails li img { mix-blend-mode: normal !important; }
    .main-thumbnails li.on::after { position: absolute; bottom: 0px; left: 0px; width: 100%; height: 2px; background-color: var(--olive); content: ''; }
    .main-thumbnails .arrow { position: absolute; z-index: 20; top: 50%; transform: translateY(-50%); font-size: 18px; color: var(--olive); }
    .main-thumbnails .arrow.arrow-prev { left: -20px; }
    .main-thumbnails .arrow.arrow-next { right: -20px; }
    .main-thumbnails .arrow.slick-disabled { opacity: .3; }

/* favorites */
#favorites header h6 { display: block; margin: 50px 0px; font-family: var(--fonttitle); font-size: 40px; text-align: center; text-transform: uppercase; }
#favorites section { display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; }
#favorites section article { text-align: center; margin-bottom: 40px; }
#favorites section article figure.product-thumb { position: relative; width: 100%; height: 300px; overflow: hidden; border-radius: 15px; background: var(--bg2); }
#favorites section article figure.product-thumb img.loop-thumb { position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; transition: opacity .35s ease; mix-blend-mode: normal !important; }
#favorites section article figure.product-thumb img.loop-thumb-1 { opacity: 1; z-index: 1; }
#favorites section article figure.product-thumb img.loop-thumb-2 { opacity: 0; z-index: 2; }
#favorites section article a:hover figure.product-thumb img.loop-thumb-1,
#favorites section article:hover figure.product-thumb img.loop-thumb-1 { opacity: 0; }
#favorites section article a:hover figure.product-thumb img.loop-thumb-2,
#favorites section article:hover figure.product-thumb img.loop-thumb-2 { opacity: 1; }
#favorites section article h3 { display: block; margin: 10px 0px 5px 0px; padding: 0px 30px; line-height: 1.2; }
#favorites section article span { color: var(--olive); font-size: 14px; line-height: 1.6; }
#favorites section article del { display: none; }
#favorites section article ins { display: block; margin-top: 7px; text-decoration: none !important; }
#favorites section article ins .amount * { font-weight: bold; }

/* faq */
section.faq article { padding: 20px 0px; border-top: 1px solid var(--olive); cursor: pointer; transition: all .5s ease; }
section.faq article.on { padding: 20px; background-color: var(--bg); }
section.faq article span { position: relative; display: block; }
section.faq article span sup { position: absolute; top: 2px; right: 0px; }
section.faq article span p { margin: 0px !important; }
section.faq article span.p p { font-family: var(--fonttitle); font-size: 18px; }
section.faq article span.r { display: none; }
section.faq article span.r p { margin-top: 20px !important; font-size: 13px; }

/* qrcode */
body.page-id-2531 #header { margin-top: 20px; }
#qrcode section { display: grid; margin: 30px 0px 40px 0px; grid-template-columns: repeat(3, 1fr); grid-gap: 30px; }
#qrcode section article { position: relative; z-index: 2; height: 440px; padding: 60px; border-radius: 40px; overflow: hidden; }
#qrcode section article:nth-of-type(1) { background-color: var(--whitegreen); }
#qrcode section article:nth-of-type(2) { background-color: var(--olive); }
#qrcode section article:nth-of-type(2) h6,
#qrcode section article:nth-of-type(2) p { color: var(--whitegreen); }
#qrcode section article:nth-of-type(2) img { position: absolute; z-index: -1; top: 0px; left: 0px; width: 100%; height: 100%; object-fit: cover; object-position: bottom; }
#qrcode section article:nth-of-type(2) footer span a { background-color: var(--whitegreen); color: var(--olive); }
#qrcode section article:nth-of-type(3) { background-color: #fff; }
#qrcode section article:nth-of-type(3) footer img { max-height: 40px; margin-bottom: 45px; }
#qrcode section article h6 { display: block; margin-bottom: 10px; font-size: 22px; line-height: 1.4; }
#qrcode section article p { display: block; line-height: 1.6; }
#qrcode section article footer { position: absolute; bottom: 40px; left: 0px; width: 100%; text-align: center; }
#qrcode section article footer img { display: block; width: auto; max-height: 80px; margin: 0px auto 30px auto; }
#qrcode section article footer span a { display: inline-block; width: auto; padding: 18px 22px; border-radius: 60px; background-color: var(--olive); color: var(--whitegreen); text-transform: uppercase; }

/* sobre */
#sobre-header { padding: 60px 0px 10px 0px; text-align: center; background-color: var(--bg); }
#sobre-header h1 { display: block; font-family: var(--fonttitle); font-size: 30px; text-align: center; text-transform: uppercase; }
#sobre-header h2 { display: block; width: 650px; margin: 40px auto; font-weight: 200; font-size: 42px; text-align: left; line-height: 1.2; }
#sobre-header img { display: inline-block; width: 460px; height: auto; margin-top: -140px; mix-blend-mode: darken; }
#sobre-section { padding-top: 60px; }
#sobre-section section { display: flex; padding-bottom: 60px; justify-content: space-between; align-items: center; }
#sobre-section section article { width: 50%; padding: 10px 60px 0px 0px; }
#sobre-section section article h3 { display: block; margin-bottom: 20px; padding: 0px 20px 40px 0px; font-size: 24px; line-height: 1.2; border-bottom: 2px solid var(--olive); }
#sobre-section section article p { display: block; margin-bottom: 20px; padding-bottom: 20px; border-bottom: 1px solid var(--olive); line-height: 1.8; font-size: 14px; }
#sobre-section section article p:last-of-type { margin-bottom: 0px; padding-bottom: 0px; border: none; }
#sobre-section section aside { width: 50%; text-align: right; }
#sobre-section section aside img { width: 100%; height: auto; }
#sobre-section section aside strong { display: block; margin: 20px 0px 5px 0px; font-weight: bold; font-size: 18px; }
#sobre-section section aside em { font-style: normal; font-size: 16px; }
#sobre-section section:nth-of-type(2) article { padding-right: 0px; padding-left: 60px; }

/* contato */
#contato-header { padding: 120px 0px; background-color: var(--bg); text-align: center; }
#contato-header h6 { display: block; font-family: var(--fonttitle); font-size: 48px; }
#contato-header img { width: 300px; height: auto; margin: 30px 0px 15px 0px; mix-blend-mode: darken; }
#contato-header small { display: block; font-size: 14px; }
#contato-form .container { display: flex; width: 100%; justify-content: space-between; align-items: flex-start; padding: 70px 0px; }
#contato-form aside { width: 50%; height: auto; padding: 0px 80px 0px 60px; }
#contato-form aside h5 { display: block; font-weight: 200; font-size: 44px; line-height: 1.2; }
#contato-form section { width: 50%; height: auto; padding: 20px 60px 0px 60px; }
#contato-form section label { display: block; margin-bottom: 20px; }
#contato-form section label strong { display: block; font-size: 13px; }
#contato-form section label input { width: 100%; height: 20px; border-bottom: 1px solid var(--olive); }
#contato-form section label textarea { width: 100%; height: 80px; border-bottom: 1px solid var(--olive); resize: none; }
#contato-form section label select { color: var(--olive); }
#contato-form section label input[type=submit] { width: auto; height: auto; padding: 14px 30px; border: 1px solid var(--olive); color: var(--olive); border-radius: 60px; font-size: 13px; text-transform: uppercase; }
#contato-form section label input[type=submit]:hover { background-color: var(--olive); border-color: var(--olive); color: #fff; transform: scale(1.1); box-shadow: 0px 20px 20px rgba(0,0,0,.2); }

/* depoimentos */
#depoimentos { margin-bottom: 60px; }
#depoimentos header h6 { display: block; margin-bottom: 60px; font-family: var(--fonttitle); font-size: 24px; text-transform: uppercase; }
#depoimentos .container { position: relative; display: block; padding: 80px; background-color: var(--whitegreen); border-radius: 20px; }
#depoimentos section { min-height: 200px; }
#depoimentos section article { display: flex; justify-content: space-between; align-items: flex-start; }
#depoimentos section article span { width: 50%; }
#depoimentos section article strong { display: block; font-size: 30px; }
#depoimentos section article em { display: block; margin-top: 10px; font-style: normal; }
#depoimentos section article p { display: block; font-size: 18px; line-height: 1.6; }
#depoimentos .arrow { display: none !important; position: absolute; z-index: 20; bottom: 0px; left: 0px; width: 100px; height: 50px; line-height: 48px; text-align: center; border-radius: 100px; border-top: 1px solid var(--olive); border-bottom: 1px solid var(--olive); border-left: 1px solid var(--olive); }
#depoimentos .arrow.arrow-next { left: 130px; border-left: none; border-right: 1px solid var(--olive); }
#depoimentos .arrow-custom { position: absolute; bottom: 80px; left: 80px; display: flex; justify-content: space-between; align-items: center; width: 100px; height: 40px; border-radius: 50px; border: 1px solid var(--olive); cursor: pointer; overflow: hidden; }
#depoimentos .arrow-custom b { width: 50%; height: 40px; text-align: center; font-size: 16px; cursor: pointer; line-height: 40px; transition: all .5s ease; }
#depoimentos .arrow-custom b:hover { background-color: var(--apple); }

/* instagram */
#instagram { margin-bottom: 60px; }
#instagram header h6 { display: block; margin-bottom: 20px; padding-left: 20px; font-family: var(--fonttitle); font-size: 30px; }
#instagram .container { display: block; padding: 40px 40px 10px 40px; background-color: var(--whitegreen); border-radius: 20px; }
#sb_instagram .sbi_photo_wrap { border-radius: 20px; overflow: hidden; }

/* footer */
#footer { margin: 60px 0px 30px 0px; }
#footer section { position: relative; display: flex; justify-content: space-between; align-items: center; padding: 60px 60px 160px 60px; background-color: var(--whitegreen); border-radius: 20px; }
#footer section aside { width: 60%; padding-right: 60px; }
#footer section aside h6 { display: block; padding-right: 20%; font-family: var(--fonttitle); font-size: 46px; text-transform: uppercase; }
#footer section aside p { display: block; padding-right: 20%; margin: 40px 0px; font-size: 14px; line-height: 1.6; }
#footer section aside form fieldset p { display: flex; justify-content: space-between; align-items: center; margin: 0px !important; }
#footer section aside form fieldset label:first-of-type { width: calc(100% - 150px); padding-right: 20px; }
#footer section aside form fieldset label:last-of-type { width: 150px; }
#footer section aside form fieldset input { width: 100%; height: 44px; color: var(--olive); font-size: 14px; border-bottom: 1px solid var(--olive); border-radius: 0px !important; }
#footer section aside form fieldset input::placeholder { color: var(--olive); }
#footer section aside form fieldset input[type=submit] { border: 1px solid var(--olive); border-radius: 60px !important; font-family: var(--fonttitle); font-size: 14px; }
#footer section aside form fieldset input[type=submit]:hover { background-color: var(--olive); color: var(--whitegreen); transform: scale(1.1); box-shadow: 0px 20px 20px rgba(0,0,0,.2); }
#footer section article { width: 40%; padding-left: 60px; }
#footer section article nav ul { display: grid; grid-template-columns: 1fr 1fr; }
#footer section article nav ul li a { display: block; padding: 10px 0px; font-size: 14px; }
#footer section article nav ul li a:hover { text-decoration: underline; }
#footer span.logo img { position: absolute; bottom: 60px; left: 60px; width: 75px; height: auto; }
#footer .cards img { position: absolute; bottom: 54px; left: 200px; height: 30px; }

/* bottom */
#bottom { margin-bottom: 60px; }
#bottom section { display: flex; justify-content: space-between; align-items: center; padding: 30px 60px; background-color: var(--whitegreen); border-radius: 20px; }
#bottom section p { display: block; margin-bottom: 20px; font-size: 13px; line-height: 1.4; }
#bottom section p a { text-decoration: underline; }
#bottom section p:last-of-type { margin-bottom: 0px; }
#bottom section span a { display: flex; justify-content: space-between; align-items: center; gap: 20px; }
#bottom section span a b { font-size: 12px; vertical-align: middle; }
#bottom section span a i { font-size: 24px; }

/* menu side */
#menu-side { display: none; position: fixed; z-index: 2000; top: 0px; left: 0px; width: 50%; height: 100%; padding: 100px; background-color: var(--apple); }
#menu-side nav li a { display: block; padding: 15px 0px; font-family: var(--fonttitle); font-size: 18px; text-transform: uppercase; }
#menu-side nav li a:hover { text-decoration: underline; }
#menu-side nav li ul { display: none; }
#menu-side nav li ul li a { padding: 10px 0px; font-family: 'Suisse Int\'l'; text-transform: none; font-size: 16px; }
#menu-side span.logo img { position: absolute; bottom: 100px; right: 100px; width: 75px; height: auto; }
#menu-side sup { position: absolute; top: 40px; right: 40px; font-size: 36px; color: var(--olive); cursor: pointer; }

/* secret -> header */
#secret-header { padding: 50px 0px; background-color: #F8F4E6; }
#secret-header header h6 { display: block; font-family: var(--fonttitle); font-size: 40px; text-transform: uppercase; text-align: center; }
#secret-header header strong { display: block; margin: 10px 0px 40px 0px; font-size: 20px; text-align: center; }
#secret-header section { display: flex; justify-content: space-between; align-items: center; }
#secret-header section figure { position: relative; width: 48%; padding: 0px 30px; }
#secret-header section figure img { width: 100%; height: auto; }
#secret-header section .items { width: 26%; }
#secret-header section .items span { position: relative; display: block; margin-bottom: 20px; padding: 0px 40px 0px 36px; line-height: 1.6; font-size: 12px; }
#secret-header section .items span b { position: absolute; top: -4px; left: 0px; width: 20px; height: 20px; line-height: 20px; text-align: center; background-color: var(--whitegreen); color: var(--olive); border-radius: 100%; }
#secret-header section .items span.reiki { position: relative; padding-right: 100px; }
#secret-header section .items span.reiki img { position: absolute; top: 0px; right: 100px; width: 30px; height: auto; }
#secret-header footer { display: inline-block; width: 100%; height: auto; text-align: center; }
#secret-header footer span a { display: inline-block; width: auto; padding: 10px 30px; font-size: 13px; border-radius: 50px; border: 1px solid var(--olive); color: var(--olive); }
#secret-header footer span a:hover { background-color: var(--olive); color: var(--whitegreen); }
#secret-header footer small { display: block; margin-top: 10px; font-size: 12px; text-transform: uppercase; }

/* secret -> card */
#secret-card { margin-bottom: 80px; }
#secret-card section { display: grid; grid-template-columns: 1fr 1fr; grid-gap: 1px; }
#secret-card section article { display: block; padding: 50px; background-color: var(--olive); border-radius: 20px; }
#secret-card section article h5 { display: block; margin-bottom: 20px; font-family: var(--fonttitle); font-size: 20px; text-transform: uppercase; color: var(--apple); }
#secret-card section article h5 b { font-size: 14px; font-family: 'Suisse Int\'l'; text-transform: none; }
#secret-card section article p { display: block; margin-bottom: 10px; line-height: 2; color: var(--apple); font-size: 12px; }
#secret-card section article p small { display: inline-block; vertical-align: top; font-size: 8px; }
#secret-card section article:last-of-type { padding-top: 90px; }

/* secret -> pedras */
#secret-pedras .container { padding: 0px 50px; }
#secret-pedras header { display: block; margin-bottom: 40px; }
#secret-pedras header h6 { display: block; padding-bottom: 10px; font-family: var(--fonttitle); font-size: 22px; text-transform: uppercase; }
#secret-pedras header h6 small { font-family: 'Suisse Int\'l'; font-size: 15px; }
#secret-pedras header h6 small::before { display: inline-block; margin-right: 5px; vertical-align: middle; content: '-'; }
#secret-pedras header .txt { display: grid; grid-template-columns: 1fr 1fr; grid-gap: 40px; }
#secret-pedras header .txt p { padding-top: 20px; border-top: 2px solid var(--olive); line-height: 2; font-size: 12px; }
#secret-pedras section { display: grid; grid-template-columns: 1fr 1fr 1fr; grid-gap: 40px; text-align: center; }
#secret-pedras section article { position: relative; }
#secret-pedras section article h1 { position: absolute; top: 60%; left: 0px; width: auto; font-family: var(--fonttitle); font-size: 26px; text-transform: uppercase; line-height: 1.2; text-align: left; transform: translateY(-50%); }
#secret-pedras section article figure { display: block; width: 100%; height: 150px; overflow: hidden; }
#secret-pedras section article figure img { display: block; width: auto; max-width: 100%; height: 350px; margin: -80px auto 0px auto; object-fit: contain; }
#secret-pedras section article strong { position: relative; display: block; font-size: 13px; line-height: 1.6; }
#secret-pedras section article strong em { font-weight: bold; font-style: normal; }
#secret-pedras section article strong small::before { display: inline-block; margin-right: 4px; vertical-align: middle; content: '-'; }
#secret-pedras section article strong b { display: inline-block; font-weight: bold; font-size: 8px; vertical-align: sub; }

/* secret -> meditacao */
#secret-meditacao { padding: 60px 0px; background-color: var(--bg); }
#secret-meditacao section { display: grid; grid-template-columns: repeat(2, 1fr); grid-gap: 50px; }
#secret-meditacao section aside { padding: 35px 120px 0px 0px; }
#secret-meditacao section aside h6 { display: block; font-family: var(--fonttitle); font-size: 24px; text-transform: uppercase; letter-spacing: 2px; }
#secret-meditacao section aside strong { display: block; margin: 20px 0px 30px 0px; font-weight: bold; font-size: 14px; }
#secret-meditacao section aside nav ul li { position: relative; display: block; padding: 7px 12px; font-size: 13px; border-bottom: 1px solid #D9D8CC; cursor: pointer; }
#secret-meditacao section aside nav ul li:last-of-type { border-bottom: none; }
#secret-meditacao section aside nav ul li.on { background-color: var(--whitegreen); }
#secret-meditacao section aside nav ul li::before { display: inline-block; width: 14px; height: 14px; margin-right: 10px; vertical-align: top; background-image: url('../img/star.svg'); background-size: contain; content: ''; }
#secret-meditacao section aside nav ul li sup { display: none; }
#secret-meditacao section article { display: block; padding: 40px; border-radius: 40px; background-color: var(--whitegreen); }
#secret-meditacao section article h5 { display: block; margin-bottom: 20px; font-family: var(--fonttitle); text-transform: uppercase; letter-spacing: 2px; }
#secret-meditacao section article h5 sup { display: none; }
#secret-meditacao section article p { display: block; margin-bottom: 20px; line-height: 1.6; font-size: 13px; }
#secret-meditacao section article footer { display: flex; justify-content: space-between; align-items: center; margin-top: 30px; }
#secret-meditacao section article footer span.left { width: 60%; padding-right: 60px; }
#secret-meditacao section article footer span.left b { display: block; margin-bottom: 5px; font-weight: bold; font-size: 13px; line-height: 1.4; }
#secret-meditacao section article footer span.left em { display: block; font-style: normal; font-size: 12px; }
#secret-meditacao section article footer span.listen { position: relative; width: 40%; text-align: right; }
#secret-meditacao section article footer span.listen span { display: inline-block; width: auto; padding: 8px 12px 8px 18px; border: 1px solid var(--olive); border-radius: 50px; transition: all .5s ease; cursor: pointer; font-size: 14px; }
#secret-meditacao section article footer span.listen span i { display: inline-block; width: auto; margin-left: 10px; vertical-align: middle; font-size: 24px; cursor: pointer; }
#secret-meditacao section article footer span.listen span:hover { background-color: var(--olive); color: #fff; }
#secret-meditacao section article footer span.listen audio { position: absolute; top: 0px; left: 0px; width: 0px; height: 0px; overflow: hidden; }

/* page */
#page { padding-top: 50px; }
#page header h6 { display: block; margin-bottom: 50px; font-family: var(--fonttitle); font-size: 48px; text-align: center; }
#page section p { display: block; margin-bottom: 20px; line-height: 1.6; }
#page section p a { text-decoration: underline; }
#page .term-description { display: block; text-align: center; }
.woocommerce-no-products-found { margin-top: 40px; }
body.single-product #page { padding-top: 0px; }
body.single-product #page .container { position: relative; }

/* videos */
#videos { margin-bottom: 100px; }
#videos section { display: grid; grid-template-columns: repeat(3, 1fr); grid-gap: 30px; }
#videos section article { width: 100%; height: 50vh; background-color: #000; border-radius: 20px; overflow: hidden; }

/* box */
#box { display: none; position: fixed; z-index: 2000; top: 0px; left: 0px; width: 100%; height: 100%; background-color: rgba(0,0,0,.5); }
#box .box { position: absolute; top: 50%; left: 50%; width: 750px; height: auto; display: flex; justify-content: space-between; align-items: center; background-color: var(--whitegreen); border-radius: 20px; overflow: hidden; transform: translate(-50%, -50%); }
#box .box figure { width: 50%; height: 500px; margin: 0px !important; background-color: #000; border-radius: 20px; overflow: hidden; }
#box .box figure img { width: 100%; height: 100%; object-fit: cover; }
#box .box section { width: 50%; height: auto; padding: 70px 40px 40px 40px; }
#box .box section header h6 { display: block; font-family: var(--fonttitle); font-size: 36px; }
#box .box section header p { display: block; margin: 10px 0px 30px 0px; line-height: 1.2; font-size: 14px; }
#box .box section form input { display: block; width: 100%; height: 40px; margin-bottom: 10px; border-bottom: 1px solid #E4E5C7; color: var(--olive); font-size: 13px; }
#box .box section form ::placeholder { color: var(--olive); }
#box .box section form input[type=submit] { margin-top: 20px; border-bottom: none; background-color: var(--olive); color: #fff; text-transform: uppercase; border-radius: 40px; }
#box .box section article.coupon { display: none; }
#box .box section article.coupon p { display: block; margin: 20px 0px; line-height: 1.6; }
#box .box section article.coupon small { display: inline-block; width: 100%; padding: 15px 0px; border: 1px dashed var(--olive); background-color: var(--bg); color: var(--olive); text-transform: uppercase; font-size: 13px; border-radius: 50px; text-align: center; }
#box .box sup { position: absolute; z-index: 10; top: 20px; right: 20px; font-size: 24px; color: #E4E5C7; cursor: pointer; }
#box .wpcf7-not-valid-tip { display: none; }

/* woocommerce */
.woocommerce select { width: auto; height: 36px; background: transparent url('../img/arrow.png') no-repeat right center; border-bottom: 1px solid var(--olive); mix-blend-mode: multiply; background-size: 24px; font-size: 12px; }
.single-product select { border: none !important; }
.woocommerce div.product form.cart .variations_button { display: flex; align-items: flex-end; gap: 20px; }
.woocommerce div.product form.cart .variations_button .quantity { margin: 0; }
.product section article .variations_button button[type=submit] { display: inline-block !important; width: auto !important; margin-top: 0 !important; padding: 0 16px !important; line-height: 36px !important; }

/* simples: botão ao lado da quantidade */
.product section article form.cart:not(.variations_form) { display: flex; align-items: center; gap: 10px; }
.product section article form.cart:not(.variations_form) .quantity { margin: 0; }
.product section article form.cart:not(.variations_form) button[type=submit] { display: inline-block !important; width: auto !important; margin-top: 0 !important; padding: 0 16px !important; line-height: 36px !important; }
.woocommerce h1.page-title { display: block; margin-bottom: 50px; font-family: var(--fonttitle); font-size: 36px; text-transform: uppercase; text-align: center; }
.woocommerce div.product form.cart .variations th,
.woocommerce div.product form.cart .variations td { display: block; font-size: 12px; text-align: left; }
.woocommerce div.product form.cart .reset_variations { display: none !important; }
.woocommerce div.product form.cart .variations { margin-bottom: 0px !important; }
.woocommerce div.product form.cart .variations label { font-weight: normal !important; }
.wp-block-woocommerce-empty-cart-block { padding: 120px 0px; }
.wp-block-woocommerce-empty-cart-block .wc-block-product-new { display: none !important; }
.wp-block-woocommerce-empty-cart-block h2:last-of-type { display: none; }
.woocommerce-result-count { font-size: 13px; }
.woocommerce ul.products { display: grid; grid-template-columns: repeat(3, 1fr); grid-gap: 20px; }
.woocommerce ul.products::before { display: none !important; }
.woocommerce ul.products li.product { width: 100% !important; }
body.search-results ul.products li.product.has-default-attributes { display: none !important;}
.woocommerce ul.products li.product a { text-align: center; }
.woocommerce ul.products li.product .woocommerce-loop-product__title { margin: 10px 0px 5px 0px !important; line-height: 1.2; }
.woocommerce ul.products li.product .product_type_variable { display: none !important; }
.woocommerce ul.products li.product .price { color: var(--olive) !important; font-size: 14px !important; line-height: 1.6 !important; }
.woocommerce ul.products li.product .price del { display: none !important; }
.woocommerce ul.products li.product .price ins { display: block; margin-top: 7px; text-decoration: none !important; }
.woocommerce ul.products li.product .price .amount * { font-weight: bold; }
.woocommerce ul.products li.product a img { margin-bottom: 0px !important; height: 300px !important; object-fit: cover; mix-blend-mode: darken; border-radius: 15px; }
.woocommerce ul.products li.product, .woocommerce-page ul.products li.product { margin-bottom: 40px !important; }
.wc-block-components-totals-shipping__change-address__link { display: block; margin-top: 7px; text-decoration: underline; font-size: 12px; }
a.wc-block-cart__submit-button,
.wc-block-components-checkout-place-order-button { background-color: var(--olive); color: #fff; font-size: 14px; border-radius: 100px; }
.wc-block-checkout__terms span { font-size: 13px; line-height: 1.4; }
.wc-block-checkout__terms span a { text-decoration: underline; }
.woocommerce label { font-size: 12px; }
.wc-block-components-product-badge { margin: 0px 0px 10px 0px; padding: 10px !important; background-color: #fff; border: none !important; }
.wc-block-cart-items th span { font-weight: bold; }
.woocommerce div.product div.images img { height: 300px !important; object-fit: cover; }
#customer_login { margin-top: 0px; font-size: 14px; }
#customer_login h2 { font-family: var(--fonttitle); font-size: 30px; }
#customer_login input[type=text],
#customer_login input[type=email],
#customer_login input[type=password],
.input-text,
.woocommerce-Input--text,
.woocommerce-Input { height: 40px; border-bottom: 1px solid var(--olive); font-size: 13px; }
#customer_login .woocommerce-button, .woocommerce-Button, .woocommerce-button, .form-row button, .woocommerce button[type=submit] { padding: 10px 30px !important; font-weight: normal !important; background-color: var(--olive) !important; color: #fff !important; font-size: 14px !important; border-radius: 40px !important; }
.woocommerce-form-login { margin: 10px 0px !important; background-color: var(--whitegreen); border-radius: 20px !important; border: none !important; overflow: hidden; }
.woocommerce-form-login__rememberme { display: none !important; }
.woocommerce-account .woocommerce-MyAccount-navigation { margin-top: 20px; }
.woocommerce-account .woocommerce-MyAccount-navigation li a { display: block; padding: 10px 0px; }
.woocommerce-MyAccount-content { margin-top: 50px; font-size: 14px; line-height: 1.6; }
.woocommerce-MyAccount-content address { display: block; margin-top: 20px; line-height: 1.6; font-style: normal; }
.woocommerce-MyAccount-content a { text-decoration: underline; }
.woocommerce-MyAccount-navigation-link--downloads { display: none !important; }
.woocommerce-MyAccount-content input { height: 40px; padding: 0px 20px; background-color: #fff; font-size: 13px; }
.woocommerce legend { display: block; margin-bottom: 20px; font-family: var(--fonttitle); font-size: 24px; }
.woocommerce-MyAccount-content button { background-color: var(--olive) !important; color: #fff !important; font-size: 13px !important; }
.woocommerce-Address{ padding: 20px; border: 1px solid var(--olive); border-radius: 20px; }
.wc-block-cart-items .wc-block-components-product-name { margin: -4px 0px 10px 0px; font-size: 16px; line-height: 1.4; }
.wc-block-components-quantity-selector{ background-color: var(--bg); }
.wc-block-components-product-metadata { font-size: 13px; }
.xoo-wsc-product dl.variation dt { display: none !important; }
.xoo-wsc-product dl.variation dd { font-style: normal !important; }
.xoo-wsc-product dl.variation { gap: 2px; margin-bottom: 5px; }
span.xoo-wsc-pname a, .xoo-wsc-pprice * { font-weight: bold; font-size: 13px !important; }
.wc-block-components-totals-item__description { margin-top: 5px; line-height: 1.6; }
.wc-block-components-shipping-address { line-height: 1.6; }
.wc-block-components-text-input input[type=text],
.wc-block-components-text-input input[type=tel],
.wc-block-components-text-input input[type=email],
.wc-block-components-combobox .wc-block-components-combobox-control input.components-combobox-control__input, .wc-block-components-form .wc-block-components-combobox .wc-block-components-combobox-control input.components-combobox-control__input { border: none !important; }
.woocommerce span.onsale { display: none !important; }
.checkout.woocommerce-checkout { display: inline-block; width: 100%; }
.checkout.woocommerce-checkout h3 { display: block; margin-bottom: 20px; font-family: var(--fonttitle); font-size: 30px; }
form.woocommerce-checkout h4 { display: block; margin-bottom: 10px; font-family: var(--fonttitle); font-size: 22px; }
.lost_password a { font-size: 12px; }
#shipping_country_field, #billing_country_field { display: none !important; }
h3#order_review_heading { display: block; margin-top: 20px; }
h3#order_review_heading sup { float: right; width: auto; margin: 7px 5px 0px 0px; font-weight: bold; font-family: 'Suisse Int\'l'; font-size: 12px; text-decoration: underline; cursor: pointer; }
h3#order_review_heading sup b { font-weight: bold; font-size: 12px; }
form.woocommerce-checkout * { font-size: 14px; }
form.woocommerce-checkout p { margin-bottom: 10px !important; line-height: 1.6 !important; font-size: 14px; }
form.woocommerce-checkout p a { font-size: 14px; }
form.woocommerce-checkout input, form.woocommerce-checkout select { height: 40px; border-color: var(--olive) !important; }
form.woocommerce-checkout input[type=radio],
form.woocommerce-checkout input[type=checkbox] { position: relative; display: inline-block; width: 18px; height: 18px; border-radius: 100%; margin: 0px 7px 0px 0px !important; padding: 0px !important; vertical-align: middle; border: 1px solid var(--olive) !important; }
form.woocommerce-checkout input[type=radio]:checked,
form.woocommerce-checkout input[type=checkbox]:checked { background-color: var(--olive);}
form.woocommerce-checkout input[type=radio]:checked::before,
form.woocommerce-checkout input[type=checkbox]:checked::before { position: absolute; top: 50%; left: 50%; width: 5px; height: 5px; background-color: var(--olive); transform: translate(-50%, -50%); border-radius: 100%; content: ''; }
:where(body:not(.woocommerce-block-theme-has-button-styles)) .woocommerce button.button.alt { margin: 20px 0px; background-color: var(--olive) !important; }
.select2-container--default .select2-selection--single { height: 40px !important; border: none !important; background-color: transparent !important; border-bottom: 1px solid var(--olive) !important; border-radius: 0px !important; }
.select2-container--default .select2-selection--single .select2-selection__rendered { padding-left: 0px !important; line-height: 40px !important; }
.select2-container--default .select2-selection--single .select2-selection__arrow { right: 0px !important; height: 40px !important; }
.woocommerce-checkout #payment div.payment_box::before { display: none !important; }
.cart_item td { width: 50%; }
.wc-block-components-sale-badge { display: none; }
.woocommerce-ordering, .woocommerce-result-count, .wc-block-components-sale-badge { display: none !important; }
.cwginstock-subscribe-form .panel-primary>.panel-heading { padding: 0px !important; background-color: transparent !important; font-size: 12px; font-weight: bold; text-transform: uppercase; border: none !important; text-align: left; }
.cwginstock-subscribe-form .panel-body { padding: 0px !important; }
.cwginstock-subscribe-form .row { margin: 0px !important; }
.cwginstock-subscribe-form .center-block { margin-bottom: 0px !important; }
.cwginstock-panel-heading h4 { margin: 20px 0px; font-weight: bold; color: var(--olive) !important; text-align: left !important; text-decoration: underline; }
.cwginstock-subscribe-form { grid-template-columns: 1fr !important; }
.cwginstock-subscribe-form .panel-primary { margin-bottom: 20px !important; background-color: transparent; box-shadow: none !important; border: none !important; }
.woocommerce-variation-availability .stock.in-stock,
.woocommerce-variation-availability .stock.out-of-stock { display: none !important; }
.cwginstock-subscribe-form .col-md-12 { padding: 0px !important; }
.cwginstocksuccess { display: block; margin-top: 20px; font-size: 13px; color: var(--olive) !important; text-align: center; }
.cwginstockerror { display: block; margin-top: 20px; font-size: 13px; color: red !important; text-align: center; }
.cwginstock-panel-body input[type=text], .cwginstock-panel-body input[type=email] { height: 40px; margin-bottom: 15px; padding: 0px 20px; background-color: #fff; border-radius: 0px; font-size: 13px; text-align: left !important; }
.cwgstock_button { margin: 0px !important; padding: 10px 20px !important; background: var(--olive) !important; color: var(--whitegreen) !important; font-size: 13px; border-radius: 50px; }
.woocommerce-form-coupon-toggle { display: inline-block; width: 100%; margin: 20px 0px; }
.woocommerce-MyAccount-content h3 { display: none; }
/* .woocommerce-notices-wrapper { position: absolute; z-index: 10; top: 20px; left: calc(50% + 20px); width: auto; } */
.woocommerce-notices-wrapper { display: inline-block; width: auto !important; }
.woocommerce-notices-wrapper a { display: none !important; }
body.woocommerce-customer-logout .woocommerce-notices-wrapper { margin-bottom: 30px; }
body.woocommerce-customer-logout .woocommerce-notices-wrapper a { display: inline-block !important; }
body.woocommerce-account .woocommerce-notices-wrapper { position: relative; top: auto; left: auto; }
.woocommerce-no-products-found { display: inline-block; width: 100%; text-align: center; }
.woocommerce-message, .woocommerce-error, .woocommerce-info { margin: 0px 0px 10px 0px !important; background-color: var(--whitegreen) !important; border: none !important; font-size: 12px; border-radius: 60px; line-height: 1.2; }
.woocommerce-error,
.woocommerce-info { display: inline-block; width: auto; background-color: rgb(255, 226, 226); color: red; }
.wc-block-components-notice-snackbar { margin: 0px !important; background-color: var(--whitegreen) !important; border: none !important; font-size: 12px; border-radius: 60px; line-height: 1.2; }
body.woocommerce-orders .woocommerce-info { width: 100%; }
.woocommerce-message::before { top: 50% !important; left: 18px !important; font-family: 'Font Awesome 5 Pro' !important; color: var(--olive) !important; font-size: 16px; transform: translateY(-50%); content: '\f058' !important; }
.woocommerce-error::before { top: 50% !important; left: 18px !important; font-family: 'Font Awesome 5 Pro' !important; color: red !important; font-size: 16px; transform: translateY(-50%); content: '\f058' !important; }
.product_type_variation { display: none !important; }
.validate-postcode, .address-field { float: none !important; }
.woocommerce form .form-row { width: 100% !important; }
.woocommerce .woocommerce-form-login .form-row { width: 50% !important; }
.woocommerce .woocommerce-form-login .form-row-last { padding-left: 20px; }
.wc-block-components-totals-item__description { font-weight: bold; }
#woocommerce-correios-calculo-de-frete-na-pagina-do-produto { display: none !important; }
.wc-block-cart-item__product .price.wc-block-components-product-price { display: none !important; }
.price.wc-block-components-product-price span { font-weight: bold; font-size: 14px; }
.wc-block-components-product-name { font-weight: bold; font-size: 14px; }
.wc-block-components-totals-coupon-link { font-weight: bold; font-size: 14px; text-decoration: underline; }
.wc-block-components-totals-item__label,
.wc-block-components-formatted-money-amount,
.wc-block-components-totals-item__value { font-weight: bold !important; font-size: 13px !important; }
.wc-block-components-totals-shipping__fieldset { display: block; margin-top: 20px !important; padding: 7px !important; background-color: var(--bg) !important; border-radius: 20px;; }
.wc-block-components-radio-control { display: grid; grid-template-columns: 1fr 1fr; grid-gap: 10px; }
.wc-block-components-radio-control { font-size: 13px; }
.wc-block-components-radio-control__label { display: block; margin-bottom: 5px !important; line-height: 1.4 !important; }
#wc-block-components-totals-coupon__input-0,
.wc-block-components-text-input input[type=text] { border-radius: 100px !important; border: none !important; font-size: 13px !important; }
.wc-block-components-totals-coupon__button,
.wc-block-components-shipping-calculator-address__button { background-color: var(--bg); border: 1px solid var(--olive); color: var(--olive); border-radius: 100px; font-size: 13px !important; }
.wc-block-components-text-input.is-active input[type=text] { padding: 20px !important; }
.wc-block-components-totals-coupon__input-0 { display: none !important; }
.wc-block-components-totals-item__description { color: var(--olive); }
.wc-block-components-text-input input { border-radius: 100px; background-color: var(--bg) !important; }
.wc-block-components-address-form__country,
.wc-block-components-address-form__state { display: none !important; }
.wc-block-components-text-input.is-active label { left: 22px; font-size: 11px; text-transform: uppercase; }
.wc-block-components-totals-wrapper .wc-block-components-totals-item__value { font-size: 16px; }
.wc-block-components-product-name { font-size: 14px !important; }
.wc-block-components-totals-shipping__via { display: block; padding-bottom: 10px; border-bottom: 1px solid hsla(0,0%,7%,.11); }
.wc-block-components-totals-shipping.wc-block-components-totals-shipping__change-address__link { display: block; margin-bottom: 10px; font-weight: bold; }
.woocommerce table.shop_table { background-color: var(--bg); }
.woocommerce table.shop_table thead th:last-of-type { display: none; }
.wc-block-components-product-badge.wc-block-components-product-low-stock-badge { display: none; }
.woocommerce-notice.woocommerce-notice--success.woocommerce-thankyou-order-received { display: block; margin-bottom: 30px; font-size: 20px; text-align: center; }
.woocommerce-notice.woocommerce-notice--success.woocommerce-thankyou-order-received::before { display: block; width: 100%; height: 50px; margin: 0px auto 20px auto; background: transparent url('../img/hand_orah.svg') no-repeat center center; background-size: contain; content: ''; }
.woocommerce ul.order_details { display: inline-block; width: 100%; margin-top: 30px; text-align: center; }
.woocommerce ul.order_details li { float: none !important; display: inline-block; width: auto; margin: 0px 10px; padding: 20px !important; background-color: var(--bg); border-radius: 20px; font-weight: bold; font-size: 10px !important; border: none !important; }
.woocommerce ul.order_details li strong { margin-top: 7px; font-size: 14px !important; }
.woocommerce-order .woocommerce-message { padding: 20px !important; border-radius: 20px !important; background-color: var(--bg) !important; }
.woocommerce-order .woocommerce-message .pagarme-response p:first-of-type { display: block; font-family: var(--fonttitle); font-size: 20px; text-align: center; }
.pagarme-flex-container p { font-size: 14px; }
.woocommerce-order .woocommerce-message .pagarme-response .pagarme-qr-code-instruction > p { background: #fff !important; }
.woocommerce-order .woocommerce-message .pagarme-response .pagarme-qr-code-instruction > p > span { font-size: 14px !important; }
.woocommerce-order .woocommerce-message::before { display: none; }
.pagarme-response { text-align: center; }
.pagarme-flex-container { display: none !important; }
.woocommerce-order-details h2 { display: block; margin: 40px 0px 20px 0px; font-family: var(--fonttitle); font-size: 24px; }
.woocommerce-column__title { display: block; margin-bottom: 20px; font-family: var(--fonttitle); font-size: 24px; }
#pagarme-qr-code-button { display: inline-block; margin-bottom: 40px; padding: 14px 28px; background-color: var(--olive); color: #fff; font-size: 12px; border-radius: 50px; }
.woocommerce .woocommerce-customer-details address { display: block; padding: 10px 20px !important; font-style: normal; font-size: 13px; line-height: 1.6; background-color: var(--bg); }
.woocommerce-table.woocommerce-table--order-details.shop_table.order_details * { font-size: 13px; }
.wc-item-meta p { line-height: 1 !important; }
.wc-block-components-shipping-address { display: none !important; }
.xoo-wsc-basket { display: none !important; }
.payment_method_woo-pagarme-payments-pix small { float: right; width: auto; padding: 5px 10px; border-radius: 10px; background-color: var(--apple); color: green; font-size: 12px; }
.woocommerce-privacy-policy-text p { display: block; margin-top: 10px; line-height: 1.4; }
.woocommerce-terms-and-conditions-wrapper { display: none !important; }
.woocommerce nav.woocommerce-pagination ul { border: none !important; }
.woocommerce nav.woocommerce-pagination ul li { display: block; width: 30px; height: 30px; margin: 0px 5px !important; padding: 0px !important; border: 1px solid var(--apple) !important; font-weight: bold; font-size: 13px !important; border-radius: 100%; color: var(--olive) !important; line-height: 30px; }
.woocommerce nav.woocommerce-pagination ul li span { width: 30px; height: 30px; line-height: 30px; }
.woocommerce nav.woocommerce-pagination ul li span.current { background: var(--olive) !important; color: #fff !important; }
.woocommerce nav.woocommerce-pagination ul li a { font-weight: bold; }
.woocommerce nav.woocommerce-pagination ul li a:hover { background-color: var(--whitegreen) !important; }
.wc-block-components-sidebar-layout .wc-block-components-main { width: 100% !important; padding-right: 0px !important; }
.wc-block-components-sidebar { display: block; width: 40% !important; margin: 0px auto; padding-left: 0px !important; }
.wp-block-woocommerce-cart-order-summary-block { display: none !important; }
.checkout_coupon p:first-of-type { display: none !important; }
body.woocommerce-checkout #header nav,
body.woocommerce-checkout #header .right,
body.woocommerce-checkout #footer,
body.woocommerce-checkout #bottom { display: none !important; }

/* cart plugin */
.xoo-wsc-basket { display: none !important; }
span.xoo-wsch-text { display: block; width: 100%; margin-top: 20px; margin-bottom: 20px; padding-bottom: 20px; font-family: var(--fonttitle); font-size: 20px; border-bottom: 1px solid rgba(0,0,0,.1); text-align: center; }
span.xoo-wsch-close { top: 37px; }
.xoo-wsc-icon-cross:before { font-size: 20px; }
.xoo-wsc-container { border-radius: 30px !important; overflow: hidden; }
.xoo-wsc-modal .xoo-wsc-container { top: 20px !important; height: calc(100vh - 40px) !important; }
.xoo-wsc-modal.xoo-wsc-cart-active .xoo-wsc-container { right: 20px !important; }
.xoo-wsc-img-col img { border-radius: 15px !important; }
.variation dt.variation-Pedras { display: none !important; }
.variation dd.variation-Pedras { font-style: normal !important; }
.xoo-wsc-product { margin-top: 7px !important; margin-bottom: 0px !important; background-color: var(--whitegreen) !important; border: none !important; }
.xoo-wsc-ft-amt.xoo-wsc-ft-amt-subtotal { display: flex; margin-bottom: 5px; justify-content: space-between; align-items: center; }
.xoo-wsc-ft-amt.xoo-wsc-ft-amt-subtotal span { font-weight: normal !important; font-size: 14px !important; }
.xoo-wsc-footer { padding-bottom: 30px !important; }
.xoo-wsc-ft-btn-cart { display: none !important; }
.xoo-wsc-ft-btn-checkout { padding: 16px 20px !important; font-size: 14px !important; border-radius: 50px !important; }
.xoo-wsc-ft-btn-continue { background: none !important; color: var(--olive) !important; text-decoration: underline !important; font-size: 14px !important; }
.xoo-wsc-icon-del2:before { font-size: 20px; }
.xoo-wsc-empty-cart a { padding: 12px 30px !important; border-radius: 40px; }
ul.xoo-wsc-shipping-methods li input { position: relative; display: inline-block; width: 14px; height: 14px; border-radius: 100%; border: 1px solid var(--olive); }
ul.xoo-wsc-shipping-methods li input:checked::before { position: absolute; top: 50%; left: 50%; width: 5px; height: 5px; background-color: var(--olive); transform: translate(-50%, -50%); border-radius: 100%; content: ''; }
#calc_shipping_country_field, 
#calc_shipping_state_field,
#calc_shipping_city_field { display: none; }
.xoo-wsc-slider-active .xoo-wsc-slider { right: 20px !important; }
.xoo-wsc-slider { top: 20px !important; height: calc(100vh - 40px) !important; border-radius: 30px !important; background-color: var(--whitegreen) !important; }
.xoo-wsc-sl-heading { font-family: var(--fonttitle) !important; }
/* body.single-product #page section p.price:nth-of-type(2) { display: none; } */

/* form v2 -> step 1 */
.woocommerce-form-coupon-toggle,
.woocommerce-message { display: none !important; }
.form-v2 { display: flex; justify-content: space-between; align-items: flex-start; }
.form-v2 input { padding: 10px 0px !important; background-color: transparent !important; border: none !important; border-bottom: 1px solid var(--olive) !important; border-radius: 0px !important; color: var(--olive); }
.form-v2 input[type=checkbox] { border: 1px solid var(--olive) !important; } 
.form-v2 ::placeholder { color: var(--olive); }
.form-v2 .cart-sidebar { order: 2; width: 350px; }
.form-v2 .cart-sidebar span.ver { display: none; width: 100%; height: auto; margin-bottom: 20px; padding: 10px 0px; text-align: center; border-radius: 40px; border: 1px solid var(--olive); color: var(--olive); font-weight: bold; font-size: 12px; cursor: pointer; }
.form-v2-pedido { display: block; }
.editar-carrinho a { display: block; margin: 20px 0px; text-align: right; font-size: 13px; text-decoration: underline; }
.form-v2 .cart-sidebar .foot { display: block; margin-top: 20px; }
.form-v2 .cart-sidebar .foot * { font-weight: bold; font-size: 13px; }
.form-v2 .cart-sidebar .foot small { display: flex; margin-bottom: 10px; padding-bottom: 10px; border-bottom: 1px dotted #b3bb97; justify-content: space-between; align-items: center; }
.form-v2 .cart-sidebar .foot small.f-desconto { display: none; }
.form-v2 .cart-sidebar .foot small.f-desconto .cart-discount { display: flex; justify-content: space-between; }
.form-v2 .cart-sidebar .foot small.f-desconto .woocommerce-remove-coupon { display: none; }
.form-v2 .cart-sidebar span.aplicar-cupom { display: inline-block; margin-top: 20px; padding: 10px 20px; background-color: var(--whitegreen); color: var(--olive); border-radius: 40px; font-size: 12px; cursor: pointer; transition: all .5s ease; }
.form-v2 .cart-sidebar span.aplicar-cupom i { display: inline-block; width: auto; margin-right: 8px; vertical-align: middle; }
.form-v2 .cart-sidebar span.aplicar-cupom:hover { background-color: var(--olive); color: var(--whitegreen); }
.form-v2 .woocommerce .woocommerce-notices-wrapper { display: none; }
.woocommerce-form-coupon { display: none; width: 100% !important; margin: 10px 0px 0px 0px !important; background-color: var(--whitegreen); border: none !important; border-radius: 20px !important; }
.form-v2 .woocommerce table { margin: 0px !important; padding: 20px; border: none !important; border-radius: 20px !important; background-color: var(--whitegreen); overflow: hidden; }
.woocommerce-cart-form__cart-item { position: relative; }
.form-v2 .woocommerce .product-remove,
.form-v2 .woocommerce .product-price,
.form-v2 .woocommerce .product-quantity,
.form-v2 .woocommerce thead,
.form-v2 .woocommerce tbody tr:last-of-type { display: none !important; }
.form-v2 .woocommerce table.shop_table td { border: none; font-size: 13px; }
.form-v2 .woocommerce table img { width: 100% !important; border-radius: 20px; }
.form-v2 form.woocommerce-checkout { order: 1; width: calc(100% - 350px); padding-right: 60px; }
.form-v2 .form-v2-email-entrega { display: inline-block; width: 100%; height: auto; margin-bottom: 20px; padding: 10px 30px; background-color: var(--whitegreen); border-radius: 20px; }
.form-v2 .form-v2-email-entrega h6 { display: block; margin: 20px 0px 10px 0px; font-family: var(--fonttitle); font-size: 24px; }
.form-v2 .form-v2-email-entrega label { position: relative; display: block; width: 100%; margin-bottom: 20px; }
.form-v2 .form-v2-email-entrega label input { width: 100%; }
.form-v2 .form-v2-email-entrega label input[type=email] { margin-bottom: 20px; }
.form-v2 .form-v2-email-entrega label sup { display: none; position: absolute; z-index: 2; top: 5px; right: 0px; font-size: 16px; }
.form-v2 .form-v2-email-entrega label sup.ok { color: var(--olive); }
.form-v2 .form-v2-email-entrega label sup.no { color: red; }
.form-v2 .form-v2-email-entrega label small a { display: block; margin-top: 10px; font-size: 12px; text-decoration: underline; }
.form-v2 .form-v2-email-entrega label b { display: none; position: absolute; bottom: 0px; left: 0px; width: 100%; font-size: 12px; color: red; text-transform: lowercase; text-align: center; }
.form-v2 .form-v2-email-entrega button { float: right; width: auto; margin-bottom: 20px; padding: 10px 30px; background-color: var(--olive); color: #fff; border-radius: 100px; }

/* form v2 -> pedido */
.form-v2-step2 { display: none; }
.item-entrega { display: inline-block; width: 100%; height: auto; }
.item-entrega h6 { margin-top: 0px !important; }
.form-v2 .woocommerce-checkout-review-order-table { margin: 0px !important; padding: 0px !important; border: none !important; background-color: transparent!important; }
.form-v2 ul#shipping_method li { width: 100%; padding: 10px 20px; background-color: var(--whitegreen) !important; border-radius: 20px !important; overflow: hidden; }
.form-v2 ul#shipping_method li input { border-radius: 100% !important; }
.form-v2 ul#shipping_method li input:checked::before { background-color: var(--olive); }
.form-v2 .woocommerce-checkout-review-order-table thead,
.form-v2 .woocommerce-checkout-review-order-table tbody,
.form-v2 .woocommerce-checkout-review-order-table tfoot .cart-subtotal,
.form-v2 .woocommerce-checkout-review-order-table tfoot .fee,
.form-v2 .woocommerce-checkout-review-order-table tfoot .order-total,
.form-v2 .woocommerce-checkout-review-order-table tfoot .cart-discount,
.form-v2 .woocommerce-shipping-totals th { display: none; }
.form-v2 .woocommerce-shipping-totals td { padding: 0px !important; border: none !important; }

/* quizz */
#quizz { position: fixed; z-index: 9999; top: 0px; left: 0px; width: 100%; height: 100%; background-color: var(--olive); }
#quizz .presentation { display: flex; justify-content: center; align-items: center; width: 100%; height: 100%; flex-direction: column; text-align: center;}
#quizz .middle { width: 700px; height: auto; }
#quizz h1 { display: block; font-size: 48px; color: var(--apple); font-family: var(--fonttitle); }
#quizz p { display: block; margin: 10px 0px 80px 0px; font-size: 16px; color: var(--apple); font-family: var(--fonttitle); line-height: 1.4; }
#quizz button { display: inline-block; width: auto; margin-top: 20px; padding: 20px 50px; border-radius: 50px; border: 1px solid var(--apple); color: var(--apple); font-weight: bold; font-size: 12px; text-transform: uppercase; }
#quizz button:hover { background-color: var(--apple); color: var(--olive); }

/* form v2 -> pay */
.form-v2-step2 #payment { display: none; }

/* form v2 -> endereco */
.form-v2-address { display: none; margin-top: 20px; }
.form-v2-address .col-1,
.form-v2-address .col-2 { width: 100% !important; }
.form-v2-address .col-2 { margin-top: 30px; }
.form-v2-address #billing_company_field,
.form-v2-address #billing_postcode_field,
.form-v2-address #billing_email_field,
/* .form-v2-address #billing_address_1_field, */
/* .form-v2-address #shipping_company_field, */
.form-v2-address .woocommerce-additional-fields { display: none !important; }
.form-v2-address #billing_cpf_field { order: 2; }
.form-v2-address #billing_cpf_field,
.form-v2-address .form-row { display: inline-block !important; }
/* .form-v2-address #billing_cpf_field::before { display: block; margin: 20px 0px; font-family: var(--fonttitle); font-size: 30px; content: "Dados para Nota Fiscal"; } */
.form-v2-address .woocommerce-billing-fields__field-wrapper,
.form-v2-address .woocommerce-shipping-fields__field-wrapper { display: flex; flex-wrap: wrap; align-items: flex-end; }
.form-v2-address .form-row#billing_first_name_field,
.form-v2-address .form-row#shipping_first_name_field,
.form-v2-address .form-row#billing_number_field,
.form-v2-address .form-row#shipping_number_field,
.form-v2-address .form-row#billing_state_field,
.form-v2-address .form-row#billing_neighborhood_field { width: 50% !important; }
.form-v2-address .form-row#billing_last_name_field,
.form-v2-address .form-row#shipping_last_name_field,
.form-v2-address .form-row#billing_address_2_field,
.form-v2-address .form-row#shipping_address_2_field,
.form-v2-address .form-row#billing_city_field,
.form-v2-address .form-row#billing_phone_field { width: 50% !important; padding-left: 20px; }
.form-v2-address .get-form2 { display: inline-block; width: 100%; margin-top: 10px; font-size: 12px; }
.form-v2-address .get-form2 input { border-radius: 100% !important; }
.form-v2-address .get-form2 input:checked::before { background-color: var(--olive) !important; }
.form-v2-address #ship-to-different-address { display: none; }
.form-v2 .woocommerce .col2-set .col-2, .woocommerce-page .col2-set .col-2 { display: none; }
.woocommerce-account .col2-set .col-2 { display: block !important; }
.woocommerce-account .woocommerce-form-login .form-row { width: 100% !important; }
.woocommerce-form-register { margin-top: 10px !important; border: none !important; border-radius: 20px !important; background-color: var(--whitegreen); }
button.get-pay2 { float: right; width: auto; margin-top: 20px; padding: 10px 30px; background-color: var(--olive); color: #fff; border-radius: 100px; }
.form-v2-address .woocommerce-billing-fields__field-wrapper,
.form-v2-address .woocommerce-shipping-fields__field-wrapper { padding: 20px; background-color: var(--whitegreen); border-radius: 20px; }

/* form v2 -> payment */
.form-v2-payment { display: none; margin-top: 40px; }
.form-v2-payment-block .wc_payment_method { padding: 20px; margin-bottom: 20px !important; background-color: var(--whitegreen); border-radius: 20px; }
.form-v2-payment #payment { background-color: transparent !important; border-radius: 0px !important; }
.form-v2-payment ul.payment_methods { padding: 0px !important; border: none !important; }
.form-v2-payment .payment_box { padding: 0px !important; background-color: transparent !important; }
.form-v2-payment .form-row.place-order { padding: 0px !important; }
.form-v2-payment ul.payment_methods li input.input-radio { position: relative; border: 1px solid var(--olive) !important; border-radius: 100% !important; }
.form-v2-payment ul.payment_methods li input.input-radio.is-checked::after { position: absolute; z-index: 3; top: 50%; left: 50%; width: 5px; height: 6px; border-radius: 100%; background-color: var(--olive) !important; transform: translate(-50%, -50%); content: ''; }
.form-v2-payment form.woocommerce-checkout select { padding: 0px !important; background-color: transparent !important; }
.form-v2-payment #place_order { margin-top: 20px; padding: 10px 30px !important; font-weight: normal !important; }

/* form -> box */
.form-general { display: none; }
.form-box { position: relative; display: inline-block; width: 100%; height: auto; margin-bottom: 20px; padding: 20px 60px; border-radius: 20px; background-color: var(--whitegreen); }
.form-box i { position: absolute; top: 20px; left: 30px; color: var(--olive); }
.form-box small { position: absolute; top: 20px; right: 30px; font-size: 12px; text-decoration: underline; text-transform: lowercase; cursor: pointer; }
.form-box span { display: block; margin-bottom: 14px; }
.form-box span:last-of-type { margin-bottom: 0px; }
.form-box.form-box-gift { padding-left: 20px; }
.form-box.form-box-shipping span span { display: inline; }
.gift-reason textarea { width: 100%; height: 100px; margin-top: 10px; padding: 20px; border-radius: 15px; border: 1px solid var(--olive); }

/* contact form 7 */
.wpcf7 br { display: none; }
.wpcf7 form .wpcf7-response-output { margin: 0px !important; padding: 0px !important; border: none !important; font-size: 13px; font-weight: bold !important; }
.wpcf7-not-valid-tip { margin-top: 5px; }
#footer .wpcf7 form .wpcf7-response-output { margin: -20px 0px 30px 0px !important; }

/* float whatsapp */
#float-wp { position: fixed; z-index: 2000; bottom: 30px; right: 30px; width: 46px; height: 46px; border-radius: 100%; background-color: var(--olive); color: #fff; font-size: 22px; text-align: center; line-height: 46px; }

/* tapume */
body.page-id-3739 { background-color: var(--bg); }
body.page-id-3739 #header { background-color: var(--bg2); }
#aguarde p { display: block; font-weight: bold; font-size: 17px; text-align: center; }
#aguarde .counter { display: block; margin-top: 20px; font-weight: 100; font-size: 85px; text-align: center; }

/* responsive */
@media (max-width: 1300px){

    /* global */
    .container { max-width: 100%; padding: 0px 20px; }

    /* header */
    #header nav { left: 14%; }
    #header nav ul { gap: 20px; }

    /* bar */
    #bar .container { padding: 0px; }

    /* banner */
    #banner figcaption { left: 40px; margin-left: 0px; }

    /* category */
    #category section article strong { font-size: 30px; }

    /* product */
    .product section article h1 { width: 100%; }

    /* instagram */
    #instagram .container { width: calc(100% - 40px); margin: 0px 20px; }

    /* depoimentos */
    #depoimentos .container { width: calc(100% - 40px); margin: 0px 20px; padding: 40px 40px 100px 40px; }
    #depoimentos section article { flex-direction: column; }
    #depoimentos section article span { width: 100%; }
    #depoimentos section article span em { margin-bottom: 30px; }
    #depoimentos section article span p { font-size: 13px; }
    #depoimentos .arrow-custom { bottom: 30px; left: 40px; }

}

@media (max-width: 1100px){

    /* header */
    #header nav ul li.alt { margin-left: 200px; margin-right: 40px; }

}

@media (max-width: 1000px){

    /* header */
    #header nav { display: none; }
    #header span.toggle { display: block; }

    /* secret */
    #secret-meditacao section aside { padding: 0px; }
    #secret-meditacao section { grid-template-columns: 1fr; }

    /* qrcode */
    #qrcode section { grid-template-columns: 1fr; }
    #qrcode section article { height: auto; padding-bottom: 240px; }

    /* products */
    .woocommerce ul.products { grid-template-columns: repeat(3, 1fr); }
    .product-category-header { grid-template-columns: 1fr; }
    .product-category-header figure { height: 200px; }
    .product-category-header section { height: auto; padding: 20px; }
    .product-category-header section h1 { font-size: 24px; }

    /* about home */
    #about-home section { padding: 0px; }

}

@media (max-width: 900px){

    /* bar */
    #bar section article:nth-of-type(2) { display: none; }

    /* banner */
    #banner { width: calc(100% - 40px); margin: 0px 20px; }

    /* bar */
    #bar { padding: 0px 20px; }

    /* green */
    #green section { flex-direction: column; }
    #green section aside { width: 100%; padding-right: 0px; }
    #green section.green2 aside { margin-bottom: 30px; }
    #green section article { width: 100%; }

    /* secret */
    #secret-header header h6 { font-size: 24px; }
    #secret-header header strong { font-size: 16px; }
    #secret-header section { flex-direction: column; flex-wrap: wrap; }
    #secret-header section figure { width: 100%; order: 1; }
    #secret-header section figure img { display: block; width: 400px; max-width: 100%; margin: 0px auto; }
    #secret-header section .items { width: 100%; order: 2; }

    /* shop */
    .shop-side .shop { flex-direction: column; }
    .shop-side aside { width: 100%; }
    .shop-side article { width: 100%; padding: 0px; }
    .woocommerce ul.products li.product * { padding: 0px !important; }

    /* footer */
    #footer section aside h6 { font-size: 36px; }

    /* sobre */
    #sobre-section section { flex-wrap: wrap; flex-direction: column; }
    #sobre-section section aside { order: 2; width: 100%; }
    #sobre-section section article { order: 1; width: 100%; padding: 0px 0px 20px 0px !important; }
    #sobre-section section:first-of-type aside { margin-top: 40px; }
    #sobre-section section:last-of-type aside { margin-bottom: 40px; }

    /* contato */
    #contato-form aside { padding: 0px; }

}

@media (max-width: 800px){

    /* top */
    #top .right { display: none; }

    /* header */
    #header span.logo img { top: 45%; width: 80px; }
    #header span.toggle { left: 30px; }
    #header .right span.user b { display: none; }

    /* product */
    .product section { display: block; }
    .product section figure { min-height: 400px; }
    .product section article { padding: 40px 20px !important; }
    .product section.line2 article::before { width: 100% !important; }
    .main-thumbnails { padding: 0px; }

    /* favorites */
    #favorites section { grid-template-columns: repeat(3, 1fr); }

    /* secret */
    #secret-card section { grid-template-columns: 1fr; }
    #secret-card section article { padding: 20px !important; }
    #secret-pedras header .txt { grid-template-columns: 1fr; grid-gap: 20px; }
    #secret-pedras header .txt p:last-of-type { padding-top: 0px; border-top: none; }
    #secret-pedras section { grid-template-columns: 1fr 1fr; }

    /* videos */
    #videos section { grid-template-columns: repeat(2, 1fr); }
    #videos section article:last-of-type { display: none; }

}

@media (max-width: 750px){

    /* bar */
    #bar .container { padding: 0px; }

    /* box */
    #box .box { width: 90%; flex-direction: column; }
    #box .box figure { width: 100%; height: 200px !important; }
    #box .box section { width: 100%; padding: 20px; }
    #box .box section header h6 { font-size: 20px; }
    #box .box section form input { height: 30px; }

    /* products */
    .woocommerce ul.products { grid-template-columns: repeat(2, 1fr); }

    /* form */
    .form-v2 { flex-wrap: wrap; flex-direction: column; }
    .form-v2 .cart-sidebar { order: 1; width: 100%; margin-bottom: 30px; }
    .form-v2 form.woocommerce-checkout { order: 2; width: 100%; padding-right: 0px; }

    /* about home */
    #about-home section { flex-direction: column; gap: 20px; }
    #about-home section figure { width: 100%; }
    #about-home section article { width: 100%; }

}

@media (max-width: 700px){

    /* global */
    body { font-size: 14px; overflow-x: hidden; }

    /* banner */
    #banner figure img.desktop { display: none; }
    #banner figure img.mobile { display: block; }
    #banner figcaption { top: 42%; }
    #banner figcaption h2 { font-size: 36px; }
    #banner figcaption p { font-size: 16px; }
    #banner figcaption span a { padding: 12px 20px; font-size: 12px; }

    /* bar */
    #bar section { display: grid; grid-template-columns: repeat(2, 1fr); grid-gap: 20px; }
    #bar section article { width: 100%; }
    #bar section article i { top: 0px; transform: none; } 
    #bar section article br { display: none; }
    #bar section article:nth-of-type(3),
    #bar section article:nth-of-type(4) { display: none; }

    /* banner side */
    #banner-side .container { flex-direction: column; }
    #banner-side section { width: 100%; margin-bottom: 40px; text-align: center; }
    #banner-side section h1 { font-size: 36px; }
    #banner-side section p { font-size: 14px; }
    #banner-side figure { width: 100%; height: auto; }
    #banner-side figure img { height: auto; }

    /* category */
    #category section { grid-template-columns: 1fr; }
    #category section article { height: auto; }
    #category section article img { height: auto; }
    #category section article:hover img { transform: scale(1); }

    /* feed */
    .feed header h6 { margin-bottom: 20px; font-size: 20px; }
    .feed.int section { grid-template-columns: repeat(3, 1fr); }

    /* title */
    #start h6,
    #about-home section article h6 { font-size: 20px; line-height: 1.3; }

    /* sobre */
    #sobre-header h2 { width: 100%; padding: 0px 20px; font-size: 30px; }
    #sobre-section {  padding-top: 40px;}
    #sobre-section section article h3 { padding-bottom: 30px; font-weight: bold; font-size: 16px; line-height: 1.4; }
    #sobre-section section article p { font-size: 13px; }

    /* secret */
    #secret-meditacao section article footer { flex-direction: column; }
    #secret-meditacao section article footer span.left { width: 100%; padding-right: 0px; }
    #secret-meditacao section article footer span.listen { width: 100%; margin-top: 20px; text-align: left; }
    #secret-header section .items span.reiki { padding-right: 40%; }

    /* store */
    .shop-side aside span.abrir-filtro { display: block; }
    .shop-side aside .filter-item input, .shop-side aside nav li a::before { background-color: var(--whitegreen); }
    .shop-side aside .block { display: none; position: fixed; z-index: 2000; top: 50%; left: 50%; width: 250px; height: auto; padding: 30px 20px 20px; background-color: var(--whitegreen); border-radius: 20px; transform: translate(-50%, -50%); box-shadow: 0px 80px 80px rgba(0,0,0,.2); }
    .shop-side aside .block header sup { display: block; }
    .shop-side aside .block .filter-clear { display: none; }

    /* green */
    #green section { padding: 40px; }

    /* favorites */
    #favorites section { grid-template-columns: repeat(2, 1fr); }

    /* footer */
    #footer section { flex-direction: column; align-items: flex-start; }
    #footer section aside { width: 100%; padding-right: 0px; }
    #footer section article { width: 100%; padding-left: 0px; text-align: center; }
    #footer .cards img {position: relative; bottom: auto; left: auto; display: block; width: auto; max-width: 100%; height: auto; margin-top: 60px; }

    /* woocommerce */
    .woocommerce h1.page-title { font-size: 30px; }
    .product section figure { min-height: auto !important; }
    .woocommerce div.product div.images img { height: 160px !important; }

}

@media (max-width: 600px){

    /* global */
    body.home::after { height: 80vh; }

    /* header */
    #header .right { gap: 14px; }

    /* filter */
    .shop-side aside .aside-filter { display: flex; }
    .shop-side aside .filter-open { display: none; padding-top: 20px; }

    /* box search */
    #box-search { padding: 15px; }
    #box-search fieldset label input[type=search] { font-size: 14px; }

    /* banner */
    #banner figcaption h2 { width: 200px; font-size: 30px; }

    /* feed */
    .feed.int { padding-top: 20px; }
    .feed.int header h6 { font-size: 30px; }
    .feed.int section { grid-template-columns: repeat(2, 1fr); }
    .feed section article h3 { font-size: 13px; min-height: 50px; }

    /* green */
    #green section aside h4 { font-size: 20px; }
    #green section article span { width: 100%; }
    #green section.green1 article { flex-direction: column; }
    #green section.green1 article p { width: 100%; }
    #green section span.logo img { display: none; }

    /* page */
    #page { overflow: hidden; }
    #page header h6 { font-size: 30px; }
    #page section article span.woocommerce-Price-currencySymbol { padding-right: 0px !important; }
    #page section p { line-height: 1.4; font-size: 13px; line-height: 1.4; }
    
    /* product */
    .product section.line1 article::before { display: none; }
    .type-product .container { padding: 0px; }

    /* favorites */
    #favorites section { grid-template-columns: 1fr; }

    /* secret */
    #secret-pedras section article h1 { position: relative; top: auto; left: auto; transform: none; text-align: center; }
    #secret-pedras section { margin-top: 70px; grid-template-columns: 1fr; }

    /* contato */
    #contato-header { padding: 30px 0px 40px 0px; }
    #contato-header h6 { font-size: 30px; }
    #contato-form .container { flex-direction: column; padding: 60px 20px 0px 20px; }
    #contato-form aside { width: 100%; }
    #contato-form aside h5 { font-size: 30px; text-align: center; }
    #contato-form section { width: 100%; padding: 60px 0px 0px 0px; }

    /* qrcode */
    #qrcode section article { padding: 30px 30px 240px 30px; }
    #qrcode section article h6 { font-size: 20px; }

    /* footer */
    #footer section { padding: 40px 40px 160px 40px; }
    #footer section aside h6 { font-size: 30px; }
    #footer section aside p { padding-right: 0px !important; }
    #footer section aside form fieldset p { flex-direction: column; }
    #footer section aside form fieldset label { width: 100% !important; margin-bottom: 10px; padding: 0px !important; }
    #footer section aside form fieldset input[type=submit] { font-size: 14px; }
    #footer span.logo img { left: 40px; }

    /* bottom */
    #bottom section { padding: 40px; flex-direction: column; text-align: center; }
    #bottom section span a { margin-top: 10px; }

    /* menu side */
    #menu-side { width: 80%; padding: 100px 40px; }
    #menu-side span.logo img { right: 40px; }

    /* woocommerce */
    .wc-block-components-radio-control__option { padding-left: 60px !important; }
    #order_review { width: 100% !important; }
    .woocommerce-checkout-review-order-table { display: inline-grid; }
    .woocommerce ul.order_details li { width: 100%; margin-bottom: 10px; }
    .woocommerce-column__title { margin-top: 20px; font-size: 16px; }
    .wc-block-components-sidebar { width: 100% !important; }
    .woocommerce ul.products li.product .woocommerce-loop-product__title { font-size: 13px !important; }

}

@media (max-width: 500px){

    /* header */
    #header span.toggle { top: 54%; }
    #header .right .search { position: absolute; right: 88px; }
    #header .right .fav { position: absolute; left: 105px; }

    /* sobre */
    #sobre-header { padding: 40px 0px 0px 0px; }
    #sobre-header h1 { font-size: 20px; }
    #sobre-header h2 { margin: 30px 0px; font-size: 24px; text-align: center; }
    #sobre-header img { max-width: 95%; margin-top: -100px; }

    /* product */
    .form-v2 .cart-sidebar span.ver { display: inline-block !important; }
    .form-v2-pedido { display: none; }
    .woocommerce ul.products { grid-template-columns: 1fr; }
    .woocommerce ul.products li.product .woocommerce-loop-product__title { min-height: auto; }
    .form-v2 .woocommerce table.shop_table tr { display: flex; }
    .form-v2 .woocommerce table.shop_table td.product-thumbnail { display: table-cell !important; width: 30%; }
    .form-v2 .woocommerce table.shop_table td.product-name { width: 70%; text-align: left !important; }
    .form-v2 .woocommerce table.shop_table td::before { display: none; }
    .form-v2 .woocommerce table.shop_table td.product-subtotal { display: none !important; }

    /* videos */
    #videos section { grid-template-columns: 1fr; }
    #videos section article:nth-of-type(2),
    #videos section article:last-of-type { display: none; }

}

@media (max-height: 780px){

    /* box */
    #box .box figure { height: 560px; }
    #box .box section { padding: 20px 40px 0px; }

}

@media (max-height: 640px){

    /* box */
    #box { position: absolute; background-color: transparent; }
    #box .box { display: block; width: 100%; left: 0px; top: 0px; height: 100vh; transform: none; border-radius: 0px; overflow-y: auto; }
    #box .box figure { height: 160px !important; border-radius: 0px !important; }

}

/* Filtros da Loja - WooCommerce */
.filter-container {
    padding: 30px;
    background: var(--apple);
    border-radius: 20px;
}

.filter-container h3 {
    font-size: 12px;
    font-weight: bold;
    margin-bottom: 10px;
    margin-top: 20px;
    text-transform: uppercase;
}

.filter-container h3:first-child {
    margin-top: 0;
}

.filter-dropdown {
    width: 100% !important;
    padding: 0px;
    border-bottom: 1px solid #ddd;
    font-size: 14px;
}

.filter-list {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.filter-list li {
    margin: 0;
}

.filter-list li a {
    display: inline-block;
    padding: 8px 16px;
    border: 1px solid var(--olive);
    border-radius: 50px;
    text-decoration: none;
    color: var(--olive);
    font-size: 12px;
    transition: all 0.2s ease;
    cursor: pointer;
    text-transform: none;
    font-weight: 500;
}

.filter-list li.active a {
    background: var(--olive);
    color: #fff;
}

.clear-filters-btn {
    width: 100%;
    padding: 12px;
    background: var(--olive);
    color: #fff;
    border: none;
    border-radius: 50px;
    cursor: pointer;
    font-size: 11px;
    margin-top: 20px;
    font-weight: bold;
}

.loading-overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(255,255,255,0.95);
    z-index: 999;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 400px;
}

.loading-overlay .spinner {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 20px;
}

.loading-overlay .spinner::before {
    content: '';
    width: 50px;
    height: 50px;
    border: 4px solid var(--apple);
    border-top-color: var(--olive);
    border-radius: 50%;
    animation: spin 0.8s linear infinite;
}

@keyframes spin {
    to { transform: rotate(360deg); }
}

.loading-overlay .spinner::after {
    content: 'Carregando produtos...';
    font-size: 14px;
    font-weight: normal;
    color: var(--olive);
    font-family: var(--fonttitle);
}

/* Ver medidas lightbox */
.ver-medidas-link { margin-top: 15px; }
.ver-medidas-link a { text-decoration: underline; color: #333; font-size: 12px; }
.medidas-lightbox { display: none; position: fixed; z-index: 999999; left: 0; top: 0; width: 100%; height: 100%; background-color: rgba(0,0,0,0.9); cursor: pointer; }
.medidas-lightbox img { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); max-width: 90%; max-height: 90%; box-shadow: 0 0 20px rgba(0,0,0,0.5); }
.medidas-lightbox .close-lightbox { position: absolute; top: 20px; right: 35px; color: #f1f1f1; font-size: 40px; font-weight: bold; cursor: pointer; }

/* float video */
#float-video { position: fixed; z-index: 2000; bottom: 30px; left: 30px; width: 80px; height: 80px; border-radius: 100%; overflow: hidden; background-color: #000; border: 2px solid #fff; box-shadow: 0px  10px 30px rgba(0,0,0,.2); cursor: pointer; transition: all .25s ease; }
#float-video video { width: 100%; height: 100%; object-fit: cover; }
#float-video .fv-close { position: absolute; top: 6px; right: 8px; width: auto; height: auto; padding: 2px 6px; border-radius: 10px; background: rgba(0,0,0,.6); color: #fff; border: none; line-height: 1; text-align: center; font-size: 11px; cursor: pointer; opacity: 0; pointer-events: none; transition: opacity .2s ease; text-transform: lowercase; }
#float-video .fv-expand { position: absolute; top: 50%; left: 50%; color: rgba(255,255,255,.9); font-size: 14px; line-height: 1; opacity: 0; transition: opacity .2s ease; transform: translate(-50%, -50%); }
#float-video:hover .fv-expand { opacity: 1; }
#float-video.on .fv-close { opacity: 1; pointer-events: auto; }
#float-video.on { width: 240px; height: 380px; border-radius: 16px; }
#float-video.on .fv-close { opacity: 1; pointer-events: auto; }
#float-video.on .fv-expand { opacity: 0; }

/* Botão Limpar Escolhas - Conceitual/Minimalista */
.clear-choices-container { position: absolute; top: 0; right: 0; margin: 0; z-index: 10; }
.clear-choices-btn { display: inline-block; padding: 0; background: none; border: none; color: var(--olive); font-size: 12px; font-family: var(--fonttitle); text-transform: uppercase; letter-spacing: 1px; text-decoration: none; position: relative; transition: all 0.3s ease; opacity: 0.6; cursor: pointer; }
.clear-choices-btn:hover { opacity: 1; }
.clear-choices-btn::before { content: ''; position: absolute; bottom: -2px; left: 0; width: 0; height: 1px; background-color: var(--olive); transition: width 0.3s ease; }
.clear-choices-btn:hover::before { width: 100%; }
.clear-choices-btn::after { content: '×'; margin-left: 8px; font-size: 16px; font-weight: normal; vertical-align: middle; }

#products-container {
    position: relative;
}

/* Loop thumbs: hover fade from variation->featured */
.woocommerce ul.products li.product figure.product-thumb { position: relative; width: 100%; height: 300px; overflow: hidden; border-radius: 15px; background: var(--bg2); }
.woocommerce ul.products li.product figure.product-thumb img.loop-thumb { position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; transition: opacity .35s ease; mix-blend-mode: normal !important; }
.woocommerce ul.products li.product figure.product-thumb img.loop-thumb-1 { opacity: 1; z-index: 1; }
.woocommerce ul.products li.product figure.product-thumb img.loop-thumb-2 { opacity: 0; z-index: 2; }
.woocommerce ul.products li.product a:hover figure.product-thumb img.loop-thumb-1,
.woocommerce ul.products li.product:hover figure.product-thumb img.loop-thumb-1 { opacity: 0; }
.woocommerce ul.products li.product a:hover figure.product-thumb img.loop-thumb-2,
.woocommerce ul.products li.product:hover figure.product-thumb img.loop-thumb-2 { opacity: 1; }

/* ================================================================================================== */
/* 🎯 SISTEMA DINÂMICO DE IMAGENS: FILTROS ATIVOS = 1 IMAGEM | SEM FILTROS = 2 IMAGENS (HOVER) */
/* ================================================================================================== */

/* 🔴 COM FILTROS ATIVOS: Esconder segunda imagem completamente */
body.filters-active .woocommerce ul.products li.product figure.product-thumb img.loop-thumb-2,
body.filters-active .woocommerce ul.products li.product a:hover figure.product-thumb img.loop-thumb-2,
body.filters-active .woocommerce ul.products li.product:hover figure.product-thumb img.loop-thumb-2 {
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
}

/* ✅ COM FILTROS ATIVOS: Primeira imagem sempre visível (sem efeito hover) */
body.filters-active .woocommerce ul.products li.product figure.product-thumb img.loop-thumb-1,
body.filters-active .woocommerce ul.products li.product a:hover figure.product-thumb img.loop-thumb-1,
body.filters-active .woocommerce ul.products li.product:hover figure.product-thumb img.loop-thumb-1 {
    opacity: 1 !important;
    z-index: 10 !important;
    pointer-events: auto !important;
}

/* 🔥 REGRA ADICIONAL: Detectar filtros ativos automaticamente */
.shop-side:has(.filter-list li.active) .woocommerce ul.products li.product figure.product-thumb img.loop-thumb-2,
.shop-side:has(#filter-frase option:checked:not([value=""])) .woocommerce ul.products li.product figure.product-thumb img.loop-thumb-2 {
    opacity: 0 !important;
    visibility: hidden !important;
}

.shop-side:has(.filter-list li.active) .woocommerce ul.products li.product a:hover figure.product-thumb img.loop-thumb-1,
.shop-side:has(.filter-list li.active) .woocommerce ul.products li.product:hover figure.product-thumb img.loop-thumb-1 {
    opacity: 1 !important;
}

/* SEM FILTROS: Comportamento normal das duas imagens (já definido acima) */