/*
Mansurge Shop Page v1.0 — Luxury Final
Scoped to .ms-shop-page.
*/

.ms-shop-page{
	--ms-shop-bg:#0b1010;
	--ms-shop-panel:#111717;
	--ms-shop-panel-2:#151c1c;
	--ms-shop-line:rgba(197,165,114,.16);
	--ms-shop-line-soft:rgba(255,255,255,.07);
	--ms-shop-gold:#c5a572;
	--ms-shop-gold-soft:#d8bc8c;
	--ms-shop-white:#f5f3ee;
	--ms-shop-soft:#c8cccc;
	--ms-shop-muted:#858d8d;
	background:var(--ms-shop-bg);
	color:var(--ms-shop-white);
	font-family:inherit;
	overflow:hidden;
}

.ms-shop-page *,
.ms-shop-page *::before,
.ms-shop-page *::after{
	box-sizing:border-box;
}

.ms-shop-shell{
	width:min(1180px,calc(100% - 48px));
	margin-inline:auto;
}

.ms-shop-page a{
	color:inherit;
	text-decoration:none;
}

.ms-shop-page .ms-text-gold{
	color:var(--ms-shop-gold);
}

.ms-shop-eyebrow{
	margin:0 0 18px;
	color:var(--ms-shop-gold);
	font-size:12px;
	font-weight:700;
	letter-spacing:.16em;
	text-transform:uppercase;
}

.ms-shop-page h1,
.ms-shop-page h2,
.ms-shop-page h3,
.ms-shop-page p{
	margin-top:0;
}

.ms-shop-page h1{
	max-width:720px;
	margin-bottom:26px;
	font-size:clamp(46px,5.8vw,82px);
	line-height:.98;
	letter-spacing:-.045em;
	text-wrap:balance;
}

.ms-shop-page h2{
	margin-bottom:18px;
	font-size:clamp(34px,4vw,58px);
	line-height:1.02;
	letter-spacing:-.035em;
	text-wrap:balance;
}

.ms-shop-page h3{
	font-size:20px;
	line-height:1.25;
}

.ms-shop-lead,
.ms-shop-section-head>p,
.ms-shop-section-head>div>p,
.ms-shop-journal-card>p:not(.ms-shop-eyebrow){
	max-width:700px;
	color:var(--ms-shop-soft);
	font-size:17px;
	line-height:1.8;
}

.ms-shop-btn{
	display:inline-flex;
	min-height:50px;
	align-items:center;
	justify-content:center;
	padding:13px 24px;
	border:1px solid var(--ms-shop-line);
	border-radius:999px;
	font-size:13px;
	font-weight:700;
	transition:
		transform .25s ease,
		border-color .25s ease,
		background .25s ease;
}

.ms-shop-btn:hover{
	transform:translateY(-2px);
}

.ms-shop-btn-primary{
	border-color:var(--ms-shop-gold);
	background:var(--ms-shop-gold);
	color:#0b1010!important;
}

.ms-shop-btn-secondary:hover{
	border-color:rgba(197,165,114,.55);
	background:rgba(197,165,114,.06);
}

.ms-shop-hero{
	padding:clamp(70px,7vw,110px) 0 clamp(96px,9vw,142px);
}

.ms-shop-hero-grid{
	display:grid;
	grid-template-columns:minmax(0,1fr) minmax(390px,.82fr);
	gap:clamp(54px,7vw,100px);
	align-items:center;
}

.ms-shop-hero-copy{
	padding-block:28px;
}

.ms-shop-lead{
	max-width:650px;
	margin-bottom:34px;
}

.ms-shop-hero-media{
	position:relative;
	aspect-ratio:4/5;
	overflow:hidden;
	border:1px solid var(--ms-shop-line);
	border-radius:34px;
	background:var(--ms-shop-panel);
	box-shadow:0 34px 90px rgba(0,0,0,.32);
}

.ms-shop-hero-media::after{
	content:"";
	position:absolute;
	inset:0;
	pointer-events:none;
	background:
		linear-gradient(180deg,transparent 58%,rgba(0,0,0,.26)),
		radial-gradient(circle at 80% 10%,rgba(197,165,114,.08),transparent 34%);
}

.ms-shop-hero-media img{
	width:100%;
	height:100%;
	display:block;
	object-fit:cover;
}

.ms-shop-hero-placeholder{
	width:100%;
	height:100%;
	display:grid;
	place-items:center;
	background:
		radial-gradient(circle at 68% 30%,rgba(197,165,114,.11),transparent 22%),
		linear-gradient(145deg,#151b1b,#090d0d);
}

.ms-shop-hero-placeholder span{
	color:rgba(197,165,114,.22);
	font-size:92px;
	font-weight:800;
}

.ms-shop-categories,
.ms-shop-collection{
	padding:clamp(92px,9vw,140px) 0;
	border-top:1px solid var(--ms-shop-line-soft);
}

.ms-shop-section-head{
	max-width:780px;
	margin-bottom:52px;
}

.ms-shop-category-grid{
	display:grid;
	grid-template-columns:repeat(3,minmax(0,1fr));
	gap:18px;
}

.ms-shop-category-card{
	position:relative;
	min-height:320px;
	display:flex;
	flex-direction:column;
	justify-content:space-between;
	padding:30px;
	border:1px solid var(--ms-shop-line);
	border-radius:24px;
	background:
		radial-gradient(circle at 100% 0,rgba(197,165,114,.07),transparent 32%),
		var(--ms-shop-panel);
	transition:
		transform .3s ease,
		border-color .3s ease,
		background .3s ease;
}

.ms-shop-category-card:hover{
	transform:translateY(-5px);
	border-color:rgba(197,165,114,.42);
	background:
		radial-gradient(circle at 100% 0,rgba(197,165,114,.11),transparent 34%),
		var(--ms-shop-panel-2);
}

.ms-shop-category-number{
	color:var(--ms-shop-gold);
	font-size:12px;
	letter-spacing:.12em;
}

.ms-shop-category-card h3{
	margin-bottom:12px;
	font-size:28px;
}

.ms-shop-category-card p{
	max-width:300px;
	margin-bottom:0;
	color:var(--ms-shop-soft);
	font-size:14px;
	line-height:1.75;
}

.ms-shop-category-arrow{
	position:absolute;
	right:26px;
	bottom:26px;
	display:grid;
	width:42px;
	height:42px;
	place-items:center;
	border:1px solid var(--ms-shop-line);
	border-radius:50%;
	color:var(--ms-shop-gold);
}

.ms-shop-featured{
	padding:clamp(96px,10vw,154px) 0;
	border-top:1px solid var(--ms-shop-line-soft);
	background:
		linear-gradient(180deg,rgba(197,165,114,.025),transparent 45%);
}

.ms-shop-featured-grid{
	display:grid;
	grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);
	gap:clamp(52px,7vw,96px);
	align-items:center;
}

.ms-shop-featured-media{
	aspect-ratio:1/1;
	overflow:hidden;
	border:1px solid var(--ms-shop-line);
	border-radius:30px;
	background:var(--ms-shop-panel);
}

.ms-shop-featured-media img{
	width:100%;
	height:100%;
	display:block;
	object-fit:cover;
}

.ms-shop-featured-name{
	margin:26px 0 12px;
	color:var(--ms-shop-white);
	font-size:clamp(24px,2.8vw,36px);
	font-weight:700;
	line-height:1.15;
}

.ms-shop-featured-text{
	max-width:520px;
	margin-bottom:22px;
	color:var(--ms-shop-soft);
	font-size:16px;
	line-height:1.8;
}

.ms-shop-featured-price,
.ms-shop-price{
	color:var(--ms-shop-gold-soft);
	font-size:16px;
	font-weight:700;
}

.ms-shop-featured-price{
	margin-bottom:28px;
}

.ms-shop-featured-price del,
.ms-shop-price del{
	margin-right:8px;
	color:var(--ms-shop-muted);
	font-size:.86em;
	font-weight:500;
	opacity:.72;
}

.ms-shop-featured-price ins,
.ms-shop-price ins{
	color:var(--ms-shop-gold-soft);
	text-decoration:none;
}

.ms-shop-section-head-row{
	max-width:none;
	display:flex;
	align-items:flex-end;
	justify-content:space-between;
	gap:44px;
}

.ms-shop-section-head-row>div:first-child{
	max-width:680px;
}

.ms-shop-filter{
	display:flex;
	flex-wrap:wrap;
	justify-content:flex-end;
	gap:8px;
}

.ms-shop-filter a{
	padding:9px 14px;
	border:1px solid var(--ms-shop-line);
	border-radius:999px;
	color:var(--ms-shop-soft);
	font-size:12px;
	transition:.25s ease;
}

.ms-shop-filter a:hover,
.ms-shop-filter a.is-active{
	border-color:var(--ms-shop-gold);
	background:rgba(197,165,114,.08);
	color:var(--ms-shop-gold-soft);
}

.ms-shop-product-grid{
	display:grid;
	grid-template-columns:repeat(3,minmax(0,1fr));
	gap:20px;
}

.ms-shop-product-card{
	min-width:0;
	overflow:hidden;
	border:1px solid var(--ms-shop-line);
	border-radius:24px;
	background:var(--ms-shop-panel);
	transition:
		transform .3s ease,
		border-color .3s ease;
}

.ms-shop-product-card:hover{
	transform:translateY(-4px);
	border-color:rgba(197,165,114,.36);
}

.ms-shop-product-image{
	position:relative;
	display:block;
	aspect-ratio:1/1;
	overflow:hidden;
	background:#0c1111;
}

.ms-shop-product-image img{
	width:100%;
	height:100%;
	display:block;
	object-fit:cover;
	transition:transform .5s ease;
}

.ms-shop-product-card:hover .ms-shop-product-image img{
	transform:scale(1.025);
}

.ms-shop-image-placeholder{
	width:100%;
	height:100%;
	display:grid;
	place-items:center;
	background:
		radial-gradient(circle at 72% 20%,rgba(197,165,114,.08),transparent 26%),
		#0c1111;
}

.ms-shop-image-placeholder span{
	color:rgba(197,165,114,.16);
	font-size:56px;
	font-weight:800;
}

.ms-shop-product-badge{
	position:absolute;
	top:16px;
	left:16px;
	z-index:2;
	padding:7px 10px;
	border:1px solid rgba(197,165,114,.28);
	border-radius:999px;
	background:rgba(10,14,14,.82);
	color:var(--ms-shop-gold-soft);
	font-size:10px;
	font-weight:700;
	letter-spacing:.1em;
	text-transform:uppercase;
	backdrop-filter:blur(8px);
}

.ms-shop-product-copy{
	padding:22px;
}

.ms-shop-product-meta{
	min-height:16px;
	margin-bottom:9px;
	color:var(--ms-shop-gold);
	font-size:10px;
	font-weight:700;
	letter-spacing:.1em;
	text-transform:uppercase;
}

.ms-shop-product-copy h3{
	min-height:50px;
	margin-bottom:22px;
	font-size:18px;
}

.ms-shop-product-copy h3 a:hover{
	color:var(--ms-shop-gold-soft);
}

.ms-shop-product-bottom{
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:16px;
	padding-top:18px;
	border-top:1px solid var(--ms-shop-line-soft);
}

.ms-shop-arrow-link{
	flex:0 0 38px;
	display:grid;
	width:38px;
	height:38px;
	place-items:center;
	border:1px solid var(--ms-shop-line);
	border-radius:50%;
	color:var(--ms-shop-gold);
}

.ms-shop-pagination{
	display:flex;
	align-items:center;
	justify-content:center;
	gap:22px;
	margin-top:52px;
	color:var(--ms-shop-muted);
	font-size:12px;
}

.ms-shop-pagination a{
	padding:10px 16px;
	border:1px solid var(--ms-shop-line);
	border-radius:999px;
	color:var(--ms-shop-soft);
}

.ms-shop-empty{
	padding:64px 32px;
	border:1px solid var(--ms-shop-line);
	border-radius:24px;
	text-align:center;
	background:var(--ms-shop-panel);
}

.ms-shop-empty p{
	color:var(--ms-shop-soft);
}

.ms-shop-journal{
	padding:0 0 clamp(100px,10vw,154px);
}

.ms-shop-journal-card{
	position:relative;
	overflow:hidden;
	padding:clamp(44px,7vw,86px);
	border:1px solid var(--ms-shop-line);
	border-radius:30px;
	background:
		radial-gradient(circle at 92% 15%,rgba(197,165,114,.10),transparent 30%),
		linear-gradient(145deg,#151c1c,#0e1313);
}

.ms-shop-journal-card h2{
	max-width:780px;
}

.ms-shop-journal-card>p:not(.ms-shop-eyebrow){
	margin-bottom:30px;
}

.ms-shop-rtl{
	direction:rtl;
}

.ms-shop-rtl .ms-shop-category-arrow{
	right:auto;
	left:26px;
}

.ms-shop-rtl .ms-shop-product-badge{
	left:auto;
	right:16px;
}

.ms-shop-rtl .ms-shop-featured-price del,
.ms-shop-rtl .ms-shop-price del{
	margin-right:0;
	margin-left:8px;
}

@media(max-width:980px){
	.ms-shop-hero-grid{
		grid-template-columns:1fr 1fr;
		gap:38px;
	}
	.ms-shop-category-grid,
	.ms-shop-product-grid{
		grid-template-columns:repeat(2,minmax(0,1fr));
	}
	.ms-shop-featured-grid{
		gap:44px;
	}
	.ms-shop-section-head-row{
		align-items:flex-start;
		flex-direction:column;
	}
	.ms-shop-filter{
		justify-content:flex-start;
	}
}

@media(max-width:767px){
	.ms-shop-shell{
		width:min(100% - 30px,1180px);
	}
	.ms-shop-hero{
		padding:58px 0 88px;
	}
	.ms-shop-hero-grid,
	.ms-shop-featured-grid{
		grid-template-columns:1fr;
	}
	.ms-shop-hero-copy{
		padding-block:0;
	}
	.ms-shop-page h1{
		font-size:clamp(42px,13vw,62px);
	}
	.ms-shop-page h2{
		font-size:clamp(32px,10vw,46px);
	}
	.ms-shop-hero-media{
		aspect-ratio:4/4.8;
		border-radius:24px;
	}
	.ms-shop-category-grid,
	.ms-shop-product-grid{
		grid-template-columns:1fr;
	}
	.ms-shop-category-card{
		min-height:260px;
		padding:24px;
	}
	.ms-shop-featured-media{
		border-radius:24px;
	}
	.ms-shop-product-copy h3{
		min-height:0;
	}
	.ms-shop-filter{
		width:100%;
		display:grid;
		grid-template-columns:repeat(2,minmax(0,1fr));
		gap:10px;
		overflow:visible;
		padding-bottom:0;
	}
	.ms-shop-filter a{
		width:100%;
		min-width:0;
		justify-content:center;
		text-align:center;
		white-space:normal;
	}
	.ms-shop-journal-card{
		padding:38px 24px;
		border-radius:24px;
	}
}


@media(max-width:390px){
	.ms-shop-filter{
		grid-template-columns:1fr;
	}
}


/* =========================================================
   v1.2 — Real WooCommerce Shop endpoint
   ========================================================= */

.ms-shop-runtime-shell{
	width:100%;
	max-width:none;
	margin:0;
	padding:0;
	background:transparent;
}

/* Neutralize the legacy WooCommerce archive/theme shell when Core owns Shop. */
body.mansurge-core-owned-shop .woocommerce-products-header,
body.mansurge-core-owned-shop .woocommerce-result-count,
body.mansurge-core-owned-shop .woocommerce-ordering,
body.mansurge-core-owned-shop .products:not(.ms-shop-product-grid),
body.mansurge-core-owned-shop .page-title{
	display:none!important;
}

body.mansurge-core-owned-shop #content,
body.mansurge-core-owned-shop main.site-main,
body.mansurge-core-owned-shop .site-content{
	width:100%!important;
	max-width:none!important;
	margin:0!important;
	padding:0!important;
	background:#0b1010!important;
}

.ms-shop-prelaunch{
	min-height:70vh;
}

.ms-shop-prelaunch-hero{
	min-height:70vh;
	display:grid;
	align-items:center;
	padding:80px 0;
}

.ms-shop-prelaunch-actions{
	display:flex;
	flex-wrap:wrap;
	gap:12px;
	margin-top:30px;
}

@media(max-width:640px){
	.ms-shop-prelaunch-actions{
		flex-direction:column;
	}

	.ms-shop-prelaunch-actions .ms-shop-btn{
		width:100%;
	}
}
