.timmi-art-site.woocommerce div.product form.cart {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	align-items: stretch;
}
.timmi-art-site.woocommerce div.product .timmi-buy-now {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: transparent !important;
	color: var(--timmi-ink) !important;
	border: 1px solid var(--timmi-ink) !important;
}
.timmi-art-site .woocommerce-cart-form,
.timmi-art-site .woocommerce-checkout,
.timmi-art-site .woocommerce-account .woocommerce {
	max-width: 1280px;
	margin: 0 auto;
	padding: 72px max(24px, 5vw) 110px;
}
.timmi-art-site .woocommerce table.shop_table {
	border: 1px solid var(--timmi-line);
	border-radius: 0;
	background: #fff;
}
.timmi-art-site .woocommerce table.shop_table th,
.timmi-art-site .woocommerce table.shop_table td {
	padding: 18px;
	border-color: var(--timmi-line);
}
.timmi-art-site .woocommerce-cart-form img {
	width: 92px;
	aspect-ratio: 4 / 5;
	object-fit: cover;
}
.timmi-art-site .cart_totals,
.timmi-art-site .woocommerce-checkout-review-order {
	background: var(--timmi-cream);
	padding: 28px;
}
.timmi-art-site .woocommerce form .form-row input.input-text,
.timmi-art-site .woocommerce form .form-row textarea,
.timmi-art-site .woocommerce form .form-row select {
	min-height: 50px;
	border: 1px solid var(--timmi-line);
	border-radius: 0;
	padding: 12px;
}
.timmi-art-site .woocommerce-info,
.timmi-art-site .woocommerce-message {
	border-top-color: var(--timmi-gold);
	background: var(--timmi-cream);
}
@media (max-width: 782px) {
	.timmi-art-site .woocommerce-cart-form,
	.timmi-art-site .woocommerce-checkout,
	.timmi-art-site .woocommerce-account .woocommerce { padding-top: 45px; }
}

/* Full-bleed Astra + Elementor reset.
 * Astra, Elementor and the header/footer builder can each add a max-width
 * wrapper. These selectors remove only the outer layout constraints while
 * preserving the intentional spacing inside TiMMi sections. */
html,
body.timmi-art-site {
	width: 100%;
	max-width: 100%;
	overflow-x: clip !important;
}
body.timmi-art-site #page,
body.timmi-art-site .site,
body.timmi-art-site .site-content,
body.timmi-art-site .site-content > .ast-container,
body.timmi-art-site #primary,
body.timmi-art-site .content-area,
body.timmi-art-site #main,
body.timmi-art-site .site-main,
body.timmi-art-site article.page,
body.timmi-art-site article.product,
body.timmi-art-site .entry-content,
body.timmi-art-site .entry-content > .elementor,
body.timmi-art-site .elementor-location-header,
body.timmi-art-site .elementor-location-footer,
body.timmi-art-site .elementor-widget-timmi-page,
body.timmi-art-site .elementor-widget-timmi-header,
body.timmi-art-site .elementor-widget-timmi-footer,
body.timmi-art-site .elementor-widget-timmi-page > .elementor-widget-container,
body.timmi-art-site .elementor-widget-timmi-header > .elementor-widget-container,
body.timmi-art-site .elementor-widget-timmi-footer > .elementor-widget-container {
	width: 100% !important;
	max-width: none !important;
	margin-right: 0 !important;
	margin-left: 0 !important;
}
body.timmi-art-site .site-content > .ast-container,
body.timmi-art-site #primary,
body.timmi-art-site .content-area,
body.timmi-art-site #main,
body.timmi-art-site .site-main,
body.timmi-art-site article.page,
body.timmi-art-site article.product,
body.timmi-art-site .entry-content {
	padding-right: 0 !important;
	padding-left: 0 !important;
}
body.timmi-art-site .ast-article-single,
body.timmi-art-site .ast-article-post {
	margin: 0 !important;
	border: 0 !important;
	box-shadow: none !important;
}
body.timmi-art-site .timmi-elementor-canvas.e-con,
body.timmi-art-site .timmi-elementor-canvas > .e-con-inner,
body.timmi-art-site .elementor-location-header .e-con,
body.timmi-art-site .elementor-location-header .e-con-inner,
body.timmi-art-site .elementor-location-footer .e-con,
body.timmi-art-site .elementor-location-footer .e-con-inner {
	--width: 100%;
	--content-width: 100%;
	width: 100% !important;
	max-width: none !important;
	padding-right: 0 !important;
	padding-left: 0 !important;
	margin-right: 0 !important;
	margin-left: 0 !important;
}

/* Viewport breakout is a final fallback when a third-party wrapper survives. */
body.timmi-art-site .timmi-page,
body.timmi-art-site .timmi-announcement,
body.timmi-art-site .timmi-header:not(.is-sticky),
body.timmi-art-site .timmi-footer {
	position: relative;
	left: 50%;
	width: 100vw !important;
	max-width: 100vw !important;
	margin-right: -50vw !important;
	margin-left: -50vw !important;
}
body.timmi-art-site .timmi-hero,
body.timmi-art-site .timmi-marquee,
body.timmi-art-site .timmi-artist-band,
body.timmi-art-site .timmi-values,
body.timmi-art-site .timmi-contact,
body.timmi-art-site .timmi-auth-page {
	width: 100% !important;
	max-width: none !important;
	margin-right: 0 !important;
	margin-left: 0 !important;
}

/* Large, editorial WooCommerce product presentation. */
body.timmi-art-site.woocommerce .timmi-wc-shell {
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	padding: clamp(46px, 5vw, 88px) clamp(28px, 5vw, 96px) clamp(82px, 8vw, 140px) !important;
}
body.timmi-art-site.single-product .timmi-wc-shell > .product {
	width: min(100%, 1760px);
	max-width: 1760px;
	margin-right: auto !important;
	margin-left: auto !important;
	grid-template-columns: minmax(0, 1.38fr) minmax(380px, .62fr) !important;
	gap: clamp(48px, 6vw, 116px) !important;
	align-items: start;
}
body.timmi-art-site.single-product div.product .woocommerce-product-gallery,
body.timmi-art-site.single-product div.product .woocommerce-product-gallery__wrapper,
body.timmi-art-site.single-product div.product .woocommerce-product-gallery__image,
body.timmi-art-site.single-product div.product .woocommerce-product-gallery__image a {
	width: 100% !important;
	max-width: none !important;
}
body.timmi-art-site.single-product div.product .woocommerce-product-gallery__image img {
	display: block;
	width: 100% !important;
	max-width: none !important;
	height: auto !important;
	min-height: min(68vh, 760px);
	object-fit: contain;
	background: var(--timmi-cream);
}
body.timmi-art-site.single-product div.product .summary {
	width: 100% !important;
	max-width: 620px;
	padding-top: clamp(8px, 2vw, 34px);
}
body.timmi-art-site.single-product div.product .product_title {
	font-size: clamp(58px, 5.2vw, 92px) !important;
	line-height: .9 !important;
	letter-spacing: -.035em;
	margin-bottom: 24px;
}
body.timmi-art-site.single-product div.product p.price {
	font-size: clamp(24px, 2vw, 32px) !important;
	margin-bottom: 25px;
}
body.timmi-art-site.single-product div.product .woocommerce-product-details__short-description,
body.timmi-art-site.single-product div.product .woocommerce-product-details__short-description p {
	font-size: clamp(16px, 1.1vw, 19px) !important;
	line-height: 1.85 !important;
	font-weight: 400;
}
body.timmi-art-site.single-product div.product .product_meta {
	font-size: 12px;
	line-height: 1.8;
	letter-spacing: .04em;
}
body.timmi-art-site.single-product div.product .woocommerce-tabs,
body.timmi-art-site.single-product div.product .related,
body.timmi-art-site.single-product div.product .upsells {
	width: 100%;
	max-width: none;
}

/* Give native shop/archive cards the same generous scale. */
body.timmi-art-site.woocommerce-shop .timmi-wc-shell,
body.timmi-art-site.tax-product_cat .timmi-wc-shell {
	padding-right: clamp(28px, 5vw, 96px) !important;
	padding-left: clamp(28px, 5vw, 96px) !important;
}
body.timmi-art-site.woocommerce ul.products {
	width: 100%;
	max-width: none;
}

@media (max-width: 1100px) {
	body.timmi-art-site.single-product .timmi-wc-shell > .product {
		grid-template-columns: minmax(0, 1.12fr) minmax(330px, .88fr) !important;
		gap: 44px !important;
	}
	body.timmi-art-site.single-product div.product .product_title {
		font-size: clamp(50px, 6vw, 72px) !important;
	}
}
@media (max-width: 782px) {
	body.timmi-art-site .timmi-page,
	body.timmi-art-site .timmi-announcement,
	body.timmi-art-site .timmi-header:not(.is-sticky),
	body.timmi-art-site .timmi-footer {
		width: 100dvw !important;
		max-width: 100dvw !important;
		margin-right: -50dvw !important;
		margin-left: -50dvw !important;
	}
	body.timmi-art-site.single-product .timmi-wc-shell > .product {
		display: grid !important;
		grid-template-columns: minmax(0, 1fr) !important;
		gap: 35px !important;
	}
	body.timmi-art-site.single-product div.product .woocommerce-product-gallery__image img {
		min-height: 0;
	}
	body.timmi-art-site.single-product div.product .summary {
		max-width: none;
		padding-top: 0;
	}
	body.timmi-art-site.single-product div.product .product_title {
		font-size: clamp(46px, 14vw, 68px) !important;
	}
}
