.woocommerce #content div.product div.images, .woocommerce div.product div.images, .woocommerce-page #content div.product div.images, .woocommerce-page div.product div.images, .woocommerce #content div.product div.summary, .woocommerce div.product div.summary, .woocommerce-page #content div.product div.summary, .woocommerce-page div.product div.summary {
    float:none!important;
    width:auto!important;
}
.wc-bookings-booking-form {
	padding:0;
	margin:auto;
	max-width:700px;
}
.woocommerce-product-gallery__wrapper div a img {
	max-width:280px;
}
section.related.products {
    background:rgba(209, 255, 225, 0.5);
}
section.related.products,
.woocommerce .products ul, .woocommerce ul.products {
    display:flex;
	flex-wrap:wrap;
	justify-content:space-evenly;
	align-items:stretch;
	margin-bottom:2rem;
	gap:2rem;
}
.woocommerce ul.products[class*=columns-] li.product, 
.woocommerce-page ul.products[class*=columns-] li.product {
	width:auto;
	float: none;
	clear: none;
	margin:0;
	display:flex;
	flex-direction:column;
	justify-content:space-between;
	align-items:center;
	background:rgba(177, 177, 177, 0.323);
	border-radius:9px;
	padding:10px;
	flex:0 300px;
}
section.related.products > h2 {
    flex:100%;
	text-align:center;
}
#wrapper > #container > #content > #content-container #main > header.woocommerce-products-header,
#wrapper > #container > #content > #content-container p.woocommerce-result-count,
#wrapper > #container > #content > #content-container #main > form.woocommerce-ordering {
	margin:10px auto;
	text-align:center;
	width:auto;
}
p.woocommerce-result-count {
	text-align:center;
}
#wrapper > #container > #content > #content-container div.woocommerce-product-description p {
	font-size:.65rem;
}
body.single-product #wrapper > #container > #content > #content-container div.woocommerce-product-description p {
	font-size:.85rem;
	text-align:left;
	margin:10px auto;
	max-width:700px;
}
.booking-info-message {
	font-size:.85rem;
    padding:20px;
}
#wrapper > #container > #content > #content-container #main > header.woocommerce-products-header > h1.page-title {
	padding-top: 1rem;
    font-size: 1.4rem;
}
.woocommerce .woocommerce-result-count, .woocommerce-page .woocommerce-result-count {
    float: none;
}
.woocommerce .woocommerce-ordering, .woocommerce-page .woocommerce-ordering {
    float: none;
}
.woocommerce .woocommerce-ordering, .woocommerce-page .woocommerce-ordering select {
    padding:4px;
	border-radius:4px;
}
.woocommerce ul.products li.product a.woocommerce-loop-product__link {
	width:80%;
	text-align:center;
}
.woocommerce ul.products li.product a img {
    max-width:250px;
}
.page-template-page-volunteer-products .woocommerce ul.products li.product .price {
    display:none;
}
.woocommerce .products ul::after, .woocommerce .products ul::before, .woocommerce ul.products::after, .woocommerce ul.products::before {
    content:unset;
    display:unset;
}
.wc-bookings-booking-form .block-picker {
    padding: 10px;
}
.product .entry-summary {
	margin:0 auto;
	max-width:1200px;
}
.product .entry-summary .product_title,
.product .entry-summary .price {
	text-align:center;
}
.woocommerce-MyAccount-content .u-columns.woocommerce-Addresses .woocommerce-Address {
	padding:10px;
}
.woocommerce-MyAccount-content .u-columns.woocommerce-Addresses .woocommerce-Address .woocommerce-Address-title a {
	padding:10px;
	color:var(--color-caribbean);
	font-weight:600;
}
.gform_body {
	margin:auto!important;
	max-width:800px!important;
}
.wc-bookings-booking-form-button,
.single_add_to_cart_button {
	display:block !important;
	margin:20px auto !important;
	text-align:center;
}
.woocommerce div.product form.cart .button {
    float:none;
}
.woocommerce div.product div.images img {
    max-width:300px!important;
}
/* Target only WC Bookings select dropdowns */
.wc-bookings-time-block-picker select,
.wc-bookings-start-time-container select,
.wc-bookings-end-time-container select {
	padding: 12px 16px !important;
	height: auto !important;
	line-height: 1.4 !important;
	font-size: 1.1rem !important;
	border-radius: 8px !important;
	border: 1px solid #ccc !important;
	min-width: 200px !important;
}
/* Increase spacing between label and select */
.wc-bookings-start-time-container label,
.wc-bookings-end-time-container label {
	font-size: 1rem;
	margin-bottom: 6px;
	display: block;
}

/* Make the whole time picker smoother */
.wc-bookings-time-block-picker {
	gap: 20px;
	display: flex;
	align-items: flex-start;
}
.gform_footer {
	justify-content:center !important;
}
.woocommerce-MyAccount-navigation ul li {
	padding-bottom:5px;
}
.woocommerce-MyAccount-navigation ul li:last-child {
	padding-bottom: 0;     /* optional cleanup */
}
.volunteer-hours-MyAccount {
	display:flex;
	align-items:center;
	justify-content:space-evenly;
	flex-wrap:wrap;
	gap:20px;
}
.wc-block-checkout__actions .wc-block-checkout__actions_row .wc-block-components-checkout-place-order-button .wc-block-components-checkout-place-order-button__text {
    justify-content: center;
}
.product-type-booking .gform_wrapper {
	margin-top:50px;
}
/* WooCommerce product sorting */
.woocommerce .woocommerce-ordering {
	text-align:center;
}
.woocommerce .woocommerce-ordering label {
	font-size: 1rem;
	margin-bottom: 6px;
	display: block;
}
.woocommerce .woocommerce-ordering select {
	font-size: 0.95rem;
	padding: 6px 8px;
	border: 1px solid #ccc;
	border-radius: 4px;
	background-color: #fff;
	min-width: 180px;
}
.woocommerce .woocommerce-ordering {
	display: flex;
	justify-content:center;
	align-items: flex-start;
	margin-bottom: 1rem;
}
.woocommerce ul.products li.product .woocommerce-placeholder {
    border:0;
}
.is-medium table.wc-block-cart-items .wc-block-cart-items__row, .is-mobile table.wc-block-cart-items .wc-block-cart-items__row, .is-small table.wc-block-cart-items .wc-block-cart-items__row {
    display:flex!important;
	flex-wrap:wrap!important;
	justify-content: space-evenly!important;
	align-items:flex-start!important;
}
.wc-block-cart-item__image {
	padding:0!important;
	margin:0!important;
}
.wc-block-cart-item__image > a > img {
	max-width:90px;
}
#wrapper > #container > #content > #content-container .woocommerce-product-description > p {
	margin:10px auto;
	text-align:center;
	font-size:.75rem;
}
body.single-product .woocommerce-product-details__short-description {
	display:none;
}
/* Resource selector - match WC Bookings time picker styling */
#wrapper > #container > #content > #content-container p.wc_bookings_field_resource,
#wrapper > #container > #content > #content-container p.form-field {
	width:95%;
}
#wrapper > #container > #content > #content-container p.wc_bookings_field_resource label {
	font-size: 1rem;
	margin-bottom: 6px;
	display: block;
}
#wrapper > #container > #content > #content-container .product_cat-behind-the-scenes input[type="number"] {
	padding: 12px 16px !important;
	height: auto !important;
	line-height: 1.4 !important;
	font-size: 1.1rem !important;
	border-radius: 8px !important;
	border: 1px solid #ccc !important;
	min-width: 200px !important;
}
#wrapper > #container > #content > #content-container p.wc_bookings_field_resource select {
	padding: 12px 16px !important;
	height: auto !important;
	line-height: 1.4 !important;
	font-size: 1.1rem !important;
	border-radius: 8px !important;
	border: 1px solid #ccc !important;
	min-width: 200px !important;
}
p.wc-bookings-date-picker-timezone-block {
	display:none;
}
.asp-account-plan-orders .woocommerce-error::before,
.asp-account-plan-orders .woocommerce-info::before,
.asp-account-plan-orders .woocommerce-message::before {
    content:" "!important;
}
main#main div.product-description-top {
	margin:50px auto 20px auto;
	width:90%;
	max-width:900px;
}
body.single-product main#main div.product > div.woocommerce-product-gallery img {
	display:none;
}
body.single-product main#main div.product > div.product-meta {
	margin-top:20px;
}
body.single-product main#main div.product .bts-zoo-booking-message > p > span {
	color:#ff0000;
	font-weight:700;
}
div.cart-collaterals div.cart_totals div.wc-proceed-to-checkout {
	text-align:center;
}
#wrapper > div#container > main#content div.entry-content div.cart-collaterals div.cart_totals div.wc-proceed-to-checkout a {
    display: inline-block;
    word-break:normal;
}
.woocommerce table.shop_table_responsive tr td.product-quantity div.quantity,
.woocommerce-page table.shop_table_responsive tr td.product-quantity div.quantity {
    padding:15px;
}

#wrapper > #container > #content > #content-container div.entry-content .woocommerce form.woocommerce-checkout table.shop_table ul.wcpa_cart_meta,
#wrapper > #container > #content > #content-container div.entry-content .woocommerce form.woocommerce-cart-form table.cart ul.wcpa_cart_meta {
    padding:2px;
}
#wrapper > #container > #content > #content-container div.entry-content .woocommerce form.woocommerce-checkout table.shop_table ul.wcpa_cart_meta .wcpa_cart_meta_item,
#wrapper > #container > #content > #content-container div.entry-content .woocommerce form.woocommerce-cart-form table.cart ul.wcpa_cart_meta .wcpa_cart_meta_item {
    display:flex;
	justify-content:space-between;
	border-bottom:1px solid rgba(136, 136, 136, 0.5);
	padding-bottom:2px;
}
#wrapper > #container > #content > #content-container div.entry-content .woocommerce form.woocommerce-checkout table.shop_table ul.wcpa_cart_meta .wcpa_cart_meta_item p,
#wrapper > #container > #content > #content-container div.entry-content .woocommerce form.woocommerce-cart-form table.cart ul.wcpa_cart_meta .wcpa_cart_meta_item p {
    margin:0;
}
.wahpweb-out-of-stock {
	margin: 25px 0;
	padding: 20px;
	background: #f8ead3;
	border:1px solid rgba(0, 0, 0, 0.4);
	border-radius: 10px;
}
.wahpweb-out-of-stock h3 {
	margin-top: 0;
	margin-bottom: 5px;
}
.wahpweb-out-of-stock p {
	margin-bottom: 0;
}
@media only screen and (min-width:850px) {
	#wrapper > #container > #content > #content-container #main > header.woocommerce-products-header > h1.page-title {
		font-size: 1.8rem;
	}
	.asp-account-plan-orders .woocommerce-error::before,
	.asp-account-plan-orders .woocommerce-info::before,
	.asp-account-plan-orders .woocommerce-message::before {
		content: "\e015"!important;
	}
}