.gmaw-wrap{
	--ink:#170D1B;
	--ink-soft:#241329;
	--plum:#3B1F3E;
	--gold:#E8C468;
	--gold-dim:#B89044;
	--pink:#FF3D7F;
	--ivory:#F6EFE4;
	--ivory-dim:#DCD2C0;

	background:var(--ink);
	color:var(--ivory);
	font-family:'Space Grotesk', sans-serif;
	padding:clamp(48px,7vw,88px) clamp(20px,5vw,56px);
	border-radius:20px;
	max-width:1280px;
	margin:0 auto;
}
.gmaw-wrap *{ box-sizing:border-box; }
.gmaw-display{ font-family:'Fraunces', serif; }

.gmaw-header{ text-align:center; margin-bottom:52px; }
.gmaw-eyebrow{ color:var(--pink); font-weight:600; font-size:13px; letter-spacing:0.04em; }
.gmaw-header h1{ font-size:clamp(38px,6vw,64px); margin:14px 0 12px; font-weight:800; }
.gmaw-header h1 em{ font-style:normal; color:var(--gold); }
.gmaw-header p{ color:var(--ivory-dim); max-width:440px; margin:0 auto; font-size:16px; }

.gmaw-grid{
	display:grid;
	grid-template-columns:repeat(auto-fill, minmax(240px,1fr));
	gap:22px;
}

.gmaw-card{
	position:relative;
	background:var(--ink-soft);
	border:1px solid rgba(232,196,104,0.18);
	border-radius:18px;
	padding:32px 22px 26px;
	text-align:center;
	transition:transform 0.2s ease, border-color 0.2s ease;
}
.gmaw-card:hover{ transform:translateY(-4px); border-color:var(--gold-dim); }
.gmaw-card.gmaw-pending{ opacity:0.6; }

.gmaw-ribbon{
	position:absolute; top:14px; left:50%; transform:translateX(-50%);
	background:var(--pink); color:var(--ink);
	font-size:11px; font-weight:700; letter-spacing:0.04em;
	padding:5px 14px; border-radius:999px;
	white-space:nowrap;
}
.gmaw-pending .gmaw-ribbon{ background:rgba(246,239,228,0.15); color:var(--ivory-dim); }

.gmaw-photo{
	width:96px; height:96px; border-radius:50%; object-fit:cover;
	margin:22px auto 18px;
	border:3px solid var(--gold);
	box-shadow:0 8px 20px rgba(0,0,0,0.35);
}
.gmaw-photo-placeholder{
	display:flex; align-items:center; justify-content:center;
	background:var(--plum); color:var(--gold);
	font-family:'Fraunces', serif; font-weight:700; font-size:34px;
}
.gmaw-photo-empty{ color:var(--ivory-dim); background:rgba(246,239,228,0.06); border-color:rgba(246,239,228,0.2); }

.gmaw-winner-name{
	font-size:20px; font-weight:700; margin:0 0 8px; color:var(--gold);
}
.gmaw-pending .gmaw-winner-name{ color:var(--ivory-dim); font-family:'Space Grotesk', sans-serif; font-size:15px; font-weight:500; }

.gmaw-cat-title{
	font-size:13.5px; color:var(--ivory-dim); margin:0;
}

@media (max-width:480px){
	.gmaw-grid{ grid-template-columns:1fr 1fr; gap:14px; }
	.gmaw-card{ padding:26px 14px 20px; }
}
