/* Society product page — native WooCommerce form, custom layout. */
.society-product-page { width: 100%; padding: 16px 24px 48px; }
.society-product-page *, .society-product-bar * { box-sizing: border-box; }
.society-product-breadcrumb { margin: 0 0 16px; font-size: 12px; }
.society-product-page .society-product { display: grid; grid-template-columns: minmax(0,1.65fr) minmax(320px,1fr); gap: 36px; margin: 0; }
.society-product-gallery { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 4px; align-self: start; }
.society-product-image { display: block; overflow: hidden; background: #f1f1f1; }
.society-product-image img { display: block; width: 100%; height: auto; aspect-ratio: 4/5; object-fit: cover; }
.society-product-info { position: static; align-self: start; min-width: 0; }
.society-product-heading { display: flex; gap: 16px; align-items: flex-start; justify-content: space-between; }
.society-product-heading h1 { font: inherit; font-size: clamp(20px,2vw,28px); line-height: 1.2; margin: 0; }
.society-product-info button { font: inherit; cursor: pointer; }
.society-wishlist { flex: 0 0 36px; display: grid; place-items: center; border: 0; padding: 0; background: transparent; color: #10171c; }
.society-wishlist[aria-pressed=true] svg { fill: #620f0f; stroke: #620f0f; }
body main .society-wishlist:hover { background: transparent; color: #620f0f; }
.society-product-price { margin: 18px 0 30px; }
.society-product-buy { margin: 0 0 24px; scroll-margin-top: 100px; }
.society-product-buy form.cart { margin: 0; }
.society-product-buy .variations { width: 100%; border: 0; margin: 0 0 20px; }
.society-product-buy .variations th, .society-product-buy .variations td { border: 0; text-align: left; padding: 6px 0; }
.society-product-buy .variations select { max-width: 100%; font: inherit; padding: 8px; }
.society-native-select { position: absolute!important; width: 1px!important; height: 1px!important; clip-path: inset(50%); overflow: hidden; opacity: 0; }
.society-choices { display: flex; align-items: center; flex-wrap: wrap; gap: 10px; }
.society-choices-color { justify-content: center; padding: 4px 0 28px; }
.society-choice { background: transparent; color: inherit; border: 1px solid transparent; padding: 6px; min-width: 32px; min-height: 36px; }
.society-choice[aria-pressed=true] { border-color: #10171c; }
.society-choice:disabled { opacity: .3; cursor: not-allowed; }
.society-choice img { display: block; width: 68px; height: 82px; object-fit: cover; }
body main .society-choice:hover:not(:disabled) { background: transparent; color: #620f0f; border-color: #620f0f; }
.society-form-ready { display: grid; grid-template-columns: minmax(0,1fr) auto auto; column-gap: 12px; align-items: end; }
.society-form-ready .variations, .society-form-ready .variations tbody, .society-form-ready .single_variation_wrap, .society-form-ready .woocommerce-variation-add-to-cart { display: contents; }
.society-form-ready .variations tr { display: block; grid-column: 1/-1; }
.society-form-ready .variations th { display: none; }
.society-form-ready .variations td { display: block; }
.society-form-ready .variations tr.society-attribute-size { grid-column: 1; }
.society-form-ready .quantity { grid-column: 2; grid-row: var(--purchase-row); }
.society-form-ready .single_add_to_cart_button { grid-column: 3; grid-row: var(--purchase-row); }
.society-form-ready .single_variation { grid-column: 1/-1; grid-row: var(--after-purchase-row); margin-top: 12px; }
.society-form-ready .single_variation .woocommerce-variation-price { display: none; }
.society-form-ready .variations .value { position: relative; }
.society-product-buy .reset_variations { position: absolute; left: 0; bottom: -14px; display: inline-block; font-size: 11px; margin: 0; }
.society-product-buy .quantity { display: inline-flex; align-items: center; position: relative; padding-top: 18px; background: #f7f6f3; flex: 0 0 auto; float: none!important; margin: 0!important; }
.society-quantity-label { position: absolute; top: 2px; left: 6px; font-size: 10px; }
.society-product-buy .quantity .qty { width: 30px; min-height: 32px; padding: 0; border: 0; background: transparent; text-align: center; font: inherit; appearance: textfield; }
.society-product-buy .quantity .qty::-webkit-inner-spin-button, .society-product-buy .quantity .qty::-webkit-outer-spin-button { -webkit-appearance: none; margin: 0; }
.society-product-buy .society-quantity-step { border: 0; background: transparent; color: #10171c; padding: 4px; min-width: 24px; min-height: 32px; }
.society-product-buy .single_add_to_cart_button, .society-product-bar .society-home-button { margin: 0; border: 1px solid #620f0f; background: #620f0f; color: #fff; font-size: 11px; font-weight: 100; border-radius: 0; padding: 14px 12px; min-height: 44px; text-transform: uppercase; white-space: nowrap; }
.society-product-buy form.cart:not(.variations_form):not(.grouped_form) { display: flex; align-items: end; gap: 12px; flex-wrap: wrap; }
.society-product-buy .button:disabled { opacity: .4; cursor: not-allowed; }
.society-product-accordions { margin-top: 24px; }
.society-product-accordions details { border: 0; }
.society-product-accordions summary { list-style: none; padding: 8px 4px; cursor: pointer; display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.society-product-accordions summary::-webkit-details-marker { display: none; }
.society-product-accordions summary::after { content: '›'; transition: transform .2s; }
.society-product-accordions details[open] summary::after { transform: rotate(90deg); }
.society-accordion-content { padding: 8px 4px 20px; font-size: 14px; }
.society-accordion-content > :first-child { margin-top: 0; }
.society-pair-look { margin: 32px 0 0; }
.society-pair-look h2 { font-size: 15px; margin: 0 0 16px; }
.society-pair-products { display: flex; overflow-x: auto; gap: 16px; scroll-snap-type: x proximity; padding-bottom: 12px; }
.society-pair-card { display: grid; grid-template-columns: 110px minmax(0,1fr); gap: 12px; flex: 0 0 92%; scroll-snap-align: start; }
.society-pair-image img { display: block; width: 110px; height: 150px; object-fit: cover; background: #f0efed; }
.society-pair-card p { margin: 8px 0; font-size: 12px; }
.society-pair-card .society-home-button { font-size: 12px; padding: 8px 14px; }
.society-product-bar { position: fixed; z-index: 900; left: 24px; right: 24px; bottom: 0; display: flex; align-items: center; gap: 16px; padding: 12px 16px; background: rgba(245,243,240,.94); backdrop-filter: blur(14px); border-top: 1px solid #ddd; font-size: 14px; }
.society-product-bar[hidden] { display: none!important; }
.society-product-bar-image img { display: block; width: 56px; height: 64px; object-fit: cover; }
.society-product-bar-info { flex: 1; min-width: 0; }
.society-product-bar-info small { display: block; font-size: 12px; margin-top: 4px; }
.society-product-bar button { font: inherit; cursor: pointer; }
.society-product-edit { background: transparent; border: 0; font-size: 12px!important; white-space: nowrap; }
.society-product-sticky-cart:disabled { opacity: .4; cursor: not-allowed; }
.society-product-page :is(button,summary,a):focus-visible, .society-product-bar button:focus-visible { outline: 2px solid #620f0f; outline-offset: 3px; }
@media(max-width:1100px) {
 .society-product-page .society-product { grid-template-columns: minmax(0,1.35fr) minmax(320px,1fr); gap: 24px; }
 .society-form-ready { column-gap: 6px; }
 .society-choices-size { gap: 2px; }
 .society-choice { padding: 4px; min-width: 28px; }
}
@media(max-width:780px) {
 .society-product-page { padding: 12px 16px 32px; }
 .society-product-page .society-product { grid-template-columns: 1fr; gap: 24px; }
 .society-product-gallery { gap: 3px; }
 .society-product-heading h1 { font-size: 22px; }
 .society-product-bar { left: 0; right: 0; gap: 10px; padding: 10px 12px; }
 .society-product-bar-image img { width: 40px; height: 50px; }
 .society-product-bar-price, .society-product-edit { display: none; }
 .society-product-bar-info { font-size: 12px; }
 .society-product-bar .society-home-button { font-size: 10px; padding: 12px 8px; }
 .society-pair-card { flex-basis: 80%; }
}
@media(max-width:380px) {
 .society-form-ready { grid-template-columns: minmax(0,1fr) auto; }
 .society-form-ready .single_add_to_cart_button { grid-column: 1/-1; grid-row: calc(var(--purchase-row) + 1); margin-top: 10px; }
 .society-pair-card { flex-basis: 100%; }
}
@media(prefers-reduced-motion:reduce) { .society-product-accordions summary::after { transition: none; } }

body main .society-choice:disabled:hover { background: transparent; color: inherit; border-color: transparent; }
