/* Fast Speed brand color system
   Palette direction: energetic red from the logo, trust-focused navy, broadband blue, and clean cool surfaces. */
:root {
  --fs-red: #e31212;
  --fs-red-dark: #a3080c;
  --fs-navy: #071f4f;
  --fs-ink: #17213a;
  --fs-blue: #2563eb;
  --fs-sky: #eaf4ff;
  --fs-surface: #f6f9fc;
  --fs-card: #ffffff;
  --fs-border: #dfe7f2;
  --fs-muted: #5f6b7a;
  --fs-success: #16a36a;

  --color-primary: var(--fs-red);
  --color-secondary: var(--fs-blue);
  --color-default: var(--fs-ink);
}

body {
  color: var(--fs-ink);
  background: var(--fs-surface);
}

a,
a:hover {
  color: var(--fs-red);
}

.header,
.header.sticked {
  border-bottom: 1px solid rgba(7, 31, 79, 0.08);
}

.topbar,
.footer,
.navbar ul {
  background-color: var(--fs-navy);
}

@media (min-width: 1280px) {
  .navbar ul {
    background-color: transparent;
  }

  .navbar a,
  .navbar a:focus {
    color: var(--fs-ink);
  }

  .navbar a:hover,
  .navbar .active,
  .navbar li:hover > a {
    color: var(--fs-red);
  }
}

.navbar > ul > li > a:before,
.section-header h2:after,
.custom-separator,
.scroll-top,
.scroll-top:hover {
  background: var(--fs-red) !important;
}

.mobile-nav-active .navbar:before {
  background: rgba(7, 31, 79, 0.82);
}

.carousel-item::after {
  background: linear-gradient(90deg, rgba(7, 31, 79, 0.82), rgba(7, 31, 79, 0.22));
}

.carousel-caption h5:first-child,
.section-eyebrow,
.plan-highlights i,
.help-preview-grid i,
.help-topic-card i,
.faq-topic-grid i,
.broadband-support-note i {
  color: var(--fs-red) !important;
}

.plan-section,
.help-preview-section,
.help-faq-section,
.advertisers-service-sec,
.broadband-faq-topics {
  background: linear-gradient(180deg, #ffffff 0%, var(--fs-sky) 100%);
}

.plan-card,
.help-preview-grid a,
.help-topic-card,
.help-contact-card,
.faq-topic-grid article,
.broadband-support-note,
.plan-support-strip,
.broadband-feature-grid article,
.advertisers-service-sec .service-card {
  background: var(--fs-card);
  border-color: var(--fs-border) !important;
  box-shadow: 0 14px 34px rgba(7, 31, 79, 0.08);
}

.plan-card h3,
.plan-section header h2,
.advertisers-service-sec .section-header h2,
.help-preview-section h2,
.help-hero h1,
.help-topic-card h2,
.help-contact-card h2,
.faq-topic-grid h3,
.broadband-feature-grid h3,
.footer .logo span {
  color: var(--fs-navy) !important;
}

.footer .logo span,
.footer h4,
.footer .copyright,
.footer .credits,
.footer .footer-info p,
.footer .footer-contact p {
  color: #ffffff !important;
}

.footer .footer-links ul a,
.footer .social-links a {
  color: rgba(255, 255, 255, 0.76) !important;
}

.footer .footer-links ul a:hover,
.footer .social-links a:hover {
  color: #ffffff !important;
  border-color: #ffffff !important;
}

.plan-price,
.broadband-support-note a,
.faq-topic-grid a,
.support-link-panel a {
  color: var(--fs-red) !important;
}

.plan-badge,
.featured-plan .plan-badge,
.btn-primary,
.btn-purple,
.custom-btn,
.cta-btn,
.btn-danger {
  background: var(--fs-red) !important;
  border-color: var(--fs-red) !important;
  color: #ffffff !important;
  box-shadow: 0 10px 24px rgba(227, 18, 18, 0.22) !important;
}

.btn-primary:hover,
.btn-purple:hover,
.custom-btn:hover,
.cta-btn:hover,
.btn-danger:hover {
  background: var(--fs-red-dark) !important;
  border-color: var(--fs-red-dark) !important;
  color: #ffffff !important;
}

.btn-outline-primary {
  border-color: var(--fs-red) !important;
  color: var(--fs-red) !important;
}

.btn-outline-primary:hover {
  background: var(--fs-red) !important;
  color: #ffffff !important;
}

.featured-plan {
  border-color: var(--fs-red) !important;
}

.plan-card li::before,
.plan-card .bi,
.broadband-feature-grid i {
  color: var(--fs-success) !important;
}

.advertisers-service-sec .service-card::after {
  background: linear-gradient(135deg, var(--fs-red), var(--fs-blue));
}

.advertisers-service-sec .icon-wrapper,
.service-card .icon-wrapper {
  background-color: var(--fs-navy) !important;
  color: #ffffff !important;
}

.advertisers-service-sec .service-card:hover .icon-wrapper {
  background-color: #ffffff !important;
  color: var(--fs-red) !important;
}

.help-search,
.accordion-item,
.accordion-button {
  border-color: var(--fs-border) !important;
}

.accordion-button:not(.collapsed) {
  color: var(--fs-red) !important;
  background: #fff6f6 !important;
}

@media (max-width: 767px) {
  .carousel-item::after {
    background: linear-gradient(180deg, rgba(7, 31, 79, 0.32), rgba(7, 31, 79, 0.92));
  }
}

/* Topbar text color */
.topbar,
.topbar a,
.topbar a:hover,
.topbar .social-links a,
.topbar .contact-info,
.topbar .contact-info i,
.topbar .contact-info span {
  color: #ffffff !important;
}

