/* Native WooCommerce, styled as a TShirtHub collection. */
body.woocommerce-page{--tsh-ink:#151515;--tsh-muted:#696661;--tsh-line:#e6e2db;--tsh-paper:#faf8f4;--tsh-radius:20px}
body.woocommerce-page .tsh-tool,body.woocommerce-page .wc-block-mini-cart__button{min-width:44px;min-height:44px}
body.woocommerce-page .tsh-header-tools{gap:8px!important}
body.woocommerce-page .tsh-store-tools{gap:8px}
body.single-product .wp-site-blocks>.wp-block-group.woocommerce.product{max-width:1440px;padding-top:28px;padding-bottom:80px}
body.single-product main>.wp-block-columns:has(.wp-block-woocommerce-product-image-gallery){align-items:flex-start;gap:clamp(32px,5vw,80px);margin-top:0;margin-bottom:64px}
body.single-product main>.wp-block-columns>.wp-block-column:has(.wp-block-woocommerce-product-image-gallery){flex-basis:54%!important;flex-grow:1;min-width:0}
body.single-product main>.wp-block-columns>.wp-block-column:has(>h1){flex-basis:40%!important;flex-grow:1;min-width:0;padding-top:22px}
body.single-product .wp-block-woocommerce-product-image-gallery{overflow:hidden;border-radius:var(--tsh-radius);background:var(--tsh-paper);border:1px solid #efede8}
body.single-product .woocommerce-product-gallery{margin-bottom:0!important}
body.single-product .woocommerce-product-gallery__image img:not(.zoomImg){width:100%;aspect-ratio:1;object-fit:contain}
body.single-product .woocommerce-product-gallery .flex-control-thumbs{display:flex;gap:10px;padding:14px!important;background:#fff}
body.single-product .woocommerce-product-gallery .flex-control-thumbs li{width:72px!important;border-radius:10px;overflow:hidden;border:1px solid var(--tsh-line)}
body.single-product .woocommerce-product-gallery .flex-control-thumbs img{aspect-ratio:1;object-fit:cover}
body.single-product .woocommerce-product-gallery__trigger{top:18px!important;right:18px!important;box-shadow:0 4px 16px #0000000d}
.tsh-product-eyebrow{color:#80613e;font-size:11px;letter-spacing:.16em;font-weight:700;margin:0 0 16px!important}
body.single-product .wp-site-blocks .woocommerce.product h1.wp-block-post-title{font-size:clamp(29px,3vw,44px);font-weight:800;line-height:1.1;letter-spacing:-.045em;margin:0 0 22px}
body.single-product .wp-block-column> .wp-block-woocommerce-product-price{margin:0 0 28px}
body.single-product .wp-block-column> .wp-block-woocommerce-product-price .wc-block-components-product-price{font-size:26px;font-weight:600;letter-spacing:-.025em}
body.single-product .wp-block-column> .wp-block-woocommerce-product-summary{color:var(--tsh-muted);font-size:15px;line-height:1.75}
body.single-product .wp-block-woocommerce-add-to-cart-form{border-top:1px solid var(--tsh-line);padding-top:26px;margin-top:0}
body.single-product .woocommerce div.product form.cart{margin-bottom:0}
body.single-product .wp-block-woocommerce-add-to-cart-form form.cart{margin:0}
body.single-product .woocommerce .variations{margin-bottom:22px!important;width:100%}
body.single-product .woocommerce .variations tbody,body.single-product .woocommerce .variations tr,body.single-product .woocommerce .variations th,body.single-product .woocommerce .variations td{display:block;width:100%;box-sizing:border-box;text-align:left;padding:0}
body.single-product .woocommerce .variations tr+tr{margin-top:18px}
body.single-product .woocommerce .variations label{display:block;font-size:13px;font-weight:700;margin:0 0 12px}
body.single-product .wp-site-blocks .variations select{width:100%;background:#fff;border:1px solid #cec8bf;border-radius:10px}
body.single-product .wp-site-blocks .variations select[hidden]{display:none!important}
.tsh-size-options{display:flex;gap:8px;flex-wrap:wrap}
.tsh-size-option{display:inline-flex;align-items:center;justify-content:center;min-width:52px;min-height:48px;padding:10px 14px;border:1px solid #d8d4cd;border-radius:10px;background:#fff;color:var(--tsh-ink);font-size:13px;font-weight:700;cursor:pointer;transition:background .15s,border-color .15s,color .15s}
.tsh-size-option:hover:not(:disabled){border-color:#151515;background:#f7f5f1}
.tsh-size-option[aria-pressed=true]{background:#151515;color:#fff;border-color:#151515}
.tsh-size-option:disabled{opacity:.4;text-decoration:line-through;cursor:not-allowed}
body.single-product .woocommerce .reset_variations{display:inline-block;font-size:12px;color:var(--tsh-muted);padding:9px 0;text-underline-offset:4px}
body.single-product .woocommerce .woocommerce-variation-add-to-cart,body.single-product .woocommerce form.cart:not(.variations_form):not(.grouped_form){display:flex;flex-wrap:wrap;gap:12px;align-items:stretch}
body.single-product .woocommerce .woocommerce-variation-add-to-cart .quantity,body.single-product .woocommerce form.cart>.quantity{margin:0!important;flex:0 0 76px}
body.single-product .woocommerce .quantity .qty{box-sizing:border-box;width:76px;min-height:54px;border:1px solid #d8d4cd;border-radius:12px;background:#fff;color:#111;font-size:16px;padding:10px 8px}
body.single-product .woocommerce .single_add_to_cart_button{flex:1;min-height:54px;padding:16px 20px!important;border-radius:12px!important;background:#151515!important;color:#fff;font-size:14px;font-weight:700;line-height:1.4!important;box-shadow:0 7px 20px #0000000a;transition:background .15s}
body.single-product .woocommerce .single_add_to_cart_button:hover{background:#35312c!important}
body.single-product .woocommerce .single_add_to_cart_button.disabled{opacity:.48}
body.single-product .woocommerce-variation-availability,body.single-product .woocommerce-variation-description{font-size:13px}
.tsh-product-help{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:22px!important}
.tsh-product-help a{display:flex;gap:10px;justify-content:space-between;align-items:center;padding:16px;background:var(--tsh-paper);border-radius:12px;text-decoration:none!important;color:#292622;min-width:0}
.tsh-product-help strong,.tsh-product-help small{display:block}
.tsh-product-help strong{font-size:12px;font-weight:700;line-height:1.4}
.tsh-product-help small{font-size:11px;color:var(--tsh-muted);line-height:1.5;margin-top:4px}
.tsh-product-help a:hover{background:#f0ece5}
.tsh-product-metadata{border-top:1px solid var(--tsh-line);border-bottom:1px solid var(--tsh-line);margin-top:22px!important;padding:16px 0}
.tsh-product-metadata summary{font-size:12px;font-weight:600;cursor:pointer;list-style-position:inside;min-height:22px}
.tsh-product-metadata .wp-block-woocommerce-product-meta{margin-top:15px;color:var(--tsh-muted);font-size:12px;line-height:1.7}
.tsh-product-metadata .wp-block-group{display:block}
body.single-product .wp-block-woocommerce-product-details{background:var(--tsh-paper);border:1px solid var(--tsh-line);border-radius:var(--tsh-radius);padding:28px clamp(20px,4vw,48px);box-sizing:border-box;margin-bottom:60px!important}
body.single-product .woocommerce div.product .woocommerce-tabs ul.tabs{padding:0;margin:0 0 26px;border-bottom:1px solid #ded8cf;display:flex;gap:24px;overflow:auto}
body.single-product .woocommerce div.product .woocommerce-tabs ul.tabs li{margin:0;border:0;border-radius:0;background:none;padding:0;flex:0 0 auto}
body.single-product .woocommerce div.product .woocommerce-tabs ul.tabs li a{padding:0 0 16px;font-size:14px;font-weight:600;color:var(--tsh-muted)}
body.single-product .woocommerce div.product .woocommerce-tabs ul.tabs li.active{border-bottom:2px solid #111;background:none}
body.single-product .woocommerce div.product .woocommerce-tabs ul.tabs li.active a{color:#111}
body.single-product .woocommerce div.product .woocommerce-tabs ul.tabs:before,body.single-product .woocommerce div.product .woocommerce-tabs ul.tabs li:before,body.single-product .woocommerce div.product .woocommerce-tabs ul.tabs li:after{display:none}
body.single-product .woocommerce-Tabs-panel{font-size:14px;line-height:1.8;margin:0!important;overflow-wrap:anywhere}
body.single-product .woocommerce-Tabs-panel h2{font-size:24px;margin:26px 0 16px;letter-spacing:-.025em}
body.single-product .woocommerce-Tabs-panel h2:first-child{margin-top:0}
body.single-product .woocommerce-Tabs-panel h3{font-size:18px;margin:22px 0 12px}
body.single-product .woocommerce-Tabs-panel img{display:block;max-width:min(100%,700px);height:auto;border-radius:10px;margin:20px 0;background:#fff}
body.single-product .woocommerce-Tabs-panel p:empty{display:none}
body.single-product .woocommerce-Tabs-panel table{width:100%;border-collapse:collapse}
body.single-product .woocommerce-Tabs-panel th,body.single-product .woocommerce-Tabs-panel td{padding:14px;text-align:left;border:1px solid var(--tsh-line)}
body.single-product main>.wp-block-woocommerce-product-collection h2{font-size:28px;margin-bottom:28px;letter-spacing:-.03em}
body.woocommerce-page .wc-block-product-template .wp-block-woocommerce-product-image{border-radius:14px;overflow:hidden;background:#f7f6f3}
body.woocommerce-page .wc-block-product-template .wp-block-post-title{font-size:14px;font-weight:500;margin-bottom:6px}
body.woocommerce-page .wc-block-product-template .wp-block-woocommerce-product-price{font-size:14px;font-weight:600}
body.woocommerce-page .wc-block-product-template .wp-block-woocommerce-product-button .wp-block-button__link{font-size:12px;padding:11px 17px;border-radius:9px;min-height:42px}
@media(min-width:1000px){body.single-product main>.wp-block-columns>.wp-block-column:has(>h1){position:sticky;top:32px}body.single-product.admin-bar main>.wp-block-columns>.wp-block-column:has(>h1){top:64px}}
@media(max-width:999px){body.single-product main>.wp-block-columns:has(.wp-block-woocommerce-product-image-gallery){gap:28px}.tsh-product-help{grid-template-columns:1fr}.tsh-product-help a{padding:13px 16px}}
@media(max-width:781px){body.single-product main>.wp-block-columns>.wp-block-column:has(>h1){padding-top:0}.tsh-product-help{grid-template-columns:1fr 1fr}body.single-product .wp-block-woocommerce-product-image-gallery{max-width:620px;margin-inline:auto}body.single-product .wp-site-blocks>.wp-block-group.woocommerce.product{padding-bottom:48px}body.single-product main>.wp-block-columns:has(.wp-block-woocommerce-product-image-gallery){margin-bottom:36px}.tsh-product-eyebrow{margin-bottom:12px!important}body.single-product .wp-site-blocks .woocommerce.product h1.wp-block-post-title{font-size:32px}body.single-product .wp-block-woocommerce-product-details{padding:22px 18px;margin-bottom:36px!important}}
@media(max-width:600px){body.woocommerce-page .tsh-store-tools{gap:0}body.woocommerce-page .tsh-header-tools{gap:0!important}body.woocommerce-page .tsh-tool,body.woocommerce-page .wc-block-mini-cart__button{min-width:36px;min-height:44px}body.single-product .wp-site-blocks .woocommerce.product h1.wp-block-post-title{font-size:30px;margin-bottom:16px}body.single-product .wp-block-column>.wp-block-woocommerce-product-price{margin-bottom:22px}body.single-product .wp-block-column>.wp-block-woocommerce-product-price .wc-block-components-product-price{font-size:24px}body.single-product .wp-site-blocks .wp-block-woocommerce-breadcrumbs{font-size:11px!important;line-height:1.7}.tsh-size-option{min-width:46px;padding-inline:12px}.tsh-product-help{gap:8px}.tsh-product-help a{padding:13px 12px}.tsh-product-help small{font-size:10px}body.single-product .woocommerce .single_add_to_cart_button{padding-inline:12px!important;font-size:13px}body.single-product .woocommerce div.product .woocommerce-tabs ul.tabs{gap:18px}body.single-product .woocommerce div.product .woocommerce-tabs ul.tabs li a{font-size:12px}body.single-product .woocommerce-Tabs-panel h2{font-size:21px}body.single-product main>.wp-block-woocommerce-product-collection h2{font-size:24px}}
@media(prefers-reduced-motion:reduce){.tsh-size-option,body.single-product .woocommerce .single_add_to_cart_button{transition:none}}

/* Woo's gallery block otherwise keeps a 512px cap inside the larger column. */
body.single-product .wp-block-woocommerce-product-image-gallery{width:100%;max-width:none;box-sizing:border-box}
body.single-product .wp-block-woocommerce-product-image-gallery .woocommerce-product-gallery{float:none;width:100%}
body.single-product .wp-block-woocommerce-add-to-cart-form .single_variation_wrap{width:100%}
@media(max-width:781px){body.single-product .wp-block-woocommerce-product-image-gallery{max-width:620px}}

.tsh-size-option[aria-pressed=true]:hover:not(:disabled){background:#151515;color:#fff;border-color:#151515}
/* The classic variation form inside Woo's block must not inherit its generic
   grid tracks: those reserve an empty column beside the purchase controls. */
body.single-product .wp-block-woocommerce-add-to-cart-form form.variations_form{display:block;width:100%}
