/* Vitalia bright theme override
   Goal: white-first interface, Vitalia teal as accent only. */

:root {
  --v-light-bg: #ffffff;
  --v-soft-bg: #f2fffc;
  --v-soft-bg-2: #f7fffd;
  --v-border: #dcefeb;
  --v-text: #023047;
  --v-muted: #5f7288;
}

body {
  background: var(--v-light-bg) !important;
  color: var(--v-text);
}

#header,
#header:not(.scrolled),
#header.scrolled {
  background: rgba(255,255,255,.96) !important;
  border-bottom: 1px solid rgba(10,147,150,.12);
  box-shadow: 0 8px 30px rgba(2,48,71,.06) !important;
  backdrop-filter: blur(18px);
}

#header:not(.scrolled) .nav-logo-img.dark,
#header .nav-logo-img.dark {
  display: block !important;
}

#header:not(.scrolled) .nav-logo-img.light,
#header .nav-logo-img.light {
  display: none !important;
}

#header:not(.scrolled) .nav-link,
#header .nav-link {
  color: var(--v-text) !important;
}

#header:not(.scrolled) .nav-link:hover,
#header:not(.scrolled) .nav-link.active,
#header .nav-link:hover,
#header .nav-link.active {
  color: var(--c-primary) !important;
  background: rgba(10,147,150,.08) !important;
}

#header:not(.scrolled) .hamburger span,
#header .hamburger span {
  background: var(--v-text) !important;
}

#hero,
.hero,
.news-hero,
.training-hero,
.doctors-hero,
.contact-hero,
.about-hero,
.service-hero {
  background: linear-gradient(135deg,#ffffff 0%,#f2fffc 55%,#ffffff 100%) !important;
  color: var(--v-text) !important;
}

.hero-bg-gradient,
.news-hero-bg,
.training-hero-gradient,
.doctors-hero-bg,
.contact-hero-bg,
.about-hero-gradient,
.service-hero-bg {
  background: radial-gradient(circle at 82% 18%,rgba(46,196,182,.16),transparent 34%),
              linear-gradient(135deg,#ffffff 0%,#effdfa 58%,#ffffff 100%) !important;
}

.hero-bg-pattern,
.news-hero-bg::after,
.training-hero-pattern,
.doctors-hero-pattern,
.contact-hero-pattern,
.about-hero-pattern,
.service-hero-bg::after {
  opacity: .42 !important;
}

.hero-hex-deco {
  opacity: .09 !important;
  stroke: var(--c-primary);
}

.hero-eyebrow,
.section-tag,
.news-pill,
.hero-tag {
  background: rgba(10,147,150,.08) !important;
  border: 1px solid rgba(10,147,150,.18) !important;
  color: var(--c-primary) !important;
  backdrop-filter: none !important;
}

.hero-title,
.hero h1,
.news-hero-title,
.training-hero-title,
.doctors-hero-title,
.contact-hero-title,
.about-hero-title,
.service-title,
.page-title {
  color: var(--v-text) !important;
}

.hero-title-accent,
.news-hero-title span,
.training-hero-title span,
.doctors-hero-title span,
.contact-hero-title span,
.about-hero-title span,
.service-title span,
.hero h1 em {
  color: var(--c-primary) !important;
}

.hero-desc,
.hero-sub,
.news-hero-desc,
.training-hero-desc,
.doctors-hero-desc,
.contact-hero-desc,
.about-hero-desc,
.service-desc,
.section-desc {
  color: var(--v-muted) !important;
}

.hero-main-card,
.hero-metric,
.hero-float-card,
.hero-visual .stat-card,
.stat-card,
.hero-badge,
.insight-card,
.hero-insight {
  background: rgba(255,255,255,.92) !important;
  border: 1px solid var(--v-border) !important;
  color: var(--v-text) !important;
  box-shadow: 0 18px 45px rgba(10,147,150,.11) !important;
  backdrop-filter: none !important;
}

.about-dashboard-panel,
.response-card {
  background: rgba(255,255,255,.94) !important;
  border: 1px solid var(--v-border) !important;
  color: var(--v-text) !important;
  box-shadow: 0 18px 45px rgba(10,147,150,.11) !important;
  backdrop-filter: none !important;
}

.about-hero .hero-actions .btn-primary,
.about-hero .hero-actions .btn-outline,
.contact-hero .btn-outline {
  color: var(--c-primary) !important;
  border-color: rgba(10,147,150,.38) !important;
  background: #fff !important;
}

.about-hero .hero-actions .btn-primary:hover,
.about-hero .hero-actions .btn-outline:hover,
.contact-hero .btn-outline:hover {
  background: rgba(10,147,150,.08) !important;
  color: var(--c-primary) !important;
}

.hero-card-title,
.hero-stat-num,
.hero-visual .num,
.stat-card .num,
.hero-metric-val {
  color: var(--c-primary) !important;
}

.hero-card-sub,
.hero-stat-label,
.hero-visual .lbl,
.stat-card .lbl,
.hero-metric-label,
.badge-text .bs,
.insight-text {
  color: var(--v-muted) !important;
}

.badge-text .bt,
.insight-title,
.response-title,
.response-item strong,
.note-title {
  color: var(--v-text) !important;
}

.response-label {
  color: var(--c-primary) !important;
}

.response-item {
  background: #fff !important;
  border: 1px solid var(--v-border) !important;
}

.response-item span,
.note-text {
  color: var(--v-muted) !important;
}

.metric-tile {
  background: #fff !important;
  border: 1px solid var(--v-border) !important;
}

.metric-value {
  color: var(--c-primary) !important;
}

.metric-label {
  color: var(--v-muted) !important;
}

.dashboard-note {
  background: #f0fdfa !important;
  border: 1px solid var(--v-border) !important;
  color: var(--v-text) !important;
}

.hero-stats {
  border-top-color: rgba(10,147,150,.16) !important;
}

.hero-scroll {
  color: rgba(2,48,71,.5) !important;
}

.hero-scroll-line {
  background: linear-gradient(to bottom,rgba(10,147,150,.45),transparent) !important;
}

#stats,
#cta,
#news-cta,
#contact-cta,
.cta-band {
  background: linear-gradient(135deg,#ffffff 0%,#f0fdfa 100%) !important;
  color: var(--v-text) !important;
  border-top: 1px solid rgba(10,147,150,.1);
  border-bottom: 1px solid rgba(10,147,150,.1);
}

#stats .stat-number,
#stats .stat-label,
.cta-title,
.cta-desc,
.cta-contact-item,
.cta-band .cta-title,
.cta-band .cta-desc {
  color: var(--v-text) !important;
}

.cta-desc,
.cta-band .cta-desc {
  color: var(--v-muted) !important;
}

.training-card-main,
.location-panel,
.article-cta {
  background: linear-gradient(135deg,#f0fdfa,#ffffff) !important;
  border: 1px solid var(--v-border) !important;
  color: var(--v-text) !important;
  box-shadow: 0 16px 40px rgba(10,147,150,.1) !important;
}

.location-title,
.pin-card strong {
  color: var(--v-text) !important;
}

.location-desc,
.pin-card span {
  color: var(--v-muted) !important;
}

.pin-card {
  background: #fff !important;
  border: 1px solid var(--v-border) !important;
}

.article-cta-title {
  color: var(--v-text) !important;
}

.article-cta-text {
  color: var(--v-muted) !important;
}

#about-cta .section-tag,
#cta .section-tag,
#news-cta .section-tag,
#contact-cta .section-tag,
.cta-band .section-tag {
  background: rgba(10,147,150,.08) !important;
  color: var(--c-primary) !important;
  border: 1px solid rgba(10,147,150,.18) !important;
}

#footer {
  background: #ffffff !important;
  color: var(--v-muted) !important;
  border-top: 1px solid rgba(10,147,150,.14);
}

.footer-heading {
  color: var(--v-text) !important;
}

.footer-desc,
.footer-link,
.footer-contact-item,
.footer-copy,
.footer-bottom-link {
  color: var(--v-muted) !important;
}

.footer-contact-item strong {
  color: var(--v-text) !important;
}

.footer-bottom {
  border-top-color: rgba(10,147,150,.12) !important;
}

.social-btn {
  background: rgba(10,147,150,.08) !important;
}

.social-btn:hover {
  background: var(--c-primary) !important;
}

.social-btn svg {
  stroke: var(--c-primary) !important;
}

.social-btn:hover svg {
  stroke: #fff !important;
}

.btn-outline {
  color: var(--c-primary) !important;
  border-color: rgba(10,147,150,.38) !important;
}

.btn-outline:hover {
  background: rgba(10,147,150,.08) !important;
  color: var(--c-primary) !important;
}

.featured-card {
  background: #fff !important;
  color: var(--v-text) !important;
  border: 1px solid var(--v-border) !important;
}

.featured-title {
  color: var(--v-text) !important;
}

.featured-summary {
  color: var(--v-muted) !important;
}

.featured-card .article-meta {
  color: var(--v-muted) !important;
}

.service-card,
.why-card,
.svc-card,
.team-card,
.trust-card,
.testi-card,
.news-card,
.card,
.contact-card,
.info-card,
.doctor-card,
.training-card {
  background: #fff !important;
  border-color: var(--v-border) !important;
  box-shadow: 0 10px 28px rgba(10,147,150,.08) !important;
}

.about-img-placeholder {
  background: linear-gradient(135deg,#f0fdfa,#ffffff) !important;
  border: 1px solid var(--v-border);
}

.about-logo-visual {
  content: url("/assets/vitalia_logo_chu-den.png");
}

@media (max-width: 900px) {
  .mobile-menu {
    background: #ffffff !important;
  }

  .mobile-logo-img {
    content: url("/assets/vitalia_logo_chu-den.png");
  }

  .mobile-nav-link,
  .mobile-link {
    color: var(--v-text) !important;
    border-bottom-color: rgba(10,147,150,.12) !important;
  }

  .mobile-nav-link:hover,
  .mobile-nav-link.active {
    color: var(--c-primary) !important;
  }
}
