/* SZY Text Color Fix v5 - higher specificity button protection */

/* Base section text colors */
.section:not(.section-dark):not(.page-banner):not(.site-footer) h1,
.section:not(.section-dark):not(.page-banner):not(.site-footer) h2,
.section:not(.section-dark):not(.page-banner):not(.site-footer) h3,
.section:not(.section-dark):not(.page-banner):not(.site-footer) h4,
.section:not(.section-dark):not(.page-banner):not(.site-footer) h5,
.section:not(.section-dark):not(.page-banner):not(.site-footer) h6 {
    color: #1A1A2E !important;
}
.section:not(.section-dark):not(.page-banner):not(.site-footer) p,
.section:not(.section-dark):not(.page-banner):not(.site-footer) li {
    color: #333333 !important;
}
.section:not(.section-dark):not(.page-banner):not(.site-footer) span:not(.gradient-text) {
    color: #333333 !important;
}

/* Section links - red color BUT exclude buttons */
.section:not(.section-dark):not(.page-banner):not(.site-footer) a:not(.btn-primary):not(.btn-register):not(.btn-gold):not(.btn-outline):not(.btn-login):not(.header-btn-register):not(.header-btn-login):not(.header-btn-partner) {
    color: #C41E3A !important;
}

.section:not(.section-dark):not(.page-banner):not(.site-footer) .text-muted,
.section:not(.section-dark):not(.page-banner):not(.site-footer) .text-secondary {
    color: #6E6E73 !important;
}

/* about-content override */
.about-content p, .about-content li, .about-content span {
    color: #4A4A5A !important;
}

/* === Button text MUST be white - high specificity === */
/* Using :not() exclusion in section rule above, plus explicit white */
a.btn-primary, a.btn-primary:link, a.btn-primary:visited, a.btn-primary:hover, a.btn-primary:active,
a.btn-register, a.btn-register:link, a.btn-register:visited, a.btn-register:hover, a.btn-register:active,
a.btn-gold, a.btn-gold:link, a.btn-gold:visited, a.btn-gold:hover, a.btn-gold:active,
a.btn-outline, a.btn-outline:link, a.btn-outline:visited, a.btn-outline:hover, a.btn-outline:active,
a.btn-login, a.btn-login:link, a.btn-login:visited, a.btn-login:hover, a.btn-login:active,
.btn-primary a, .btn-primary a:link, .btn-primary a:visited, .btn-primary a:hover,
.btn-register a, .btn-register a:link, .btn-register a:visited, .btn-register a:hover,
.btn-gold a, .btn-gold a:link, .btn-gold a:visited, .btn-gold a:hover,
.btn-outline a, .btn-outline a:link, .btn-outline a:visited, .btn-outline a:hover,
/* Higher specificity - matches section context */
.section a.btn-primary, .section a.btn-register, .section a.btn-gold, .section a.btn-outline, .section a.btn-login,
.section .btn-primary > a, .section .btn-register > a, .section .btn-gold > a, .section .btn-outline > a {
    color: #FFFFFF !important;
    text-decoration: none !important;
}

/* Header buttons */
.header-btn-register, .header-btn-register:link, .header-btn-register:visited,
.header-btn-login, .header-btn-login:link, .header-btn-login:visited,
.header-btn-partner, .header-btn-partner:link, .header-btn-partner:visited {
    color: #FFFFFF !important;
}

/* Hero buttons */
.hero-buttons .btn-primary, .hero-buttons .btn-primary:link,
.hero-buttons .btn-primary:visited, .hero-buttons .btn-primary:hover,
.hero-buttons .btn-primary:active {
    color: #FFFFFF !important;
}
.hero-buttons .btn-outline, .hero-buttons .btn-outline:link,
.hero-buttons .btn-outline:visited {
    color: #C41E3A !important;
}

/* Asset entry items (digital human section cards) */
.asset-entry-item, .asset-entry-item:link, .asset-entry-item:visited {
    color: #1A1A2E !important;
    text-decoration: none !important;
}
.asset-entry-title {
    color: #1A1A2E !important;
}
.asset-entry-desc {
    color: #6A6A7A !important;
}

/* Footer */
.site-footer, .site-footer * {
    color: rgba(255,255,255,0.8) !important;
}
.site-footer .footer-logo, .site-footer .footer-logo * {
    background: linear-gradient(135deg, #C41E3A, #D4A017) !important;
    -webkit-background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
    background-clip: text !important;
}
.site-footer .footer-slogan { color: #D4A017 !important; }
.site-footer a:hover { color: #D4A017 !important; }
.site-footer .footer-qr-item span {
    color: rgba(255,255,255,0.7) !important;
    font-size: 11px !important;
}
.site-footer .footer-qr-grid {
    display: flex !important;
    gap: 16px !important;
    flex-wrap: wrap !important;
    justify-content: flex-start !important;
}
.site-footer .footer-qr-item {
    text-align: center !important;
    flex-shrink: 0 !important;
}
