/*
 Theme Name:   Duck creek Sporting Goods
 Description:  Improvise Child Theme for Duck Creek Sporting Goods
 Author:       Crack-Ajax
 Author URI:   https://crack-ajax.com
 Template:     improvise
 Version:      1.8.7
*/

body.mceContentBody { 
   background: #fff; 
   color:#000;
}

body.improvise {
	background-color: black;
}

@media (max-width: 480px) {
	.document-header .logo {
		max-width: 60%;
	}
}

body:not(.has-top-bar) .document-header,
body.has-top-bar .document-header .main-bar {
	min-height: var(--xl-spacing);
}

body.fixed:not(.has-top-bar) .document-header,
body.fixed.has-top-bar .document-header .main-bar {
	min-height: var(--l-spacing);
}

.home .wp-block-media-text.is-stacked-on-mobile .wp-block-media-text__media {
	@media (max-width: 480px) {
		min-height: 350px !important;
		background-size: contain;
    	background-repeat: no-repeat;
	}
}

.pages article h1,
.blog header h1,
.posts header h1,
.improvise main.shop .page-title {
	text-align: center;
	text-transform: uppercase;
	font-size: 2.33rem;
	margin-bottom: 0 !important;
	padding-top: var(--l-spacing) !important;
}

.archive .blog:not(.search) .row .page-title {
	margin-bottom: var(--l-spacing) !important;
}

#breadcrumbs,
.improvise.woocommerce .woocommerce-breadcrumb {
	position: relative;
	text-align: center;
	text-transform: uppercase;
	text-decoration: none;
	font-size: .78rem;
	margin-top: 0 !important;
	margin-bottom: var(--l-spacing) !important;
	color: white;
	
	& a {
		color: white;
		
		&:hover {
			color: var(--color-accent);
		}
	}
}

.improvise.woocommerce .woocommerce-breadcrumb {
	margin-bottom: 0 !important;
}

.hide {
	display: none !important;
}

@keyframes animatedBackground {
    0% { background-position: 100% 50%; }
    100% { background-position: 50% 50%; }
}

.home-hero {

	& .wp-block-cover__image-background {
		background-size: 110% 100%;
		animation: animatedBackground 10s linear;
	}
	
	& h1 {
		font-size: clamp(28px, 6vw, 106px) !important;
	}
	
	@media (max-width: 480px) {
		min-height: 35vh !important;
		
		& .wp-block-cover__image-background {
			background-attachment: scroll;
		}
	}
}

.woocommerce ul.products li.product .woocommerce-LoopProduct-link .woocommerce-loop-product__title {
	padding: 2rem .55rem 3rem;
}

.wp-block-group.has-background > .wp-block-group__inner-container, .wp-block-group.alignwide.has-background.fp-wc-widget > .wp-block-group__inner-container {
	padding: 20px 15px;
}

.wp-block-group.fp-wc-widget > .wp-block-group__inner-container .tab-container :last-child {
	margin-bottom: 10px !important;
}

li.product {
  border: 1px solid #2e2c33;
  border-radius: 3px;
  overflow: hidden;
}
.tab-container ul,
.woocommerce div.product .woocommerce-tabs ul.tabs {
  	display: flex;
  	list-style-type: none;
  	padding: 0;

  	& li {
    	padding: 15px 25px;
    	background-color: #2A2A2A;
    	color: #fff;
		cursor: pointer;
		white-space: nowrap;
  	}
	
  	& li.active {
    	background-color: #0e0d12;
    	color: var(--color-accent);
  	}
	
  	& li:not(.active):hover {
    	background-color: #1b1b1b;
  	}
		
	@media (max-width: 900px) {
		flex-wrap: wrap;
		
		& li {
			flex: 1 0 33.333%;
			text-align: center;
			margin: 0;
			
			&:last-child {
				margin-bottom: 0 !important;
			}
		}
	}
		
	@media (max-width: 630px) {
		
		& li {
			flex: 1 0 50%;
			padding: 10px;
		}
	}
		
	@media (max-width: 480px) {
		
		& li {
			flex: 1 0 100%;
		}
	}
}
.cat-container,
.full-post {
	& ul.products.columns-6 {
		display: grid;
		grid-template-columns: repeat(6, 1fr);
		grid-template-rows: auto;
		align-items: stretch;
		gap: 20px;
		background-color: black;
		padding: 20px;
		
		&:before,
		&:after {
			display: none;
		}
		
		& li.product {
			margin: 0;
			width: auto !important;
			display: flex;
            flex-direction: column;
            justify-content: space-between;
		}
		
		@media (max-width: 1200px) {
			grid-template-columns: repeat(5, 1fr);
		}
		
		@media (max-width: 1024px) {
			grid-template-columns: repeat(4, 1fr);
		}
		
		@media (max-width: 850px) {
			grid-template-columns: repeat(3, 1fr);
		}
		
		@media (max-width: 650px) {
			grid-template-columns: repeat(2, 1fr);
		}
		
		@media (max-width: 480px) {
			grid-template-columns: 100%;
		}
		
		
	}
	
	& ul.products.columns-4 {
		display: grid;
		grid-template-columns: repeat(4, 1fr);
		grid-template-rows: auto;
		align-items: stretch;
		gap: 20px;
		background-color: black;
		padding: 20px;
		
		&:before,
		&:after {
			display: none;
		}
		
		& li.product {
			margin: 0;
			width: auto !important;
			display: flex;
            flex-direction: column;
            justify-content: space-between;
		}
		
		@media (max-width: 1200px) {
			grid-template-columns: repeat(3, 1fr);
		}
		
		@media (max-width: 1024px) {
			grid-template-columns: repeat(2, 1fr);
		}
		
		@media (max-width: 850px) {
			grid-template-columns: repeat(3, 1fr);
		}
		
		@media (max-width: 768px) {
			grid-template-columns: repeat(2, 1fr);
		}
		
		@media (max-width: 480px) {
			grid-template-columns: repeat(1, 1fr);
		}
	}
	
  	& .prod-cat:not(.active) {
    	display: none;
  	}
	
  	& .products .outofstock a:before {
    	background-size: contain;
  	}
	
  	& picture img {
    	object-fit: cover;
    	object-position: top left;
		aspect-ratio: 1 / 1;
  	}
	
	& img.attachment-woocommerce_thumbnail {
		margin-bottom: 0 !important;
	}
	
  	.product-price-cart {
		position: relative;
    	display: flex;
    	justify-content: space-between;
    	align-items: flex-end;
    	gap: .5rem;
    	background-color: #2b2b28;

    	& .woocommerce-LoopProduct-link,
		& a.added .gg-shopping-cart {
      		display: none !important;
    	}
		
    	& a {
      		padding: 12px !important;
      		margin-top: 0 !important;
      		background-color: var(--color-accent);
			border: 0;
    	}
		
		& a.added {
			line-height: normal;
			
			&:after {
    			position: relative;
				top: -4px;
			}
		}
		
		& a.added_to_cart {
			position: relative;
    		padding: 2px 5px !important;
    		top: -2px;
    		width: 50px;
    		text-align: center;
    		line-height: 1;
    		text-transform: capitalize;
    		right: 0;
    		background: transparent;
    		color: var(--color-accent);
			transition: all 1s ease;
		}
		
		& a:hover {
			border: 0;
		}
  	}
}

.right-sidebar {
	position: relative;
	max-width: 100%;
	
	& .full-post {
		-overflow: auto;
		
		@media (min-width: 768px) and (max-width: 1200px) {
			padding: 20px 12px;
			overflow: auto;
		}
			
		@media (max-width: 767px) {
			padding: 8px;
			overflow: auto;
		}
	}
}

.sidebar-right, .sidebar-left {
	
	@media (max-width: 850px) {
		flex-basis: 100%;
		display: flex;
		justify-content: center;
	}
}

.blog:not(.search) > .row {
	padding: 0 var(--xl-spacing) var(--l-spacing);
	
	@media (max-width: 1200px) {
		padding: 0 var(--m-spacing) var(--l-spacing);
	}
}

.blog:not(.search) .row .article-container {
	grid-template-columns: repeat(2, 48%);
    grid-column-gap: 4%;
	
	@media (max-width: 580px) {
		grid-template-columns: 100%;
	}
}

.blog:not(.search) .row article:not(.has-post-thumbnail) h1 {
	word-wrap: break-word;
	padding-top: 0 !important;
	margin-bottom: 30px !important;
}

.woocommerce nav.woocommerce-pagination {
	position: relative;
	
	@media (max-width: 480px) {
		width: calc(100% + calc(calc(var(--s-spacing) / 2)* 2));
        margin-left: calc(calc(var(--s-spacing) / 2)* -1);
		
		& ul.page-numbers {
			display: flex;
			flex-wrap: no-wrap;
			justify-content: space-around;
		}
		
		& ul li a,
		& .page-numbers.dots,
		& .page-numbers.current {
			font-size: .8rem;
		}
	}
}

.price {
	display: flex !important;
    margin-bottom: 0 !important;
	min-height: 45px;
			
	& .woocommerce-Price-amount {
		align-self: self-end;
				
		& bdi {
			font-size: 1.67rem;
			line-height: normal;
			font-family: Oswald;
			font-weight: 600;
					
			& .decimals {
				font-size: .835rem;
			}
		}
	}
}

.improvise .gform_wrapper input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]):not([type=image]):not([type=file]),
.improvise .gform_wrapper textarea,
.wp-block-search .wp-block-search__input,
.woocommerce .quantity .qty {
	background-color: #2E2D32;
	border-color: #2E2D32 !important;
}
.woocommerce .quantity .qty {
	color: white;
	font-size: .8rem;
	min-width: 60px;
}

.improvise .gform_wrapper .gform_footer .gform_button {
	color: white;
	background-color: var(--color-accent);
	border: 0;
	max-width: 100%;
	padding: 16px;
	
	&:hover {
		background-color: var(--color-secondary);
		border: 0;
	}
}

.wp-block-search {
	margin-top: 0;
}

.improvise .wp-block-search__input {
	height: 40px;
    padding: 0px 16px;	
	border-radius: 5px 0 0 5px;
}

.improvise .wp-block-search__button {
	font-size: 36px;
	height: 40px;
    padding: 0px 9px;
    transform: rotateY(180deg);
	background-color: var(--color-secondary);
	border: 0;
	border-radius: 5px 0 0 5px;
	
	&:hover {
		background-color: var(--color-accent);
		border: 0;
	}
}

.improvise .wp-block-latest-posts__list li,
.improvise #sidebar .product-categories li {
	margin-left: 24px;
	position: relative;
	font-size: .8rem;
	list-style-type: none;
	
	& a {
		text-decoration: none;
	}

	&:before {
		content: ' ';
    	display: block;
    	width: 4px;
    	height: 4px;
    	line-height: 4px;
    	text-align: center;
    	position: absolute;
    	z-index: 1;
    	top: 0.7em;
    	left: -1.15em;
    	border-radius: 50%;
		background-color: var(--color-secondary);
	}
}

.improvise #sidebar .product-categories>li {
	text-transform: uppercase;
	margin-left: -12px;
	
	& ul.children {
		padding-left: 0;
	}
}

.improvise.single .post-info p {
	color: #949493;
}
.improvise.archive .post-thumbnail,
.improvise.blog .post-thumbnail{
	display: none;
}
.blog:not(.search) .row article {
	border: 1px solid#949493;
	
	&:hover {
		box-shadow: 5px 5px 8px 0px rgba(255, 255, 255, 0.4);
	}
	
	& .read-more.button {
		background-color: var(--color-accent);
		border: 0;
		
		&:hover {
			background-color: var(--color-secondary);
		}
	}
}

.improvise nav.pagination {
	position: relative;
	
	& a {
		
		&:hover {
			color: var(--color-accent);
			background-color: transparent;
		}
	}
}

.improvise main.shop .page-title {
	text-transform: uppercase;
	padding-top: var(--l-spacing);
}

.improvise main.shop .term-description {
	max-width: var(--restricted-width);
	margin: 0 auto var(--l-spacing);
	
	& p {
		font-size: .75rem;
    	text-align: center;
	}
}

h2 img {
	filter: brightness(1.5) hue-rotate(15deg);
}

/** Woof Woocommerce Filter Overrides**/
.chosen-container-single .chosen-single {
	background: black !important;
}

.chosen-container-single .chosen-single span {
	color: orange ;
}

.chosen-container .chosen-drop {
	background: black !important;
}

.chosen-container .chosen-results {
	color: #ffffff;
	
	& .active-result {
		font-size: .8rem;
	}
}

.chosen-container:after {
	content: '\25be';
    display: block;
    position: absolute;
    z-index: 2;
    top: 50%;
    right: 1em;
    width: 1em;
    height: 1em;
    line-height: 1em;
    text-align: center;
    margin-top: -0.5em;
    pointer-events: none;
    cursor: pointer;
	color: #ffffff;
    background-color: #849E56;
}

aside div.widgets[id*='woof_widget'] {
	margin-bottom: var(--l-spacing);
}

.button:not(.read-more), .wp-block-button__link, .wp-block-button__link.add_to_cart_button, .woocommerce #respond input#submit, .woocommerce a.button, .woocommerce button.button, .woocommerce input.button, .woocommerce #respond input#submit.disabled, .woocommerce #respond input#submit:disabled, .woocommerce #respond input#submit:disabled[disabled], .woocommerce a.button.disabled, .woocommerce a.button:disabled, .woocommerce a.button:disabled[disabled], .woocommerce button.button.disabled, .woocommerce button.button:disabled, .woocommerce button.button:disabled[disabled], .woocommerce input.button.disabled, .woocommerce input.button:disabled, .woocommerce input.button:disabled[disabled], #add_payment_method .wc-proceed-to-checkout a.checkout-button, .woocommerce-cart .wc-proceed-to-checkout a.checkout-button, .woocommerce-checkout .wc-proceed-to-checkout a.checkout-button, .woocommerce #respond input#submit.alt, .woocommerce a.button.alt, .woocommerce button.button.alt, .woocommerce input.button.alt, .woocommerce button.button.alt.disabled, .improvise .mini-cart-wrapper .woocommerce-mini-cart__buttons.buttons a.button, .pdfp_fullscreen button, .wp-block-file__button {
	background-color: var(--color-accent) !important;
	border-color: var(--color-accent) !important;
	border-radius: 3px !important;
	font-size: .8rem;
	text-transform: uppercase;
	font-family: "Titillium Web", sans-serif;
	color: white !important;
	
	&:hover {
		background-color: var(--color-secondary) !important;	
		border-color: var(--color-secondary) !important;
		color: black !important;
	}
}

.pdfp_fullscreen button {
	padding: 10px 20px;
}

.iframe_wrapper .pdfp_iframe,
.powder-primer-iframe iframe {
	max-height: 300px;
}

.improvise .woocommerce form .form-row input.input-text, 
.improvise .select2-container--default .select2-selection--single,
.improvise .woocommerce form .form-row textarea,
.improvise .select2-container--open .select2-dropdown--below,
.improvise .select2-container--open .select2-dropdown--above,
.improvise .select2-container--default .select2-search--dropdown .select2-search__field,
.improvise .product .quantity .input-text {
	border: 1px solid #2e2d32;
	border-radius: 3px;
    background-color: #2e2d32;
	color: white;
	font-size: .8rem;
}

.improvise .product .quantity .input-text {
	padding: 10px 10px !important;
    width: 75px;
}

.improvise .woocommerce form .form-row textarea {
	padding: 16px;
}

.improvise .woocommerce form .form-row.woocommerce-validated .select2-container, 
.improvise .woocommerce form .form-row.woocommerce-validated input.input-text {
	border-color: #6dc22e;
}

input:not(:placeholder-shown),
textarea:not(:placeholder-shown),
input[type=text]:not(:placeholder-shown){
  border-color: #6dc22e !important;
}

.improvise .woocommerce-info,
.improvise .woocommerce-error, 
.improvise .woocommerce-message {
	border-top-color: white;
	background-color: #10100f;
	color: #f2f2f2 !important;
	font-size: .8rem;
	
	& li {
		font-size: .8rem;
	}
	
	& a {
		color: var(--color-accent);
	}
	
	&:before {
		color: white;
	}
}
.improvise .woocommerce form.checkout_coupon p,
.improvise .woocommerce form.login p,
.improvise .woocommerce form.register p {
	font-size: .8rem;
}

.woocommerce .woocommerce-form-login .woocommerce-form-login__rememberme {
	display: block;
	margin-bottom: 10px;
}

.woocommerce .checkout h3 {
	text-transform: uppercase;
}

.woocommerce table.shop_table {
	border-collapse: collapse;
	font-size: .8rem;
}

.woocommerce table.shop_table .cart_item:nth-of-type(odd),
.improvise .woocommerce table.shop_table td.actions,
.improvise .cart_totals .shop_table .cart-subtotal,
.improvise .cart_totals .shop_table .order-total {
	background-color: #333;
}

.woocommerce .checkout table.shop_table tfoot th {
	text-align: right;
}
.improvise #add_payment_method #payment,
.improvise .woocommerce-cart #payment,
.improvise .woocommerce-checkout #payment {
	background-color: transparent;	
}

.improvise #add_payment_method #payment div.payment_box,
.improvise .woocommerce-cart #payment div.payment_box,
.improvise .woocommerce-checkout #payment div.payment_box,
.improvise input[type=text] {
	color: #ffffff;
    background-color: #2e2d32;
	
	& p {
		font-size: .8rem
	}
	
	&:before {
		border-color: transparent transparent #2e2d32;
	}
}

.improvise td.actions input[type=text] {
	border-color: #2e2d32 !important;
	font-size: .8rem;
}

.improvise td.actions button {
	padding: 8px 20px !important;
}

.improvise .cart_totals *,
.improvise .woocommerce form .form-row label{
	font-size: .8rem;
}
.improvise .shop_table th,
.improvise .cart_totals h2 {
	text-transform: uppercase;
}

.improvise .cart_totals .shop_table .shipping th,
.improvise .cart_totals .shop_table .shipping td,
.improvise .cart_totals .shop_table .order-total th,
.improvise .cart_totals .shop_table .order-total td {
	border: 0 !important;
}

.improvise .woocommerce a.remove {
	color: #0e0d12 !important;
	background-color: #849E56 !important;
	border-radius: 3px;
	line-height: 0.75;
	
	&:hover {
		background-color: white !important;
	}
}

.improvise .summary h1.product_title {
	margin-bottom: 0;
}

.improvise .summary .stock {
	margin-top: var(--m-spacing);
	text-decoration: underline;
}

.improvise .product_meta .sku_wrapper,
.improvise .product_meta .posted_in {
	display: block;
	font-size: .8rem;
	color: #ededec;
}

.improvise .product_meta .sku_wrapper .sku,
.improvise .product_meta .posted_in a {
	color: white;
	font-weight: bold;
	
	&:hover {
		color: var(--color-accent);
	}
}

.woocommerce div.product .woocommerce-tabs ul.tabs {
	background-color: #2b2b28;
	
	&:before,
	&:after {
		display: none;
	}
	
	& li {
		padding: 3px 24px;
		border: 0;
		color: white !important;
		
		& a {
			color: white !important;
		}
		
		&:before,
		&:after {
			display: none;
		}
	}
}

.woocommerce div.product .woocommerce-tabs {
	border: 1px solid #2e2c33;
	
	& h2 {
		display: none;
	}
	
	& * {
		font-size: .8rem;
	}
	
	& .woocommerce-Tabs-panel {
		padding: 0 20px;
	}
}

.woocommerce-MyAccount-navigation ul {
	list-style-type: none;
	padding-left: 0;
	
	& li {
		border-bottom: 1px solid #2e2c33;	
		
		&  a {
			text-decoration: none;	
			text-transform: uppercase;
			padding: 10px 3px;
			display: block;
			font-size: .8rem;
		}
	}
	
	& .is-active a {
		color: var(--color-accent);
	}
}

.woocommerce form .form-row .required {
	color: white;
}

.woocommerce-Address address,
.woocommerce-MyAccount-content p {
	font-size: .8rem;
}

.woocommerce-Address a {
	color: var(--color-accent);
	
	&:hover {
		color: var(--color-secondary);
	}
}

.woocommerce-account .addresses .title h3,
.woocommerce-account .addresses .title .edit {
	float: none !important;
}

button[name=save_account_details] {
	margin-top: 20px !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation {
	width: 20%;
	min-width: 150px;
}

.woocommerce-account .woocommerce-MyAccount-content {
	width: 75%;
}

.improvise .primary-nav:not(.tab-underline) .dropdown:not(.touch-start) .dropdown-menu li a {
	background-color: black;
	
	&:hover {
		background-color: var(--color-accent);
		color: white;
	}
}

body:not(.has-top-bar) .document-header, body.has-top-bar .document-header .main-bar {
	border-color: #2e2c33;
}

.improvise .the-mini-cart:hover .mini-cart-wrapper {
	background: black;
    border: 1px solid #333;
	
	& .woocommerce-mini-cart-item {
		padding-right: 0;
		border-bottom-color: #333;
		
		& span.quantity {
			display: flex;
			justify-content: space-between;
			
			& .woocommerce-Price-amount {
				margin-top: 0;
				color: #868686;
			}
		}
	}
	
	& .remove_from_cart_button {
		display: none;
	}
	
	& img {
		max-width: var(--l-spacing);
	}
	
	& .woocommerce-mini-cart__total {
		border-bottom-color: #333;
		text-transform: uppercase;
	}
}

.improvise.woocommerce-order-received .woocommerce ul.order_details li {
	padding-right: 10px;
	margin-right: 10px;
}

.improvise.woocommerce-order-received .woocommerce-order {
	
	& .woocommerce-order-overview {
		padding-left: 0;
	}
	
	& table.order_details {
		
		& .woocommerce-table__line-item:nth-of-type(odd) {
			background-color: #333;
		}
		
		& tfoot th {
			text-align: right;
		}
	}
	
	& p {
		font-size: .8rem;	
	}
	
	& h2 {
		font-size: var(--wp--preset--font-size--medium) !important;
		text-transform: uppercase;
	}
	
	& .woocommerce-customer-details address {
		font-size: .8rem;
	}
}
	
.cta_wrapper .title {
	display: none;
}
	
footer.document-footer .row {
	padding-top: var(--l-spacing);
	border-top: 1px solid white;
	
	& .widgets ul {
		margin-left: 50px;
	}
}
	
.woof_auto_show {
	position: relative;
	
	& .woof_sid_auto_shortcode {
		background-color: #2E2D32;
	}
	
	& .woof_edit_view {
		display: none;
	}
}

/* Moved from Customizer > Additional CSS (2026-10-02) */
.tax-rate small {
	display: none;
}
#block-2 .iframe_wrapper {
	height: 300px !important;
}
.wp-block-media-text.has-media-on-the-right .wp-block-media-text__media {
	text-align: left;
}
.explore img {
	max-width: 252px;
  max-height: 221px;
}

.cwginstock-subscribe-form {
	
	& .panel-primary {
		border-color: var(--color-accent);
		&>.panel-heading {
			background-color: var(--color-accent);
			border-color: var(--color-accent);
			h4 {
				color: white;
			}
		}
	}		
		
	& .cwgstock_button {
		background-color: var(--color-accent);
		
		&:hover {
			background-color: var(--color-secondary);
		}
	}
}

/* Imagify's <picture> rewrite moves an inline (rich-text) image's width, e.g. the sidebar heading icons,
   onto the inline <picture>, where it has no effect, so the <img> renders at full size. Apply it to the image.
   Scoped to text elements so Image blocks (picture inside figure) keep their own sizing. */
:is(h1, h2, h3, h4, h5, h6, p, li) > picture[style*="width"] {
	display: inline-block;
	& > img {
		width: 100%;
		height: auto;
	}
}

/* Improvise 6.0 sets a page that ends in a background Group right on the footer. The home page ends in the
   alignwide "explore" box, which then sat cramped against the footer line: keep a gap under a narrow last box. */
article > .page-content > .wp-block-group.has-background:not(.alignfull):nth-last-child(1 of :not(:empty, script, style, template)) {
	margin-bottom: var(--l-spacing);
}
