/*
HolyCup Premium Product Page 5.0
Die Regeln sind ausschließlich auf Einzelproduktseiten begrenzt.
*/

:root{
	--hc5-orange:#ff6a3d;
	--hc5-orange-dark:#df4f25;
	--hc5-navy:#173b63;
	--hc5-navy-dark:#102c4c;
	--hc5-text:#181818;
	--hc5-muted:#667085;
	--hc5-warm:#faf8f5;
	--hc5-soft:#f3f5f7;
	--hc5-border:#e7e9ec;
	--hc5-white:#fff;
	--hc5-shadow:0 18px 50px rgba(16,24,40,.10);
}

.single-product .hc5-premium{
	clear:both;
	width:100%;
	margin-top:70px;
}

.single-product .hc5-section{
	max-width:1180px;
	margin:0 auto;
	padding:76px 18px;
}

.single-product .hc5-eyebrow{
	margin:0 0 10px;
	color:var(--hc5-orange);
	font-size:13px;
	font-weight:900;
	letter-spacing:.14em;
	text-transform:uppercase;
}

.single-product .hc5-section > h2,
.single-product .hc5-story-copy h2,
.single-product .hc5-gift h2{
	margin:0 0 34px;
	color:var(--hc5-text);
	font-size:clamp(34px,4.6vw,58px);
	line-height:1.03;
	letter-spacing:-.05em;
}

.single-product .hc5-summary-trust{
	display:grid;
	grid-template-columns:repeat(3,minmax(0,1fr));
	gap:8px;
	margin-top:22px;
	padding:14px;
	border:1px solid var(--hc5-border);
	border-radius:16px;
	background:var(--hc5-soft);
}

.single-product .hc5-summary-trust span{
	display:flex;
	align-items:center;
	justify-content:center;
	gap:7px;
	color:var(--hc5-navy);
	font-size:12px;
	font-weight:850;
	text-align:center;
}

.single-product .hc5-summary-trust b{
	font-size:15px;
}

.single-product .hc5-benefits{
	display:grid;
	grid-template-columns:repeat(4,minmax(0,1fr));
	gap:18px;
}

.single-product .hc5-card{
	padding:28px 24px;
	border:1px solid var(--hc5-border);
	border-radius:22px;
	background:#fff;
	box-shadow:var(--hc5-shadow);
	text-align:center;
}

.single-product .hc5-card > span{
	display:block;
	margin-bottom:15px;
	font-size:40px;
}

.single-product .hc5-card h3{
	margin:0 0 10px;
	font-size:20px;
}

.single-product .hc5-card p{
	margin:0;
	color:var(--hc5-muted);
	font-size:14px;
	line-height:1.65;
}

.single-product .hc5-gift{
	display:grid;
	grid-template-columns:1.2fr .8fr;
	align-items:center;
	gap:38px;
	padding:48px;
	border-radius:30px;
	background:
		radial-gradient(circle at top right,rgba(255,106,61,.35),transparent 34%),
		var(--hc5-navy);
	color:#fff;
}

.single-product .hc5-gift h2{
	color:#fff;
}

.single-product .hc5-gift p:not(.hc5-eyebrow){
	max-width:720px;
	margin:0;
	color:rgba(255,255,255,.80);
	font-size:18px;
	line-height:1.75;
}

.single-product .hc5-gift-icon{
	font-size:120px;
	text-align:center;
	filter:drop-shadow(0 20px 25px rgba(0,0,0,.20));
}

.single-product .hc5-details-section{
	text-align:center;
}

.single-product .hc5-details{
	display:grid;
	grid-template-columns:repeat(4,minmax(0,1fr));
	gap:16px;
	margin:0;
}

.single-product .hc5-details > div{
	padding:24px 18px;
	border:1px solid var(--hc5-border);
	border-radius:18px;
	background:#fff;
	box-shadow:0 10px 28px rgba(16,24,40,.07);
}

.single-product .hc5-details dt{
	margin-bottom:7px;
	color:var(--hc5-muted);
	font-size:12px;
	font-weight:900;
	letter-spacing:.08em;
	text-transform:uppercase;
}

.single-product .hc5-details dd{
	margin:0;
	color:var(--hc5-navy);
	font-size:18px;
	font-weight:900;
}

.single-product .hc5-faq{
	max-width:900px;
}

.single-product .hc5-faq details{
	margin-bottom:12px;
	border:1px solid var(--hc5-border);
	border-radius:16px;
	background:#fff;
}

.single-product .hc5-faq summary{
	cursor:pointer;
	padding:20px 22px;
	font-weight:900;
	list-style:none;
}

.single-product .hc5-faq summary::-webkit-details-marker{
	display:none;
}

.single-product .hc5-faq summary::after{
	content:"+";
	float:right;
	color:var(--hc5-orange);
	font-size:24px;
}

.single-product .hc5-faq details[open] summary::after{
	content:"–";
}

.single-product .hc5-faq p{
	margin:0;
	padding:0 22px 22px;
	color:var(--hc5-muted);
	line-height:1.7;
}

.single-product .hc5-story{
	display:grid;
	grid-template-columns:.9fr 1.1fr;
	gap:54px;
	align-items:center;
}

.single-product .hc5-story-visual{
	min-height:430px;
	display:flex;
	align-items:center;
	justify-content:center;
	padding:40px;
	border-radius:30px;
	background:
		radial-gradient(circle at top right,rgba(255,106,61,.42),transparent 35%),
		var(--hc5-navy);
	color:#fff;
	text-align:center;
}

.single-product .hc5-story-visual strong{
	max-width:460px;
	font-size:clamp(42px,5.7vw,70px);
	line-height:.98;
	letter-spacing:-.055em;
}

.single-product .hc5-story-copy p:not(.hc5-eyebrow){
	color:var(--hc5-muted);
	font-size:17px;
	line-height:1.8;
}

/* Die alten WooCommerce-Tabs bleiben vorhanden, aber die Premium-Bereiche erhalten Vorrang. */
.single-product .woocommerce-tabs{
	margin-top:40px;
}

@media(max-width:980px){
	.single-product .hc5-benefits,
	.single-product .hc5-details{
		grid-template-columns:repeat(2,minmax(0,1fr));
	}

	.single-product .hc5-gift,
	.single-product .hc5-story{
		grid-template-columns:1fr;
	}

	.single-product .hc5-gift-icon{
		font-size:90px;
	}
}

@media(max-width:680px){
	.single-product .hc5-premium{
		margin-top:40px;
	}

	.single-product .hc5-section{
		padding:54px 18px;
	}

	.single-product .hc5-summary-trust{
		grid-template-columns:1fr;
	}

	.single-product .hc5-summary-trust span{
		justify-content:flex-start;
	}

	.single-product .hc5-benefits,
	.single-product .hc5-details{
		grid-template-columns:1fr;
	}

	.single-product .hc5-gift{
		padding:30px 24px;
	}

	.single-product .hc5-gift-icon{
		font-size:72px;
	}

	.single-product .hc5-story-visual{
		min-height:320px;
	}

	.single-product .hc5-section > h2,
	.single-product .hc5-story-copy h2,
	.single-product .hc5-gift h2{
		font-size:clamp(32px,9vw,46px);
	}
}


/* Personalisierungsfeld */
.single-product .hc5-personalization{margin:20px 0 4px;padding:18px;border:1px solid var(--hc5-border);border-radius:16px;background:var(--hc5-soft)}
.single-product .hc5-personalization label{display:block;margin-bottom:8px;color:var(--hc5-text);font-size:14px}
.single-product .hc5-personalization .required{color:var(--hc5-orange)}
.single-product .hc5-personalization input{width:100%;min-height:50px;padding:0 14px;border:1px solid var(--hc5-border);border-radius:12px;background:#fff;color:var(--hc5-text);font-size:15px}
.single-product .hc5-personalization input:focus{border-color:var(--hc5-orange);box-shadow:0 0 0 4px rgba(255,106,61,.12);outline:0}
.single-product .hc5-personalization small{display:block;margin-top:7px;color:var(--hc5-muted);font-size:12px;line-height:1.5}
