/* TMJ Editorial: WooCommerce styles (shop, product, cart, checkout, account). */
.shop-wrap{padding-top:40px;padding-bottom:110px}
.woocommerce-breadcrumb{font-size:13px;color:var(--muted);margin:0 0 12px}
.woocommerce-breadcrumb a{color:var(--muted);display:inline-block;padding:12px 0}
.woocommerce-products-header{margin-bottom:24px}
.woocommerce-products-header__title{margin:0 0 8px}
.term-description{color:var(--body);max-width:680px}
.woocommerce-result-count{color:var(--muted);font-size:14px}
.woocommerce-ordering select{min-height:44px;width:auto}

/* Product grid */
.woocommerce ul.products{display:grid!important;grid-template-columns:repeat(4,1fr);gap:48px 24px;margin:0 0 40px;padding:0}
.woocommerce ul.products::before,.woocommerce ul.products::after{display:none!important}
.woocommerce ul.products li.product{width:auto!important;margin:0!important;float:none!important;padding:0;text-align:left}
.woocommerce ul.products li.product a img{aspect-ratio:1/1;object-fit:cover;width:100%;margin:0 0 14px;background:var(--sand);transition:transform .5s}
.woocommerce ul.products li.product a.woocommerce-LoopProduct-link{display:block;text-decoration:none;overflow:hidden}
.woocommerce ul.products li.product .woocommerce-loop-product__title{font-family:var(--serif);font-size:22px;font-weight:500;padding:4px 0;margin:0;color:var(--ink)}
.woocommerce ul.products li.product .price{color:var(--ink);font-size:15px;font-weight:400}
.woocommerce ul.products li.product .button{display:inline-flex;align-items:center;justify-content:center;margin-top:12px}
@media (max-width:700px){.woocommerce ul.products li.product .button{width:100%;padding:0 12px}}
.woocommerce ul.products li.product .onsale,.woocommerce span.onsale{background:var(--ink);color:#fff;border-radius:0;min-height:0;min-width:0;padding:4px 10px;line-height:1.4;font-weight:600;font-size:12px;letter-spacing:.08em;text-transform:uppercase;top:10px;left:10px;right:auto;margin:0}
@media (max-width:1000px){.woocommerce ul.products{grid-template-columns:repeat(2,1fr)}}
@media (max-width:700px){.woocommerce ul.products{gap:32px 14px}.woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:18px}}

/* 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){display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 26px;border-radius:0;background:var(--ink);color:var(--cream);font:600 15px/1.2 var(--sans);letter-spacing:.02em;border:1px solid var(--ink)}
.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce input.button:hover,.woocommerce a.button.alt:hover,.woocommerce button.button.alt:hover{background:#000;color:#fff}
.woocommerce a.button.disabled,.woocommerce button.button:disabled,.woocommerce button.button:disabled[disabled]{opacity:.55;background:var(--ink);color:var(--cream)}
.woocommerce a.added_to_cart{display:inline-flex;min-height:44px;align-items:center;margin-left:10px}

/* Single product */
.woocommerce div.product{display:grid;grid-template-columns:1.1fr 1fr;gap:64px;align-items:start}
.woocommerce div.product div.images,.woocommerce div.product div.summary{width:auto!important;float:none!important;margin:0!important}
.woocommerce div.product .woocommerce-tabs,.woocommerce div.product .related,.woocommerce div.product .upsells{grid-column:1/-1}
.woocommerce div.product div.images img{background:var(--sand)}
.woocommerce div.product div.images .flex-control-thumbs{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin-top:8px}
.woocommerce div.product div.images .flex-control-thumbs li{width:auto!important;float:none!important}
.woocommerce div.product .product_title{font-size:clamp(34px,3.6vw,52px);font-weight:400;margin:0 0 12px}
.woocommerce div.product p.price,.woocommerce div.product span.price{color:var(--ink);font-size:22px;margin:0 0 20px}
.woocommerce div.product .woocommerce-product-details__short-description{color:var(--body);font-size:17px}
.woocommerce div.product form.cart{display:flex;flex-wrap:wrap;gap:12px;align-items:stretch;margin:28px 0}
.woocommerce div.product form.cart div.quantity{float:none;margin:0}
.woocommerce .quantity .qty{width:80px;min-height:48px;text-align:center}
.woocommerce div.product form.cart .button{flex:1;min-width:200px}
.woocommerce div.product form.cart table.variations td,.woocommerce div.product form.cart table.variations th{padding:6px 0}
.product_meta{font-size:14px;color:var(--muted);border-top:1px solid var(--line);padding-top:16px}
.product_meta>span{display:block;margin-bottom:4px}
.product_meta a{color:var(--ink)}
.woocommerce div.product .woocommerce-tabs{margin-top:24px}
.woocommerce div.product .woocommerce-tabs ul.tabs{padding:0;margin:0 0 24px;border-bottom:1px solid var(--line);display:flex;gap:8px;flex-wrap:wrap}
.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!important}
.woocommerce div.product .woocommerce-tabs ul.tabs li{background:transparent!important;border:0!important;border-radius:0!important;margin:0!important;padding:0!important}
.woocommerce div.product .woocommerce-tabs ul.tabs li a{display:inline-flex;min-height:44px;align-items:center;padding:0 14px!important;font-weight:500;color:var(--muted)!important}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a{color:var(--ink)!important;box-shadow:inset 0 -2px 0 var(--ink)}
.woocommerce div.product .woocommerce-tabs .panel{max-width:760px;color:var(--body);font-size:17px}
.woocommerce div.product .woocommerce-tabs .panel h2:first-child{display:none}
.related>h2,.upsells>h2{margin:56px 0 28px}
.woocommerce-product-gallery__trigger{background:#fff;border-radius:50%}
@media (max-width:900px){.woocommerce div.product{grid-template-columns:1fr;gap:28px}}

/* Notices */
.woocommerce-message,.woocommerce-info,.woocommerce-error,.woocommerce-noreviews,p.no-comments{background:#fff;border:1px solid var(--line);border-left:3px solid var(--ink);color:var(--ink);padding:16px 20px 16px 52px;border-radius:0}
.woocommerce-message::before,.woocommerce-info::before{color:var(--ink)}
.woocommerce-error{border-left-color:#a3261b}
.woocommerce-error::before{color:#a3261b}
.woocommerce-message .button,.woocommerce-info .button{float:right;min-height:40px}

/* Cart and checkout (classic shortcodes) */
.woocommerce table.shop_table{border:1px solid var(--line);border-radius:0;background:#fff;border-collapse:collapse}
.woocommerce table.shop_table th{font-family:var(--sans);font-size:13px;letter-spacing:.1em;text-transform:uppercase;font-weight:600;color:var(--muted)}
.woocommerce table.shop_table td,.woocommerce table.shop_table th{border-top:1px solid var(--line);padding:14px 16px}
.woocommerce table.cart img{width:80px;background:var(--sand)}
.woocommerce a.remove{color:var(--ink)!important;width:32px;height:32px;line-height:30px;font-size:22px}
.woocommerce a.remove:hover{background:var(--ink);color:#fff!important}
.woocommerce .cart-collaterals .cart_totals h2,.woocommerce-checkout h3,#order_review_heading{font-size:30px}
.woocommerce .cart-collaterals .cart_totals,.woocommerce-page .cart-collaterals .cart_totals{width:100%;max-width:460px}
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button{width:100%;font-size:16px;padding:0 26px}
.woocommerce form .form-row{margin:0 0 16px;padding:0}
.woocommerce form .form-row label{display:block;margin-bottom:6px;font-size:14px}
.woocommerce form .form-row .required{color:#a3261b;text-decoration:none}
.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,.woocommerce form .form-row select{border:1px solid #b9ab9b;border-radius:0;min-height:48px;padding:10px 14px}
.select2-container .select2-selection--single{height:48px;border:1px solid #b9ab9b;border-radius:0}
.select2-container--default .select2-selection--single .select2-selection__rendered{line-height:46px;padding-left:14px}
.select2-container--default .select2-selection--single .select2-selection__arrow{height:46px}
.woocommerce-checkout #payment{background:#fff;border:1px solid var(--line);border-radius:0}
.woocommerce-checkout #payment div.payment_box{background:var(--sand);color:var(--body)}
.woocommerce-checkout #payment div.payment_box::before{border-bottom-color:var(--sand)}
.woocommerce #payment #place_order{width:100%;font-size:16px}
.cart-empty.woocommerce-info{font-size:18px}
.return-to-shop .button{margin-top:8px}

/* Block cart and checkout, if used */
.wc-block-cart,.wc-block-checkout{font-family:var(--sans)}
.wc-block-components-title,.wc-block-cart__totals-title{font-family:var(--serif)!important;text-transform:none!important}
.wc-block-components-text-input input,.wc-block-components-combobox .wc-block-components-combobox-control input{border-radius:0!important}

/* My account */
.woocommerce-account .woocommerce{display:grid;grid-template-columns:240px 1fr;gap:48px}
.woocommerce-account .woocommerce>.woocommerce-notices-wrapper{grid-column:1/-1}
.woocommerce-account:not(.logged-in) .woocommerce{display:block;max-width:960px}
.woocommerce-MyAccount-navigation,.woocommerce-MyAccount-content{width:auto!important;float:none!important}
.woocommerce-MyAccount-navigation ul{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}
.woocommerce-MyAccount-navigation li{border-bottom:1px solid var(--line)}
.woocommerce-MyAccount-navigation a{display:flex;align-items:center;min-height:48px;padding:0 6px;text-decoration:none}
.woocommerce-MyAccount-navigation .is-active a{font-weight:600}
.woocommerce form.login,.woocommerce form.register{border:1px solid var(--line);border-radius:0;background:#fff;padding:28px}
@media (max-width:800px){.woocommerce-account .woocommerce{grid-template-columns:1fr;gap:24px}}

/* Star ratings and reviews */
.woocommerce .star-rating span::before,.woocommerce p.stars a{color:var(--ink)}
.woocommerce #reviews #comments ol.commentlist li .comment-text{border-radius:0;border-color:var(--line)}

/* Cart, checkout and account need more room than a text page. */
.woocommerce-cart .page-head,.woocommerce-cart .entry-content,
.woocommerce-checkout .page-head,.woocommerce-checkout .entry-content,
.woocommerce-account .page-head,.woocommerce-account .entry-content{max-width:calc(1120px + 2*var(--pad))}

/* Product with no usable photo. */
.tmj-photo-soon{display:flex;align-items:center;justify-content:center;width:100%;aspect-ratio:1/1;margin:0 0 14px;padding:16px;background:var(--sand);color:#6b5d51;text-align:center;font:600 12px/1.4 var(--sans);letter-spacing:.14em;text-transform:uppercase}
.woocommerce-product-gallery .tmj-photo-soon{margin:0}
