/**
 * Basicwool responsive storefront
 *
 * Scope: Kiosko block theme, Spectra homepage blocks, WooCommerce archives,
 * product pages, Cart Block, Checkout Block, account/forms and footer.
 */

/* Resilient sizing without changing desktop composition. */
.basicwool-responsive-v1 .wp-site-blocks,
.basicwool-responsive-v1 .wp-site-blocks > *,
.basicwool-responsive-v1 .wp-block-columns,
.basicwool-responsive-v1 .wp-block-column,
.basicwool-responsive-v1 .wp-block-group.is-layout-flex > *,
.basicwool-responsive-v1 .uagb-container-inner-blocks-wrap,
.basicwool-responsive-v1 .wp-block-uagb-container,
.basicwool-responsive-v1 .wc-block-components-main,
.basicwool-responsive-v1 .wc-block-components-sidebar,
.basicwool-responsive-v1 .wc-block-components-checkout-step,
.basicwool-responsive-v1 .wc-block-components-checkout-step__container,
.basicwool-responsive-v1 .wc-block-components-checkout-step__content,
.basicwool-responsive-v1 .wc-block-components-order-summary-item__description {
	min-width: 0;
}

.basicwool-responsive-v1 img,
.basicwool-responsive-v1 video,
.basicwool-responsive-v1 iframe {
	max-width: 100%;
}

.basicwool-responsive-v1 :where(
	.wp-block-post-title,
	.wp-block-heading,
	.wc-block-components-product-name,
	.wc-block-components-product-metadata,
	.wc-block-components-radio-control__label,
	.wc-block-components-radio-control__description,
	.woocommerce-loop-product__title,
	.product_title
) {
	overflow-wrap: anywhere;
}

/*
 * WooCommerce forces this badge onto one line. The backorder text then grows
 * beyond both cart item and checkout summary columns.
 */
.basicwool-responsive-v1 .wc-block-components-product-badge {
	box-sizing: border-box;
	display: inline-block;
	max-width: 100%;
	width: fit-content;
	white-space: normal;
	overflow-wrap: anywhere;
	line-height: 1.35;
	text-align: left;
}

.basicwool-responsive-v1 .wc-block-components-order-summary-item,
.basicwool-responsive-v1 .wc-block-components-order-summary-item__description,
.basicwool-responsive-v1 .wc-block-components-order-summary-item__total-price {
	max-width: 100%;
}

/* Archive and single-product variation swatches must wrap inside their card. */
.basicwool-responsive-v1 .variable-items-wrapper {
	box-sizing: border-box;
	display: flex;
	flex-wrap: wrap;
	max-width: 100%;
}

.basicwool-responsive-v1 .archive-variable-items.variable-items-wrapper {
	width: 100%;
	justify-content: center;
}

.basicwool-responsive-v1 .variable-items-wrapper .variable-item {
	box-sizing: border-box;
	flex: 0 0 auto;
	max-width: 100%;
}

/* Wide specification/size tables remain usable with touch scrolling. */
.basicwool-responsive-v1 .tablepress,
.basicwool-responsive-v1 .woocommerce table.shop_attributes {
	max-width: 100%;
}

/* Checkout has min-content fieldsets which can push beyond their column. */
.basicwool-responsive-v1 .wc-block-checkout fieldset,
.basicwool-responsive-v1 .wc-block-components-form,
.basicwool-responsive-v1 .wc-block-components-address-form,
.basicwool-responsive-v1 .wc-block-components-text-input,
.basicwool-responsive-v1 .wc-blocks-components-select,
.basicwool-responsive-v1 .wc-block-components-combobox {
	min-width: 0;
	max-width: 100%;
}

.basicwool-responsive-v1 .wc-block-components-radio-control__option-layout,
.basicwool-responsive-v1 .wc-block-components-radio-control__label-group,
.basicwool-responsive-v1 .wc-block-components-radio-control__description-group {
	min-width: 0;
	max-width: 100%;
}

.basicwool-responsive-v1 .wc-block-components-radio-control__label,
.basicwool-responsive-v1 .wc-block-components-radio-control__description {
	white-space: normal;
}

.basicwool-responsive-v1 .easypack_show_geowidget,
.basicwool-responsive-v1 [class*="inpost"] button,
.basicwool-responsive-v1 [class*="easypack"] button {
	max-width: 100%;
}

/*
 * The logo PNG has 5.2% transparent space on its left edge. Move the image
 * block by the same amount so the visible mark follows the content line.
 */
.basicwool-responsive-v1 header > .wp-block-group.has-global-padding > .wp-block-group.alignwide > .wp-block-image {
	transform: translateX(-5.2%);
}

@media (min-width: 1025px) {
	/* Match the 120px desktop gutter used by the homepage hero. */
	.basicwool-responsive-v1 header > .wp-block-group.has-global-padding > .wp-block-group.alignwide {
		width: auto;
		max-width: none;
		margin-right: 120px;
		margin-left: 120px;
	}

	.basicwool-responsive-v1 header > .wp-block-group.has-global-padding > .wp-block-group.alignwide > .wp-block-image,
	.basicwool-responsive-v1 header > .wp-block-group.has-global-padding > .wp-block-group.alignwide > .wp-block-site-logo {
		flex: 0 0 240px;
		width: 240px !important;
		max-width: 240px;
		margin: 0;
	}

	.basicwool-responsive-v1 header > .wp-block-group.has-global-padding > .wp-block-group.alignwide > :is(.wp-block-image, .wp-block-site-logo) img {
		display: block;
		width: 100% !important;
		max-width: 100% !important;
		height: auto !important;
	}
}

@media (min-width: 782px) and (max-width: 1024px) {
	/* Spectra uses a 48px gutter for the hero at tablet widths. */
	.basicwool-responsive-v1 header > .wp-block-group.has-global-padding > .wp-block-group.alignwide {
		width: auto;
		max-width: none;
		margin-right: 48px;
		margin-left: 48px;
	}

	.basicwool-responsive-v1 header > .wp-block-group.has-global-padding > .wp-block-group.alignwide > .wp-block-image,
	.basicwool-responsive-v1 header > .wp-block-group.has-global-padding > .wp-block-group.alignwide > .wp-block-site-logo {
		flex: 0 0 230px;
		width: 230px !important;
		max-width: 230px;
		margin: 0;
	}

	/*
	 * Prevent the account, cart and always-visible menu button from sharing the
	 * same shrinking flex area at tablet/intermediate widths.
	 */
	.basicwool-responsive-v1 header .wp-block-group.alignwide > .wp-block-group:last-child {
		box-sizing: border-box;
		flex: 0 0 132px;
		width: 132px;
		min-width: 132px;
		gap: 16px;
	}

	.basicwool-responsive-v1 header .wp-block-group.alignwide > .wp-block-group:last-child > .wp-block-group {
		box-sizing: border-box;
		flex: 0 0 76px;
		width: 76px;
		min-width: 76px;
		gap: 12px;
	}

	.basicwool-responsive-v1 header .wp-block-woocommerce-customer-account,
	.basicwool-responsive-v1 header .wc-block-mini-cart {
		box-sizing: border-box;
		flex: 0 0 32px;
		width: 32px;
		min-width: 32px;
		max-width: 32px;
	}

	.basicwool-responsive-v1 header .wp-block-woocommerce-customer-account a,
	.basicwool-responsive-v1 header .wc-block-mini-cart__button {
		box-sizing: border-box;
		display: flex;
		width: 32px;
		min-width: 32px;
		min-height: 40px;
		align-items: center;
		justify-content: center;
	}

	.basicwool-responsive-v1 header .wp-block-navigation,
	.basicwool-responsive-v1 header .wp-block-navigation__responsive-container-open {
		box-sizing: border-box;
		flex: 0 0 40px;
		width: 40px;
		min-width: 40px;
		max-width: 40px;
	}

	.basicwool-responsive-v1 header .wp-block-navigation__responsive-container-open {
		display: flex;
		min-height: 40px;
		align-items: center;
		justify-content: center;
	}
}

@media (max-width: 1024px) {
	.basicwool-responsive-v1 .alignwide,
	.basicwool-responsive-v1 .wp-block-woocommerce-cart.alignwide,
	.basicwool-responsive-v1 .wp-block-woocommerce-checkout.alignwide {
		width: 100%;
		max-width: 100%;
	}

	.basicwool-responsive-v1 .wc-block-components-sidebar-layout,
	.basicwool-responsive-v1 .wc-block-components-main,
	.basicwool-responsive-v1 .wc-block-components-sidebar {
		min-width: 0;
		max-width: 100%;
	}

	.basicwool-responsive-v1 .wc-block-components-order-summary-item {
		grid-template-columns: minmax(48px, auto) minmax(0, 1fr) auto;
	}
}

/* Keep the four homepage category cards compact below the hero. */
@media (min-width: 782px) {
	body.basicwool-responsive-v1.home .uagb-block-a48b8e0d :is(
		.uagb-block-b5b3e01a,
		.uagb-block-7dc3ba37,
		.uagb-block-bba9c942,
		.uagb-block-28d39955
	) {
		padding-bottom: 14px !important;
	}

	body.basicwool-responsive-v1.home .uagb-block-a48b8e0d .uagb-cta__desc {
		margin-bottom: 0 !important;
	}

	body.basicwool-responsive-v1.home .uagb-block-a48b8e0d .uagb-cta__buttons:empty {
		display: none !important;
	}
}

@media (max-width: 781px) {
	:root {
		--basicwool-mobile-gutter: clamp(16px, 4.6vw, 24px);
	}

	html:has(body.basicwool-responsive-v1) {
		overflow-x: clip;
	}

	.basicwool-responsive-v1 {
		overflow-wrap: break-word;
	}

	.basicwool-responsive-v1 .uagb-is-root-container > .uagb-container-inner-blocks-wrap {
		padding-right: var(--basicwool-mobile-gutter);
		padding-left: var(--basicwool-mobile-gutter);
	}

	.basicwool-responsive-v1 .alignwide,
	.basicwool-responsive-v1 .wp-block-woocommerce-cart.alignwide,
	.basicwool-responsive-v1 .wp-block-woocommerce-checkout.alignwide {
		width: 100%;
		max-width: 100%;
		margin-right: auto;
		margin-left: auto;
	}

	/* Header and navigation. */
	.basicwool-responsive-v1 header > .wp-block-group.has-global-padding {
		padding-right: 16px !important;
		padding-left: 16px !important;
	}

	.basicwool-responsive-v1 header .wp-block-group.alignwide {
		gap: 4px;
	}

	/* Kiosko can render the brand as either an Image or Site Logo block. */
	.basicwool-responsive-v1 header .wp-block-group.alignwide > .wp-block-image,
	.basicwool-responsive-v1 header .wp-block-group.alignwide > .wp-block-site-logo {
		flex: 0 1 clamp(200px, 42vw, 260px);
		width: clamp(200px, 42vw, 260px) !important;
		min-width: 0;
		max-width: calc(100% - 136px);
		margin: 0;
	}

	.basicwool-responsive-v1 header .wp-block-group.alignwide > .wp-block-image a,
	.basicwool-responsive-v1 header .wp-block-group.alignwide > .wp-block-site-logo a {
		display: block;
		min-width: 0;
		max-width: 100%;
	}

	.basicwool-responsive-v1 header .wp-block-group.alignwide > .wp-block-image img,
	.basicwool-responsive-v1 header .wp-block-group.alignwide > .wp-block-site-logo img {
		display: block;
		width: 100% !important;
		max-width: 100% !important;
		height: auto !important;
	}

	.basicwool-responsive-v1 header .wp-block-group.alignwide > .wp-block-group:last-child,
	.basicwool-responsive-v1 header .wp-block-group.alignwide > .wp-block-group:last-child > .wp-block-group {
		box-sizing: border-box;
		flex: 0 0 auto;
		gap: 0;
	}

	.basicwool-responsive-v1 header .wp-block-woocommerce-customer-account,
	.basicwool-responsive-v1 header .wc-block-mini-cart,
	.basicwool-responsive-v1 header .wp-block-navigation {
		box-sizing: border-box;
		flex: 0 0 44px;
		width: 44px;
		min-width: 44px;
		max-width: 44px;
	}

	.basicwool-responsive-v1 header .wp-block-woocommerce-customer-account a,
	.basicwool-responsive-v1 .wp-block-navigation__responsive-container-open,
	.basicwool-responsive-v1 .wp-block-navigation__responsive-container-close,
	.basicwool-responsive-v1 .wc-block-mini-cart__button {
		box-sizing: border-box;
		display: flex;
		width: 44px;
		min-width: 44px;
		min-height: 44px;
		align-items: center;
		justify-content: center;
	}

	.basicwool-responsive-v1 .wp-block-navigation__responsive-container.is-menu-open {
		box-sizing: border-box;
		width: 100%;
		max-width: 100vw;
		padding: 24px var(--basicwool-mobile-gutter);
		overflow-x: hidden;
		overflow-y: auto;
	}

	.basicwool-responsive-v1 .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content,
	.basicwool-responsive-v1 .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container,
	.basicwool-responsive-v1 .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item {
		width: 100%;
		max-width: 100%;
	}

	.basicwool-responsive-v1 .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content {
		display: block;
		white-space: normal;
		overflow-wrap: anywhere;
	}

	/* Gutenberg/Spectra sections and product grids. */
	.basicwool-responsive-v1 .wp-block-columns:not(.is-not-stacked-on-mobile) {
		flex-wrap: wrap;
	}

	.basicwool-responsive-v1 .wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column {
		flex-basis: 100% !important;
		width: 100%;
	}

	.basicwool-responsive-v1 .uagb-container-inner-blocks-wrap,
	.basicwool-responsive-v1 .wp-block-uagb-container,
	.basicwool-responsive-v1 .wp-block-uagb-advanced-heading,
	.basicwool-responsive-v1 .uagb-heading-text {
		max-width: 100%;
	}

	.basicwool-responsive-v1 :where(h1, h2, h3).uagb-heading-text,
	.basicwool-responsive-v1 :where(h1, h2, h3).wp-block-heading {
		text-wrap: balance;
	}

	.basicwool-responsive-v1 .wc-block-product-template,
	.basicwool-responsive-v1 .products-block-post-template.wp-block-post-template {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: clamp(16px, 4vw, 24px);
	}

	.basicwool-responsive-v1 .wc-block-product-template > li,
	.basicwool-responsive-v1 .products-block-post-template.wp-block-post-template > li {
		min-width: 0;
		max-width: 100%;
	}

	.basicwool-responsive-v1 .wp-block-post-featured-image img,
	.basicwool-responsive-v1 .wc-block-components-product-image img,
	.basicwool-responsive-v1 .wc-block-grid__product-image img {
		display: block;
		width: 100%;
		height: auto;
	}

	/* Product page. */
	.basicwool-responsive-v1.single-product .wp-block-woocommerce-product-image-gallery,
	.basicwool-responsive-v1.single-product .woocommerce-product-gallery,
	.basicwool-responsive-v1.single-product .wp-block-woocommerce-product-summary,
	.basicwool-responsive-v1.single-product form.cart,
	.basicwool-responsive-v1.single-product table.variations,
	.basicwool-responsive-v1.single-product .single_variation_wrap {
		box-sizing: border-box;
		width: 100%;
		max-width: 100%;
		min-width: 0;
	}

	.basicwool-responsive-v1.single-product table.variations,
	.basicwool-responsive-v1.single-product table.variations tbody,
	.basicwool-responsive-v1.single-product table.variations tr,
	.basicwool-responsive-v1.single-product table.variations th,
	.basicwool-responsive-v1.single-product table.variations td {
		display: block;
		box-sizing: border-box;
		width: 100%;
		max-width: 100%;
		padding-right: 0;
		padding-left: 0;
	}

	.basicwool-responsive-v1.single-product table.variations th.label {
		margin-bottom: 8px;
		text-align: left;
	}

	.basicwool-responsive-v1.single-product .woocommerce-variation-add-to-cart,
	.basicwool-responsive-v1.single-product .woocommerce-variation-add-to-cart-enabled {
		grid-template-columns: minmax(76px, auto) minmax(0, 1fr);
		gap: 12px;
	}

	.basicwool-responsive-v1.single-product .single_add_to_cart_button {
		box-sizing: border-box;
		min-height: 48px;
		max-width: 100%;
		white-space: normal;
	}

	.basicwool-responsive-v1 .tablepress,
	.basicwool-responsive-v1 .woocommerce table.shop_attributes {
		display: block;
		width: 100%;
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
		scrollbar-gutter: stable;
	}

	/* Cart Block. */
	.basicwool-responsive-v1 .wc-block-cart.is-mobile,
	.basicwool-responsive-v1 .wc-block-cart.is-small,
	.basicwool-responsive-v1 .wc-block-cart.is-medium {
		width: 100%;
		max-width: 100%;
	}

	.basicwool-responsive-v1 :is(.is-mobile, .is-small, .is-medium) table.wc-block-cart-items .wc-block-cart-items__row {
		box-sizing: border-box;
		display: grid;
		grid-template-columns: minmax(72px, 28%) minmax(0, 1fr);
		column-gap: 12px;
		width: 100%;
		max-width: 100%;
		padding: 16px 0;
	}

	.basicwool-responsive-v1 :is(.is-mobile, .is-small, .is-medium) table.wc-block-cart-items .wc-block-cart-item__image {
		grid-column: 1;
		grid-row: 1;
		min-width: 0;
		padding-right: 0;
	}

	.basicwool-responsive-v1 :is(.is-mobile, .is-small, .is-medium) table.wc-block-cart-items .wc-block-cart-item__product {
		grid-column: 2;
		grid-row: 1;
		min-width: 0;
		padding: 0;
	}

	.basicwool-responsive-v1 :is(.is-mobile, .is-small, .is-medium) table.wc-block-cart-items .wc-block-cart-item__total {
		display: none;
	}

	.basicwool-responsive-v1 :is(.is-mobile, .is-small, .is-medium) table.wc-block-cart-items .wc-block-cart-item__wrap,
	.basicwool-responsive-v1 :is(.is-mobile, .is-small, .is-medium) table.wc-block-cart-items .wc-block-components-product-name,
	.basicwool-responsive-v1 :is(.is-mobile, .is-small, .is-medium) table.wc-block-cart-items .wc-block-components-product-metadata {
		min-width: 0;
		max-width: 100%;
	}

	.basicwool-responsive-v1 .wc-block-components-quantity-selector {
		box-sizing: border-box;
		width: 116px;
		max-width: 100%;
	}

	.basicwool-responsive-v1 .wc-block-components-quantity-selector input.wc-block-components-quantity-selector__input {
		box-sizing: border-box;
		min-width: 0;
	}

	.basicwool-responsive-v1 .wc-block-components-quantity-selector .wc-block-components-quantity-selector__button {
		box-sizing: border-box;
		min-width: 36px;
		min-height: 40px;
	}

	.basicwool-responsive-v1 :is(.is-mobile, .is-small, .is-medium) table.wc-block-cart-items .wc-block-cart-item__remove-link {
		display: inline-flex;
		align-items: center;
		min-height: 40px;
		white-space: normal;
	}

	.basicwool-responsive-v1 .wc-block-cart__submit-button,
	.basicwool-responsive-v1 .wc-block-components-checkout-place-order-button {
		box-sizing: border-box;
		width: 100%;
		min-height: 48px;
		white-space: normal;
	}

	.basicwool-responsive-v1 .wc-block-components-shipping-rates-control__option-layout {
		display: grid;
		grid-template-columns: minmax(0, 1fr) auto;
		gap: 8px;
		width: 100%;
	}

	/* Checkout Block. */
	.basicwool-responsive-v1 .wc-block-checkout,
	.basicwool-responsive-v1 .wc-block-checkout__form,
	.basicwool-responsive-v1 .wc-block-checkout__main,
	.basicwool-responsive-v1 .wc-block-checkout__sidebar,
	.basicwool-responsive-v1 .wc-block-components-checkout-step,
	.basicwool-responsive-v1 .wc-block-components-checkout-step__container,
	.basicwool-responsive-v1 .wc-block-components-checkout-step__content {
		box-sizing: border-box;
		width: 100%;
		max-width: 100%;
		min-width: 0;
	}

	.basicwool-responsive-v1 .wc-block-checkout .wc-block-components-sidebar-layout {
		display: flex;
		flex-direction: column;
	}

	.basicwool-responsive-v1 .wc-block-checkout__main,
	.basicwool-responsive-v1 .wc-block-checkout__sidebar {
		padding-right: 0;
		padding-left: 0;
	}

	.basicwool-responsive-v1 .wc-block-checkout__sidebar {
		position: static;
		order: 2;
	}

	.basicwool-responsive-v1 .wc-block-components-address-form > * {
		box-sizing: border-box;
		flex-basis: 100% !important;
		width: 100% !important;
		max-width: 100%;
	}

	.basicwool-responsive-v1 .wc-block-components-radio-control__option-layout {
		display: grid;
		grid-template-columns: minmax(0, 1fr) auto;
		gap: 8px;
		width: 100%;
		max-width: 100%;
	}

	.basicwool-responsive-v1 .wc-block-components-order-summary-item {
		grid-template-columns: 48px minmax(0, 1fr) auto;
		column-gap: 12px;
	}

	.basicwool-responsive-v1 .wc-block-components-order-summary-item__image {
		width: 48px;
		max-width: 48px;
	}

	.basicwool-responsive-v1 .easypack_show_geowidget {
		box-sizing: border-box;
		width: 100%;
		min-height: 44px;
		margin-right: 0;
		margin-left: 0;
	}

	.basicwool-responsive-v1 .wc-block-components-checkout-return-to-cart-button,
	.basicwool-responsive-v1 .wc-block-components-checkout-place-order-button {
		min-height: 48px;
	}

	.basicwool-responsive-v1 .wc-block-components-checkout-actions {
		flex-wrap: wrap;
		gap: 12px;
	}

	/* Generic forms and footer. */
	.basicwool-responsive-v1 :where(input, select, textarea, button) {
		max-width: 100%;
	}

	.basicwool-responsive-v1 footer .wp-block-columns:not(.is-not-stacked-on-mobile) {
		gap: 28px;
	}
}

@media (max-width: 479px) {
	.basicwool-responsive-v1 .wc-block-product-template,
	.basicwool-responsive-v1 .products-block-post-template.wp-block-post-template {
		gap: 16px 12px;
	}

	.basicwool-responsive-v1 .wc-block-product-template .wp-block-post-title,
	.basicwool-responsive-v1 .products-block-post-template .wp-block-post-title,
	.basicwool-responsive-v1 .wc-block-product-template .wc-block-components-product-price,
	.basicwool-responsive-v1 .products-block-post-template .wc-block-components-product-price {
		font-size: clamp(0.78rem, 3.6vw, 0.92rem);
	}

	.basicwool-responsive-v1 .archive-variable-items.variable-items-wrapper {
		gap: 4px;
	}

	.basicwool-responsive-v1 .archive-variable-items.variable-items-wrapper .variable-item {
		margin: 0;
	}

	.basicwool-responsive-v1.single-product .woocommerce-variation-add-to-cart,
	.basicwool-responsive-v1.single-product .woocommerce-variation-add-to-cart-enabled {
		grid-template-columns: 1fr;
	}

	.basicwool-responsive-v1.single-product .quantity,
	.basicwool-responsive-v1.single-product .single_add_to_cart_button {
		width: 100%;
	}

	.basicwool-responsive-v1 .wc-block-components-order-summary-item {
		grid-template-columns: 44px minmax(0, 1fr);
		column-gap: 10px;
	}

	.basicwool-responsive-v1 .wc-block-components-order-summary-item__image {
		width: 44px;
		max-width: 44px;
	}

	.basicwool-responsive-v1 .wc-block-components-order-summary-item__total-price {
		grid-column: 2;
		justify-self: start;
	}

	.basicwool-responsive-v1 .wc-block-components-shipping-rates-control__option-layout,
	.basicwool-responsive-v1 .wc-block-components-radio-control__option-layout {
		grid-template-columns: minmax(0, 1fr);
	}

	.basicwool-responsive-v1 .wc-block-components-radio-control__description-group {
		justify-self: start;
	}
}

@media (max-width: 359px) {
	.basicwool-responsive-v1 .wc-block-product-template,
	.basicwool-responsive-v1 .products-block-post-template.wp-block-post-template {
		grid-template-columns: minmax(0, 1fr);
	}
}

@media (prefers-reduced-motion: reduce) {
	.basicwool-responsive-v1 *,
	.basicwool-responsive-v1 *::before,
	.basicwool-responsive-v1 *::after {
		scroll-behavior: auto !important;
	}
}

/* Homepage hero v2: full-bleed layout and dedicated responsive crops. */
body.basicwool-responsive-v1.home .entry-content {
	margin-top: 0 !important;
}

body.basicwool-responsive-v1.home .uagb-block-4c618e22,
body.basicwool-responsive-v1.home .uagb-block-4c618e22 > .uagb-container-inner-blocks-wrap,
body.basicwool-responsive-v1.home .uagb-block-62827e21 {
	box-sizing: border-box;
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
}

body.basicwool-responsive-v1.home .uagb-block-4c618e22,
body.basicwool-responsive-v1.home .uagb-block-4c618e22 > .uagb-container-inner-blocks-wrap {
	padding: 0 !important;
}

body.basicwool-responsive-v1.home .uagb-block-62827e21 {
	background-repeat: no-repeat !important;
	background-size: cover !important;
}

@media (min-width: 782px) {
	body.basicwool-responsive-v1.home .uagb-block-62827e21 {
		min-height: clamp(560px, 37.5vw, 720px) !important;
		padding: clamp(40px, 4vw, 76px) !important;
		background-image: url("./basicwool-home-hero-desktop-v3.webp") !important;
		background-position: center center !important;
	}

	body.basicwool-responsive-v1.home .uagb-block-62827e21 :is(.uagb-block-b7bf6f56, .uagb-block-2edea45e, .uagb-block-d29bc72f) .uagb-heading-text,
	body.basicwool-responsive-v1.home .uagb-block-62827e21 :is(.uagb-block-b7bf6f56, .uagb-block-2edea45e, .uagb-block-d29bc72f) a,
	body.basicwool-responsive-v1.home .uagb-block-62827e21 :is(.uagb-block-b7bf6f56, .uagb-block-2edea45e, .uagb-block-d29bc72f) code {
		color: #252525 !important;
		text-shadow: none !important;
	}
}

@media (min-width: 782px) and (max-width: 1199px) {
	body.basicwool-responsive-v1.home .uagb-block-62827e21 > .wp-block-group {
		box-sizing: border-box;
		width: min(430px, 100%);
		max-width: 430px;
		margin: 0 auto 0 0 !important;
		padding: clamp(20px, 3vw, 28px) !important;
		background: rgba(247, 244, 239, 0.9);
	}

	body.basicwool-responsive-v1.home .uagb-block-b7bf6f56 .uagb-heading-text,
	body.basicwool-responsive-v1.home .uagb-block-2edea45e .uagb-heading-text,
	body.basicwool-responsive-v1.home .uagb-block-d29bc72f .uagb-heading-text,
	body.basicwool-responsive-v1.home .uagb-block-d29bc72f a,
	body.basicwool-responsive-v1.home .uagb-block-d29bc72f code {
		color: #111 !important;
		font-weight: 500 !important;
		text-shadow: none !important;
	}
}

/*
 * Wide hero navigation follows the people in the 8:3 crop. The copy remains
 * over the empty concrete area, while Nowości stays a separate primary CTA.
 */
@media (min-width: 1200px) {
	body.basicwool-responsive-v1.home .uagb-block-62827e21 {
		position: relative !important;
		isolation: isolate;
		padding: 0 !important;
	}

	body.basicwool-responsive-v1.home .uagb-block-62827e21 > .wp-block-group {
		position: absolute !important;
		z-index: 1;
		inset: 0;
		box-sizing: border-box;
		width: 100%;
		height: 100%;
		max-width: none;
		margin: 0 !important;
		pointer-events: none;
	}

	body.basicwool-responsive-v1.home .uagb-block-b7bf6f56,
	body.basicwool-responsive-v1.home .uagb-block-2edea45e {
		position: absolute !important;
		left: clamp(48px, 6vw, 120px);
		margin: 0 !important;
	}

	body.basicwool-responsive-v1.home .uagb-block-b7bf6f56 {
		top: 43%;
		width: clamp(240px, 25vw, 440px);
	}

	body.basicwool-responsive-v1.home .uagb-block-b7bf6f56 .uagb-heading-text {
		font-size: clamp(42px, 3.5vw, 58px) !important;
		line-height: 1.02 !important;
		letter-spacing: -0.035em;
		text-wrap: balance;
	}

	body.basicwool-responsive-v1.home .uagb-block-2edea45e {
		top: 64%;
		width: clamp(240px, 23vw, 360px);
	}

	body.basicwool-responsive-v1.home .uagb-block-2edea45e .uagb-heading-text {
		font-size: clamp(15px, 1.05vw, 18px) !important;
		line-height: 1.45 !important;
	}

	body.basicwool-responsive-v1.home .uagb-block-d29bc72f,
	body.basicwool-responsive-v1.home .uagb-block-1e9876fc,
	body.basicwool-responsive-v1.home .uagb-block-1e9876fc .uagb-heading-text {
		position: static !important;
		margin: 0 !important;
		padding: 0 !important;
	}

	body.basicwool-responsive-v1.home .uagb-block-1e9876fc .uagb-heading-text {
		font-size: 0 !important;
	}

	body.basicwool-responsive-v1.home .uagb-block-1e9876fc .uagb-heading-text > strong,
	body.basicwool-responsive-v1.home .uagb-block-1e9876fc .uagb-heading-text > a strong {
		display: none !important;
	}

	body.basicwool-responsive-v1.home .uagb-block-1e9876fc .uagb-heading-text > a {
		position: absolute;
		z-index: 2;
		display: inline-flex;
		box-sizing: border-box;
		min-height: 40px;
		align-items: center;
		justify-content: center;
		padding: 8px 13px;
		border: 1px solid rgba(37, 37, 37, 0.35);
		border-radius: 2px;
		background: rgba(247, 244, 239, 0.9);
		color: #252525 !important;
		font-size: clamp(12px, 0.9vw, 14px) !important;
		font-weight: 600;
		line-height: 1;
		letter-spacing: 0.08em;
		text-decoration: none;
		white-space: nowrap;
		pointer-events: auto;
	}

	body.basicwool-responsive-v1.home .uagb-block-1e9876fc .uagb-heading-text > a:is(:hover, :focus-visible) {
		border-color: #252525;
		background: #f7f4ef;
		text-decoration: underline;
		text-underline-offset: 4px;
	}

	/*
	 * Existing DOM order: Kobieta, Mężczyzna, Dziecko, Nowości. The three
	 * audience links form a right-hand rail over the empty concrete area.
	 */
	body.basicwool-responsive-v1.home .uagb-block-1e9876fc .uagb-heading-text > a:nth-of-type(-n + 3) {
		right: clamp(32px, 5vw, 96px);
		left: auto;
		width: clamp(132px, 11vw, 170px);
		min-height: 44px;
		transform: none;
	}

	body.basicwool-responsive-v1.home .uagb-block-1e9876fc .uagb-heading-text > a:nth-of-type(1) {
		top: 62%;
	}

	body.basicwool-responsive-v1.home .uagb-block-1e9876fc .uagb-heading-text > a:nth-of-type(2) {
		top: 51%;
	}

	body.basicwool-responsive-v1.home .uagb-block-1e9876fc .uagb-heading-text > a:nth-of-type(3) {
		top: 73%;
	}

	body.basicwool-responsive-v1.home .uagb-block-1e9876fc .uagb-heading-text > a:nth-of-type(4) {
		top: 76%;
		left: clamp(48px, 6vw, 120px);
		min-height: 44px;
		padding: 10px 16px;
		border-color: #252525;
		background: #252525;
		color: transparent !important;
		font-size: 0 !important;
	}

	body.basicwool-responsive-v1.home .uagb-block-1e9876fc .uagb-heading-text > a:nth-of-type(4)::after {
		content: "ZOBACZ NOWOŚCI →";
		color: #f7f4ef;
		font-size: 13px;
		font-weight: 600;
		letter-spacing: 0.08em;
	}

	body.basicwool-responsive-v1.home .uagb-block-1e9876fc .uagb-heading-text > a:nth-of-type(4):is(:hover, :focus-visible) {
		background: #000;
		text-decoration: none;
	}
}

@media (max-width: 781px) {
	body.basicwool-responsive-v1.home .uagb-block-62827e21 {
		min-height: clamp(460px, 112vw, 560px) !important;
		padding: 22px var(--basicwool-mobile-gutter) 18px !important;
		justify-content: flex-start !important;
		background-image: url("./basicwool-home-hero-mobile.webp") !important;
		background-position: center top !important;
	}

	body.basicwool-responsive-v1.home .uagb-block-62827e21 > .wp-block-group {
		width: 100%;
		max-width: 430px;
		margin: 0 !important;
	}

	body.basicwool-responsive-v1.home .uagb-block-62827e21 :is(.uagb-block-b7bf6f56, .uagb-block-2edea45e, .uagb-block-d29bc72f) .uagb-heading-text,
	body.basicwool-responsive-v1.home .uagb-block-62827e21 :is(.uagb-block-b7bf6f56, .uagb-block-2edea45e, .uagb-block-d29bc72f) a,
	body.basicwool-responsive-v1.home .uagb-block-62827e21 :is(.uagb-block-b7bf6f56, .uagb-block-2edea45e, .uagb-block-d29bc72f) code {
		color: #252525 !important;
		text-shadow: none !important;
	}

	body.basicwool-responsive-v1.home .uagb-block-b7bf6f56 .uagb-heading-text {
		font-size: clamp(28px, 7vw, 34px) !important;
		line-height: 1.05 !important;
	}

	body.basicwool-responsive-v1.home .uagb-block-2edea45e {
		margin-top: 10px !important;
	}

	body.basicwool-responsive-v1.home .uagb-block-2edea45e .uagb-heading-text {
		font-size: clamp(13px, 3.5vw, 15px) !important;
		line-height: 1.35 !important;
	}

	body.basicwool-responsive-v1.home .uagb-block-d29bc72f {
		padding: 12px 0 0 !important;
	}

	body.basicwool-responsive-v1.home .uagb-block-d29bc72f .uagb-heading-text {
		max-width: 350px;
		font-size: clamp(10px, 2.8vw, 12px) !important;
		line-height: 1.5 !important;
	}
}
