/* Keep WooCommerce forms and checkout behavior intact; customize presentation only. */
.skip-link{position:absolute;left:-9999px}.skip-link:focus{left:16px;top:16px;background:white;padding:16px;z-index:999}.commerce-main{margin:30px auto 60px;padding:0 6%;max-width:1400px;min-height:55vh}.commerce-main h1.page-title{font-size:52px;margin:30px 0}.woocommerce form{display:block}.woocommerce label{font-size:14px}.woocommerce input.input-text,.woocommerce textarea{font:inherit;padding:12px;border:1px solid #ccc}.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.woocommerce #respond input#submit{background:#171717;color:white;border-radius:0;padding:15px 20px;display:inline-block}.woocommerce button.button.alt,.woocommerce a.button.alt{background:#171717}.woocommerce ul.products{display:block;margin-top:30px}.woocommerce ul.products li.product{margin-bottom:32px}.woocommerce ul.products li.product .price{color:#171717;font-size:21px}.woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:23px}.woocommerce-MyAccount-navigation ul{list-style:none;padding:0}.woocommerce-MyAccount-navigation li a{display:block;padding:15px;border-bottom:1px solid #ddd}.woocommerce-MyAccount-navigation li.is-active a{font-weight:bold;background:#eee}.woocommerce table.shop_table{border-radius:0}.woocommerce-notices-wrapper{font-size:16px}.shop .woocommerce{margin-top:30px}.woocommerce .quantity input.qty{padding:12px;width:85px}.woocommerce div.product .product_title{font-size:48px}.commerce-main .woocommerce-form-login{max-width:620px}.commerce-main .woocommerce-form-login p{margin-bottom:16px}.woocommerce span.onsale{background:#171717}.woocommerce-message{border-top-color:#171717}.woocommerce-message::before{color:#171717}@media(max-width:560px){.commerce-main h1.page-title{font-size:40px}.woocommerce ul.products li.product{width:100%!important;float:none!important}.woocommerce div.product .product_title{font-size:38px}}

/* Consistent, uncropped catalog photography. */
.woocommerce ul.products li.product a img{width:100%!important;height:280px!important;object-fit:contain!important;object-position:center!important;transform:none!important;padding:18px!important;box-sizing:border-box;background:#fff;}
@media(max-width:600px){.woocommerce ul.products li.product a img{height:250px!important;}}

/* Related products: avoid generic .products grid nesting. */
.woocommerce div.product section.related.products{display:block;width:100%;clear:both;}
.woocommerce div.product section.related.products ul.products{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px;width:100%;padding:0;margin:24px 0 0;}
.woocommerce div.product section.related.products ul.products::before,.woocommerce div.product section.related.products ul.products::after{display:none;}
.woocommerce div.product section.related.products ul.products li.product{float:none!important;width:auto!important;min-width:0;margin:0!important;display:flex;flex-direction:column;}
.woocommerce div.product section.related.products .woocommerce-loop-product__title{font-size:18px;line-height:1.4;overflow-wrap:anywhere;}
.woocommerce div.product section.related.products li.product>a.button{align-self:flex-start;margin-top:auto;}
@media(max-width:900px){.woocommerce div.product section.related.products ul.products{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:480px){.woocommerce div.product section.related.products ul.products{grid-template-columns:minmax(0,1fr);gap:32px;}}

/* Woo Blocks checkout must not inherit the homepage finder flex form. */
.wc-block-checkout form.wc-block-checkout__form{display:block;width:100%;max-width:none;padding:0;margin:0;}
.wc-block-checkout form.wc-block-checkout__form fieldset{min-width:0;width:100%;}
.wc-block-checkout .wc-block-components-text-input input{min-width:0;box-sizing:border-box;}
