/*
Theme Name:   OFFMADE
Theme URI:    https://offmade.com.br
Description:  Tema filho do Hello Elementor com a identidade OFFMADE aplicada ao WooCommerce.
Author:       OFFMADE Department
Template:     hello-elementor
Version:      1.0.0
Text Domain:  offmade
*/

/* ==========================================================================
   ÍNDICE
   00 · Fontes
   01 · Tokens
   02 · Base e tipografia
   03 · Botões
   04 · Formulários
   05 · Mensagens do WooCommerce
   06 · Loop de produtos (loja, categorias, relacionados)
   07 · Produto único
   08 · Abas e ficha técnica
   09 · Carrinho
   10 · Cálculo de frete / Melhor Envio
   11 · Checkout
   12 · Minha conta
   13 · Cabeçalho e rodapé (Elementor)
   14 · Detalhes finais
   ========================================================================== */


/* ==========================================================================
   00 · FONTES
   Os .woff2 vão em  /wp-content/themes/offmade/fonts/
   ========================================================================== */
@font-face{ font-family:'Michroma'; font-style:normal; font-weight:400; font-display:swap;
  src:url('fonts/michroma-latin-400-normal.woff2') format('woff2'); }

@font-face{ font-family:'Saira Condensed'; font-style:normal; font-weight:200; font-display:swap;
  src:url('fonts/saira-condensed-latin-200-normal.woff2') format('woff2'); }
@font-face{ font-family:'Saira Condensed'; font-style:normal; font-weight:400; font-display:swap;
  src:url('fonts/saira-condensed-latin-400-normal.woff2') format('woff2'); }
@font-face{ font-family:'Saira Condensed'; font-style:normal; font-weight:600; font-display:swap;
  src:url('fonts/saira-condensed-latin-600-normal.woff2') format('woff2'); }
@font-face{ font-family:'Saira Condensed'; font-style:normal; font-weight:700; font-display:swap;
  src:url('fonts/saira-condensed-latin-700-normal.woff2') format('woff2'); }
@font-face{ font-family:'Saira Condensed'; font-style:normal; font-weight:800; font-display:swap;
  src:url('fonts/saira-condensed-latin-800-normal.woff2') format('woff2'); }

@font-face{ font-family:'Archivo'; font-style:normal; font-weight:300; font-display:swap;
  src:url('fonts/archivo-latin-300-normal.woff2') format('woff2'); }
@font-face{ font-family:'Archivo'; font-style:normal; font-weight:400; font-display:swap;
  src:url('fonts/archivo-latin-400-normal.woff2') format('woff2'); }
@font-face{ font-family:'Archivo'; font-style:normal; font-weight:500; font-display:swap;
  src:url('fonts/archivo-latin-500-normal.woff2') format('woff2'); }


/* ==========================================================================
   01 · TOKENS
   ========================================================================== */
:root{
  --ink:#08090a; --ink-2:#0c0e10;
  --graf-900:#121517; --graf-800:#181c20; --graf-700:#22272b; --graf-600:#2f353b;
  --graf-500:#3f464d; --graf-400:#5a626a; --graf-300:#838b93; --graf-200:#a9b0b6;
  --graf-100:#cfd3d7; --chalk:#eceeef;

  --copper:#b0703a; --copper-soft:#c9a480; --copper-deep:#6d4222;

  --hair:rgba(255,255,255,.085);
  --hair-soft:rgba(255,255,255,.04);
  --hair-cu:rgba(176,112,58,.42);

  --f-brand:'Michroma',sans-serif;
  --f-disp:'Saira Condensed','Archivo',sans-serif;
  --f-body:'Archivo',system-ui,sans-serif;

  --ease:cubic-bezier(.22,.61,.36,1);
  --ease-out:cubic-bezier(.16,1,.3,1);
}


/* ==========================================================================
   02 · BASE E TIPOGRAFIA
   ========================================================================== */
body{
  background:var(--ink);
  color:var(--graf-100);
  font-family:var(--f-body);
  -webkit-font-smoothing:antialiased;
}

/* grão global */
body::after{
  content:''; position:fixed; inset:0; z-index:9999; pointer-events:none;
  opacity:.05; mix-blend-mode:overlay;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
}

h1,h2,h3,h4,
.woocommerce-loop-product__title,
.product_title,
.cart_totals h2,
.cross-sells h2,
.related h2,
.upsells h2{
  font-family:var(--f-disp);
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.01em;
  line-height:.98;
  color:var(--chalk);
}

::selection{ background:var(--copper); color:#fff; }
::-webkit-scrollbar{ width:9px; }
::-webkit-scrollbar-track{ background:var(--ink); }
::-webkit-scrollbar-thumb{ background:var(--graf-700); }
::-webkit-scrollbar-thumb:hover{ background:var(--graf-500); }

a{ color:var(--copper-soft); }
a:hover{ color:var(--chalk); }

hr,
.woocommerce .col2-set,
.woocommerce-page .col2-set{ border-color:var(--hair); }


/* ==========================================================================
   03 · BOTÕES
   Cobre todos os botões do Woo em todas as telas.
   ========================================================================== */
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce input.button.alt,
.woocommerce #respond input#submit,
.wc-block-components-button{
  position:relative; overflow:hidden;
  display:inline-flex; align-items:center; justify-content:center; gap:10px;
  padding:15px 26px;
  background:var(--chalk); color:var(--ink);
  border:1px solid var(--chalk); border-radius:0;
  font-family:var(--f-brand); font-size:10px; letter-spacing:.2em;
  text-transform:uppercase; font-weight:400; line-height:1.2;
  transition:color .4s var(--ease), border-color .4s var(--ease);
}
.woocommerce a.button::before,
.woocommerce button.button::before,
.woocommerce input.button::before{
  content:''; position:absolute; inset:0; background:var(--copper);
  transform:translateY(101%); transition:transform .45s var(--ease-out); z-index:0;
}
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover{
  background:var(--chalk); color:#fff; border-color:var(--copper);
}
.woocommerce a.button:hover::before,
.woocommerce button.button:hover::before,
.woocommerce input.button:hover::before{ transform:translateY(0); }
.woocommerce .button > *{ position:relative; z-index:1; }

/* input[type=submit] não aceita ::before — resolvemos com troca de cor */
.woocommerce input.button:hover,
.woocommerce input.button.alt:hover{ background:var(--copper); color:#fff; border-color:var(--copper); }

/* botão secundário (Atualizar carrinho, Aplicar cupom) */
.woocommerce button.button[name="update_cart"],
.woocommerce button.button[name="apply_coupon"],
.woocommerce a.button.wc-backward{
  background:transparent; color:var(--graf-100); border-color:var(--graf-600);
}
.woocommerce button.button[name="update_cart"]:disabled{ opacity:.35; }

/* botão desabilitado */
.woocommerce button.button:disabled,
.woocommerce button.button.disabled{ background:var(--graf-700); border-color:var(--graf-700); color:var(--graf-400); }


/* ==========================================================================
   04 · FORMULÁRIOS
   ========================================================================== */
.woocommerce input[type="text"],
.woocommerce input[type="email"],
.woocommerce input[type="tel"],
.woocommerce input[type="number"],
.woocommerce input[type="password"],
.woocommerce input[type="search"],
.woocommerce textarea,
.woocommerce select,
.select2-container .select2-selection--single{
  background:var(--graf-900);
  border:1px solid var(--graf-700);
  border-radius:0;
  color:var(--chalk);
  font-family:var(--f-disp); font-size:15px; letter-spacing:.04em;
  padding:12px 14px; height:auto; min-height:46px;
  box-shadow:none;
}
.woocommerce input:focus,
.woocommerce textarea:focus,
.woocommerce select:focus{ outline:0; border-color:var(--copper); }
.woocommerce input::placeholder,
.woocommerce textarea::placeholder{ color:var(--graf-500); }

.woocommerce form .form-row label,
.woocommerce-page form .form-row label{
  font-family:var(--f-brand); font-size:8.5px; letter-spacing:.2em;
  text-transform:uppercase; color:var(--graf-500); margin-bottom:8px;
}
.woocommerce form .form-row .required{ color:var(--copper); border:0; }

/* select2 (país/estado) */
.select2-container--default .select2-selection--single .select2-selection__rendered{ color:var(--chalk); line-height:44px; }
.select2-dropdown{ background:var(--graf-900); border-color:var(--graf-700); border-radius:0; }
.select2-container--default .select2-results__option--highlighted[aria-selected]{ background:var(--copper); }

/* seletor de quantidade */
.woocommerce .quantity .qty{
  width:74px; text-align:center;
  background:var(--graf-900); border:1px solid var(--graf-600); border-radius:0;
  color:var(--chalk); font-family:var(--f-disp); font-weight:600; font-size:16px;
  min-height:46px;
}


/* ==========================================================================
   05 · MENSAGENS DO WOOCOMMERCE
   ========================================================================== */
.woocommerce-message,
.woocommerce-info,
.woocommerce-error,
.woocommerce-noreviews{
  background:var(--ink-2);
  border:1px solid var(--hair);
  border-top:2px solid var(--copper);
  border-radius:0;
  color:var(--graf-100);
  font-family:var(--f-disp); font-size:15px; letter-spacing:.03em;
  padding:16px 20px;
  display:flex; align-items:center; gap:16px; flex-wrap:wrap;
}
.woocommerce-message::before,
.woocommerce-info::before,
.woocommerce-error::before{ display:none; }
.woocommerce-error{ border-top-color:#c05a4a; }
.woocommerce-message .button,
.woocommerce-info .button{ margin-left:auto; padding:11px 18px; }

/* faixa "faltam R$ X para o frete grátis" — ver snippet 07 */
.offmade-frete-gratis{
  border:1px solid var(--hair-cu); background:rgba(176,112,58,.07);
  padding:14px 18px; margin-bottom:22px;
  font-family:var(--f-disp); font-size:14.5px; letter-spacing:.04em;
  text-transform:uppercase; color:var(--copper-soft);
}
.offmade-frete-gratis b{ color:var(--chalk); }
.offmade-frete-gratis .barra{ display:block; height:2px; background:var(--graf-700); margin-top:10px; }
.offmade-frete-gratis .barra i{ display:block; height:100%; background:var(--copper); }


/* ==========================================================================
   06 · LOOP DE PRODUTOS
   Vale para a loja, categorias, relacionados, cross-sells e o widget
   "Products" do Elementor.
   ========================================================================== */
.woocommerce ul.products,
.elementor-wc-products ul.products{
  gap:0;
  border-top:1px solid var(--hair);
  border-left:1px solid var(--hair);
}
.woocommerce ul.products li.product{
  position:relative;
  margin:0; padding:0;
  border-right:1px solid var(--hair);
  border-bottom:1px solid var(--hair);
  background:transparent;
  transition:background .5s var(--ease);
}
.woocommerce ul.products li.product:hover{ background:var(--graf-900); }

.woocommerce ul.products li.product a img{
  margin:0; border-radius:0;
  aspect-ratio:16/10; object-fit:cover;
  filter:grayscale(.2) contrast(1.03);
  transition:transform .8s var(--ease-out), filter .6s var(--ease);
}
.woocommerce ul.products li.product:hover a img{ transform:scale(1.06); filter:grayscale(0) contrast(1.08); }

.woocommerce ul.products li.product .woocommerce-loop-product__link{ display:block; overflow:hidden; }

.woocommerce ul.products li.product .woocommerce-loop-product__title{
  font-size:22px; line-height:1.04;
  padding:20px 24px 8px;
  color:var(--chalk);
}
.woocommerce ul.products li.product .price{
  display:block; padding:0 24px 6px;
  font-family:var(--f-disp); font-weight:600; font-size:24px; color:var(--chalk);
}
.woocommerce ul.products li.product .price del{ color:var(--graf-500); font-size:.62em; }
.woocommerce ul.products li.product .price ins{ text-decoration:none; }

/* parcelamento — ver snippet 08 */
.offmade-parcelas{
  display:block; padding:0 24px 4px;
  font-family:var(--f-brand); font-size:8px; letter-spacing:.16em;
  text-transform:uppercase; color:var(--graf-500);
}

.woocommerce ul.products li.product .button{ margin:14px 24px 24px; }

/* selo de promoção / destaque */
.woocommerce span.onsale,
.woocommerce ul.products li.product .onsale{
  position:absolute; top:14px; right:14px; left:auto;
  min-height:0; min-width:0; line-height:1; border-radius:0;
  background:transparent; color:var(--copper-soft);
  border:1px solid var(--hair-cu);
  padding:5px 10px;
  font-family:var(--f-brand); font-size:8px; letter-spacing:.18em; text-transform:uppercase;
}

/* código do produto (SKU) no card — ver snippet 09 */
.offmade-sku-loop{
  position:absolute; top:14px; left:16px; z-index:2;
  font-family:var(--f-brand); font-size:8.5px; letter-spacing:.18em;
  text-transform:uppercase; color:var(--graf-200);
  text-shadow:0 1px 6px rgba(0,0,0,.8);
}

/* ordenação e contagem */
.woocommerce .woocommerce-ordering select,
.woocommerce .woocommerce-result-count{
  font-family:var(--f-brand); font-size:9px; letter-spacing:.18em; text-transform:uppercase;
  color:var(--graf-400);
}


/* ==========================================================================
   07 · PRODUTO ÚNICO
   ========================================================================== */
.woocommerce div.product .product_title{
  font-size:clamp(32px,4.4vw,58px); line-height:.94; margin-bottom:14px;
}
.woocommerce div.product .price,
.woocommerce div.product span.price{
  font-family:var(--f-disp); font-weight:700;
  font-size:clamp(34px,4vw,48px); line-height:.9; color:var(--chalk);
  margin-bottom:6px;
}
.woocommerce div.product .price del{ color:var(--graf-500); font-size:.5em; }
.woocommerce div.product .woocommerce-product-details__short-description{
  color:var(--graf-300); font-size:15.5px; max-width:46ch; margin-bottom:24px;
}

/* galeria */
.woocommerce div.product div.images img{ border:1px solid var(--hair); }
.woocommerce div.product div.images .flex-control-thumbs li{ padding:0 8px 8px 0; }
.woocommerce div.product div.images .flex-control-thumbs img{
  opacity:.6; border:1px solid var(--hair); transition:opacity .3s var(--ease), border-color .3s var(--ease);
}
.woocommerce div.product div.images .flex-control-thumbs img:hover,
.woocommerce div.product div.images .flex-control-thumbs img.flex-active{
  opacity:1; border-color:var(--copper);
}

/* bloco de compra */
.woocommerce div.product form.cart{
  display:flex; gap:10px; flex-wrap:wrap; align-items:stretch;
  padding:22px 0; border-top:1px solid var(--hair); border-bottom:1px solid var(--hair);
  margin-bottom:24px;
}
.woocommerce div.product form.cart .button{ flex:1 1 220px; }

/* meta (SKU, categorias, tags) */
.woocommerce div.product .product_meta{
  display:flex; flex-direction:column; gap:7px;
  padding-top:18px; border-top:1px solid var(--hair);
  font-family:var(--f-brand); font-size:8.5px; letter-spacing:.18em;
  text-transform:uppercase; color:var(--graf-500);
}
.woocommerce div.product .product_meta a{ color:var(--graf-200); text-decoration:none; }
.woocommerce div.product .product_meta a:hover{ color:var(--copper-soft); }

/* estoque */
.woocommerce div.product .stock{
  display:inline-flex; align-items:center; gap:8px;
  font-family:var(--f-brand); font-size:8.5px; letter-spacing:.18em;
  text-transform:uppercase; color:var(--graf-300);
}
.woocommerce div.product .stock.in-stock::before{
  content:''; width:6px; height:6px; background:#5fa860; border-radius:50%;
  box-shadow:0 0 0 3px rgba(95,168,96,.18);
}
.woocommerce div.product .stock.out-of-stock{ color:#c07a6a; }


/* ==========================================================================
   08 · ABAS E FICHA TÉCNICA
   ========================================================================== */
.woocommerce div.product .woocommerce-tabs ul.tabs{
  padding:0; margin:0 0 26px;
  border-bottom:1px solid var(--hair);
  display:flex; gap:0; flex-wrap:wrap;
}
.woocommerce div.product .woocommerce-tabs ul.tabs::before{ display:none; }
.woocommerce div.product .woocommerce-tabs ul.tabs li{
  background:transparent; border:0; border-radius:0; margin:0; padding:0;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li::before,
.woocommerce div.product .woocommerce-tabs ul.tabs li::after{ display:none; }
.woocommerce div.product .woocommerce-tabs ul.tabs li a{
  display:block; padding:14px 22px;
  font-family:var(--f-brand); font-size:9px; letter-spacing:.2em;
  text-transform:uppercase; color:var(--graf-400); text-decoration:none;
  border-bottom:2px solid transparent;
  transition:color .3s var(--ease), border-color .3s var(--ease);
}
.woocommerce div.product .woocommerce-tabs ul.tabs li a:hover{ color:var(--chalk); }
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a{ color:var(--copper-soft); border-bottom-color:var(--copper); }

.woocommerce div.product .woocommerce-tabs .panel h2{
  font-size:22px; color:var(--copper-soft); letter-spacing:.12em; margin-bottom:16px;
}

/* tabela de atributos = ficha técnica */
.woocommerce table.shop_attributes{ border:1px solid var(--hair); border-collapse:collapse; }
.woocommerce table.shop_attributes th,
.woocommerce table.shop_attributes td{
  border:0; border-bottom:1px solid var(--hair-soft);
  padding:12px 18px; font-style:normal;
  font-family:var(--f-disp); font-size:14px; letter-spacing:.05em; text-transform:uppercase;
}
.woocommerce table.shop_attributes th{ color:var(--graf-500); font-weight:400; width:36%; background:var(--ink-2); }
.woocommerce table.shop_attributes td{ color:var(--graf-100); }
.woocommerce table.shop_attributes tr:nth-child(even) td,
.woocommerce table.shop_attributes tr:nth-child(even) th{ background:transparent; }


/* ==========================================================================
   09 · CARRINHO
   ========================================================================== */
.woocommerce table.shop_table{
  border:1px solid var(--hair); border-radius:0; border-collapse:collapse;
}
.woocommerce table.shop_table th{
  padding:14px 18px; background:var(--ink-2);
  border-bottom:1px solid var(--hair);
  font-family:var(--f-brand); font-size:8px; letter-spacing:.2em;
  text-transform:uppercase; color:var(--graf-500); font-weight:400;
}
.woocommerce table.shop_table td{
  padding:18px; border-top:0; border-bottom:1px solid var(--hair-soft);
  font-family:var(--f-disp); font-size:15px; letter-spacing:.03em; color:var(--graf-100);
  vertical-align:middle;
}
.woocommerce table.shop_table tbody tr{ transition:background .4s var(--ease); }
.woocommerce table.shop_table tbody tr:hover{ background:var(--graf-900); }

.woocommerce table.cart img{ width:76px; border:1px solid var(--hair); }
.woocommerce table.cart td.product-name a{
  font-family:var(--f-disp); font-weight:700; font-size:18px;
  text-transform:uppercase; letter-spacing:.02em; color:var(--chalk); text-decoration:none;
}
.woocommerce table.cart td.product-name a:hover{ color:var(--copper-soft); }
.woocommerce table.cart td.product-subtotal{ color:var(--chalk); font-weight:600; }

.woocommerce a.remove{
  width:30px; height:30px; line-height:28px; border-radius:0;
  border:1px solid var(--graf-700); color:var(--graf-400)!important;
  font-size:16px; font-weight:400;
  transition:.3s var(--ease);
}
.woocommerce a.remove:hover{
  background:transparent!important; border-color:var(--copper); color:var(--copper-soft)!important;
}

.woocommerce .cart .actions{ padding:18px!important; }
.woocommerce .cart .actions .coupon{ display:flex; gap:9px; flex-wrap:wrap; }
.woocommerce .cart .actions .coupon input{ min-width:180px; }

/* totais */
.woocommerce .cart_totals{
  border:1px solid var(--hair); background:var(--ink-2); padding:26px;
}
.woocommerce .cart_totals h2{
  font-size:24px; letter-spacing:.04em;
  padding-bottom:16px; margin-bottom:18px; border-bottom:1px solid var(--hair);
}
.woocommerce .cart_totals table.shop_table{ border:0; }
.woocommerce .cart_totals table.shop_table th,
.woocommerce .cart_totals table.shop_table td{
  background:transparent; padding:10px 0; border-bottom:1px solid var(--hair-soft);
  text-transform:uppercase; font-family:var(--f-disp); font-size:14.5px;
}
.woocommerce .cart_totals tr.order-total td{
  font-family:var(--f-disp); font-weight:700; font-size:28px; color:var(--chalk);
}
.woocommerce .cart_totals .checkout-button{ width:100%; margin-top:18px; }

.woocommerce-cart .cart-empty{
  font-family:var(--f-disp); font-size:22px; text-transform:uppercase;
  letter-spacing:.05em; color:var(--graf-300);
}


/* ==========================================================================
   10 · CÁLCULO DE FRETE / MELHOR ENVIO
   ========================================================================== */
.woocommerce .shipping-calculator-button{
  font-family:var(--f-brand); font-size:8.5px; letter-spacing:.18em;
  text-transform:uppercase; color:var(--copper-soft); text-decoration:none;
}
.woocommerce-shipping-calculator{ padding-top:14px; }
.woocommerce-shipping-calculator p{ margin-bottom:10px; }

/* lista de métodos (Melhor Envio devolve PAC, SEDEX, Jadlog, Loggi…) */
#shipping_method,
ul#shipping_method{ list-style:none; margin:0; padding:0; }
#shipping_method li{
  display:flex; align-items:center; gap:11px;
  padding:11px 0; border-bottom:1px solid var(--hair-soft);
  font-family:var(--f-disp); font-size:14px; letter-spacing:.03em;
  text-transform:uppercase; color:var(--graf-200);
}
#shipping_method li input[type="radio"]{ accent-color:var(--copper); width:15px; height:15px; margin:0; }
#shipping_method li label{ display:flex; width:100%; gap:10px; align-items:baseline; margin:0; cursor:pointer; }
#shipping_method li label .woocommerce-Price-amount{ margin-left:auto; color:var(--chalk); font-weight:600; }

/* prazo entregue pelo Melhor Envio */
#shipping_method li .melhor-envio-delivery-time,
#shipping_method li small{
  font-family:var(--f-brand); font-size:8px; letter-spacing:.16em;
  text-transform:uppercase; color:var(--graf-500);
}

.woocommerce-shipping-destination{ font-size:13px; color:var(--graf-400); }


/* ==========================================================================
   11 · CHECKOUT
   ========================================================================== */
.woocommerce-checkout h3{
  font-family:var(--f-disp); font-weight:800; font-size:22px;
  text-transform:uppercase; letter-spacing:.04em; color:var(--chalk);
  padding-bottom:14px; margin-bottom:20px; border-bottom:1px solid var(--hair);
}
.woocommerce-checkout #order_review{
  border:1px solid var(--hair); background:var(--ink-2); padding:26px;
}
.woocommerce-checkout #order_review_heading{ margin-top:0; }
.woocommerce-checkout #payment{ background:transparent; border-radius:0; }
.woocommerce-checkout #payment ul.payment_methods{
  border-bottom:1px solid var(--hair); padding:0 0 18px;
}
.woocommerce-checkout #payment ul.payment_methods li{
  display:flex; align-items:center; gap:11px; flex-wrap:wrap;
  padding:13px 0; border-bottom:1px solid var(--hair-soft);
  font-family:var(--f-disp); font-size:15px; letter-spacing:.03em;
  text-transform:uppercase; color:var(--graf-200);
}
.woocommerce-checkout #payment ul.payment_methods li input[type="radio"]{ accent-color:var(--copper); }
.woocommerce-checkout #payment div.payment_box{
  background:var(--graf-900); border:1px solid var(--hair); border-radius:0;
  color:var(--graf-300); font-size:13.5px; text-transform:none;
  font-family:var(--f-body); width:100%; margin-top:10px;
}
.woocommerce-checkout #payment div.payment_box::before{ display:none; }
.woocommerce-checkout #place_order{ width:100%; margin-top:18px; }

.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper{ font-size:13px; color:var(--graf-400); }

/* pedido recebido */
.woocommerce ul.order_details{
  border:1px solid var(--hair); padding:22px; margin:0 0 28px;
  display:flex; flex-wrap:wrap; gap:26px;
}
.woocommerce ul.order_details li{
  border:0; margin:0; padding:0;
  font-family:var(--f-brand); font-size:8px; letter-spacing:.18em;
  text-transform:uppercase; color:var(--graf-500);
}
.woocommerce ul.order_details li strong{
  display:block; margin-top:7px;
  font-family:var(--f-disp); font-size:18px; letter-spacing:.03em; color:var(--chalk);
}


/* ==========================================================================
   12 · MINHA CONTA
   ========================================================================== */
.woocommerce-account .woocommerce-MyAccount-navigation ul{ list-style:none; margin:0; padding:0; border:1px solid var(--hair); }
.woocommerce-account .woocommerce-MyAccount-navigation li{ border-bottom:1px solid var(--hair-soft); }
.woocommerce-account .woocommerce-MyAccount-navigation li a{
  display:block; padding:14px 18px; text-decoration:none;
  font-family:var(--f-brand); font-size:9px; letter-spacing:.18em;
  text-transform:uppercase; color:var(--graf-300);
  transition:background .3s var(--ease), color .3s var(--ease);
}
.woocommerce-account .woocommerce-MyAccount-navigation li a:hover,
.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a{
  background:var(--graf-900); color:var(--copper-soft);
}


/* ==========================================================================
   13 · CABEÇALHO E RODAPÉ (Elementor)
   Classes aplicadas manualmente nos widgets — ver o guia.
   ========================================================================== */
.om-header{ transition:background .45s var(--ease), padding .45s var(--ease); }
.om-header.elementor-sticky--effects{
  background:rgba(8,9,10,.84)!important;
  backdrop-filter:blur(14px) saturate(120%);
  border-bottom:1px solid var(--hair);
}
.om-header .elementor-nav-menu a{
  font-family:var(--f-brand); font-size:9.5px; letter-spacing:.2em;
  text-transform:uppercase; color:var(--graf-300);
}
.om-header .elementor-nav-menu a:hover{ color:var(--chalk); }
.om-header .elementor-nav-menu a.elementor-item::after{ background:var(--copper)!important; }

/* contador do menu-carrinho */
.om-header .elementor-menu-cart__toggle .elementor-button-icon-qty{
  background:var(--copper)!important; color:#fff!important;
  border-radius:0; font-family:var(--f-disp); font-weight:700;
}
.elementor-menu-cart__main{ background:var(--ink-2); border:1px solid var(--hair); }
.elementor-menu-cart__product{ border-bottom:1px solid var(--hair-soft)!important; }

.om-footer a{ color:var(--graf-300); text-decoration:none; }
.om-footer a:hover{ color:var(--copper-soft); }

/* faixa serrilhada e diagonal de cobre, reaproveitáveis em qualquer seção */
.om-knurl{ height:12px; background:repeating-linear-gradient(115deg,var(--hair) 0 1px,transparent 1px 7px); }
.om-diag{
  position:absolute; height:1px; width:130%; left:-15%; z-index:0; pointer-events:none;
  background:linear-gradient(90deg,transparent,var(--copper) 35%,var(--copper-soft) 50%,var(--copper) 65%,transparent);
  opacity:.5; transform:rotate(-13deg);
}


/* ==========================================================================
   14 · DETALHES FINAIS
   ========================================================================== */
/* breadcrumb */
.woocommerce .woocommerce-breadcrumb{
  font-family:var(--f-brand); font-size:8.5px; letter-spacing:.18em;
  text-transform:uppercase; color:var(--graf-500);
  padding-bottom:22px; margin-bottom:30px; border-bottom:1px solid var(--hair);
}
.woocommerce .woocommerce-breadcrumb a{ color:var(--graf-400); text-decoration:none; }
.woocommerce .woocommerce-breadcrumb a:hover{ color:var(--copper-soft); }

/* paginação */
.woocommerce nav.woocommerce-pagination ul{ border:0; display:flex; gap:6px; }
.woocommerce nav.woocommerce-pagination ul li{ border:0; }
.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span{
  border:1px solid var(--graf-700); padding:10px 15px;
  font-family:var(--f-disp); font-size:14px; color:var(--graf-300);
}
.woocommerce nav.woocommerce-pagination ul li span.current{
  background:var(--copper); border-color:var(--copper); color:#fff;
}

/* avaliações */
.woocommerce #reviews #comments ol.commentlist li .comment-text{
  border:1px solid var(--hair); border-radius:0; background:var(--ink-2); padding:20px;
}
.woocommerce .star-rating span::before,
.woocommerce p.stars a::before{ color:var(--copper); }

/* acessibilidade: foco visível em tudo que é clicável */
a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible{ outline:2px solid var(--copper); outline-offset:2px; }

/* respeitar quem pediu menos movimento */
@media (prefers-reduced-motion:reduce){
  *{ animation-duration:.001ms!important; transition-duration:.001ms!important; }
}

/* ==========================================================================
   15 · CLASSES CRIADAS PELOS SNIPPETS
   Só têm efeito se o snippet correspondente estiver ativo.
   ========================================================================== */

/* 03 · preço no Pix */
.offmade-pix{
  font-family:var(--f-disp); font-size:17px; letter-spacing:.03em;
  color:var(--copper-soft); margin:-4px 0 18px;
}
.offmade-pix em{ font-style:normal; color:var(--graf-400); font-size:.8em; }

/* 07 · selos de compra */
.offmade-selos-compra{
  list-style:none; margin:22px 0 0; padding:0;
  display:grid; gap:1px; background:var(--hair); border:1px solid var(--hair);
}
.offmade-selos-compra li{
  background:var(--ink); padding:14px 16px; margin:0;
  font-size:13.5px; color:var(--graf-300);
  display:flex; gap:14px; align-items:baseline;
}
.offmade-selos-compra b{
  flex:none; min-width:74px; font-weight:400;
  font-family:var(--f-brand); font-size:8px; letter-spacing:.18em;
  text-transform:uppercase; color:var(--copper-soft);
}

/* 09 · compatibilidade em destaque */
.offmade-compat{
  display:flex; gap:12px; align-items:baseline; flex-wrap:wrap;
  border:1px solid var(--hair-cu); padding:12px 16px; margin-bottom:20px;
  font-family:var(--f-disp); font-size:15px; letter-spacing:.05em;
  text-transform:uppercase; color:var(--chalk);
}
.offmade-compat span{
  font-family:var(--f-brand); font-size:8px; letter-spacing:.18em; color:var(--graf-500);
}

/* 12 · estoque baixo */
.woocommerce div.product .stock.in-stock:not(:empty){ font-weight:400; }
