/* ─── Editor placeholder ──────────────────────────────────────────────────── */
.product-layout-edit-placeholder {
	padding: 32px;
	background: #f0f0f0;
	border: 1px dashed #ccc;
	border-radius: 8px;
	text-align: center;
	color: #666;
}

/* ─── Two-column layout ───────────────────────────────────────────────────── */
.product-layout {
	display: grid;
	/* minmax(0, …) rather than a bare 600fr/664fr: an fr track's implicit
	   minimum is min-content, so a column won't shrink below its content's
	   intrinsic width. The gallery's Swiper slides are flex-shrink:0 at the
	   natural image width, so without the 0 minimum the left column blows
	   out to fit them ("width to the moon"). minmax(0,…) lets the column
	   hold its share and the gallery's own overflow:hidden clips the rest. */
	grid-template-columns: minmax( 0, 600fr ) minmax( 0, 664fr );
	gap: 64px;
	align-items: start;
	margin-bottom: 64px;
}

.product-layout__left,
.product-layout__right {
	min-width: 0;
}

/* ─── Left column ─────────────────────────────────────────────────────────── */
.product-layout__brand {
	display: block;
	width: fit-content;
	font-size: 13px;
	font-weight: 700;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: var( --wp--preset--color--teal );
	margin-bottom: 8px;
	text-decoration: none;
}

.product-layout__title {
	margin: 0 0 24px;
	color: var( --wp--preset--color--black-dark );
}

.product-gallery__main {
	width: 100%;
	height: 420px;
	border-radius: 12px;
	overflow: hidden;
	background: transparent;
	margin-bottom: 30px;
}

.product-gallery__main:not( .swiper-initialized ) .swiper-slide + .swiper-slide,
.product-gallery__thumbs:not( .swiper-initialized ) .swiper-slide + .swiper-slide {
	display: none;
}

.product-gallery__main-slide {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 420px;
}

.product-gallery__main-img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
	border-radius: 12px;
}

/* ─── Gallery: thumbnail slider ───────────────────────────────────────────── */
.product-gallery__slider {
	display: flex;
	align-items: center;
	gap: 8px;
	margin-top: 12px;
}

.product-gallery__nav {
	flex-shrink: 0;
	width: 44px;
	height: 44px;
	border-radius: 50%;
	border: 1px solid var( --wp--preset--color--lighter-neutral-grey );
	background-color: transparent;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 0;
	transition: background-color 0.2s, border-color 0.2s;
}

.product-gallery__nav::before {
	content: '';
	display: block;
	width: 18px;
	height: 15px;
	background-color: var( --wp--preset--color--dark-blue );
	-webkit-mask: url( data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTgiIGhlaWdodD0iMTUiIHZpZXdCb3g9IjAgMCAxOCAxNSIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTE3Ljc4MDYgOC4wMzEwNEwxMS4wMzA2IDE0Ljc4MUMxMC44ODk5IDE0LjkyMTggMTAuNjk5IDE1LjAwMDggMTAuNSAxNS4wMDA4QzEwLjMwMSAxNS4wMDA4IDEwLjExMDEgMTQuOTIxOCA5Ljk2OTM3IDE0Ljc4MUM5LjgyODY0IDE0LjY0MDMgOS43NDk1OCAxNC40NDk0IDkuNzQ5NTggMTQuMjUwNEM5Ljc0OTU4IDE0LjA1MTQgOS44Mjg2NCAxMy44NjA1IDkuOTY5MzcgMTMuNzE5OEwxNS40Mzk3IDguMjUwNDJIMC43NUMwLjU1MTA4OCA4LjI1MDQyIDAuMzYwMzIyIDguMTcxNCAwLjIxOTY3IDguMDMwNzVDMC4wNzkwMTc4IDcuODkwMSAwIDcuNjk5MzMgMCA3LjUwMDQyQzAgNy4zMDE1IDAuMDc5MDE3OCA3LjExMDc0IDAuMjE5NjcgNi45NzAwOUMwLjM2MDMyMiA2LjgyOTQzIDAuNTUxMDg4IDYuNzUwNDIgMC43NSA2Ljc1MDQySDE1LjQzOTdMOS45NjkzNyAxLjI4MTA0QzkuODI4NjQgMS4xNDAzMSA5Ljc0OTU4IDAuOTQ5NDQgOS43NDk1OCAwLjc1MDQxN0M5Ljc0OTU4IDAuNTUxMzk0IDkuODI4NjQgMC4zNjA1MjMgOS45NjkzNyAwLjIxOTc5MkMxMC4xMTAxIDAuMDc5MDYxNSAxMC4zMDEgMCAxMC41IDBDMTAuNjk5IDAgMTAuODg5OSAwLjA3OTA2MTUgMTEuMDMwNiAwLjIxOTc5MkwxNy43ODA2IDYuOTY5NzlDMTcuODUwNCA3LjAzOTQ1IDE3LjkwNTcgNy4xMjIxNiAxNy45NDM0IDcuMjEzMjFDMTcuOTgxMiA3LjMwNDI2IDE4LjAwMDYgNy40MDE4NiAxOC4wMDA2IDcuNTAwNDJDMTguMDAwNiA3LjU5ODk4IDE3Ljk4MTIgNy42OTY1NyAxNy45NDM0IDcuNzg3NjJDMTcuOTA1NyA3Ljg3ODY3IDE3Ljg1MDQgNy45NjEzOSAxNy43ODA2IDguMDMxMDRaIiBmaWxsPSJibGFjayIvPgo8L3N2Zz4K ) no-repeat center / contain;
	mask: url( data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTgiIGhlaWdodD0iMTUiIHZpZXdCb3g9IjAgMCAxOCAxNSIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTE3Ljc4MDYgOC4wMzEwNEwxMS4wMzA2IDE0Ljc4MUMxMC44ODk5IDE0LjkyMTggMTAuNjk5IDE1LjAwMDggMTAuNSAxNS4wMDA4QzEwLjMwMSAxNS4wMDA4IDEwLjExMDEgMTQuOTIxOCA5Ljk2OTM3IDE0Ljc4MUM5LjgyODY0IDE0LjY0MDMgOS43NDk1OCAxNC40NDk0IDkuNzQ5NTggMTQuMjUwNEM5Ljc0OTU4IDE0LjA1MTQgOS44Mjg2NCAxMy44NjA1IDkuOTY5MzcgMTMuNzE5OEwxNS40Mzk3IDguMjUwNDJIMC43NUMwLjU1MTA4OCA4LjI1MDQyIDAuMzYwMzIyIDguMTcxNCAwLjIxOTY3IDguMDMwNzVDMC4wNzkwMTc4IDcuODkwMSAwIDcuNjk5MzMgMCA3LjUwMDQyQzAgNy4zMDE1IDAuMDc5MDE3OCA3LjExMDc0IDAuMjE5NjcgNi45NzAwOUMwLjM2MDMyMiA2LjgyOTQzIDAuNTUxMDg4IDYuNzUwNDIgMC43NSA2Ljc1MDQySDE1LjQzOTdMOS45NjkzNyAxLjI4MTA0QzkuODI4NjQgMS4xNDAzMSA5Ljc0OTU4IDAuOTQ5NDQgOS43NDk1OCAwLjc1MDQxN0M5Ljc0OTU4IDAuNTUxMzk0IDkuODI4NjQgMC4zNjA1MjMgOS45NjkzNyAwLjIxOTc5MkMxMC4xMTAxIDAuMDc5MDYxNSAxMC4zMDEgMCAxMC41IDBDMTAuNjk5IDAgMTAuODg5OSAwLjA3OTA2MTUgMTEuMDMwNiAwLjIxOTc5MkwxNy43ODA2IDYuOTY5NzlDMTcuODUwNCA3LjAzOTQ1IDE3LjkwNTcgNy4xMjIxNiAxNy45NDM0IDcuMjEzMjFDMTcuOTgxMiA3LjMwNDI2IDE4LjAwMDYgNy40MDE4NiAxOC4wMDA2IDcuNTAwNDJDMTguMDAwNiA3LjU5ODk4IDE3Ljk4MTIgNy42OTY1NyAxNy45NDM0IDcuNzg3NjJDMTcuOTA1NyA3Ljg3ODY3IDE3Ljg1MDQgNy45NjEzOSAxNy43ODA2IDguMDMxMDRaIiBmaWxsPSJibGFjayIvPgo8L3N2Zz4K ) no-repeat center / contain;
	transition: background-color 0.2s;
}

.product-gallery__nav--prev::before {
	transform: rotate( 180deg );
}

.product-gallery__nav:hover {
	background-color: var( --wp--preset--color--dark-blue );
	border-color: var( --wp--preset--color--lighter-neutral-grey );
}

.product-gallery__nav:hover::before {
	background-color: #ffffff;
}

.product-gallery__thumbs {
	min-width: 0;
	height: 108px;
	overflow: hidden;
}

.product-gallery__thumbs.swiper {
	margin: 0;
}

.product-gallery__thumbs--fill {
	flex: 1;
}

.product-gallery__thumbs--fit.swiper {
	flex: 0 1 auto;
	width: auto;
	max-width: calc( 3 * 152px + 2 * 16px );
}

.product-gallery__thumbs--fit .swiper-slide {
	width: 152px;
	flex-shrink: 0;
}

.product-gallery__thumbs--fit .swiper-slide:last-child {
	margin-right: 0 !important;
}

.product-gallery__thumb {
	border: 2px solid transparent;
	border-radius: 8px;
	overflow: hidden;
	cursor: pointer;
	background: #f9f9f9;
	transition: border-color 0.2s;
	box-sizing: border-box;
}

.product-gallery__thumb img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	pointer-events: none;
}

.product-gallery__thumb.swiper-slide-thumb-active {
	border-color: var( --wp--preset--color--teal );
}

.product-gallery__thumb:hover:not( .swiper-slide-thumb-active ) {
	border-color: var( --wp--preset--color--lighter-neutral-grey );
}

/* ─── Right column ────────────────────────────────────────────────────────── */
.product-layout__right {
	display: flex;
	flex-direction: column;
	gap: 32px;
}

.product-layout__desc {
	margin: 0;
}

/* ─── Price row ───────────────────────────────────────────────────────────── */
.product-layout__price-row {
	display: flex;
	align-items: baseline;
	gap: 12px;
}

.product-layout__price-sale {
	font-size: 22px;
	font-weight: 700;
	line-height: 1.2;
	color: var( --wp--preset--color--black-dark );
}

.product-layout__price-original {
	font-size: 16px;
	font-weight: 500;
	color: var( --wp--preset--color--teal );
	text-decoration: line-through;
}

/* ─── Buttons: auto width ─────────────────────────────────────────────────── */
.product-layout__right .agrilita-btn {
	align-self: flex-start;
	cursor: pointer;
}

.product-layout__right .agrilita-btn__icon {
	width: 20px;
	height: 20px;
}

.model-switcher {
	display: flex;
	flex-direction: column;
	gap: 24px;
}

.model-switcher__title {
	margin: 0;
	color: var( --wp--preset--color--dark-blue ) !important;
}

.model-switcher__buttons {
	display: flex;
	flex-wrap: wrap;
	gap: 16px;
}

.product-layout__files {
	display: flex;
	flex-wrap: wrap;
	gap: 16px;
}

.model-switcher .model-btn--active {
	pointer-events: none;
}

.model-switcher .model-btn.agrilita-btn--outline:hover {
	background-color: var( --wp--preset--color--teal ) !important;
	border-color: var( --wp--preset--color--teal ) !important;
	color: var( --wp--preset--color--white ) !important;
}

/* ─── Icons row ───────────────────────────────────────────────────────────── */
.product-info-icons {
	display: flex;
	align-items: flex-start;
}

.product-info-icon {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	flex: 1;
	padding: 0 20px 0 10px;
}

.product-info-icon:first-child {
	padding-left: 0;
}

.product-info-icon:last-child {
	padding-right: 0;
}

.product-info-icon + .product-info-icon {
	border-left: 1px solid var( --wp--preset--color--lighter-neutral-grey );
}

.product-info-icon__svg {
	flex-shrink: 0;
	color: var( --wp--preset--color--dark-blue );
	margin-top: 2px;
}

.product-info-icon__label {
	font-family: var(--font-primary);
	font-size: 16px;
	font-weight: 700;
	letter-spacing: normal;
	text-transform: uppercase;
	color: var( --wp--preset--color--dark-blue );
	line-height: 24px;
}

/* ─── Accordion panel WYSIWYG content ─────────────────────────────────────── */
.product-layout__accordions .wp-block-accordion-panel {
	font-family: var( --wp--preset--font-family--primary );
	font-size: var( --wp--preset--font-size--body-1 );
	font-weight: 400;
	line-height: 26px;
	letter-spacing: 0;
	color: var( --wp--preset--color--black-dark );
}

.product-layout__accordions .wp-block-accordion-panel p {
	margin: 0 0 8px;
}

.product-layout__accordions .wp-block-accordion-panel p:last-child {
	margin-bottom: 0;
}

.product-layout__accordions .wp-block-accordion-panel ul,
.product-layout__accordions .wp-block-accordion-panel ol {
	padding-left: 1.5em;
	margin: 0 0 8px;
}

.product-layout__accordions .wp-block-accordion-panel ul {
	list-style: disc;
}

.product-layout__accordions .wp-block-accordion-panel ol {
	list-style: decimal;
}

.product-layout__accordions .wp-block-accordion-panel li {
	font-family: var( --wp--preset--font-family--primary );
	font-size: var( --wp--preset--font-size--body-1 );
	font-weight: 400;
	line-height: 26px;
	color: var( --wp--preset--color--black-dark );
	list-style: inherit;
}

.product-layout__accordions .wp-block-accordion-panel img {
	height: 56px;
	width: auto;
	display: block;
}

/* ─── Back button wrapper ─────────────────────────────────────────────────── */
.product-back-btn-wrapper {
	margin-bottom: 48px;
}

.product-suggestion-heading{
	padding: 80px 0;
}

.product-brand-slider{
	padding: 40px 0;
}

/* ─── Responsive ──────────────────────────────────────────────────────────── */
@media ( max-width: 900px ) {
	.product-layout {
		grid-template-columns: minmax( 0, 1fr );
		gap: 40px;
	}

	.product-suggestion-heading{
		padding: 40px 0;
	}
}

@media ( max-width: 600px ) {
	.product-info-icons {
		flex-direction: column;
		gap: 16px;
	}

	.product-info-icon {
		padding: 0;
		border-left: none !important;
	}
}

