Fix: CTA button contrast and author bio class collisions

- Replace btn/btn-secondary on CTA buttons with cta-btn/cta-btn-outline
  (isolated from global .btn-secondary { color: #144784 !important } cascade)
- Rename author-bio inner classes (author-info -> bio-info, etc.) to prevent
  collision with article inline <style> .author-info definitions
- Both issues were CSS class name conflicts, not specificity bugs
This commit is contained in:
root
2026-02-22 10:19:25 +00:00
committed by Peter Foster
parent 8731fd8fd7
commit da20f8e44c
3 changed files with 52 additions and 42 deletions

View File

@@ -4538,37 +4538,47 @@ body { font-size: 17px; }
flex-shrink: 0;
flex-wrap: wrap;
}
.article-cta .btn-primary {
background: #f59e0b !important;
color: #1a1a1a !important;
border: none !important;
.cta-btn {
display: inline-flex;
align-items: center;
justify-content: center;
padding: 0.75rem 1.5rem;
border-radius: 6px;
font-weight: 700;
text-decoration: none !important;
font-size: 0.95rem;
text-decoration: none;
white-space: nowrap;
transition: background 0.2s;
box-shadow: none;
cursor: pointer;
transition: background 0.2s, border-color 0.2s;
line-height: 1.2;
}
.article-cta .btn-primary:hover { background: #fbbf24 !important; color: #1a1a1a !important; }
.article-cta .btn-secondary {
background: transparent !important;
color: #fff !important;
border: 2px solid rgba(255,255,255,0.7) !important;
padding: 0.75rem 1.5rem;
border-radius: 6px;
font-weight: 600;
text-decoration: none !important;
white-space: nowrap;
transition: border-color 0.2s, background 0.2s;
box-shadow: none;
.cta-btn-primary {
background: #f59e0b;
color: #1a1a1a;
border: 2px solid #f59e0b;
}
.cta-btn-primary:hover {
background: #fbbf24;
border-color: #fbbf24;
color: #1a1a1a;
text-decoration: none;
}
.cta-btn-outline {
background: transparent;
color: #ffffff;
border: 2px solid rgba(255,255,255,0.8);
}
.cta-btn-outline:hover {
background: rgba(255,255,255,0.12);
border-color: #ffffff;
color: #ffffff;
text-decoration: none;
}
.article-cta .btn-secondary:hover { border-color: #fff !important; background: rgba(255,255,255,0.1) !important; }
@media (max-width: 640px) {
.article-cta { padding: 1.5rem; }
.article-cta .cta-inner { flex-direction: column; }
.article-cta .cta-actions { width: 100%; }
.article-cta .btn-primary, .article-cta .btn-secondary { text-align: center; flex: 1; }
.cta-btn { text-align: center; flex: 1; width: 100%; }
}
@@ -4584,7 +4594,7 @@ body { font-size: 17px; }
border-left: 4px solid #179e83;
}
.author-avatar img {
.bio-avatar img {
width: 80px;
height: 80px;
border-radius: 50%;
@@ -4592,11 +4602,11 @@ body { font-size: 17px; }
border: 3px solid #179e83;
}
.author-info {
.bio-info {
flex: 1;
}
.author-header {
.bio-header {
font-size: 0.85rem;
text-transform: uppercase;
letter-spacing: 0.5px;
@@ -4605,28 +4615,28 @@ body { font-size: 17px; }
font-weight: 600;
}
.author-name {
.bio-name {
font-size: 1.25rem;
font-weight: 700;
color: #1a1a1a;
margin: 0 0 4px 0;
}
.author-role {
.bio-role {
font-size: 0.95rem;
color: #666;
margin: 0 0 12px 0;
font-weight: 500;
}
.author-description {
.bio-description {
font-size: 0.95rem;
color: #444;
line-height: 1.6;
margin: 0 0 16px 0;
}
.author-expertise {
.bio-expertise {
display: flex;
flex-wrap: wrap;
gap: 8px;
@@ -4649,7 +4659,7 @@ body { font-size: 17px; }
color: #555;
}
.author-social .linkedin-link {
.bio-social .linkedin-link {
display: inline-flex;
align-items: center;
gap: 6px;
@@ -4660,7 +4670,7 @@ body { font-size: 17px; }
transition: color 0.2s;
}
.author-social .linkedin-link:hover {
.bio-social .linkedin-link:hover {
color: #005885;
text-decoration: underline;
}
@@ -4671,11 +4681,11 @@ body { font-size: 17px; }
text-align: center;
}
.author-avatar {
.bio-avatar {
margin: 0 auto;
}
.author-expertise {
.bio-expertise {
justify-content: center;
}
}