/* --- PARENT CONTAINER --- */
.announcement-wrapper {
	max-width: 1140px;
	margin: 40px auto;
	padding: 0 15px;
	display: grid;
	grid-template-columns: 1fr 1fr; /* 50% width each */
	gap: 30px; /* Space between cards */
}

/* --- THE CARD SHELL --- */
.ann-card {
	background: #fff;
	border-radius: 12px;
	box-shadow: 0 4px 15px rgba(0,0,0,0.08);
	overflow: hidden; /* Keeps rounded corners clean */
	display: flex;
	flex-direction: column; /* Stacks content vertically */
	border: 1px solid #eee;
	transition: transform 0.2s;
}

.ann-card:hover {
	transform: translateY(-3px);
	box-shadow: 0 8px 25px rgba(0,0,0,0.12);
}

.ann-card.pink-theme { border: 2px solid #FFD6EB; background-color: #FFF0F8;}
.ann-card.blue-theme { border: 2px solid #A3A6E0; background-color: #E0E2F5;}

/* --- 1. TITLE & ICON BAR --- */
.ann-header {
	padding: 20px 25px;
	display: flex;
	align-items: center;
	font-size: 1.5rem;
	gap: 15px; /* Space between icon and text */
	border-bottom: 1px solid rgba(0,0,0,0.05);
}

/* Dynamic Colors based on card type - You can set this via inline style or specific classes */
.ann-card.pink-theme .ann-header { background-color: #FFD6EB; color: #b92b78; }
.ann-card.blue-theme .ann-header { background-color: #A3A6E0; color: #0f5a7a; }

.ann-header i { font-size: 1.5rem; } /* Icon Size */
.ann-header h3 { margin: 0; font-size: 1.5rem; font-weight: 700; }

/* --- 2. OPTIONAL IMAGE AREA --- */
.ann-image-container {
	text-align: center;
	background-color: #fff;
	padding-top: 10px;
}

.ann-image-container img {
	max-width: 80px; /* Controls badge size */
	height: auto;
}

.ann-card.pink-theme .ann-image-container { background-color: #FFF0F8;}
.ann-card.blue-theme .ann-image-container { background-color: #E0E2F5;}


/* --- 3. TEXT CONTENT AREA --- */
.ann-body {
	padding: 15px;
	color: #222;
	line-height: 1.6;
	flex-grow: 1; /* Ensures buttons push to bottom if needed */
	font-size: 0.6em;
}

.ann-body p {
	margin: 0 0 27px 0;
	color: #666;
	font-size: 12px;
	font-family: "open sans", arial, sans-serif;
	line-height: 1.4;
}

/* Utility for the content coming from your DB */
.ann-body ul { padding-left: 10px; margin-bottom: 3px; }
.ann-body li { margin-bottom: 3px; }

/* Styling the button inside your text blob */
.ann-body .btn,
.ann-body a[href*="quote"] { /* Tries to target the quote link automatically */
	display: inline-block;
	background-color: #757AD1;
	color: white;
	padding: 5px 10px;
	text-decoration: none;
	border-radius: 5px;
	font-size: 9px;
	font-weight: bold;
	margin-top: 10px;
}

/* Responsive Mobile */
@media (max-width: 768px) {
	.announcement-wrapper { grid-template-columns: 1fr; }
}