/* Theme colors (Astra globals) with exact fallbacks. */
.dcgop-social, .dcgop-about-btn, .dcgop-back, .dcgop-single {
	--dcgop-red: var(--ast-global-color-0, #f60000);
	--dcgop-blue: var(--ast-global-color-1, #003e82);
}

.dcgop-social { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; list-style: none; margin: 0; padding: 0; }
.dcgop-social li { margin: 0; }
.dcgop-social a { display: inline-flex; align-items: center; justify-content: center; width: 34px; height: 34px; border-radius: 50%; background: var(--dcgop-red); color: #fff; transition: background .2s, transform .2s; }
.dcgop-social a:hover, .dcgop-social a:focus-visible { background: var(--dcgop-blue); color: #fff; transform: translateY(-2px); }

/* Card */
.dcgop-card .elementor-widget-shortcode { width: 100%; text-align: center; }
.dcgop-card-president .elementor-shortcode { font-weight: 600; color: var(--ast-global-color-3, #334155); }
.dcgop-card-about .elementor-shortcode { display: flex; flex-direction: column; align-items: center; gap: 16px; padding-top: 6px; }
.dcgop-excerpt { margin: 0; text-align: center; }

.dcgop-about-btn { display: inline-block; border: 2px solid var(--dcgop-blue); border-radius: 4px; padding: 10px 22px; background: var(--dcgop-blue); color: #fff; font-size: 15px; font-weight: 600; line-height: 1.2; text-decoration: none; transition: background .2s, border-color .2s; }
.dcgop-about-btn:hover, .dcgop-about-btn:focus-visible { background: var(--dcgop-red); border-color: var(--dcgop-red); color: #fff; }

/* Single committee page */
.dcgop-single .dcgop-social { justify-content: flex-start; }
.dcgop-single .elementor-widget-theme-post-featured-image { flex: 0 0 170px; width: 170px; max-width: 170px; }
.dcgop-single .elementor-widget-theme-post-featured-image img { display: block; width: 100%; height: 170px; object-fit: contain; }
.dcgop-single .dcgop-field-president { font-weight: 600; }
.dcgop-back { display: inline-flex; align-items: center; gap: 6px; color: var(--dcgop-blue); font-weight: 600; text-decoration: none; }
.dcgop-back:hover, .dcgop-back:focus-visible { color: var(--dcgop-red); }

@media (max-width: 767px) {
	.dcgop-single .dcgop-social { justify-content: center; }
	.dcgop-single .elementor-widget-theme-post-featured-image { flex-basis: 140px; width: 140px; max-width: 140px; }
	.dcgop-single .elementor-widget-theme-post-featured-image img { height: 140px; }
}
