
	:root{
		--exo-surface:#140F2C;
		--exo-surface-2:#1E1940;
		--exo-line:#2A2352;
		--exo-text:#F3F1FB;
		--exo-body:#C9C2E6;
		--exo-muted:#8C84AD;
		--exo-accent:#9B67FF;
		--exo-accent-2:#B98FFF;
	}

	/* ---------------------------------------------------------- the product name */
	.single-product h1.product_title{
		font-size:clamp(26px,2.9vw,38px) !important;
		line-height:1.16 !important;
		letter-spacing:.005em;
		margin:0 0 14px !important;
		color:var(--exo-text) !important;
	}

	/* ------------------------------------------------------------------ the price */
	.single-product .summary .price,
	.single-product .summary .price .amount,
	.single-product .summary .price bdi{
		font-size:clamp(24px,2.2vw,32px) !important;
		line-height:1.2 !important;
		font-weight:700 !important;
		color:var(--exo-text) !important;
	}
	.single-product .summary .price del,
	.single-product .summary .price del bdi,
	.single-product .summary .price del .amount{
		font-size:.62em !important;
		font-weight:500 !important;
		color:var(--exo-muted) !important;
		opacity:1 !important;
	}
	.single-product .summary .price ins,
	.single-product .summary .price ins bdi{
		text-decoration:none !important;
		color:var(--exo-accent-2) !important;
	}

	/* ------------------------------------------------------------------- the tabs */
	.single-product .woocommerce-tabs ul.tabs{
		display:flex !important;
		flex-wrap:wrap;
		gap:6px;
		padding:0 !important;
		margin:0 0 26px !important;
		border:0 !important;
		border-bottom:1px solid var(--exo-line) !important;
		list-style:none !important;
	}
	.single-product .woocommerce-tabs ul.tabs::before,
	.single-product .woocommerce-tabs ul.tabs::after,
	.single-product .woocommerce-tabs ul.tabs li::before,
	.single-product .woocommerce-tabs ul.tabs li::after{ display:none !important; }
	.single-product .woocommerce-tabs ul.tabs li{
		margin:0 !important;
		padding:0 !important;
		background:transparent !important;
		border:0 !important;
		border-radius:0 !important;
		box-shadow:none !important;
	}
	.single-product .woocommerce-tabs ul.tabs li a{
		display:block;
		padding:12px 18px !important;
		font-size:12.5px !important;
		font-weight:700 !important;
		letter-spacing:.1em;
		text-transform:uppercase;
		color:var(--exo-muted) !important;
		text-decoration:none !important;
		border-bottom:2px solid transparent;
		transition:color .15s ease, border-color .15s ease;
	}
	.single-product .woocommerce-tabs ul.tabs li a:hover{ color:var(--exo-text) !important; }
	body.single-product .woocommerce-tabs ul.tabs li.active > a,
	body.single-product .woocommerce-tabs ul.tabs li.active > a:hover,
	body.single-product .woocommerce-tabs ul.tabs li.active > a:focus{
		color:#fff !important;
		border-bottom:2px solid var(--exo-accent) !important;
	}

	/* ------------------------------------------------------- the description prose */
	.single-product .woocommerce-Tabs-panel--description{
		max-width:78ch;
	}
	.single-product .woocommerce-Tabs-panel--description p,
	.single-product .woocommerce-Tabs-panel--description li,
	.single-product .woocommerce-product-details__short-description p,
	.single-product .woocommerce-product-details__short-description li{
		font-size:16.5px !important;
		line-height:1.78 !important;
		color:var(--exo-body) !important;
	}
	.single-product .woocommerce-Tabs-panel--description p{ margin:0 0 20px !important; }
	.single-product .woocommerce-Tabs-panel--description ul,
	.single-product .woocommerce-Tabs-panel--description ol{
		margin:0 0 22px !important;
		padding-left:0 !important;
		list-style:none !important;
	}
	.single-product .woocommerce-Tabs-panel--description li{
		position:relative;
		margin:0 0 10px !important;
		padding-left:22px !important;
	}
	.single-product .woocommerce-Tabs-panel--description ul li::before{
		content:"";
		position:absolute;
		left:2px;
		top:.72em;
		width:6px;
		height:6px;
		border-radius:50%;
		background:var(--exo-accent);
	}
	.single-product .woocommerce-Tabs-panel--description ol{ counter-reset:exo-ol; }
	.single-product .woocommerce-Tabs-panel--description ol li{ counter-increment:exo-ol; }
	.single-product .woocommerce-Tabs-panel--description ol li::before{
		content:counter(exo-ol) ".";
		position:absolute;
		left:0;
		top:0;
		font-weight:700;
		color:var(--exo-accent);
	}

	/* the short description reads as the lede */
	.single-product .woocommerce-product-details__short-description p{
		font-size:17px !important;
		line-height:1.7 !important;
		color:var(--exo-text) !important;
	}
	.single-product .woocommerce-product-details__short-description p:not(:first-child){
		font-size:15.5px !important;
		color:var(--exo-body) !important;
	}

	/* headings: smaller than the product name, and spaced so sections read as sections */
	.single-product .woocommerce-Tabs-panel--description h2{
		font-size:clamp(19px,1.9vw,23px) !important;
		line-height:1.25 !important;
		margin:42px 0 16px !important;
		padding-top:22px;
		border-top:1px solid var(--exo-line);
		color:var(--exo-text) !important;
		letter-spacing:.01em;
	}
	.single-product .woocommerce-Tabs-panel--description h2:first-child{
		margin-top:0 !important;
		padding-top:0;
		border-top:0;
	}
	.single-product .woocommerce-Tabs-panel--description h3{
		font-size:17px !important;
		line-height:1.3 !important;
		margin:28px 0 10px !important;
		color:var(--exo-text) !important;
	}
	.single-product .woocommerce-Tabs-panel--description h4{
		font-size:15px !important;
		margin:22px 0 8px !important;
		color:var(--exo-text) !important;
	}
	.single-product .woocommerce-Tabs-panel--description strong{ color:var(--exo-text) !important; }
	.single-product .woocommerce-Tabs-panel--description em{ color:var(--exo-body) !important; }

	/* links looked exactly like body text, which defeats the point of linking */
	.single-product .woocommerce-Tabs-panel--description p a,
	.single-product .woocommerce-Tabs-panel--description li a,
	.single-product .woocommerce-product-details__short-description a{
		font-size:inherit !important;
		font-weight:500 !important;
		color:var(--exo-accent) !important;
		text-decoration:none !important;
		border-bottom:1px solid rgba(155,103,255,.4);
	}
	.single-product .woocommerce-Tabs-panel--description p a:hover,
	.single-product .woocommerce-Tabs-panel--description li a:hover,
	.single-product .woocommerce-product-details__short-description a:hover{
		color:var(--exo-accent-2) !important;
		border-bottom-color:var(--exo-accent-2);
	}

	/* the disclaimer paragraphs, which every description ends with */
	.single-product .woocommerce-Tabs-panel--description > p > em:only-child,
	.single-product .woocommerce-Tabs-panel--description > p > strong:only-child{
		display:block;
	}
	.single-product .woocommerce-Tabs-panel--description hr{
		margin:34px 0 !important;
		border:0;
		border-top:1px solid var(--exo-line);
	}
	.single-product .woocommerce-Tabs-panel--description blockquote{
		margin:0 0 24px !important;
		padding:16px 20px !important;
		background:var(--exo-surface);
		border:1px solid var(--exo-line);
		border-left:3px solid var(--exo-accent) !important;
		border-radius:10px;
	}

	/* generic tables in a description - the identity tables keep their own styling */
	.single-product .woocommerce-Tabs-panel--description table:not(.exo-identity){
		width:100%;
		margin:0 0 22px !important;
		border-collapse:separate !important;
		border-spacing:0 !important;
		background:var(--exo-surface) !important;
		border:1px solid var(--exo-line) !important;
		border-radius:12px;
		overflow:hidden;
		font-size:14.5px;
	}
	.single-product .woocommerce-Tabs-panel--description table:not(.exo-identity) th,
	.single-product .woocommerce-Tabs-panel--description table:not(.exo-identity) td{
		padding:12px 16px !important;
		border:0 !important;
		border-bottom:1px solid rgba(255,255,255,.06) !important;
		text-align:left !important;
		color:var(--exo-body) !important;
	}
	.single-product .woocommerce-Tabs-panel--description table:not(.exo-identity) th{
		color:var(--exo-muted) !important;
		font-size:11.5px !important;
		letter-spacing:.1em;
		text-transform:uppercase;
	}

	/* the identity block, harmonised with the new prose rhythm */
	.single-product .exo-identity{ margin:0 0 20px !important; }
	.single-product .exo-analytical-note{ margin:0 0 16px !important; font-size:14.5px !important; }

	/* additional information tab */
	.single-product .woocommerce-Tabs-panel--additional_information table th{
		color:var(--exo-muted) !important;
		font-size:11.5px !important;
		letter-spacing:.1em;
		text-transform:uppercase;
	}
	.single-product .woocommerce-Tabs-panel--additional_information table td{
		color:var(--exo-body) !important;
		font-size:15px !important;
	}

	@media (max-width:600px){
		.single-product .woocommerce-tabs ul.tabs li a{ padding:10px 12px !important; font-size:11.5px !important; }
		.single-product .woocommerce-Tabs-panel--description p,
		.single-product .woocommerce-Tabs-panel--description li{ font-size:16px !important; }
	}
	