/* ==========================================================================
   WooCommerce pages (shop, product, cart, checkout, account) and WP bits.
   ========================================================================== */

.wc-page{padding:48px 0 96px;background-image:var(--dot-ink);background-size:14px 14px}
.wc-page .woocommerce-breadcrumb{margin-bottom:24px}
.woocommerce-products-header__title,.wc-page h1.page-title,.wc-page .product_title{font-family:var(--display);font-weight:400;text-transform:uppercase;line-height:1;letter-spacing:-.01em}
.woocommerce-products-header__title,.wc-page h1.page-title{font-size:clamp(32px,4.4vw,56px);margin-bottom:12px}
.term-description,.woocommerce-products-header p{color:var(--muted);max-width:60ch}
.woocommerce-result-count{font-family:var(--cond);font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}

/* ---------- forms ---------- */
.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,.woocommerce form .form-row select,
.woocommerce .woocommerce-ordering select,.select2-container--default .select2-selection--single,
.wc-block-components-text-input input,.wc-block-components-combobox .wc-block-components-combobox-control input,
.wc-blocks-components-select .wc-blocks-components-select__select,.wc-block-components-textarea{
  border:2px solid var(--ink)!important;border-radius:0!important;background:var(--paper-3)!important;color:var(--ink);font-family:var(--body)}
.woocommerce form .form-row input.input-text,.woocommerce form .form-row select{padding:11px 12px;line-height:1.3}
.select2-container--default .select2-selection--single{height:auto;padding:7px 4px}
.woocommerce form .form-row label{font-family:var(--cond);font-weight:700;font-size:15px;letter-spacing:.04em;text-transform:uppercase}
.woocommerce form .form-row .required{color:var(--accent-deep);text-decoration:none}
.woocommerce form .form-row.woocommerce-invalid input.input-text{border-color:var(--accent)!important}

/* ---------- buttons ---------- */
.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.woocommerce #respond input#submit,
.woocommerce a.button.alt,.woocommerce button.button.alt,.woocommerce input.button.alt,
.wc-block-components-button:not(.is-link),.wp-element-button{
  background:var(--accent-deep)!important;color:var(--on-accent)!important;border:2px solid var(--ink)!important;border-radius:0!important;
  font-family:var(--display)!important;font-weight:400!important;font-size:13px!important;letter-spacing:.06em;text-transform:uppercase;
  padding:14px 22px;line-height:1.1;box-shadow:4px 4px 0 var(--ink);transition:transform .15s,box-shadow .15s,background .15s}
.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce input.button:hover,.wc-block-components-button:not(.is-link):hover{
  background:var(--ink)!important;color:var(--paper)!important;transform:translate(-1px,-1px);box-shadow:5px 5px 0 var(--accent)}
.woocommerce a.button.disabled,.woocommerce button.button:disabled,.woocommerce button.button:disabled[disabled]{opacity:.5;box-shadow:none}

/* ---------- product grid (shop, related, search): same cards as the home (.card-min) ---------- */
.woocommerce ul.products{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:56px 36px;margin:32px 0 0!important;padding:0}
.woocommerce ul.products::before,.woocommerce ul.products::after{display:none!important}
.woocommerce ul.products li.product{width:auto!important;margin:0!important;padding:0!important;float:none!important;text-align:center}
.woocommerce span.onsale{min-height:0;min-width:0;line-height:1;padding:6px 10px;border-radius:0;background:var(--gold);color:var(--ink);border:2px solid var(--ink);font-family:var(--cond);font-weight:800;text-transform:uppercase;top:10px;left:10px;right:auto;margin:0}
.woocommerce nav.woocommerce-pagination ul{border:0;display:flex;gap:8px;justify-content:center;margin-top:36px}
.woocommerce nav.woocommerce-pagination ul li{border:0}
.woocommerce nav.woocommerce-pagination ul li a,.woocommerce nav.woocommerce-pagination ul li span{min-width:42px;padding:10px;border:2px solid var(--ink);background:var(--paper-3);font-family:var(--display);color:var(--ink)}
.woocommerce nav.woocommerce-pagination ul li span.current{background:var(--accent-deep);color:var(--on-accent)}

/* ---------- single product ---------- */
.wc-page--product div.product{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:24px 56px}
.wc-page--product div.product .woocommerce-product-gallery,.wc-page--product div.product .summary{width:auto!important;float:none!important;margin:0!important}
.wc-page--product .woocommerce-tabs,.wc-page--product .related,.wc-page--product .up-sells{grid-column:1/-1}
/* cover with the same soft shadow as the cards (on the slider viewport, or on the wrapper for a single image) */
.woocommerce div.product div.images .flex-viewport,
.woocommerce div.product div.images>.woocommerce-product-gallery__wrapper{box-shadow:12px 14px 22px -6px rgba(43,30,22,.42)}
.woocommerce div.product div.images .flex-control-thumbs{display:flex;gap:12px;margin-top:22px}
.woocommerce div.product div.images .flex-control-thumbs li{width:70px!important}
.woocommerce div.product div.images .flex-control-thumbs li img{box-shadow:4px 5px 10px -3px rgba(43,30,22,.4);opacity:.6;transition:opacity .15s}
.woocommerce div.product div.images .flex-control-thumbs li img.flex-active,.woocommerce div.product div.images .flex-control-thumbs li img:hover{opacity:1}
.wc-page .product_title{font-size:clamp(34px,4vw,52px)}
.woocommerce div.product p.price,.woocommerce div.product span.price{font-family:var(--display);font-size:32px!important;color:var(--accent-deep)!important;margin:14px 0 18px}
.woocommerce div.product .woocommerce-product-details__short-description{font-size:17px;color:var(--ink-2);line-height:1.7}
.woocommerce div.product form.cart{display:flex;flex-wrap:wrap;align-items:stretch;gap:12px;margin:26px 0}
/* WooCommerce's clearfix pseudo-elements become flex items and push the fields right */
.woocommerce div.product form.cart::before,.woocommerce div.product form.cart::after{display:none}
.woocommerce div.product form.cart .quantity .qty{width:80px;height:100%;min-height:52px;border:2px solid var(--ink);background:var(--paper-3);font-family:var(--display);font-size:16px}
.woocommerce div.product form.cart .single_add_to_cart_button{padding:16px 30px;font-size:14px!important}
/* Tabs as underlined links, like "Ver todas as edições" on the home; the text sits on the page, no box. */
.woocommerce div.product .woocommerce-tabs{margin-top:28px}
.woocommerce div.product .woocommerce-tabs ul.tabs{padding:0;margin:0;display:flex;gap:32px;border-bottom:2px solid var(--line)}
.woocommerce div.product .woocommerce-tabs ul.tabs::before,.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,.woocommerce div.product .woocommerce-tabs ul.tabs li.active{margin:0 0 -2px;padding:0;border:0;border-radius:0;background:none}
.woocommerce div.product .woocommerce-tabs ul.tabs li a{display:block;padding:10px 0;border-bottom:3px solid transparent;font-family:var(--cond);font-weight:800;font-size:16px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a{color:var(--ink);border-bottom-color:var(--accent)}
.woocommerce div.product .woocommerce-tabs .panel{padding:24px 0 0;margin:0;background:none;border:0;max-width:75ch;font-size:17px;line-height:1.75;color:var(--ink-2)}
.woocommerce div.product .woocommerce-tabs .panel h2:first-child{display:none}
/* "Produtos relacionados" with the same title as the home sections */
.related>h2,.up-sells>h2{font-family:var(--display);font-weight:400;font-size:clamp(30px,4vw,50px);line-height:.98;letter-spacing:-.01em;text-transform:uppercase;margin-top:80px}
.aol-product-authors{margin-top:18px}

/* ---------- notices ---------- */
.woocommerce-message,.woocommerce-info,.woocommerce-error,.wc-block-components-notice-banner{border:2px solid var(--ink)!important;border-top-width:6px!important;border-radius:0!important;background:var(--paper-3)!important;color:var(--ink)!important}
.woocommerce-message{border-top-color:var(--gold)!important}
.woocommerce-error{border-top-color:var(--accent)!important}
.woocommerce-message::before,.woocommerce-info::before{color:var(--accent-deep)}

/* ---------- cart, checkout, account (classic WooCommerce: shortcodes) ---------- */
.wc-entry{font-size:16px}
.wc-entry h2,.wc-entry h3{font-family:var(--display);font-weight:400;font-size:22px;line-height:1.1;letter-spacing:.01em;text-transform:uppercase;margin:0 0 18px}
.wc-entry .amount{font-family:var(--display);font-weight:400;letter-spacing:.01em}
/* :where() keeps these plain links weak, so menus and cards below can style their own. */
.wc-entry :where(a:not(.button):not(.remove)){color:var(--accent-deep);text-decoration:underline;text-underline-offset:3px}
.wc-entry :where(a:not(.button):not(.remove)):hover{color:var(--ink)}
/* 16px inputs: smaller text makes phones zoom in when a field is tapped. */
.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,.woocommerce form .form-row select,.woocommerce .quantity .qty,#coupon_code{font-size:16px}
.woocommerce form .form-row{margin:0 0 16px;padding:0}
.woocommerce form .form-row label{margin-bottom:6px;line-height:1.2}
.woocommerce form .form-row label.checkbox,.woocommerce form .form-row label.woocommerce-form__label-for-checkbox{display:inline-flex;align-items:center;gap:10px;text-transform:none;font-family:var(--body);font-weight:500;font-size:16px;letter-spacing:0}
.woocommerce form .form-row input[type=checkbox],.woocommerce form input[type=checkbox]{width:20px;height:20px;accent-color:var(--accent-deep);margin:0}
.woocommerce form .form-row textarea{min-height:110px;padding:12px}
.woocommerce-cart .quantity .qty{width:76px;height:46px;padding:0 6px;border:2px solid var(--ink);border-radius:0;background:var(--paper-3);color:var(--ink);font-family:var(--display);text-align:center}
.woocommerce .button.button-secondary,.woocommerce button[name=update_cart],.woocommerce button[name=apply_coupon]{background:var(--paper-3)!important;color:var(--ink)!important}
.woocommerce button[name=update_cart]:hover,.woocommerce button[name=apply_coupon]:hover{background:var(--ink)!important;color:var(--paper)!important}

/* tables: cart, review, orders, order details */
.woocommerce table.shop_table{border:2px solid var(--ink);border-radius:0;background:var(--paper-3);border-collapse:collapse;margin:0 0 28px;box-shadow:6px 6px 0 var(--ink)}
.woocommerce table.shop_table th,.woocommerce table.shop_table td{padding:16px 18px;border-top:1px solid var(--line);vertical-align:middle;line-height:1.4}
.woocommerce table.shop_table thead th{border-top:0;background:var(--ink);color:var(--paper);font-family:var(--cond);font-weight:800;font-size:15px;letter-spacing:.08em;text-transform:uppercase}
.woocommerce table.shop_table tbody th,.woocommerce table.shop_table tfoot th{font-family:var(--cond);font-weight:800;font-size:16px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-2)}
.woocommerce table.shop_table tfoot td,.woocommerce table.shop_table tfoot th{border-top:1px solid var(--line)}
.woocommerce table.shop_table .order-total th,.woocommerce table.shop_table .order-total td{border-top:2px solid var(--ink);background:var(--paper-2)}
.woocommerce table.shop_table .order-total .amount{font-size:24px;color:var(--accent-deep)}
.woocommerce table.shop_table .product-name,.woocommerce table.shop_table td.woocommerce-table__product-name{font-family:var(--cond);font-weight:800;font-size:19px;line-height:1.1;letter-spacing:.02em;text-transform:uppercase}
.woocommerce table.shop_table .product-name a{color:var(--ink);text-decoration:none}
.woocommerce table.shop_table .product-name a:hover{color:var(--accent-deep)}
.woocommerce table.shop_table td .product-quantity,.woocommerce table.shop_table strong.product-quantity{font-family:var(--cond);color:var(--muted)}
.woocommerce table.shop_table .product-name .variation,.woocommerce table.shop_table .wc-item-meta{font-family:var(--body);font-weight:400;font-size:14px;text-transform:none;letter-spacing:0;color:var(--muted)}
.woocommerce ul#shipping_method li{margin:0;font-size:15px}
.woocommerce ul#shipping_method li label{font-family:var(--cond);font-weight:800;font-size:17px;letter-spacing:.04em;text-transform:uppercase}
.woocommerce-shipping-destination,.woocommerce-shipping-contents{margin-top:6px;font-size:14px;color:var(--muted)}
.woocommerce .shipping-calculator-button{font-size:14px}

/* cart */
.woocommerce-cart .wc-entry>.woocommerce{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:0 44px;align-items:start}
.woocommerce-cart .wc-entry>.woocommerce>*{grid-column:1/-1}
.woocommerce-cart .wc-entry>.woocommerce>.woocommerce-cart-form{grid-column:1}
.woocommerce-cart .wc-entry>.woocommerce>.cart-collaterals{grid-column:2;position:sticky;top:120px}
.woocommerce-cart .cart-collaterals .cart_totals{float:none;width:100%;padding:22px;border:2px solid var(--ink);background:var(--paper-3);box-shadow:6px 6px 0 var(--ink)}
.woocommerce-cart .cart-collaterals .cart_totals table.shop_table{box-shadow:none;border:0;background:none;margin-bottom:18px}
.woocommerce-cart .cart-collaterals .cart_totals table.shop_table th,.woocommerce-cart .cart-collaterals .cart_totals table.shop_table td{padding:14px 0}
.woocommerce-cart .cart-collaterals .cart_totals table.shop_table th{width:34%}
.woocommerce-cart .cart-collaterals .cart_totals table.shop_table tr:first-child th,.woocommerce-cart .cart-collaterals .cart_totals table.shop_table tr:first-child td{border-top:0}
.woocommerce-cart .cart-collaterals .cart_totals .order-total th,.woocommerce-cart .cart-collaterals .cart_totals .order-total td{background:none}
.woocommerce-cart .wc-proceed-to-checkout{padding:0}
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button{display:block;margin:0;padding:18px;font-size:14px!important;text-align:center}
.woocommerce-cart table.cart .product-thumbnail{width:94px;padding-right:0}
.woocommerce-cart table.cart img,.woocommerce-cart table.cart .product-thumbnail img{display:block;width:70px!important;height:auto;aspect-ratio:2/2.9;object-fit:cover;border:2px solid var(--ink);box-shadow:3px 3px 0 var(--accent)}
.woocommerce-cart table.cart .product-remove{width:54px;text-align:center}
.woocommerce-cart table.cart .product-price .amount{font-size:16px;color:var(--ink-2)}
.woocommerce-cart table.cart .product-subtotal .amount{font-size:18px;color:var(--accent-deep)}
.woocommerce-cart table.cart a.remove{width:32px;height:32px;display:grid;place-items:center;margin:auto;line-height:1;font-size:22px;font-weight:400;border:2px solid var(--ink);border-radius:50%;background:var(--paper);color:var(--accent-deep)!important;transition:background .15s,color .15s}
.woocommerce-cart table.cart a.remove:hover{background:var(--accent-deep)!important;color:var(--on-accent)!important}
.woocommerce-cart table.cart td.actions{padding:18px;background:var(--paper-2)}
.woocommerce-cart table.cart td.actions .coupon{display:flex;flex-wrap:wrap;gap:10px;align-items:stretch}
.woocommerce-cart table.cart td.actions .coupon::before,.woocommerce-cart table.cart td.actions .coupon::after{display:none}
.woocommerce-cart table.cart td.actions .coupon .input-text,#coupon_code{float:none;width:230px;margin:0;padding:11px 12px;border:2px solid var(--ink);border-radius:0;background:var(--paper-3);color:var(--ink);line-height:1.3}
.woocommerce-cart table.cart td.actions .coupon .button,.woocommerce-cart table.cart td.actions>.button{float:none;margin:0}
.woocommerce-cart table.cart td.actions>.button{float:right}
.woocommerce-cart table.cart td.actions>.button:disabled{display:none}
.woocommerce-cart .cross-sells{display:none}
/* empty cart */
.woocommerce-cart .wc-empty-cart-message .cart-empty{margin:0 auto 26px;max-width:620px;padding:30px 24px;text-align:center;font-family:var(--cond);font-weight:800;font-size:22px;letter-spacing:.04em;text-transform:uppercase}
.woocommerce-cart .wc-empty-cart-message .cart-empty::before{display:none}
.woocommerce-cart .return-to-shop{text-align:center}
.woocommerce-cart .return-to-shop .button{padding:18px 30px;font-size:14px!important}

/* checkout */
/* The last row is flexible: the long column of fields stretches it, not the "Seu pedido" heading row. */
.woocommerce-checkout form.checkout{display:grid;grid-template-columns:minmax(0,1fr) 420px;grid-template-rows:auto auto 1fr;gap:0 48px;align-items:start}
.woocommerce-checkout form.checkout>*{grid-column:1/-1}
.woocommerce-checkout form.checkout>#customer_details{grid-column:1;grid-row:2/4}
.woocommerce-checkout form.checkout>#order_review_heading{grid-column:2;grid-row:2;margin:0;padding:18px 22px 0;border:2px solid var(--ink);border-bottom:0;background:var(--paper-3)}
.woocommerce-checkout form.checkout>#order_review{grid-column:2;grid-row:3;padding:6px 22px 22px;border:2px solid var(--ink);border-top:0;background:var(--paper-3);box-shadow:6px 6px 0 var(--ink)}
.woocommerce-checkout form.checkout>.woocommerce-NoticeGroup{grid-row:1}
.woocommerce-checkout #customer_details.col2-set .col-1,.woocommerce-checkout #customer_details.col2-set .col-2{float:none;width:100%}
.woocommerce-checkout #customer_details .col-2{margin-top:18px}
.woocommerce-checkout .woocommerce-billing-fields>h3,.woocommerce-checkout .woocommerce-additional-fields>h3,.woocommerce-checkout #ship-to-different-address{margin:0 0 20px;padding-bottom:12px;border-bottom:3px solid var(--ink)}
.woocommerce-checkout #ship-to-different-address{font-size:20px}
.woocommerce-checkout #ship-to-different-address label{display:flex;align-items:center;gap:12px;cursor:pointer}
.woocommerce-checkout #ship-to-different-address input{width:20px;height:20px;accent-color:var(--accent-deep);margin:0}
.woocommerce-checkout .woocommerce-shipping-fields .shipping_address{margin-bottom:12px}
.woocommerce-checkout .woocommerce-billing-fields__field-wrapper,.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper{display:flow-root}
.woocommerce-checkout table.shop_table.woocommerce-checkout-review-order-table{box-shadow:none;border:0;background:none;margin:0 0 20px}
.woocommerce-checkout table.shop_table.woocommerce-checkout-review-order-table thead{display:none}
.woocommerce-checkout table.shop_table.woocommerce-checkout-review-order-table th,.woocommerce-checkout table.shop_table.woocommerce-checkout-review-order-table td{padding:13px 0}
.woocommerce-checkout table.shop_table.woocommerce-checkout-review-order-table tbody tr:first-child td{border-top:0}
.woocommerce-checkout table.shop_table.woocommerce-checkout-review-order-table td.product-name{font-size:17px}
.woocommerce-checkout table.shop_table.woocommerce-checkout-review-order-table td.product-total{text-align:right;white-space:nowrap}
.woocommerce-checkout table.shop_table.woocommerce-checkout-review-order-table tfoot td{text-align:right}
.woocommerce-checkout table.shop_table.woocommerce-checkout-review-order-table .order-total th,.woocommerce-checkout table.shop_table.woocommerce-checkout-review-order-table .order-total td{background:none}
.woocommerce-checkout #payment{background:none;border:0;border-radius:0}
.woocommerce-checkout #payment ul.payment_methods{padding:0 0 14px;border-bottom:1px solid var(--line)}
.woocommerce-checkout #payment ul.payment_methods li{padding:10px 0;line-height:1.4}
.woocommerce-checkout #payment ul.payment_methods li>label{font-family:var(--cond);font-weight:800;font-size:18px;letter-spacing:.04em;text-transform:uppercase;cursor:pointer}
.woocommerce-checkout #payment ul.payment_methods li input[type=radio]{accent-color:var(--accent-deep);width:18px;height:18px;margin:0 8px 0 0;vertical-align:-3px}
.woocommerce-checkout #payment div.payment_box{margin:10px 0 4px;padding:14px 16px;border:2px solid var(--ink);border-radius:0;background:var(--paper);color:var(--ink-2);font-size:15px}
.woocommerce-checkout #payment div.payment_box::before{display:none}
.woocommerce-checkout #payment div.form-row.place-order{margin:0;padding:16px 0 0}
.woocommerce-checkout .woocommerce-privacy-policy-text p,.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper{font-size:13px;line-height:1.5;color:var(--muted)}
.woocommerce-checkout #place_order{float:none;display:block;width:100%;margin-top:16px;padding:20px;font-size:15px!important}
.woocommerce-form-coupon-toggle .woocommerce-info{margin-bottom:20px}
.woocommerce-checkout form.checkout_coupon{display:flex;flex-wrap:wrap;gap:10px;align-items:flex-end;margin:0 0 24px;padding:18px;border:2px solid var(--ink);border-radius:0;background:var(--paper-3)}
.woocommerce-checkout form.checkout_coupon p:not(.form-row){width:100%;margin:0}
.woocommerce-checkout form.checkout_coupon .form-row{float:none;width:auto;margin:0}
.woocommerce-checkout form.checkout_coupon .clear{display:none}

/* order received and order details */
.woocommerce-order>p.woocommerce-thankyou-order-received,.woocommerce-order>.woocommerce-notice--success{margin:0 0 24px;font-family:var(--display);font-size:clamp(22px,2.6vw,30px);line-height:1.15;text-transform:uppercase;color:var(--ink)}
.woocommerce ul.order_details{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:0;margin:0 0 36px;padding:0;border:2px solid var(--ink);background:var(--paper-3);box-shadow:6px 6px 0 var(--ink)}
.woocommerce ul.order_details::before,.woocommerce ul.order_details::after{display:none}
.woocommerce ul.order_details li{float:none;margin:0;padding:16px 18px;border:0;border-left:1px solid var(--line);font-family:var(--cond);font-weight:700;font-size:14px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.woocommerce ul.order_details li:first-child{border-left:0}
.woocommerce ul.order_details li strong{display:block;margin-top:6px;font-family:var(--display);font-weight:400;font-size:17px;letter-spacing:0;text-transform:none;color:var(--ink);overflow-wrap:anywhere}
.woocommerce-order>p:not([class]){margin:0 0 24px;color:var(--ink-2)}
.woocommerce .woocommerce-customer-details address,.woocommerce-account .woocommerce-Address address{padding:18px 20px;border:2px solid var(--ink);border-radius:0;background:var(--paper-3);font-style:normal;line-height:1.6;box-shadow:6px 6px 0 var(--ink)}
.woocommerce .woocommerce-customer-details .col2-set{display:grid;grid-template-columns:1fr 1fr;gap:28px}
.woocommerce .woocommerce-customer-details .col2-set .col-1,.woocommerce .woocommerce-customer-details .col2-set .col-2{float:none;width:auto}
.woocommerce .woocommerce-customer-details .col2-set::before,.woocommerce .woocommerce-customer-details .col2-set::after{display:none}
.woocommerce-customer-details--phone,.woocommerce-customer-details--email{margin-top:8px}
.woocommerce .woocommerce-order-details,.woocommerce .woocommerce-customer-details{margin-bottom:36px}
.woocommerce-order-details .order-again{margin-top:8px}
mark.order-number,mark.order-date,mark.order-status{background:none;color:var(--ink);font-weight:700}

/* account */
.woocommerce-account .wc-entry>.woocommerce{display:grid;grid-template-columns:250px minmax(0,1fr);gap:40px;align-items:start}
.woocommerce-account .wc-entry>.woocommerce>*{grid-column:1/-1}
.woocommerce-account .wc-entry>.woocommerce>.woocommerce-MyAccount-navigation{grid-column:1;float:none;width:auto}
.woocommerce-account .wc-entry>.woocommerce>.woocommerce-MyAccount-content{grid-column:2;float:none;width:auto;min-width:0}
.woocommerce-account .woocommerce-MyAccount-navigation ul{display:grid;gap:8px;margin:0;padding:0;list-style:none}
.woocommerce-account .woocommerce-MyAccount-navigation a{display:block;padding:12px 16px;border:2px solid var(--ink);background:var(--paper-3);color:var(--ink);font-family:var(--cond);font-weight:800;font-size:16px;text-transform:uppercase;letter-spacing:.06em;text-decoration:none;transition:transform .15s,box-shadow .15s}
.woocommerce-account .woocommerce-MyAccount-navigation a:hover{transform:translate(-1px,-1px);box-shadow:3px 3px 0 var(--ink)}
.woocommerce-account .woocommerce-MyAccount-navigation .is-active a{background:var(--ink);color:var(--paper);box-shadow:3px 3px 0 var(--accent)}
.woocommerce-account .woocommerce-MyAccount-navigation-link--customer-logout a{border-style:dashed;background:none;color:var(--muted)}
.woocommerce-MyAccount-content>p{margin:0 0 16px;font-size:17px;line-height:1.65;color:var(--ink-2);max-width:68ch}
.woocommerce-MyAccount-content>p:first-of-type{font-family:var(--cond);font-weight:700;font-size:22px;letter-spacing:.02em;color:var(--ink)}
.aol-account-shortcuts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:28px}
.aol-account-shortcuts a{display:flex;flex-direction:column;gap:6px;padding:20px;border:2px solid var(--ink);background:var(--paper-3);color:var(--ink)!important;text-decoration:none!important;box-shadow:4px 4px 0 var(--ink);transition:transform .15s,box-shadow .15s}
.aol-account-shortcuts a:hover{transform:translate(-2px,-2px);box-shadow:6px 6px 0 var(--accent)}
.aol-account-shortcuts b{font-family:var(--display);font-weight:400;font-size:18px;text-transform:uppercase}
.aol-account-shortcuts span{font-size:14px;line-height:1.45;color:var(--muted)}
.woocommerce-account .woocommerce-orders-table .button,.woocommerce-account .woocommerce-MyAccount-content .woocommerce-button{padding:10px 14px;font-size:11px!important;box-shadow:3px 3px 0 var(--ink)}
.woocommerce-orders-table .woocommerce-orders-table__cell-order-number a{font-family:var(--display);text-decoration:none!important;color:var(--ink)!important}
.woocommerce-orders-table__cell-order-status{font-family:var(--cond);font-weight:800;letter-spacing:.06em;text-transform:uppercase}
.woocommerce-account .woocommerce-Addresses{display:grid;grid-template-columns:1fr 1fr;gap:28px}
.woocommerce-account .woocommerce-Addresses::before,.woocommerce-account .woocommerce-Addresses::after{display:none}
.woocommerce-account .woocommerce-Addresses .woocommerce-Address{float:none;width:auto;max-width:none}
.woocommerce-account .woocommerce-Address-title{display:flex;flex-direction:column;align-items:flex-start;gap:4px;margin-bottom:14px}
.woocommerce-account .woocommerce-Address-title h2{margin:0;font-size:20px}
.woocommerce-account .woocommerce-Address-title .edit{float:none;font-family:var(--cond);font-weight:800;font-size:15px;letter-spacing:.06em;text-transform:uppercase}
.woocommerce-account .woocommerce-MyAccount-content form>h2,.woocommerce-account .woocommerce-MyAccount-content form h3{margin-bottom:20px}
.woocommerce-account .woocommerce-address-fields__field-wrapper,.woocommerce-account .woocommerce-EditAccountForm{display:flow-root}
.woocommerce-account fieldset{margin:28px 0 8px;padding:20px 20px 4px;border:2px solid var(--ink);background:var(--paper-3)}
.woocommerce-account fieldset legend{padding:0 8px;font-family:var(--cond);font-weight:800;font-size:18px;letter-spacing:.06em;text-transform:uppercase}
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-info,.woocommerce-account .woocommerce-MyAccount-content .woocommerce-message{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px}
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-info::after,.woocommerce-account .woocommerce-MyAccount-content .woocommerce-message::after{display:none}
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-info .button,.woocommerce-account .woocommerce-MyAccount-content .woocommerce-message .button{order:2;float:none;margin:0}
/* login, register, lost password */
.woocommerce-account #customer_login{display:grid;grid-template-columns:1fr 1fr;gap:36px}
.woocommerce-account #customer_login::before,.woocommerce-account #customer_login::after{display:none}
.woocommerce-account #customer_login .u-column1,.woocommerce-account #customer_login .u-column2{float:none;width:auto}
.woocommerce form.login,.woocommerce form.register,.woocommerce form.lost_reset_password{margin:0;padding:26px;border:2px solid var(--ink);border-radius:0;background:var(--paper-3);box-shadow:6px 6px 0 var(--ink)}
.woocommerce form.lost_reset_password{max-width:560px}
.woocommerce form.lost_reset_password>p:not(.form-row){margin:0 0 18px;font-size:15px;line-height:1.55}
.woocommerce form.login .form-row,.woocommerce form.register .form-row,.woocommerce form.lost_reset_password .form-row{float:none;width:100%}
.woocommerce form.login .woocommerce-form-login__rememberme{display:flex;margin:4px 0 16px}
.woocommerce form.login .button,.woocommerce form.register .button,.woocommerce form.lost_reset_password .button{width:100%;padding:16px;font-size:14px!important}
.woocommerce form.login .lost_password{margin:16px 0 0;font-size:15px}
.woocommerce-privacy-policy-text p{font-size:13px;line-height:1.5;color:var(--muted)}
.woocommerce form.register .woocommerce-privacy-policy-text{margin:4px 0 18px}
.woocommerce form.register>p:not(.form-row){margin:0 0 10px;font-size:15px;line-height:1.5}
.woocommerce form .password-input{display:block;position:relative}
.woocommerce form .show-password-input{top:50%;transform:translateY(-50%);right:12px}
.woocommerce-password-strength{margin-top:8px;padding:8px 10px;border:2px solid var(--ink);font-size:14px}

/* ---------- side cart ---------- */
dialog.cart-drawer{margin:0 0 0 auto;padding:0;border:0;border-left:3px solid var(--ink);width:min(420px,100vw);height:100dvh;max-width:none;max-height:none;
  background:var(--paper);color:var(--ink);box-shadow:-10px 0 0 rgba(43,30,22,.28)}
dialog.cart-drawer[open]{display:flex;flex-direction:column;animation:cd-in .32s cubic-bezier(.2,.8,.2,1)}
dialog.cart-drawer::backdrop{background:rgba(43,30,22,.55)}
@keyframes cd-in{from{transform:translateX(100%)}to{transform:none}}
.cd-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 22px;background:var(--ink);color:var(--paper);
  background-image:var(--dot-light);background-size:12px 12px}
.cd-head h2{font-family:var(--display);font-weight:400;font-size:20px;letter-spacing:.02em;text-transform:uppercase}
.cd-count{font-family:var(--cond);font-weight:700;font-size:17px;color:var(--gold)}
.cd-close{width:40px;height:40px;display:grid;place-items:center;background:var(--paper);color:var(--ink);border:2px solid var(--paper);box-shadow:3px 3px 0 var(--accent);transition:transform .15s,box-shadow .15s}
.cd-close:hover{transform:translate(-1px,-1px);box-shadow:4px 4px 0 var(--accent)}
.cd-body{flex:1;display:flex;flex-direction:column;overflow-y:auto;padding:0 22px;background-image:var(--dot-ink);background-size:14px 14px}
.cd-body .widget_shopping_cart_content{display:flex;flex-direction:column;flex:1 0 auto}
.cd-body .woocommerce-mini-cart{flex:1;padding:6px 0}
/* ".woocommerce ul.cart_list li" (WooCommerce, on shop pages) is stronger than one class: two here. */
.cd-body .woocommerce-mini-cart .woocommerce-mini-cart-item{position:relative;min-height:122px;padding:16px 40px 16px 78px;border-bottom:2px dashed var(--line)}
.cd-body .woocommerce-mini-cart-item>a:not(.remove){display:block;font-family:var(--cond);font-weight:800;font-size:19px;line-height:1.05;letter-spacing:.02em;text-transform:uppercase}
.cd-body .woocommerce-mini-cart-item>a:not(.remove):hover{color:var(--accent-deep)}
.cd-body .woocommerce-mini-cart .woocommerce-mini-cart-item img{position:absolute;left:0;top:16px;width:62px!important;height:auto;aspect-ratio:2/2.9;object-fit:cover;margin:0!important;border:2px solid var(--ink);box-shadow:3px 3px 0 var(--accent)}
.cd-body .woocommerce-mini-cart-item .quantity{display:block;margin-top:8px;font-size:14px;color:var(--muted)}
.cd-body .woocommerce-mini-cart-item .quantity .amount{font-family:var(--display);color:var(--accent-deep)}
.cd-body a.remove{position:absolute;right:0;top:16px;width:28px;height:28px;display:grid;place-items:center;border:2px solid var(--ink);border-radius:50%;background:var(--paper-3);
  color:var(--ink)!important;font-size:18px;line-height:1;transition:background .15s,color .15s}
.cd-body a.remove:hover{background:var(--accent-deep);color:var(--on-accent)!important}
.cd-body .woocommerce-mini-cart__total{display:flex;justify-content:space-between;align-items:baseline;margin-top:auto;padding:18px 0 6px;border-top:3px solid var(--ink);
  font-family:var(--cond);font-weight:800;font-size:18px;letter-spacing:.06em;text-transform:uppercase}
.cd-body .woocommerce-mini-cart__total .amount{font-family:var(--display);font-size:22px;color:var(--accent-deep);letter-spacing:0}
.cd-note{display:flex;align-items:center;gap:8px;padding:4px 0 14px;font-family:var(--cond);font-weight:700;font-size:14px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.cd-note svg{color:var(--accent-deep)}
.cd-body .woocommerce-mini-cart__buttons{display:grid;gap:10px;padding-bottom:10px;margin:0}
/* "Continuar comprando": closes the side cart and leaves the reader where they were */
.cd-continue{display:block;width:100%;margin:0 0 24px;padding:13px 18px;border:2px dashed var(--ink);background:transparent;color:var(--ink);font-family:var(--display);font-size:13px;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;transition:background .15s}
.cd-continue:hover{background:var(--paper-3)}
.cd-body .woocommerce-mini-cart__buttons a.button{display:block;text-align:center;padding:15px 18px;margin:0;border:2px solid var(--ink);background:var(--paper-3);color:var(--ink);
  font-family:var(--display);font-size:13px;letter-spacing:.06em;text-transform:uppercase;box-shadow:4px 4px 0 var(--ink);transition:transform .15s,box-shadow .15s}
.cd-body .woocommerce-mini-cart__buttons a.button.checkout{order:-1;background:var(--accent-deep);color:var(--on-accent)}
.cd-body .woocommerce-mini-cart__buttons a.button:hover{transform:translate(-1px,-1px);box-shadow:5px 5px 0 var(--ink)}
.cd-body .woocommerce-mini-cart__empty-message{margin:auto 0;padding:60px 10px;text-align:center;font-family:var(--cond);font-weight:700;font-size:18px;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}
.cd-body .blockUI.blockOverlay{background:rgba(239,226,200,.7)!important}

/* ---------- WordPress core ---------- */
.alignleft{float:left;margin:0 1.5em 1em 0}
.alignright{float:right;margin:0 0 1em 1.5em}
.aligncenter{margin-inline:auto}
.wp-caption-text{font-size:14px;color:var(--muted)}
.nav-links{display:flex;gap:8px;margin-top:30px}
.nav-links .page-numbers{min-width:40px;padding:8px 10px;border:2px solid var(--ink);text-align:center;font-family:var(--display)}
.nav-links .current{background:var(--accent-deep);color:var(--on-accent)}

@media (max-width:1100px){
  .woocommerce ul.products{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (max-width:1000px){
  .woocommerce-cart .wc-entry>.woocommerce,.woocommerce-checkout form.checkout{grid-template-columns:minmax(0,1fr);grid-template-rows:none}
  .woocommerce-cart .wc-entry>.woocommerce>.cart-collaterals{grid-column:1;position:static;margin-top:8px}
  .woocommerce-cart .wc-entry>.woocommerce>.cart-collaterals .cart_totals{max-width:520px;margin-left:auto}
  .woocommerce-checkout form.checkout>#customer_details{grid-row:auto}
  .woocommerce-checkout form.checkout>#order_review_heading,.woocommerce-checkout form.checkout>#order_review{grid-column:1;grid-row:auto}
  .woocommerce-checkout form.checkout>#order_review_heading{margin-top:28px}
  .woocommerce-account .wc-entry>.woocommerce{grid-template-columns:minmax(0,1fr);gap:28px}
  .woocommerce-account .wc-entry>.woocommerce>.woocommerce-MyAccount-navigation,.woocommerce-account .wc-entry>.woocommerce>.woocommerce-MyAccount-content{grid-column:1}
  .woocommerce-account .woocommerce-MyAccount-navigation ul{display:flex;flex-wrap:wrap;gap:8px}
  .woocommerce-account .woocommerce-MyAccount-navigation a{padding:10px 14px;font-size:15px}
}
@media (max-width:860px){
  .wc-page--product div.product{grid-template-columns:1fr}
}
@media (max-width:768px){
  /* cart: each item becomes a card (WooCommerce turns the table rows into blocks from 768px down) */
  .woocommerce table.shop_table_responsive{box-shadow:4px 4px 0 var(--ink)}
  .woocommerce-cart table.cart tr.cart_item{display:grid;grid-template-columns:78px minmax(0,1fr) 40px;gap:4px 14px;padding:16px;border-top:1px solid var(--line)}
  .woocommerce-cart table.cart tr.cart_item:first-child{border-top:0}
  .woocommerce-cart table.cart tr.cart_item td{display:block;padding:0;border:0;text-align:left!important;background:none}
  .woocommerce-cart table.cart tr.cart_item td::before{display:none}
  .woocommerce-cart table.cart tr.cart_item .product-thumbnail{display:block;grid-column:1;grid-row:1/span 4;width:auto}
  .woocommerce-cart table.cart tr.cart_item .product-thumbnail img{width:78px!important}
  .woocommerce-cart table.cart tr.cart_item .product-remove{grid-column:3;grid-row:1;width:auto}
  .woocommerce-cart table.cart tr.cart_item .product-name{grid-column:2;grid-row:1;align-self:center;font-size:18px}
  .woocommerce-cart table.cart tr.cart_item .product-price{grid-column:2/-1;grid-row:2}
  .woocommerce-cart table.cart tr.cart_item .product-quantity{grid-column:2;grid-row:3;margin-top:6px}
  .woocommerce-cart table.cart tr.cart_item .product-subtotal{grid-column:2/-1;grid-row:4;margin-top:6px}
  .woocommerce-cart table.cart tr.cart_item .product-subtotal::before{display:inline!important;content:"Subtotal: ";font-family:var(--cond);font-weight:800;font-size:14px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);float:none!important}
  .woocommerce-cart table.cart td.actions{display:block;padding:16px!important;text-align:left!important}
  .woocommerce-cart table.cart td.actions::before{display:none}
  .woocommerce-cart table.cart td.actions .coupon{float:none;padding:0}
  .woocommerce-cart table.cart td.actions .coupon .input-text{flex:1 1 100%;width:auto}
  .woocommerce-cart table.cart td.actions .coupon .button{flex:1 1 100%;width:100%!important;float:none}
  .woocommerce-cart table.cart td.actions>.button{float:none;width:100%;margin-top:12px}
  .woocommerce-cart .cart-collaterals .cart_totals{padding:18px;box-shadow:4px 4px 0 var(--ink)}
  .woocommerce-cart .cart-collaterals .cart_totals table.shop_table tr{display:flex;justify-content:space-between;gap:12px;border-top:1px solid var(--line)}
  .woocommerce-cart .cart-collaterals .cart_totals table.shop_table tr:first-child{border-top:0}
  .woocommerce-cart .cart-collaterals .cart_totals table.shop_table th,.woocommerce-cart .cart-collaterals .cart_totals table.shop_table td{display:block;width:auto;border:0;padding:12px 0;text-align:right;background:none}
  .woocommerce-cart .cart-collaterals .cart_totals table.shop_table th{text-align:left}
  .woocommerce-cart .cart-collaterals .cart_totals table.shop_table td::before{display:none}
  .woocommerce-cart .cart-collaterals .cart_totals table.shop_table .order-total{border-top:2px solid var(--ink)}
  /* orders list: one card per order */
  .woocommerce table.my_account_orders,.woocommerce table.woocommerce-orders-table{font-size:15px}
  .woocommerce table.shop_table_responsive.woocommerce-orders-table tr{display:block;padding:12px 16px;border-top:1px solid var(--line)}
  .woocommerce table.shop_table_responsive.woocommerce-orders-table tr:first-child{border-top:0}
  .woocommerce table.shop_table_responsive.woocommerce-orders-table td,.woocommerce table.shop_table_responsive.woocommerce-orders-table th{display:block;padding:6px 0;border:0;background:none!important;text-align:right!important}
  .woocommerce table.shop_table_responsive.woocommerce-orders-table td::before,.woocommerce table.shop_table_responsive.woocommerce-orders-table th::before{float:left;margin-right:12px;font-family:var(--cond);font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
  .woocommerce table.shop_table_responsive.woocommerce-orders-table th.woocommerce-orders-table__cell-order-number{text-align:left!important;font-size:20px}
}
@media (max-width:640px){
  .wc-page{padding:28px 0 72px}
  .wc-entry h2,.wc-entry h3{font-size:20px}
  /* checkout */
  .woocommerce-checkout form.checkout>#order_review_heading{padding:16px 16px 0}
  .woocommerce-checkout form.checkout>#order_review{padding:4px 16px 18px;box-shadow:4px 4px 0 var(--ink)}
  .woocommerce-checkout form.checkout_coupon .form-row-first{flex:1 1 160px}
  .woocommerce-checkout form.checkout_coupon .form-row-last,.woocommerce-checkout form.checkout_coupon .form-row-last .button{flex:1 1 100%;width:100%}
  /* order received, account */
  .woocommerce ul.order_details{grid-template-columns:1fr;box-shadow:4px 4px 0 var(--ink)}
  .woocommerce ul.order_details li{padding:12px 16px;border-left:0;border-top:1px solid var(--line)}
  .woocommerce ul.order_details li:first-child{border-top:0}
  .woocommerce ul.order_details li strong{margin-top:4px;font-size:16px}
  .woocommerce .woocommerce-customer-details .col2-set,.woocommerce-account .woocommerce-Addresses,.woocommerce-account #customer_login{grid-template-columns:1fr}
  .aol-account-shortcuts{grid-template-columns:1fr}
  .woocommerce form.login,.woocommerce form.register,.woocommerce form.lost_reset_password{padding:20px;box-shadow:4px 4px 0 var(--ink)}
  .woocommerce ul.products{grid-template-columns:repeat(2,minmax(0,1fr));gap:40px 18px}
  .woocommerce div.product .woocommerce-tabs ul.tabs{gap:22px}
}
