/*
Theme Name: Nolla Fibras
Theme URI: https://nollafibras.com.br/
Author: Nolla Fibras
Description: Tema premium da loja Nolla Fibras, feito para WooCommerce. Design aprovado na prévia (dourado, champanhe e branco).
Version: 1.2.0
Requires at least: 6.2
Requires PHP: 7.4
Text Domain: nolla
License: Proprietary
*/
:root{--gold:#C69A3A;--champ:#F7F2E9;--ink:#171717;--beige:#EDE4D5;--bg:#FFFFFF;--surf:#F7F2E9;--line:#EDE4D5;--muted:#5b5348;--btn-t:#171717}
@media (prefers-color-scheme:dark){:root{--bg:#171717;--surf:#211e1a;--line:#3a342a;--ink:#F7F2E9;--muted:#c9bfae}}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:110px}
body{margin:0;background:var(--bg);color:var(--ink);font:400 16px/1.6 Jost,system-ui,sans-serif;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}
h1,h2,h3,h4{font-family:'Cormorant Garamond',Georgia,serif;font-weight:500;line-height:1.1;margin:0 0 .5em}
h1{font-size:clamp(34px,6vw,52px)}h2{font-size:clamp(30px,5vw,44px)}h3{font-size:24px}
a{color:inherit;text-decoration:none}img{max-width:100%;height:auto}
button,input,select,textarea{font:inherit}button{cursor:pointer}
:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
.screen-reader-text{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
[hidden]{display:none!important}
.wrap{max-width:1180px;margin:0 auto;padding:0 20px}
.sec{padding:52px 0}.alt{background:var(--surf);border-block:1px solid var(--line)}
.meta,.muted{font-size:13px;color:var(--muted)}
/* botões */
.btn,.button,button.button,input.button,.woocommerce a.button,.single_add_to_cart_button{display:inline-block;background:var(--gold);color:var(--btn-t);border:0;padding:14px 28px;font-weight:500;letter-spacing:.06em;text-align:center;border-radius:0;line-height:1.3}
.btn:hover,.button:hover{filter:brightness(1.08)}
.btn.alt2,.button.alt2,.button.wc-forward:not(.checkout){background:transparent;color:var(--ink);border:1px solid var(--gold)}
.button.disabled,.button:disabled{opacity:.4;cursor:not-allowed}
/* topo e cabeçalho */
.top{background:#171717;color:#F7F2E9;text-align:center;font-size:13px;padding:8px 12px}
.site-h{position:sticky;top:0;z-index:20;background:var(--bg);border-bottom:1px solid var(--line)}
.bar{display:flex;align-items:center;gap:14px;height:64px}
.logo-t{font-family:'Cormorant Garamond',serif;font-size:26px;flex:none}
.custom-logo{max-height:48px;width:auto}
.mainnav,.mobnav,.fm{list-style:none;margin:0;padding:0}
.mainnav{display:none;gap:20px;font-size:14px;margin-left:auto}
.mainnav a:hover{color:var(--gold)}
.ic{margin-left:auto;display:flex;gap:2px;align-items:center}
.ic button,.ic a{background:none;border:0;color:var(--ink);min-width:44px;height:44px;font-size:14px;position:relative;display:inline-flex;align-items:center;justify-content:center}
.badge{position:absolute;top:4px;right:0;background:var(--gold);color:#171717;border-radius:99px;font-size:11px;min-width:18px;height:18px;line-height:18px;text-align:center}
.badge[data-n="0"]{display:none}
.menu-m{display:none;border-top:1px solid var(--line);padding:8px 20px 14px}
.menu-m.open{display:block}
.mobnav a{display:block;padding:10px 0;border-bottom:1px solid var(--line)}
.sbar{border-top:1px solid var(--line);padding:10px 0}
.sbar input[type=search]{width:100%;padding:12px 14px;border:1px solid var(--gold);background:var(--bg);color:var(--ink)}
@media(min-width:960px){.mainnav{display:flex}.ic{margin-left:0}#burger{display:none}.menu-m.open{display:none}}
/* home */
.hero{background:var(--surf);border-bottom:1px solid var(--line)}
.hero .wrap{display:grid;gap:28px;padding-top:36px;padding-bottom:44px;align-items:center}
.hero h1{font-size:clamp(40px,8vw,72px)}
.hero p{color:var(--muted);font-size:18px;max-width:34ch}
.himg{aspect-ratio:4/5;max-height:520px;width:100%;background:linear-gradient(135deg,var(--beige),var(--champ) 55%,#e6d3a6);overflow:hidden}
.himg img{width:100%;height:100%;object-fit:cover;display:block}
@media(min-width:760px){.hero .wrap.has-img{grid-template-columns:1.1fr 1fr;padding-top:64px;padding-bottom:64px}}
.cats{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
.cat{aspect-ratio:1/1;position:relative;display:flex;align-items:flex-end;padding:14px;background:linear-gradient(135deg,var(--beige),var(--champ) 55%,#e6d3a6);overflow:hidden}
.cat img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.cat span{position:relative;font-family:'Cormorant Garamond',serif;font-size:22px;color:#171717;background:rgba(255,255,255,.88);padding:2px 10px}
@media(min-width:760px){.cats{grid-template-columns:repeat(6,1fr)}.cat span{font-size:18px}}
.ben{display:grid;gap:18px}
@media(min-width:760px){.ben{grid-template-columns:repeat(5,1fr)}}
.ben div{border-top:2px solid var(--gold);padding-top:12px}.ben h3{font-size:22px;margin-bottom:4px}.ben p{margin:0;font-size:14px;color:var(--muted)}
.ba{display:grid;gap:14px}@media(min-width:760px){.ba{grid-template-columns:repeat(3,1fr)}}
.pair{display:grid;grid-template-columns:1fr 1fr;gap:4px}.pair figure{margin:0;position:relative}
.pair img{width:100%;aspect-ratio:3/4;object-fit:cover;display:block}
.pair figcaption{position:absolute;left:6px;bottom:6px;background:rgba(255,255,255,.88);color:#171717;font-size:12px;padding:0 8px}
.split{display:grid;gap:24px;align-items:center}@media(min-width:760px){.split{grid-template-columns:1fr 1fr}}
.split p{color:var(--muted);max-width:52ch}
.split img{width:100%;aspect-ratio:4/3;object-fit:cover}
/* rodapé */
.site-f{background:#171717;color:#F7F2E9;padding:40px 0 90px;font-size:14px}
.site-f .wrap{display:grid;gap:20px}@media(min-width:760px){.site-f .wrap{grid-template-columns:2fr 1fr 1fr}}
.site-f h3{color:var(--gold);margin-bottom:6px}.site-f a{display:block;padding:3px 0;opacity:.85}.site-f a:hover{opacity:1}
.wa{position:fixed;right:16px;bottom:calc(16px + env(safe-area-inset-bottom,0px));background:#171717;color:#F7F2E9;border:1px solid var(--gold);padding:12px 18px;z-index:15;font-size:14px}
/* carrinho lateral */
.drawer{position:fixed;inset:0;z-index:40;display:none}.drawer.open{display:block}
.drawer .sh{position:absolute;inset:0;background:rgba(23,23,23,.5)}
.drawer aside{position:absolute;right:0;top:0;bottom:0;width:min(420px,100%);background:var(--bg);padding:20px;overflow:auto}
.dh{display:flex;justify-content:space-between;align-items:center}.dh h2{font-size:30px;margin:0}
.x{background:none;border:0;color:var(--muted);font-size:13px;text-decoration:underline}
.woocommerce-mini-cart{list-style:none;padding:0;margin:0}
.woocommerce-mini-cart-item{display:grid;grid-template-columns:56px 1fr;gap:4px 10px;border-bottom:1px solid var(--line);padding:10px 0;position:relative}
.woocommerce-mini-cart-item img{grid-row:span 2;width:56px;height:70px;object-fit:cover}
.woocommerce-mini-cart-item a.remove{position:absolute;right:0;top:8px;color:var(--muted)}
.woocommerce-mini-cart__total{display:flex;justify-content:space-between;padding:12px 0}
.woocommerce-mini-cart__buttons{display:grid;gap:8px}.woocommerce-mini-cart__buttons .button{width:100%}
/* conteúdo e loja */
.page-c{padding:24px 0 60px}.crumb,.woocommerce-breadcrumb{font-size:13px;color:var(--muted);padding:16px 0}
.shop-l{display:grid;gap:20px}.fp{display:none;border:1px solid var(--line);padding:4px 14px 14px;background:var(--surf)}.fp.open{display:block}
.fp h3,.fp .wp-block-heading{font-size:20px;margin:12px 0 6px}
@media(min-width:900px){.shop-l.has-f{grid-template-columns:250px 1fr;align-items:start}.fp{display:block}#ftg{display:none}}
.woocommerce-result-count{font-size:14px;color:var(--muted);float:left;margin:0 0 12px}.woocommerce-ordering{float:right;margin:0 0 12px}
.woocommerce-ordering select{padding:8px;border:1px solid var(--line);background:var(--bg);color:var(--ink)}
ul.products{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;list-style:none;margin:0;padding:0;clear:both}
ul.products::before,ul.products::after{display:none!important}
@media(min-width:900px){ul.products{grid-template-columns:repeat(3,1fr);gap:22px}.shop-l:not(.has-f) ul.products,.home-p ul.products{grid-template-columns:repeat(4,1fr)}}
ul.products li.product{border:1px solid var(--line);background:var(--bg);display:flex;flex-direction:column;position:relative;width:auto!important;margin:0!important;float:none!important}
ul.products li.product a.woocommerce-LoopProduct-link{display:flex;flex-direction:column;flex:1}
ul.products li.product img{width:100%;aspect-ratio:3/4;object-fit:cover;margin:0;display:block}
.woocommerce-loop-product__title{font-size:20px!important;padding:12px 12px 0;margin:0}
ul.products li.product .price{padding:4px 12px;font-weight:500;display:block}
ul.products li.product .price del{color:var(--muted);font-weight:400}ul.products li.product .price ins{text-decoration:none}
ul.products li.product .button{margin:8px 12px 12px;padding:11px;font-size:14px}
.onsale{position:absolute;top:8px;left:8px;z-index:2;background:var(--gold);color:#171717;font-size:12px;padding:2px 10px}
.woocommerce-pagination ul{display:flex;gap:6px;list-style:none;padding:0;justify-content:center;margin:30px 0 0}
.woocommerce-pagination a,.woocommerce-pagination span{display:block;padding:8px 14px;border:1px solid var(--line)}.woocommerce-pagination .current{background:var(--gold);color:#171717;border-color:var(--gold)}
/* produto */
div.product{display:grid;gap:24px}@media(min-width:860px){div.product.type-product,div.product{grid-template-columns:1.1fr 1fr;gap:44px;align-items:start}div.product .woocommerce-tabs,div.product .related,div.product .up-sells{grid-column:1/-1}}
.woocommerce-product-gallery{position:relative;margin:0}.woocommerce-product-gallery__wrapper{margin:0}
.flex-control-thumbs{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;list-style:none;padding:0;margin:8px 0 0}
.flex-control-thumbs img{opacity:.65;cursor:pointer;aspect-ratio:1/1;object-fit:cover}.flex-control-thumbs img.flex-active,.flex-control-thumbs img:hover{opacity:1}
.woocommerce-product-gallery__trigger{position:absolute;top:8px;right:8px;z-index:3;background:var(--bg);width:36px;height:36px;font-size:0;text-align:center}.woocommerce-product-gallery__trigger::before{content:"+";font-size:22px;line-height:36px}
.summary .product_title{font-size:clamp(32px,6vw,46px)}.summary .price{font-size:22px;font-weight:500;margin:8px 0}.summary .price ins{text-decoration:none}
table.variations{width:100%;border-collapse:collapse;margin:14px 0}table.variations tr{display:block;margin-bottom:12px}table.variations th,table.variations td{display:block;text-align:left;padding:0}
table.variations label{font-size:14px;font-weight:500}table.variations select{width:100%;padding:12px;border:1px solid var(--line);background:var(--bg);color:var(--ink);min-height:46px}
.reset_variations{font-size:13px;color:var(--muted);text-decoration:underline}
.woocommerce-variation-price{font-size:20px;margin:8px 0}.stock{font-size:14px;padding:8px 12px;background:var(--beige);color:#171717;display:inline-block}.stock.out-of-stock{background:#e8d5d0}
.quantity input.qty{width:70px;padding:12px;border:1px solid var(--line);background:var(--bg);color:var(--ink);text-align:center}
form.cart,.woocommerce-variation-add-to-cart{display:flex;gap:10px;flex-wrap:wrap;align-items:center}form.variations_form{display:block}
.nolla-wa-prod{margin:12px 0}
.product_meta{font-size:13px;color:var(--muted);margin-top:14px}
.woocommerce-tabs ul.tabs{display:flex;gap:6px;flex-wrap:wrap;list-style:none;padding:0;margin:0 0 16px;border-bottom:1px solid var(--line)}
.woocommerce-tabs ul.tabs li a{display:block;padding:10px 16px}.woocommerce-tabs ul.tabs li.active a{border-bottom:2px solid var(--gold)}
.woocommerce-Tabs-panel h2{font-size:26px}
/* avisos e formulários */
.woocommerce-message,.woocommerce-info,.woocommerce-error{list-style:none;margin:0 0 18px;padding:14px 16px;background:var(--surf);border-left:3px solid var(--gold);display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;align-items:center}
.woocommerce-error{border-left-color:#b4452f}
.woocommerce form .form-row{margin:0 0 12px;display:grid;gap:4px}.woocommerce form .form-row label{font-size:14px}
input[type=text],input[type=email],input[type=tel],input[type=password],input[type=number],input[type=search],select,textarea{padding:12px;border:1px solid var(--line);background:var(--bg);color:var(--ink);width:100%;min-height:46px}
.select2-container .select2-selection--single{height:46px;border:1px solid var(--line);border-radius:0}.select2-container--default .select2-selection--single .select2-selection__rendered{line-height:44px}
/* carrinho */
table.shop_table{width:100%;border-collapse:collapse;border:1px solid var(--line)}table.shop_table th,table.shop_table td{padding:12px;border-bottom:1px solid var(--line);text-align:left;vertical-align:middle}
table.cart img{width:64px;height:80px;object-fit:cover}
.cart_totals,.woocommerce-checkout-review-order{background:var(--surf);border:1px solid var(--line);padding:16px;margin-top:20px}
.cart_totals h2{font-size:28px}.wc-proceed-to-checkout .button,#place_order{width:100%;padding:16px;font-size:16px}
.coupon{display:flex;gap:8px;flex-wrap:wrap}.coupon input{flex:1;min-width:140px}
@media(min-width:900px){.woocommerce-cart .cart-collaterals{display:flex;justify-content:flex-end}.cart_totals{width:min(420px,100%)}}
/* checkout clássico */
form.checkout{display:grid;gap:22px}
@media(min-width:900px){form.checkout{grid-template-columns:1.4fr 1fr;align-items:start}#order_review_heading{grid-column:2;margin:0}#customer_details{grid-column:1;grid-row:1/span 2}#order_review{grid-column:2}}
#payment ul.payment_methods{list-style:none;padding:0;margin:0 0 14px}#payment ul.payment_methods li{border:1px solid var(--line);padding:12px;margin-bottom:8px;background:var(--bg)}
#payment .payment_box{margin-top:8px;font-size:14px;color:var(--muted)}
.woocommerce-privacy-policy-text{font-size:13px;color:var(--muted)}
/* minha conta */
.woocommerce-account .woocommerce{display:grid;gap:18px}
@media(min-width:800px){.woocommerce-account.logged-in .woocommerce{grid-template-columns:220px 1fr;align-items:start}}
.woocommerce-MyAccount-navigation ul{display:flex;gap:6px;overflow-x:auto;list-style:none;padding:0;margin:0}
.woocommerce-MyAccount-navigation a{display:block;padding:10px 14px;border:1px solid var(--line);white-space:nowrap}
.woocommerce-MyAccount-navigation .is-active a{background:var(--gold);color:#171717;border-color:var(--gold)}
@media(min-width:800px){.woocommerce-MyAccount-navigation ul{flex-direction:column}}
.u-columns{display:grid;gap:20px}@media(min-width:760px){.u-columns{grid-template-columns:1fr 1fr}}
.woocommerce-form-login,.woocommerce-form-register{border:1px solid var(--line);padding:16px}
.woocommerce-order-details,.woocommerce-customer-details{margin-top:20px}
.page-c .entry-title{margin-bottom:.4em}

/* ===== v1.1.0: cabeçalho preto com logotipo em destaque ===== */
.top{border-bottom:1px solid rgba(198,154,58,.35)}
.site-h{background:#0E0E0E;color:#F7F2E9;border-bottom:1px solid var(--gold)}
.site-h .bar{height:auto;min-height:72px;gap:10px;padding-top:8px;padding-bottom:8px;flex-wrap:nowrap}
.site-h .custom-logo-link,.site-h .logo-i{display:inline-flex;align-items:center;flex:none}
.site-h .custom-logo{height:56px;width:auto;max-width:none;max-height:none;object-fit:contain;display:block}
.site-h #burger{background:none;border:0;color:#F7F2E9;min-width:44px;height:44px;padding:0;flex:none}
.site-h .mainnav a,.site-h .mobnav a{color:#F7F2E9;white-space:nowrap}
.site-h .mainnav a:hover,.site-h .mainnav .current-menu-item>a,.site-h .mobnav a:hover{color:var(--gold)}
.site-h .ic button,.site-h .ic a{color:#F7F2E9;min-width:40px;padding:0 6px;font-size:13px}
.site-h .ic button:hover,.site-h .ic a:hover{color:var(--gold)}
.site-h .menu-m{background:#0E0E0E;border-top:1px solid rgba(247,242,233,.14)}
.site-h .mobnav a{border-bottom:1px solid rgba(247,242,233,.14)}
.site-h .sbar{background:#171717;border-top:1px solid rgba(247,242,233,.14)}
.site-h .sbar input[type=search]{background:#0E0E0E;color:#F7F2E9;border:1px solid var(--gold)}
.site-h .sbar input[type=search]::placeholder{color:rgba(247,242,233,.6)}
@media(min-width:960px) and (max-width:1239px){
.site-h .mainnav{display:none}
.site-h #burger{display:inline-flex;align-items:center;justify-content:center}
.site-h .menu-m.open{display:block}
.site-h .ic{margin-left:auto}
}
@media(min-width:960px){
.site-h .bar{min-height:96px;gap:24px}
.site-h .custom-logo{height:80px}
.site-h .ic button,.site-h .ic a{font-size:14px;padding:0 10px}
}
@media(min-width:1240px){
.site-h .mainnav{display:flex;margin-left:auto;gap:16px;font-size:13.5px;letter-spacing:.02em}
.site-h .ic{margin-left:0}
}
@media(max-width:380px){.site-h .custom-logo{height:48px}.site-h .ic button,.site-h .ic a{min-width:36px;padding:0 4px;font-size:12px}}

/* ===== v1.2.0: fluxo de compra (carrinho lateral, carrinho, checkout, minha conta) ===== */
input[type=radio],input[type=checkbox]{accent-color:var(--gold)}
/* carrinho lateral */
.woocommerce-mini-cart-item{display:block;padding:12px 26px 12px 0}
.woocommerce-mini-cart-item a:not(.remove){display:flex;gap:10px;align-items:center;font-weight:500}
.woocommerce-mini-cart-item img{width:56px;height:70px;object-fit:cover;flex:none}
.woocommerce-mini-cart-item dl.variation{margin:4px 0 0 66px;font-size:13px;color:var(--muted)}
.woocommerce-mini-cart-item dl.variation dt{float:left;clear:left;margin-right:4px}
.woocommerce-mini-cart-item dl.variation dd{margin:0}.woocommerce-mini-cart-item dl.variation p{margin:0}
.woocommerce-mini-cart-item .quantity{display:block;margin:4px 0 0 66px;font-size:13px;color:var(--muted)}
.woocommerce-mini-cart__empty-message{color:var(--muted);padding:20px 0}
a.remove{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border:1px solid var(--line);color:var(--muted);font-size:18px;line-height:1}
a.remove:hover{background:var(--gold);border-color:var(--gold);color:#171717}
.woocommerce-mini-cart-item a.remove{position:absolute;right:0;top:12px}
/* carrinho e pedidos */
table.shop_table td.product-name a{font-weight:500}
table.shop_table td.product-name dl.variation{margin:4px 0 0;font-size:13px;color:var(--muted)}
table.shop_table td.product-name dl.variation dt{float:left;clear:left;margin-right:4px}table.shop_table td.product-name dl.variation dd{margin:0}table.shop_table td.product-name dl.variation p{margin:0}
.woocommerce-cart-form{overflow-x:auto}
td.actions{padding-top:16px}
ul#shipping_method{list-style:none;margin:0;padding:0}ul#shipping_method li{margin:0 0 6px}
.shipping-calculator-form{display:grid;gap:8px;margin-top:8px}
.cart_totals table.shop_table{border:0}
.woocommerce-checkout-review-order-table{background:transparent}
/* checkout: nome/sobrenome e campos curtos lado a lado no computador */
@media(min-width:600px){
.woocommerce-billing-fields__field-wrapper,.woocommerce-shipping-fields__field-wrapper,.woocommerce-address-fields__field-wrapper{display:grid;grid-template-columns:1fr 1fr;column-gap:12px}
.woocommerce form .form-row-wide{grid-column:1/-1}
}
.woocommerce form .required{color:#b4452f;text-decoration:none}
#payment .wc_payment_method label{font-weight:500}
#payment .payment_box p{margin:0 0 8px}
.woocommerce-checkout .woocommerce-form-coupon-toggle,.woocommerce-checkout .woocommerce-form-login-toggle{margin-bottom:8px}
form.checkout_coupon,form.woocommerce-form-login{border:1px solid var(--line);padding:16px;margin:0 0 18px}
/* minha conta */
.woocommerce-MyAccount-content{min-width:0;overflow-x:auto}
.woocommerce-MyAccount-content .woocommerce-Address{margin-bottom:14px}
.woocommerce-orders-table .button,.woocommerce-table .button{padding:8px 14px;font-size:13px}
