@media print {
	
	html, body {
		page-break-after: avoid;
		page-break-before: avoid;
    }
	
	/* Global elements */
	header, 
  	footer,
	.breadcrumb,
	.menu_breadcrumb {
		display: none !important;
		visibility: hidden !important;
	}
	
	/* CTAs */
	.js-add-to-cart-button {
		display: none !important;
		visibility: hidden !important;
	}
	
	/* Product detail main image component */
	.carousel-item.active a {
		max-height: 200px;
	}
	
	/* Product detail specifications component */
	.accordion-body {
  		margin: 0 !important;
  	}
	
	.accordion-body {
		padding: 0.35rem;
	}
	
	.accordion-button {
		padding-bottom: 0.1rem !important;
      	padding-top: 0.1rem !important;
		margin: 0 !important;
		padding-left: 0.25rem !important;
		font-size: 0.85rem !important;
    }
	
	.accordion-collapse { display: block !important; }
	
	/* Product detail related components and containers */
	[class*='item_swift'] { padding: 0.25rem !important; }
	[class*='grid'] { gap: 0.25rem !important; }
	[class*='productcomponentparagraph'] * { margin: 0 !important; }
	[class*='productspecification'] { font-size: 0.75rem !important; }
	[class*='componentedit'] * {
		margin: 0 !important;
		padding: 0 !important;
	}
	
	[id*='ImagesThumbnails'],
	[class*='replacementproduct'],
	[id*='NotificationButton'],
	[id*='RelatedProducts'],
    [id*='Quantity'],
	.js-stock-state {
		display: none !important;
		visibility: hidden !important;
	}
	
	/* Text size adjustments */
	.h1 , 
	.text-price {
		font-size: 1rem !important;
    }
	
	/* Spacing & padding adjustments */
	.grid ,
  	[class*='g-col'] {
  		margin: 0 !important;
  	}
	
    [class*='py'] {
		padding-bottom: 0.1rem !important;
      	padding-top: 0.1rem !important;
		margin: 0 !important;
    }
}
