:root {
	/* Palette matches the Aikyam Foundation logo (pink, black, gold, blue figures). */
	--aikyam-primary: #e4356e;
	--aikyam-primary-dark: #c22156;
	--aikyam-secondary: #4a90d2;
	--aikyam-secondary-dark: #3a75ac;
	--aikyam-accent: #f5c518;
	--aikyam-ink: #221f20;
	--aikyam-muted: #6b6b6e;
	--aikyam-bg: #f7f8fa;
	--aikyam-border: #e5e7eb;
	--aikyam-radius: 10px;
	--aikyam-max-width: 1140px;
}

* { box-sizing: border-box; }

body {
	margin: 0;
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
	color: var(--aikyam-ink);
	background: #fff;
	line-height: 1.55;
}

h1, h2, h3 { line-height: 1.2; margin: 0 0 0.5em; }

a { color: var(--aikyam-primary); text-decoration: none; }
a:hover { text-decoration: underline; }

.container {
	max-width: var(--aikyam-max-width);
	margin: 0 auto;
	padding: 0 20px;
}

.section { padding: 56px 0; }
.upcoming-events h2, .programs-preview h2 {
	position: relative;
	padding-bottom: 14px;
}
.upcoming-events h2::after, .programs-preview h2::after {
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	width: 48px;
	height: 4px;
	border-radius: 2px;
	background: var(--aikyam-accent);
}

/* Header */
.site-header { border-bottom: 1px solid var(--aikyam-border); }
.site-header__inner { display: flex; align-items: center; justify-content: space-between; padding: 16px 20px; gap: 24px; }
.site-branding__name { font-weight: 700; font-size: 1.25rem; color: var(--aikyam-ink); }
.site-branding { display: block; line-height: 0; }
.site-branding .custom-logo-link { display: block; }
.site-branding .custom-logo { max-height: 44px; width: auto; display: block; }
.site-branding__link { text-decoration: none; }
.site-nav ul { list-style: none; display: flex; gap: 24px; margin: 0; padding: 0; }
.site-nav a { color: var(--aikyam-ink); font-weight: 500; }
.site-nav a:hover { color: var(--aikyam-secondary); text-decoration: none; }

/* Buttons -- .btn is used on both <a> and <button data-gb-*> donate triggers,
   so reset the button-element defaults (border/background/font/cursor). */
.btn {
	display: inline-block;
	padding: 10px 22px;
	border-radius: 999px;
	font-weight: 600;
	text-decoration: none;
	border: none;
	font-family: inherit;
	font-size: 1rem;
	cursor: pointer;
}
.btn--donate { background: var(--aikyam-primary); color: #fff; }
.btn--donate:hover { background: var(--aikyam-primary-dark); text-decoration: none; }
.btn--outline { border: 1.5px solid var(--aikyam-secondary); color: var(--aikyam-secondary); }
.btn--outline:hover { background: var(--aikyam-secondary); color: #fff; text-decoration: none; }

/* Hero */
.hero { background: var(--aikyam-bg); padding: 88px 0; text-align: center; }
.hero__title { font-size: 2.4rem; max-width: 720px; margin: 0 auto 16px; }
.hero__subtitle { color: var(--aikyam-muted); margin-bottom: 28px; }
.hero__actions { display: flex; gap: 14px; justify-content: center; flex-wrap: wrap; }

/* Grids */
.event-grid, .program-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
	gap: 24px;
	margin-top: 24px;
}

.event-card, .program-card {
	display: block;
	border: 1px solid var(--aikyam-border);
	border-radius: var(--aikyam-radius);
	overflow: hidden;
	color: inherit;
}
.event-card:hover, .program-card:hover { text-decoration: none; box-shadow: 0 6px 18px rgba(0,0,0,0.06); }
.event-card__image img, .program-card__image img { width: 100%; height: 160px; object-fit: cover; display: block; }
.event-card__body, .program-card { padding: 16px; }
.event-card__date { display: block; color: var(--aikyam-primary); font-weight: 600; font-size: 0.85rem; margin-bottom: 4px; }
.event-card__meta { display: block; color: var(--aikyam-muted); font-size: 0.9rem; }

/* Single event */
.event-single__header { margin-bottom: 24px; }
.event-single__meta { list-style: none; padding: 0; display: flex; gap: 16px; color: var(--aikyam-muted); margin: 12px 0 20px; flex-wrap: wrap; }
.event-single__meta li::before { content: "\2022"; margin-right: 16px; color: var(--aikyam-border); }
.event-single__meta li:first-child::before { content: ""; margin-right: 0; }
.event-single__image img { width: 100%; border-radius: var(--aikyam-radius); margin-bottom: 24px; }

/* Sponsors */
.aikyam-sponsors { margin-top: 40px; padding-top: 24px; border-top: 1px solid var(--aikyam-border); }
.aikyam-sponsors__title { margin-bottom: 16px; }
.aikyam-sponsors__list { list-style: none; padding: 0; margin: 0; display: flex; flex-wrap: wrap; gap: 12px; }
.aikyam-sponsors__item {
	background: var(--aikyam-bg);
	border: 1px solid var(--aikyam-border);
	border-radius: 999px;
	padding: 8px 18px;
	font-weight: 600;
	display: flex;
	gap: 8px;
	align-items: center;
}
.aikyam-sponsors__amount { color: var(--aikyam-primary); font-weight: 700; }

/* Donate CTA */
.donate-cta { background: var(--aikyam-primary); color: #fff; text-align: center; }
.donate-cta h2 { color: #fff; }
.donate-cta .btn--donate { background: #fff; color: var(--aikyam-primary); }
.donate-cta .btn--donate:hover { background: #fbe4ec; }

/* Footer */
.site-footer { background: var(--aikyam-ink); color: #d6d5d6; padding: 40px 0; margin-top: 60px; }
.site-footer__inner { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 20px; align-items: center; }
.site-footer a { color: #fff; }
.site-footer a:hover { color: var(--aikyam-accent); }
.site-footer__copyright { width: 100%; margin-top: 20px; color: #9a999b; font-size: 0.85rem; }
