.wcph{
	--wcph-accent:#ff4d5e;
	--wcph-bg:#0e0e12;
	--wcph-text:#ffffff;
	--wcph-muted:#d9dce1;
	--wcph-line:#2a2a2e;
	--wcph-surface:#1a1a1d;
	--wcph-img:#f3f4f6;
	display:grid;
	grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);
	gap:48px;
	margin:0 auto;
	padding:40px;
	background:var(--wcph-bg);
	font-family:"Poppins",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
	color:var(--wcph-text)!important;
	box-sizing:border-box;
}
.wcph *{box-sizing:border-box;}

/* Gallery */
.wcph-gallery{display:flex;gap:16px;}
.wcph-gallery-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:14px;}
.wcph-stage{
	position:relative;background:var(--wcph-surface);
	border-radius:14px;overflow:hidden;aspect-ratio:1/1;
	display:flex;align-items:center;justify-content:center;
}
.wcph-main-img{width:100%;height:100%;object-fit:contain;}

.wcph-gallery-controls{display:flex;align-items:center;justify-content:space-between;gap:12px;}
.wcph-left-actions,.wcph-nav{display:flex;gap:12px;}
.wcph-sq{
	width:52px;height:52px;border:none;border-radius:12px;background:var(--wcph-surface);
	color:#d1d5db;cursor:pointer;display:flex;align-items:center;justify-content:center;
	font-size:22px;line-height:1;transition:background .15s,transform .05s;
}
.wcph-sq:hover{background:#26262a;}
.wcph-sq:active{transform:translateY(1px);}
.wcph-sq.is-on{color:var(--wcph-accent);}

.wcph-thumbs{display:flex;flex-direction:column;gap:14px;}
.wcph-thumb{
	width:84px;height:84px;padding:0;border:2px solid transparent;border-radius:12px;
	background:var(--wcph-surface);overflow:hidden;cursor:pointer;
}
.wcph-thumb img{width:100%;height:100%;object-fit:contain;}
.wcph-thumb.is-active{border-color:var(--wcph-text);}

/* Info */
.wcph-info{padding-top:4px;}
.wcph-brand{color:var(--wcph-muted);font-size:15px;margin-bottom:8px;}
.wcph-title{font-family:"Clash Display",sans-serif;font-size:42px;line-height:1.05;font-weight:700;letter-spacing:-.5px;margin:0 0 18px;text-transform:uppercase;}

.wcph-meta-row{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;}
.wcph-price{display:flex;align-items:baseline;gap:12px;}
.wcph-price-was{color:var(--wcph-muted);text-decoration:line-through;font-size:20px;}
.wcph-price-now{font-size:30px;font-weight:800;color:var(--wcph-accent);}
.wcph-price-now del{display:none;}
.wcph-price-now ins{text-decoration:none;}
.wcph-stats{display:flex;align-items:center;gap:10px;color:var(--wcph-muted);font-size:17px;}
.wcph-rating{display:inline-flex;align-items:center;gap:6px;color:var(--wcph-text);font-weight:700;}
.wcph-dot{color:var(--wcph-line);}

.wcph-divider{border:none;border-top:1px solid var(--wcph-line);margin:22px 0;}

.wcph-desc-block{margin-bottom:26px;}
.wcph-desc-label{font-size:19px;font-weight:700;margin-bottom:8px;}
.wcph-desc{color:var(--wcph-muted);font-size:16px;line-height:1.6;}
.wcph-desc[data-collapsed="1"]{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;}
.wcph-desc p{margin:0 0 .6em;}
.wcph-see-more{border:none;background:none;padding:4px 0 0;font-size:15px;font-weight:600;color:var(--wcph-text);cursor:pointer;}

.wcph-option-group{margin-bottom:24px;}
.wcph-option-head{display:flex;align-items:center;gap:8px;margin-bottom:12px;}
.wcph-option-label{color:var(--wcph-muted);font-size:17px;}
.wcph-option-value{font-weight:700;font-size:17px;}
.wcph-size-chart{margin-left:auto;font-size:15px;color:var(--wcph-text);text-decoration:underline;}

.wcph-swatches{display:flex;gap:12px;flex-wrap:wrap;}
.wcph-swatch{
	width:62px;height:42px;padding:3px;border:2px solid transparent;border-radius:10px;
	background:none;cursor:pointer;
}
.wcph-swatch-fill{display:block;width:100%;height:100%;border-radius:7px;background:var(--swatch);border:1px solid rgba(255,255,255,.14);}
.wcph-swatch.is-active{border-color:var(--wcph-text);}

.wcph-size-list{display:flex;gap:12px;flex-wrap:wrap;}
.wcph-size{
	min-width:64px;height:48px;padding:0 14px;border:1px solid var(--wcph-line);border-radius:10px;
	background:transparent;font-size:17px;font-weight:600;cursor:pointer;color:var(--wcph-text);
	transition:border-color .15s,background .15s;
}
.wcph-size:hover{border-color:#4a4a50;}
.wcph-size.is-active{background:var(--wcph-surface);border-color:var(--wcph-text);}
.wcph-size.is-disabled{opacity:.35;cursor:not-allowed;text-decoration:line-through;}

.wcph-ctas{display:flex;gap:16px;margin:30px 0 16px;}
.wcph-btn{flex:1;height:60px;border-radius:12px;font-size:16px;font-weight:700;letter-spacing:.5px;cursor:pointer;transition:opacity .15s,transform .05s;}
.wcph-btn:active{transform:translateY(1px);}
.wcph-btn[disabled]{opacity:.5;cursor:not-allowed;}
.wcph-btn-add{border:none;background:var(--wcph-accent);color:#fff;}
.wcph-btn-add:hover:not([disabled]){opacity:.92;}
.wcph-btn-checkout{border:1.5px solid var(--wcph-text);background:transparent;color:var(--wcph-text);}
.wcph-btn-checkout:hover:not([disabled]){background:var(--wcph-text);color:var(--wcph-bg);}

.wcph-delivery{display:inline-block;font-size:15px;color:var(--wcph-text);text-decoration:underline;}
.wcph-empty{padding:24px;border:1px dashed var(--wcph-line);border-radius:10px;color:var(--wcph-muted);text-align:center;}

@media(max-width:900px){
	.wcph{grid-template-columns:1fr;gap:28px;}
	.wcph-title{font-size:30px;}
	.wcph-gallery{flex-direction:column;}
	.wcph-thumbs{flex-direction:row;overflow-x:auto;}
}

/* Force colors over aggressive themes that restyle headings, text and buttons. */
.wcph .wcph-brand,
.wcph .wcph-desc,
.wcph .wcph-option-label,
.wcph .wcph-stats,
.wcph .wcph-price-was{color:var(--wcph-muted)!important;}
.wcph .wcph-title,
.wcph .wcph-desc-label,
.wcph .wcph-option-value,
.wcph .wcph-see-more,
.wcph .wcph-size,
.wcph .wcph-size-chart,
.wcph .wcph-rating,
.wcph .wcph-delivery{color:var(--wcph-text)!important;}
.wcph .wcph-price-now,
.wcph .wcph-price-now ins{color:var(--wcph-accent)!important;}
.wcph .wcph-btn-add{background:var(--wcph-accent)!important;color:#fff!important;border:none!important;}
.wcph .wcph-btn-checkout{background:transparent!important;color:var(--wcph-text)!important;border:1.5px solid var(--wcph-text)!important;}
.wcph .wcph-thumb{background:var(--wcph-img)!important;}
