/* BrainHub unified corporate brand identity
   Official palette: Green #016D3F, Navy #002240, White #FFFFFF */
:root {
  --brainhub-green: #016D3F;
  --brainhub-green-hover: #005C35;
  --brainhub-green-soft: #EAF5EF;
  --brainhub-navy: #002240;
  --brainhub-navy-deep: #00182D;
  --brainhub-white: #FFFFFF;
  --brainhub-border: rgba(0, 34, 64, 0.14);
  --brainhub-shadow: 0 18px 42px rgba(0, 34, 64, 0.12);
  --brainhub-focus: 0 0 0 4px rgba(1, 109, 63, 0.20);
}

/* Official logo */
.official-brand-logo {
  display: block;
  width: clamp(168px, 14vw, 214px);
  height: auto;
  max-height: 52px;
  object-fit: contain;
  object-position: left center;
}

.brand-logo-link,
.logo.brand-logo-link {
  display: inline-flex !important;
  align-items: center;
  flex: 0 0 auto;
  line-height: 0;
  white-space: nowrap;
}

.footer-logo-plate {
  width: fit-content;
  padding: 9px 13px;
  border-radius: 13px;
  background: var(--brainhub-white);
  box-shadow: 0 14px 28px rgba(0, 0, 0, 0.16);
}

.footer-logo-plate .official-brand-logo {
  width: clamp(172px, 15vw, 220px);
  max-height: 51px;
}

@media (max-width: 640px) {
  .official-brand-logo { width: 158px; max-height: 44px; }
  .footer-logo-plate .official-brand-logo { width: 170px; }
}

/* Accessibility and focus */
a:focus-visible,
button:focus-visible,
input:focus-visible,
textarea:focus-visible,
select:focus-visible {
  outline: 2px solid var(--brainhub-green) !important;
  outline-offset: 3px;
  box-shadow: var(--brainhub-focus) !important;
}

/* Unified navigation */
.site-header,
.nav {
  background: rgba(255, 255, 255, 0.96) !important;
  border-color: var(--brainhub-border) !important;
}

.site-header.scrolled,
.nav.scrolled {
  box-shadow: 0 14px 34px rgba(0, 34, 64, 0.10) !important;
}

.desktop-nav a,
.nav-links a,
.mobile-menu a,
.division-gateway-link {
  color: rgba(0, 34, 64, 0.72) !important;
}

.desktop-nav a:hover,
.nav-links a:hover,
.nav-links a.active,
.nav-links a.active-page,
.mobile-menu a:hover,
.division-gateway-link:hover {
  color: var(--brainhub-green) !important;
}

.desktop-nav a::after,
.nav-links a::after,
.nav-links .division-gateway-link::after {
  background: var(--brainhub-green) !important;
}

.mobile-toggle,
.mobile-menu-btn,
.menu-btn {
  color: var(--brainhub-navy) !important;
  border-color: var(--brainhub-border) !important;
  background: var(--brainhub-white) !important;
}

/* Unified buttons */
.btn-primary,
.btn-teal,
.cta-white,
button[type="submit"] {
  color: var(--brainhub-white) !important;
  background: var(--brainhub-green) !important;
  border-color: var(--brainhub-green) !important;
  box-shadow: 0 14px 30px rgba(1, 109, 63, 0.25) !important;
}

.btn-primary:hover,
.btn-teal:hover,
.cta-white:hover,
button[type="submit"]:hover {
  color: var(--brainhub-white) !important;
  background: var(--brainhub-green-hover) !important;
  border-color: var(--brainhub-green-hover) !important;
  box-shadow: 0 18px 38px rgba(1, 109, 63, 0.30) !important;
}

.btn-secondary,
.btn-outline-light,
.cta-outline {
  color: var(--brainhub-navy) !important;
  background: var(--brainhub-white) !important;
  border-color: rgba(0, 34, 64, 0.25) !important;
}

.btn-secondary:hover,
.btn-outline-light:hover,
.cta-outline:hover {
  color: var(--brainhub-white) !important;
  background: var(--brainhub-navy) !important;
  border-color: var(--brainhub-navy) !important;
}

/* Unified text, links, icons and highlights */
h1, h2, h3, h4,
.section-heading,
.hero-heading {
  color: var(--brainhub-navy) !important;
}

.eyebrow,
.small-text,
.learn-link,
.card-link,
.subject-link,
.footer-links a:hover,
.social-links a:hover,
.faq-question i,
.faq-question-subjects i,
.trust-item i,
.category-meta i,
.division-gateway-link i {
  color: var(--brainhub-green) !important;
}

.eyebrow::before {
  background: var(--brainhub-green) !important;
}

.gradient-text,
.text-gradient {
  background: linear-gradient(135deg, var(--brainhub-navy) 0%, var(--brainhub-green) 100%) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  color: transparent !important;
}

/* Cards and feature boxes */
.service-card,
.feature-card,
.industry-card,
.testimonial-card,
.destination-card,
.category-card,
.premium-category,
.course-card,
.subject-card,
.info-card-subject,
.point-card,
.value-card,
.difference-card,
.commitment-card,
.contact-card,
.step-card,
.level-card,
.parent-card,
.faq-item,
.faq-item-subjects,
.content-card,
.story-box,
.closing-card,
.intro-card-subjects {
  border-color: var(--brainhub-border) !important;
}

.service-card:hover,
.feature-card:hover,
.industry-card:hover,
.testimonial-card:hover,
.category-card:hover,
.premium-category:hover,
.course-card:hover,
.subject-card:hover,
.info-card-subject:hover,
.point-card:hover,
.value-card:hover,
.difference-card:hover,
.commitment-card:hover,
.contact-card:hover,
.faq-item.active,
.faq-item-subjects.active {
  border-color: rgba(1, 109, 63, 0.42) !important;
  box-shadow: var(--brainhub-shadow) !important;
}

.card-icon,
.feature-icon,
.service-card .card-icon,
.subject-icon,
.category-icon,
.contact-icon,
.step-num,
.step-icon,
.process-number,
.logo-icon,
.brand-mark {
  color: var(--brainhub-white) !important;
  background: var(--brainhub-green) !important;
  box-shadow: 0 12px 26px rgba(1, 109, 63, 0.20) !important;
}

.feature-card:nth-child(2n) .feature-icon,
.service-card:nth-child(2n) .card-icon,
.subject-card:nth-child(2n) .subject-icon,
.category-card:nth-child(2n) .category-icon,
.premium-category:nth-child(2n) .category-icon {
  background: var(--brainhub-navy) !important;
  box-shadow: 0 12px 26px rgba(0, 34, 64, 0.20) !important;
}

/* Forms and interactive states */
input,
textarea,
select {
  border-color: var(--brainhub-border) !important;
}

input:focus,
textarea:focus,
select:focus {
  border-color: var(--brainhub-green) !important;
  box-shadow: var(--brainhub-focus) !important;
}

/* Section hierarchy */
.section-soft,
.values,
.process,
.levels,
.featured,
.story,
.form-section,
.faq-section-subjects,
.level-section-subjects,
.subjects,
.professional-subjects {
  background: #F6F9F7 !important;
}

.section-dark,
.site-footer,
.footer,
footer,
.trust-section,
.tutors,
.not-found-subject {
  color: var(--brainhub-white) !important;
  background: var(--brainhub-navy) !important;
}

.section-dark h1,
.section-dark h2,
.section-dark h3,
.section-dark h4,
.site-footer h1,
.site-footer h2,
.site-footer h3,
.site-footer h4,
.footer h1,
.footer h2,
.footer h3,
.footer h4,
footer h1,
footer h2,
footer h3,
footer h4,
.final-cta h2,
.final-cta-subjects h2,
.not-found-subject h3,
.trust-section h2,
.tutors h2,
.tutors h3 {
  color: var(--brainhub-white) !important;
}

.final-cta,
.final-cta-subjects,
.cta-shell,
.stats-shell,
.mv-card {
  color: var(--brainhub-white) !important;
  background: linear-gradient(135deg, var(--brainhub-navy) 0%, var(--brainhub-green) 100%) !important;
}

.final-cta h2,
.final-cta-subjects h2,
.cta-shell h2,
.stats-shell h2,
.mv-card h2 {
  color: var(--brainhub-white) !important;
}

.stat-card,
.feature-card {
  border-color: rgba(255, 255, 255, 0.16) !important;
}

.stat-number,
.subject-number,
.category-number,
.point-number,
.contact-number {
  color: var(--brainhub-green) !important;
}

/* FAQ */
.faq-item.active,
.faq-item-subjects.active {
  border-color: var(--brainhub-green) !important;
}

/* Social and testimonial details */
.stars { color: var(--brainhub-green) !important; }
.avatar { background: var(--brainhub-navy) !important; }
.social-links a,
.socials a {
  border-color: rgba(255, 255, 255, 0.18) !important;
}

/* Gateway slider overlays use the official navy with green emphasis */
.brainhub-gateway .hero-slide::after,
.brainhub-gateway .hero-slide.education::after,
.brainhub-gateway .hero-slide.bpo::after {
  background: linear-gradient(90deg, rgba(0, 34, 64, 0.96) 0%, rgba(0, 34, 64, 0.82) 42%, rgba(1, 109, 63, 0.22) 78%, rgba(1, 109, 63, 0.08) 100%) !important;
}

.brainhub-gateway .slider-dot.active::after,
.brainhub-gateway .slider-arrow:hover {
  background: var(--brainhub-green) !important;
}

.brainhub-gateway .hero-slide h1,
.brainhub-gateway .hero-slide p,
.brainhub-gateway .hero-slide .eyebrow,
.brainhub-gateway .hero-division-badge {
  color: var(--brainhub-white) !important;
}

/* Education-specific normalization */
.brainhub-education {
  --primary: var(--brainhub-green) !important;
  --primary-dark: var(--brainhub-green-hover) !important;
  --primary-light: #2F8E68 !important;
  --secondary: var(--brainhub-navy) !important;
  --accent: var(--brainhub-green) !important;
  --dark: var(--brainhub-navy) !important;
  --darker: var(--brainhub-navy-deep) !important;
  --soft: #F6F9F7 !important;
  --gradient-1: linear-gradient(135deg, var(--brainhub-navy), var(--brainhub-green)) !important;
  --gradient-2: linear-gradient(135deg, var(--brainhub-green), var(--brainhub-green-hover)) !important;
  --gradient-dark: linear-gradient(135deg, var(--brainhub-navy-deep), var(--brainhub-navy)) !important;
}

.brainhub-education .hero,
.brainhub-education .subjects-hero {
  background: radial-gradient(circle at 88% 12%, rgba(1, 109, 63, 0.10), transparent 30%), linear-gradient(180deg, #F3F8F5 0%, #FFFFFF 100%) !important;
}

/* BPO-specific normalization */
.brainhub-bpo {
  --navy: var(--brainhub-navy) !important;
  --navy-2: var(--brainhub-navy-deep) !important;
  --blue: var(--brainhub-green) !important;
  --teal: var(--brainhub-green) !important;
  --soft: #F6F9F7 !important;
  --line: var(--brainhub-border) !important;
}

.brainhub-bpo .hero {
  background: radial-gradient(circle at 88% 10%, rgba(1, 109, 63, 0.14), transparent 32%), linear-gradient(180deg, #F4F8F6 0%, #FFFFFF 100%) !important;
}
