/* Product purchase spacing and controls, inspired by the supplied Holstee page. */
.single-product .c4-catalogue { padding-block: 30px 80px; }
.single-product .c4-catalogue .woocommerce-breadcrumb { margin: 0 0 32px; line-height: 1.7; }
.single-product div.product { display: grid; grid-template-columns: minmax(0,1.1fr) minmax(0,1fr); gap: 56px 64px; padding: 0; }
.single-product div.product::before,
.single-product div.product::after { display: none; }
.single-product div.product div.images,
.single-product div.product div.summary { float: none; width: 100%; min-width: 0; margin: 0; }
.single-product div.product .product_title { font-size: clamp(30px,3vw,42px); line-height: 1.15; margin: 0 0 20px; }
.single-product div.product p.price { font-size: 21px; color: #302d2d; margin: 0 0 22px; line-height: 1.5; }
.single-product .woocommerce-product-details__short-description { font-size: 16px; line-height: 1.8; margin-bottom: 28px; }
.single-product div.product form.cart { margin: 0 0 28px; }
.single-product div.product form.cart .variations { margin: 0 0 22px; border: 0; }
.single-product div.product form.cart .variations tr { display: block; margin-bottom: 22px; }
.single-product div.product form.cart .variations th,
.single-product div.product form.cart .variations td { display: block; padding: 0; text-align: left; border: 0; }
.single-product div.product form.cart .variations label { display: block; font-size: 14px; font-weight: 500; margin-bottom: 10px; }
.single-product div.product form.cart .variations select { min-height: 48px; width: 100%; max-width: 100%; border: 1px solid #dedbd5; border-radius: 10px; padding: 10px 14px; font: inherit; background: #fff; }
.single-product .c4-option-buttons { display: flex; flex-wrap: wrap; gap: 10px; }
.single-product .c4-option-button { border: 1px solid #dedbd5; border-radius: 999px; min-height: 46px; padding: 10px 22px; background: #fff; color: #302d2d; font: inherit; font-size: 14px; line-height: 1.5; cursor: pointer; transition: background .15s, border-color .15s; }
.single-product .c4-option-button:hover { background: #f6f5f0; border-color: #98978f; }
.single-product .c4-option-button[aria-pressed="true"] { background: #ece9dd; border-color: #55594f; }
.single-product .c4-option-button:disabled { opacity: .4; cursor: not-allowed; text-decoration: line-through; }
.single-product .c4-enhanced-select { display: none !important; }
.single-product div.product form.cart .reset_variations { display: inline-block; font-size: 12px; color: #68645c; margin-top: 12px; text-decoration: underline; }
.single-product .woocommerce-variation-price { margin-bottom: 18px; }
.single-product div.product form.cart .woocommerce-variation-add-to-cart { display: flex; flex-direction: column; align-items: stretch; gap: 20px; }
.single-product div.product form.cart div.quantity { display: flex; align-items: center; width: 128px; min-height: 48px; float: none; margin: 0; border: 1px solid #dedbd5; border-radius: 10px; overflow: hidden; }
.single-product .quantity .qty { width: 44px; min-height: 46px; padding: 0; border: 0; background: transparent; color: #302d2d; font: inherit; text-align: center; -moz-appearance: textfield; }
.single-product .quantity .qty::-webkit-inner-spin-button,
.single-product .quantity .qty::-webkit-outer-spin-button { -webkit-appearance: none; margin: 0; }
.single-product .c4-quantity-button { width: 41px; min-height: 46px; padding: 0; border: 0; background: transparent; color: #302d2d; font: inherit; font-size: 20px; cursor: pointer; }
.single-product .c4-quantity-button:disabled { opacity: .35; cursor: default; }
.single-product div.product form.cart .single_add_to_cart_button { width: 100%; float: none; min-height: 48px; border: 0; border-radius: 10px; padding: 9px 40px; background: var(--c4-purple); color: #fff; font: 500 15px/30px "Segoe UI",Arial,sans-serif; letter-spacing: 1.5px; text-transform: uppercase; transition: background .2s; }
.single-product div.product form.cart .single_add_to_cart_button:hover { background: var(--c4-deep); }
.single-product div.product form.cart:not(.variations_form) .single_add_to_cart_button { margin-top: 18px; }
.single-product div.product form.cart .single_add_to_cart_button.disabled { opacity: .5; }
.single-product .product_meta { border-top: 1px solid #e6e2dc; /* taste-skill-ignore: separates the purchase controls from product metadata */ padding-top: 22px; font-size: 13px; color: #716b68; line-height: 1.8; }
.single-product .product_meta > span { display: block; }
.single-product div.product .woocommerce-tabs,
.single-product div.product .related.products { grid-column: 1/-1; width: 100%; }
.single-product div.product .woocommerce-tabs ul.tabs { padding: 0; margin-bottom: 30px; }
.single-product div.product .woocommerce-tabs ul.tabs li { border: 0; border-radius: 0; background: transparent; padding: 0 22px 0 0; margin: 0; }
.single-product div.product .woocommerce-tabs ul.tabs li::before,
.single-product div.product .woocommerce-tabs ul.tabs li::after { display: none; }
.single-product div.product .woocommerce-tabs ul.tabs li a { padding: 14px 0; font-weight: 500; }
.single-product div.product .woocommerce-tabs ul.tabs li.active a { border-bottom: 2px solid var(--c4-purple); }
.single-product .woocommerce-Tabs-panel { max-width: 900px; font-size: 16px; line-height: 1.9; }
.single-product .woocommerce-Tabs-panel h2 { margin-bottom: 22px; font-size: 28px; }
.single-product .woocommerce-Tabs-panel p { margin-bottom: 20px; }
.single-product .c4-round-specs { margin-top: 34px; }
.single-product #tab-additional_information { max-width: none; }
.single-product .c4-round-specs { max-width: 900px; }
.single-product .c4-product-size-finder .c4-finder { width: 100%; margin: 36px 0 0 !important; }
.single-product .c4-product-size-finder .c4-finder h2 { margin: 0; font-size: clamp(28px, 3vw, 38px); }
.single-product .c4-product-size-finder p { margin-bottom: 0; }
.single-product .c4-product-size-finder .c4-link-button { margin-top: 18px; }
.single-product .c4-round-specs h3 { margin: 0 0 16px; color: var(--c4-deep); font-size: 21px; }
.single-product .c4-round-specs-scroll { max-width: 100%; overflow-x: auto; border: 1px solid #e7ddec; border-radius: 12px; }
.single-product .c4-round-specs-scroll:focus-visible { outline: 2px solid var(--c4-purple); outline-offset: 3px; }
.single-product .c4-round-specs table { width: 100%; min-width: 680px; margin: 0; border: 0; border-collapse: collapse; font-size: 14px; line-height: 1.5; }
.single-product .c4-round-specs th,
.single-product .c4-round-specs td { padding: 14px 16px; border: 0; border-bottom: 1px solid #eee7f0; text-align: left; vertical-align: top; }
.single-product .c4-round-specs thead th { background: var(--c4-deep); color: #fff; font-weight: 600; }
.single-product .c4-round-specs tbody th { color: var(--c4-deep); font-weight: 700; white-space: nowrap; }
.single-product .c4-round-specs tbody tr:nth-child(even) { background: #faf7fb; }
.single-product .c4-round-specs tbody tr:last-child th,
.single-product .c4-round-specs tbody tr:last-child td { border-bottom: 0; }
.single-product .c4-round-specs > p { margin: 14px 0 0; color: #625969; font-size: 14px; line-height: 1.6; }
.single-product div.product div.images .flex-control-thumbs { display: flex; gap: 12px; margin-top: 16px; }
.single-product div.product div.images .flex-control-thumbs li { max-width: 88px; border: 1px solid #e6e2dc; border-radius: 8px; overflow: hidden; }
@media(max-width: 767px) {
    .single-product .c4-catalogue { padding-block: 22px 48px; }
    .single-product .c4-catalogue .woocommerce-breadcrumb { margin-bottom: 24px; font-size: 11px; }
    .single-product div.product { grid-template-columns: minmax(0,1fr); gap: 32px; }
    .single-product div.product .product_title { font-size: 32px; }
    .single-product .c4-option-button { padding-inline: 18px; }
    .single-product div.product .woocommerce-tabs ul.tabs { display: flex; flex-wrap: wrap; }
}

