/*
Theme Name: lite-c2w Theme C2W
Theme URI:
Description: Lite skin stylesheet — violet gradient, ambient orbs, rounded cards.
Version: 2.0
Author: chance2win.org
Author URI: https://chance2win.org/
Text Domain: chance2win_general_raffle
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
*/

/* ===================================================================
   0. PALETTE MAP
   Map c2w palette vars → lite shorthand, with violet defaults.
   =================================================================== */
:root,
.c2w-skin-lite {
	--v:   var(--c2w-primary, #7c5cf5);     /* violet         */
	--vd:  var(--c2w-secondary, #6246d4);   /* dark violet    */
	--vl:  var(--c2w-light, #9b82ff);       /* light violet   */
	--vp:  #ede8ff;                         /* pale violet bg */
	--vg:  #f8f5ff;                         /* ghost bg       */
	--acc: var(--c2w-accent, #ff6b8a);      /* accent rose    */
	--bg:  var(--c2w-bg, #f4f1fe);          /* page bg        */
	--txt: var(--c2w-text, #1e1535);        /* text           */
	--bdr: var(--c2w-border, #e0daf5);      /* border         */
	--r:   20px;                            /* radius         */
	--r-sm: 12px;
	--sh:  0 8px 32px rgba(100,70,212,.10); /* shadow         */
}

/* ===================================================================
   1. BASE
   =================================================================== */
.c2w-skin-lite,
.c2w-skin-lite body {
	margin: 0;
	font-family: 'Sora', sans-serif;
	background: var(--bg);
	color: var(--txt);
	-webkit-font-smoothing: antialiased;
	line-height: 1.6;
}
.c2w-skin-lite *,
.c2w-skin-lite *::before,
.c2w-skin-lite *::after { box-sizing: border-box; }

/* ===================================================================
   2. AMBIENT ORBS  (disabled — kept for reference)
   =================================================================== */
.lite-amb { display: none; }

/* ===================================================================
   3. HEADER
   =================================================================== */
.lite-hdr,
#masthead.site-header.lite-hdr,
.c2w-skin-lite #masthead.site-header.lite-hdr {
	position: sticky;
	top: 0;
	z-index: 100;
	background: var(--v) !important;
	box-shadow: 0 1px 6px rgba(0,0,0,.12);
	padding: 0 !important;
}
.lite-hdr-in {
	max-width: 1100px;
	margin: 0 auto;
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 8px 24px;
}
.lite-hdr-logo {
	display: flex;
	align-items: center;
	gap: 8px;
	text-decoration: none;
	color: #fff;
}
.lite-hdr-logo-img {
	height: 80px !important;
	width: auto;
	object-fit: contain;
}
.lite-hdr-mark {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 18px; height: 18px;
	background: rgba(255,255,255,.18);
	border-radius: 6px;
	font-weight: 800;
	font-size: 9px;
	color: #fff;
}
.lite-hdr-name {
	font-weight: 700;
	font-size: 12px;
	letter-spacing: -.1px;
	color: #fff;
}
.lite-hdr-name em {
	font-style: normal;
	color: rgba(255,255,255,.8);
}
.lite-hdr-right {
	display: flex;
	gap: 8px;
	align-items: center;
}
.lite-hdr-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 8px 20px;
	border-radius: 50px;
	font-size: 13px;
	font-weight: 600;
	text-decoration: none;
	transition: all .2s ease;
	cursor: pointer;
	line-height: 1;
}
.lite-hdr-fill {
	background: rgba(255,255,255,.18);
	border: 1px solid rgba(255,255,255,.35);
	color: #fff !important;
}
.lite-hdr-fill:hover {
	background: rgba(255,255,255,.28);
	border-color: rgba(255,255,255,.5);
	color: #fff;
	text-decoration:none !important;
}
.lite-hdr-ghost {
	background: #fff;
	border: 1px solid #fff;
	color: var(--v) !important;
}
.lite-hdr-ghost:hover {
	background: #f5f1ff;
	border-color: #f5f1ff;
	color: var(--vd);
	text-decoration:none !important;
}

/* ===================================================================
   4. PAGE CONTAINER
   =================================================================== */
.lite-page {
	position: relative;
	z-index: 1;
	max-width: 720px;
	margin: 0 auto;
	padding: 68px 20px 40px;
	border: 1px solid rgba(255,255,255,.4);
	border-radius: calc(var(--r) + 8px);
}

/* ===================================================================
   5. HERO
   =================================================================== */
.lite-hero {
	text-align: center;
	padding: 10px 0 32px;
	animation: liteFadeIn .6s ease-out;
}
@keyframes liteFadeIn {
	from { opacity: 0; transform: translateY(16px); }
	to   { opacity: 1; transform: translateY(0); }
}
.lite-hero-chip {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	background: rgba(255,255,255,.62);
	border: 1px solid rgba(255,255,255,.6);
	border-radius: 50px;
	padding: 6px 18px 6px 14px;
	font-size: 13px;
	font-weight: 600;
	color: var(--vd);
	margin: 8px 0 18px;
	backdrop-filter: blur(10px);
}
.lite-hero-chip-live {
	animation: c2wLiveBlink 0.95s infinite;
	will-change: transform, box-shadow, opacity;
}
.lite-hero-chip-upcoming {
	color: #9a6700;
	background: rgba(255,214,102,.18);
	border-color: rgba(255,214,102,.35);
}
.lite-hero-chip-ended {
	color: #b42318;
	background: rgba(255,96,96,.12);
	border-color: rgba(255,96,96,.25);
}
.lite-dot {
	width: 8px; height: 8px;
	border-radius: 50%;
	display: inline-block;
}
.lite-dot-live     { background: #22c55e; box-shadow: 0 0 6px rgba(34,197,94,.5); animation: pulse 2s infinite; }
.lite-dot-upcoming { background: #f59e0b; box-shadow: 0 0 6px rgba(245,158,11,.5); }
.lite-dot-ended    { background: #ef4444; box-shadow: 0 0 6px rgba(239,68,68,.5); }
@keyframes pulse {
	0%, 100% { opacity: 1; transform: scale(1); }
	50% { opacity: .55; transform: scale(1.3); }
}
@keyframes c2wLiveBlink {
	0%, 100% { opacity: 1; transform: scale(1); box-shadow: 0 0 0 0 rgba(34,197,94,0); }
	50% { opacity: 1; transform: scale(1.06); box-shadow: 0 0 0 8px rgba(34,197,94,0), 0 0 16px rgba(34,197,94,.18); }
}

.lite-hero-title {
	font-family: 'Fraunces', serif;
	font-size: clamp(28px, 5vw, 48px);
	font-weight: 800;
	line-height: 1.15;
	color: var(--txt);
	margin: 0 0 14px;
}
.lite-hero-dates {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 14px;
	font-size: 14px;
	font-weight: 500;
	color: #6b6180;
	letter-spacing: .4px;
}
.lite-sep {
	width: 24px;
	height: 2px;
	background: var(--bdr);
	border-radius: 2px;
}

/* ===================================================================
   6. GALLERY
   =================================================================== */
.lite-gal {
	margin-bottom: 32px;
}
.lite-gal-main {
	position: relative;
	border-radius: var(--r);
	overflow: hidden;
	background: #fff;
	box-shadow: var(--sh);
}
.lite-gal-img {
	width: 100%;
	display: block;
	aspect-ratio: 16/10;
	object-fit: cover;
	transition: opacity .15s ease;
}
.lite-gal-overlay {
	position: absolute;
	inset: 0;
	background: transparent;
	pointer-events: none;
}
.lite-ga {
	position: absolute; top: 50%; transform: translateY(-50%);
	width: 40px; height: 40px;
	background: rgba(255,255,255,.85);
	backdrop-filter: blur(8px);
	border: none;
	border-radius: 50%;
	font-size: 22px;
	color: var(--txt);
	cursor: pointer;
	transition: all .15s ease;
	display: flex; align-items: center; justify-content: center;
	box-shadow: 0 2px 8px rgba(0,0,0,.12);
}
.lite-ga:hover { background: #fff; box-shadow: 0 4px 14px rgba(0,0,0,.18); }
.lite-ga-l { left: 12px; }
.lite-ga-r { right: 12px; }
.lite-gal-counter {
	position: absolute; bottom: 12px; right: 14px;
	background: rgba(0,0,0,.45);
	color: #fff;
	padding: 4px 12px;
	border-radius: 20px;
	font-size: 12px;
	font-weight: 600;
	backdrop-filter: blur(4px);
}
.lite-gal-dots {
	display: flex; gap: 8px;
	margin-top: 12px;
	overflow-x: auto;
	padding-bottom: 4px;
}
.lite-gal-dot {
	flex: 0 0 64px;
	height: 48px;
	border-radius: 10px;
	overflow: hidden;
	border: 2px solid transparent;
	cursor: pointer;
	transition: border-color .15s, opacity .15s;
	opacity: .55;
}
.lite-gal-dot.on { border-color: var(--v); opacity: 1; }
.lite-gal-dot img { width: 100%; height: 100%; object-fit: cover; display: block; }

/* ===================================================================
   7. PRIZE
   =================================================================== */
.lite-prize {
	text-align: center;
	background: #fff;
	border-radius: var(--r);
	padding: 32px 24px;
	margin-bottom: 32px;
	box-shadow: var(--sh);
	border: 1px solid var(--bdr);
}
.lite-prize-tag {
	display: inline-block;
	background: var(--vp);
	color: var(--vd);
	font-size: 11px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 1px;
	padding: 5px 14px;
	border-radius: 50px;
	margin-bottom: 12px;
}
.lite-prize-label {
	font-size: 14px;
	color: #6b6180;
	margin-bottom: 4px;
}
.lite-prize-amount {
	font-family: 'Fraunces', serif;
	font-size: clamp(36px, 7vw, 56px);
	font-weight: 900;
	color: var(--v);
	line-height: 1.2;
	margin-bottom: 6px;
}
.lite-prize-sub {
	font-size: 13px;
	color: #8d83a0;
}

/* ===================================================================
   8. BUY SECTION
   =================================================================== */
.lite-buy {
	background: var(--vp);
	border-radius: var(--r);
	padding: 32px 24px;
	margin-bottom: 32px;
	border: 1px solid var(--bdr);
}
.lite-buy-label {
	font-family: 'Fraunces', serif;
	font-size: 22px;
	font-weight: 700;
	text-align: center;
	margin-bottom: 20px;
	color: var(--txt);
}

/* ── Ticket cards ── */
.lite-tix-row {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
	gap: 14px;
	margin-bottom: 20px;
}
.lite-tix-card {
	position: relative;
	background: rgba(255,255,255,.9);
	border: 2px solid var(--bdr);
	border-radius: var(--r-sm);
	padding: 28px 14px 14px;
	text-align: center;
	cursor: pointer;
	transition: border-color .15s, box-shadow .15s, transform .12s;
	min-height: 208px;
}
.lite-tix-card:hover {
	border-color: var(--vl);
	box-shadow: 0 8px 24px rgba(124,92,245,.10);
	background: #fff;
}
.lite-tix-card.on {
	border-color: var(--v);
	background: #fff;
	box-shadow: 0 0 0 3px rgba(124,92,245,.18), 0 8px 24px rgba(124,92,245,.12);
}

/* selection checkmark */
.lite-tix-ck {
	width: 20px; height: 20px;
	border: 2px solid #d7d2d8;
	border-radius: 50%;
	margin: 0;
	transition: all .15s;
	background: rgba(255,255,255,.85);
	position: absolute;
	top: 12px;
	right: 12px;
}
.lite-tix-ck::after {
	content: '';
	position: absolute;
	left: 6px;
	top: 2px;
	width: 5px;
	height: 9px;
	border-right: 2px solid transparent;
	border-bottom: 2px solid transparent;
	transform: rotate(45deg);
	transition: border-color .15s ease;
}
.lite-tix-card.on .lite-tix-ck {
	background: var(--v);
	border-color: var(--v);
	box-shadow: 0 0 0 3px rgba(124,92,245,.12);
}
.lite-tix-card.on .lite-tix-ck::after {
	border-color: #fff;
}
.lite-tix-sv {
	font-size: 11px;
	font-weight: 700;
	color: #17a36b;
	height: 16px;
	margin: 4px 0 10px;
}
.lite-t-n {
	font-size: 15px;
	font-weight: 700;
	color: var(--txt);
	margin-bottom: 2px;
}
.lite-t-p {
	font-size: 20px;
	font-weight: 800;
	color: var(--vd);
	margin-bottom: 2px;
}
.lite-t-u {
	font-size: 11px;
	color: rgba(30,21,53,.62);
	margin-bottom: 10px;
}

/* badges */
.lite-badge {
	position: absolute;
	top: -11px;
	left: 50%;
	transform: translateX(-50%);
	padding: 3px 12px;
	border-radius: 50px;
	font-size: 10px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: .5px;
	white-space: nowrap;
}
.lite-badge-pop {
	background: var(--v);
	color: #fff;
}
.lite-badge-val {
	background: var(--acc);
	color: #fff;
}

/* qty controls */
.lite-qc {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 0;
	border: 1px solid var(--bdr);
	border-radius: 8px;
	overflow: hidden;
}
.lite-qb {
	width: 34px; height: 32px;
	border: none;
	background: transparent;
	font-size: 16px;
	font-weight: 700;
	color: var(--v);
	cursor: pointer;
	transition: background .12s;
}
.lite-qb:hover { background: var(--vp); }
.lite-qv {
	width: 36px;
	text-align: center;
	border: none;
	background: none;
	font-size: 14px;
	font-weight: 700;
	color: var(--txt);
	appearance: textfield;
	-moz-appearance: textfield;
}
.lite-qv::-webkit-outer-spin-button,
.lite-qv::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }

/* ── Custom package ── */
.lite-custom-pkg {
	margin-bottom: 20px;
}
.lite-custom-opt {
	border-style: dashed !important;
}
.lite-custom-input-row {
	margin-top: 12px;
	padding: 16px;
	background: #fff;
	border-radius: var(--r-sm);
	border: 1px solid var(--bdr);
}
.lite-custom-label {
	display: block;
	font-size: 13px;
	font-weight: 600;
	margin-bottom: 8px;
	color: var(--txt);
}
.lite-custom-input {
	width: 100%;
	padding: 10px 14px;
	border: 2px solid var(--bdr);
	border-radius: 8px;
	font-size: 16px;
	font-family: 'Sora', sans-serif;
	transition: border-color .15s;
}
.lite-custom-input:focus {
	outline: none;
	border-color: var(--v);
}
.lite-custom-result {
	margin-top: 10px;
	padding: 10px 14px;
	background: var(--vp);
	border-radius: 8px;
	font-size: 14px;
	font-weight: 600;
	color: var(--vd);
	text-align: center;
}

/* ── Cart summary ── */
.lite-cart {
	background: #fff;
	border-radius: var(--r-sm);
	padding: 16px 18px;
	margin-bottom: 16px;
	border: 1px solid var(--bdr);
}
.lite-cr {
	display: flex;
	justify-content: space-between;
	padding: 6px 0;
	font-size: 14px;
	color: #6b6180;
}
.lite-cr-total {
	border-top: 1px solid var(--bdr);
	margin-top: 6px;
	padding-top: 10px;
	font-weight: 700;
	font-size: 16px;
	color: var(--txt);
}

/* ── CTA ── */
.lite-cta {
	display: block;
	width: 100%;
	padding: 16px;
	border: none;
	border-radius: var(--r-sm);
	background: var(--v);
	color: #fff;
	font-family: 'Sora', sans-serif;
	font-size: 16px;
	font-weight: 700;
	cursor: pointer;
	transition: transform .12s, box-shadow .2s;
	box-shadow: 0 6px 24px rgba(124,92,245,.25);
}
.lite-cta:hover {
	transform: translateY(-2px);
	box-shadow: 0 10px 32px rgba(124,92,245,.35);
}
.lite-cta:disabled {
	opacity: .6;
	cursor: not-allowed;
	transform: none;
}
.lite-cta-note {
	text-align: center;
	color: #8d83a0;
	margin-top: 10px;
	padding: 4px 12px;
	font-size: 11px;
	font-weight: 500;
	line-height: 1.4;
}
.lite-ticket-empty {
	text-align: center;
	padding: 20px;
	color: #8d83a0;
	font-size: 14px;
	line-height: 1.5;
}

/* ===================================================================
   9. TRUST BADGES
   =================================================================== */
.lite-trust {
	display: flex;
	align-items: center;
	justify-content: center;
	background: transparent;
	gap: 28px;
	flex-wrap: wrap;
	margin-bottom: 32px;
	padding: 6px 0 10px;
}
.lite-trust-item {
	display: flex;
	align-items: center;
	gap: 6px;
	font-size: 13px;
	font-weight: 600;
	color: #6b6180;
}
.lite-trust-item span {
	font-size: 18px;
}

/* ===================================================================
   10. ACCORDION
   =================================================================== */
.lite-acc {
	margin-bottom: 32px;
}
.lite-acc-item {
	margin-bottom: 10px;
}
.lite-acc-head {
	width: 100%;
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 16px 20px;
	background: var(--v);
	color: #fff;
	border: none;
	border-radius: var(--r-sm);
	font-family: 'Sora', sans-serif;
	font-size: 15px;
	font-weight: 600;
	cursor: pointer;
	transition: all .2s;
}
.lite-acc-head:hover { filter: brightness(1.06); }
.lite-acc-arrow {
	display: inline-block;
	font-size: 14px;
	transition: transform .25s;
}
.lite-acc-head.on .lite-acc-arrow {
	transform: rotate(180deg);
}
.lite-acc-body {
	max-height: 0;
	overflow: hidden;
	transition: max-height .35s ease, padding .35s ease;
	padding: 0 20px;
	background: #fff;
	border-radius: 0 0 var(--r-sm) var(--r-sm);
	font-size: 14px;
	line-height: 1.7;
	color: #4b4260;
}
.lite-acc-body.on {
	max-height: 2000px;
	padding: 18px 20px;
	border: 1px solid var(--bdr);
	border-top: none;
}
.lite-acc-body p { margin: 0 0 10px; }
.lite-acc-body img { max-width: 100%; border-radius: 8px; }

/* ===================================================================
   11. SPONSORS
   =================================================================== */
.lite-sponsors {
	background: #fff;
	border-radius: var(--r);
	padding: 28px 24px;
	margin-bottom: 32px;
	box-shadow: var(--sh);
	border: 1px solid var(--bdr);
	text-align: center;
}
.lite-sp-title {
	font-family: 'Fraunces', serif;
	font-size: 20px;
	font-weight: 700;
	margin-bottom: 20px;
	color: var(--txt);
}
.lite-sp-grid {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 20px;
}
.lite-sp-item {
	flex: 0 0 auto;
}
.lite-sp-img {
	max-height: 60px;
	width: auto;
	object-fit: contain;
	filter: grayscale(.3);
	opacity: .75;
	transition: filter .2s, opacity .2s;
}
.lite-sp-img:hover { filter: grayscale(0); opacity: 1; }

/* ===================================================================
   12. SOCIAL STRIP
   =================================================================== */
.lite-soc {
	text-align: center;
	padding: 32px 20px 28px;
}
.lite-soc-title {
	font-size: 14px;
	font-weight: 600;
	color: #6b6180;
	margin-bottom: 14px;
	text-transform: uppercase;
	letter-spacing: 1px;
}
.lite-soc-row {
	display: flex;
	justify-content: center;
	gap: 14px;
}
.lite-soc-link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 44px; height: 44px;
	border-radius: 50%;
	background: var(--vp);
	color: var(--vd);
	font-size: 18px;
	text-decoration: none;
	transition: background .15s, color .15s, transform .15s;
}
.lite-soc-link:hover {
	background: var(--v);
	color: #fff;
	transform: translateY(-2px);
}

/* ===================================================================
   13. FOOTER
   =================================================================== */
.lite-ftr {
	background: var(--vd);
	color: rgba(255,255,255,.85);
	padding: 0;
}
.lite-ftr-in {
	max-width: 1100px;
	margin: 0 auto;
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 20px 24px;
	flex-wrap: wrap;
	gap: 14px;
}
.lite-ftr-left {
	display: flex;
	align-items: center;
	gap: 12px;
}
.lite-ftr-logo-img {
	height: 80px !important;
	width: auto;
	object-fit: contain;
}
.lite-ftr-ico {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 30px; height: 30px;
	background: rgba(255,255,255,.15);
	border-radius: 8px;
	font-weight: 800;
	font-size: 13px;
	color: #fff;
}
.lite-ftr-brand {
	font-size: 13px;
	color: rgba(255,255,255,.65);
}
.lite-ftr-brand strong {
	color: #fff;
	font-weight: 700;
}
.lite-ftr-mid {
	display: flex;
	gap: 20px;
	flex-wrap: wrap;
}
.lite-ftr-link {
	font-size: 13px;
	color: rgba(255,255,255,.65);
	text-decoration: none;
	transition: color .15s;
}
.lite-ftr-link:hover { color: #fff; }

.lite-ftr-right {
	flex: 0 0 auto;
}
.lite-ftr-host {
	display: inline-block;
	padding: 8px 20px;
	background: rgba(255,255,255,.12);
	border: 1px solid rgba(255,255,255,.25);
	border-radius: 50px;
	color: #fff;
	font-size: 13px;
	font-weight: 600;
	text-decoration: none;
	transition: background .15s, border-color .15s;
}
.lite-ftr-host:hover {
	background: rgba(255,255,255,.2);
	border-color: rgba(255,255,255,.45);
	color: #fff;
}

/* ===================================================================
   14. REVEAL ON SCROLL
   =================================================================== */
.lite-rv {
	opacity: 0;
	transform: translateY(24px);
	transition: opacity .5s ease, transform .5s ease;
}
.lite-rv.lite-vis {
	opacity: 1;
	transform: translateY(0);
}

/* ===================================================================
   15. RESPONSIVE
   =================================================================== */
@media (max-width: 900px) {
	.lite-hdr-in {
		padding: 8px 14px;
	}
	.lite-page {
		padding: 32px 16px 32px;
	}
	.lite-tix-row {
		grid-template-columns: repeat(auto-fill, minmax(140px, 1fr));
		gap: 10px;
	}
	.lite-ftr-in {
		flex-direction: column;
		text-align: center;
	}
	.lite-ftr-left,
	.lite-ftr-mid {
		justify-content: center;
	}
}

@media (max-width: 768px) {
	/* Header: compact on tablet */
	.lite-hdr-in {
		padding: 7px 12px;
	}
	.lite-hdr-btn {
		padding: 6px 12px;
		font-size: 11px;
	}
	/* Page container: relax width */
	.lite-page {
		padding: 40px 14px 32px;
		border-radius: var(--r);
	}
	/* Prize amount */
	.lite-prize {
		padding: 24px 16px;
	}
	/* Buy section */
	.lite-buy {
		padding: 24px 16px;
	}
	.lite-buy-label {
		font-size: 18px;
	}
	/* Accordion */
	.lite-acc-head {
		font-size: 14px;
		padding: 14px 16px;
	}
	/* Sponsors */
	.lite-sponsors {
		padding: 20px 16px;
	}
	.lite-sp-grid {
		gap: 14px;
	}
	/* Footer */
	.lite-ftr-in {
		flex-direction: column;
		text-align: center;
		gap: 10px;
	}
	.lite-ftr-left,
	.lite-ftr-mid {
		justify-content: center;
	}
}

@media (max-width: 640px) {
	.lite-hdr-in {
		padding: 7px 10px;
	}
	.lite-hdr-logo-img { height: 80px !important; }
	.lite-hdr-btn {
		padding: 5px 9px;
		font-size: 9px;
	}
	.lite-hero-title {
		font-size: 26px;
	}
	.lite-hero-dates {
		flex-direction: column;
		gap: 4px;
	}
	.lite-sep { display: none; }
	.lite-tix-row {
		grid-template-columns: 1fr 1fr;
		gap: 8px;
	}
	.lite-tix-card {
		padding: 14px 10px 12px;
	}
	.lite-t-p { font-size: 17px; }
	.lite-buy { padding: 24px 16px; }
	.lite-trust { gap: 16px; }
	.lite-ftr-mid { gap: 12px; }
	.lite-ga { width: 34px; height: 34px; font-size: 18px; }
}

@media (max-width: 480px) {
	/* Header: very compact */
	.lite-hdr-in {
		padding: 6px 8px;
	}
	.lite-hdr-logo-img {
		height: 50px !important;
	}
	.lite-hdr-right {
		gap: 4px;
	}
	.lite-hdr-btn {
		padding: 5px 8px;
		font-size: 9px;
	}
	/* Hero: tighter */
	.lite-hero {
		padding: 6px 0 20px;
	}
	.lite-hero-title {
		font-size: 22px;
	}
	.lite-hero-chip {
		font-size: 11px;
		padding: 5px 12px 5px 10px;
	}
	/* Gallery: smaller arrows */
	.lite-ga {
		width: 30px;
		height: 30px;
		font-size: 16px;
	}
	/* Ticket cards: single column */
	.lite-tix-row {
		grid-template-columns: 1fr;
		gap: 10px;
	}
	.lite-tix-card {
		min-height: auto;
		padding: 16px 12px 12px;
	}
	/* CTA button */
	.lite-cta {
		font-size: 14px;
		padding: 14px;
	}
	/* Trust badges */
	.lite-trust {
		flex-direction: column;
		gap: 10px;
	}
	/* Social strip */
	.lite-soc-row {
		gap: 10px;
		flex-wrap: wrap;
	}
	/* Footer */
	.lite-ftr-mid {
		flex-direction: column;
		gap: 8px;
	}
}

@media (max-width: 400px) {
	.lite-tix-row {
		grid-template-columns: 1fr;
	}
	.lite-hdr-right {
		gap: 6px;
	}
	.lite-hdr-btn {
		padding: 5px 8px;
		font-size: 8px;
	}
}

/* ===================================================================
   16. MISC OVERRIDES
   Hide global theme nav/footer elements when lite skin is active.
   =================================================================== */
.c2w-skin-lite #responsive-menu-button,
.c2w-skin-lite .menu-raffle {
	display: none !important;
}
.c2w-skin-lite .site-header .logrightsection {
	display: none !important;
}
.c2w-skin-lite #primary {
	padding: 0; margin: 0; max-width: none;
}
.c2w-skin-lite .entry-header,
.c2w-skin-lite .entry-footer { display: none; }
.c2w-skin-lite .entry-content { margin: 0; padding: 0; }
.c2w-skin-lite .site-main { padding: 0; }

/* ══ Progress Bar & Contributions Strip ═════════════════════════════════════ */
.c2w-skin-lite .c2w-progress-wrap {
	background: var(--bg, #f4f1fe); border: 1px solid var(--bdr, #e0daf5);
	border-radius: 16px; padding: 20px 24px; margin: 0 12px 20px;
}
.c2w-skin-lite .c2w-progress-label-row { display: flex; justify-content: space-between; align-items: center; margin-bottom: 10px; }
.c2w-skin-lite .c2w-progress-label { font-size: 14px; font-weight: 700; color: var(--txt, #1e1535); }
.c2w-skin-lite .c2w-progress-pct { font-size: 14px; font-weight: 800; color: var(--v, #7c5cf5); }
.c2w-skin-lite .c2w-progress-track { height: 8px; background: var(--bdr, #e0daf5); border-radius: 4px; overflow: hidden; margin-bottom: 8px; }
.c2w-skin-lite .c2w-progress-fill { height: 100%; background: linear-gradient(90deg, var(--v, #7c5cf5), var(--vd, #6246d4)); border-radius: 4px; transition: width .5s ease; }
.c2w-skin-lite .c2w-progress-meta { display: flex; justify-content: space-between; font-size: 12px; color: #64748b; }
.c2w-skin-lite .c2w-contrib-strip {
	display: grid; grid-template-columns: repeat(4,1fr); gap: 1px;
	background: var(--bdr, #e0daf5); border-radius: 16px; overflow: hidden; margin: 0 12px 20px;
}
.c2w-skin-lite .c2w-contrib-cell { background: var(--bg, #f4f1fe); padding: 16px 12px; text-align: center; }
.c2w-skin-lite .c2w-contrib-val { font-size: 22px; font-weight: 800; color: var(--v, #7c5cf5); line-height: 1.2; }
.c2w-skin-lite .c2w-contrib-label { font-size: 11px; color: var(--txt, #1e1535); opacity: .7; text-transform: uppercase; letter-spacing: .5px; margin-top: 4px; }

/* ── MY ACCOUNT — Dashboard width (constrain + center) ── */
body.c2w-skin-lite.woocommerce-account .woocommerce-MyAccount-content.c2w-account-dashboard {
	max-width: 1280px !important;
	margin: 0 auto !important;
	padding: 24px 28px 28px !important;
}

@media (max-width: 600px) {
	.c2w-skin-lite .c2w-contrib-strip { grid-template-columns: repeat(2,1fr); }
}

/* ── RESPONSIVE GAPS — lite ─────────────────────────────────────────────── */

/* Item 5: gallery arrows — shrink below existing 30px rule at 480px */
@media (max-width: 480px) {
	.c2w-skin-lite .lite-ga {
		width: 28px;
		height: 28px;
	}
}

/* Item 7: sponsor logos — force 2-col grid on small phones
   Note: .lite-sponsors is the section container; .lite-sp-grid is the actual
   flex logo container — the grid rule is applied here for layout effect. */
@media (max-width: 480px) {
	.c2w-skin-lite .lite-sp-grid {
		display: grid;
		grid-template-columns: repeat(2, 1fr);
	}
}

/* Item 6: buy panel — reduce padding on very small screens */
@media (max-width: 400px) {
	.c2w-skin-lite .lite-buy {
		padding: 12px;
	}
}

/* Item 8: footer — reduce inner padding at narrow phones */
@media (max-width: 360px) {
	.c2w-skin-lite .lite-ftr-in {
		padding: 16px;
	}
}

/* ══ ADD-TEAM BUTTON LOCK ══════════════════════════════════════
   Lock add-team CTA to skin brand colour regardless of ACF palette state.
   ═══════════════════════════════════════════════ */
.c2w-skin-lite .c2w-at-btn--primary       { background: #7c5cf5 !important; color: #fff !important; border-color: #7c5cf5 !important; }
.c2w-skin-lite .c2w-at-btn--primary:hover { background: #6246d4 !important; border-color: #6246d4 !important; }
.c2w-skin-lite .c2w-at-btn--ghost:hover   { border-color: #6246d4 !important; color: #6246d4 !important; }
