/* MurphFin — public-components.css */


/* ── SECTION 3: HEADER ────────────────────────────── */

body.public-area .app-header {
  background: var(--brand-surface);
  border-bottom: 1px solid var(--brand-border);
}

body.public-area .app-brand {
  font-family: var(--font-head);
  font-weight: 900;
  font-size: 1.3rem;
  letter-spacing: -0.03em;
}
body.public-area .app-brand span {
  color: var(--mp-accent-light);
}

body.public-area .app-header-nav a {
  font-family: var(--font-body);
  color: var(--brand-muted);
  border-radius: 0;
}
body.public-area .app-header-nav a:hover {
  color: var(--brand-text);
  background: var(--mp-accent-glow);
}

body.public-area .app-header-register {
  background: var(--mp-accent);
  color: #fff;
  font-family: var(--font-mono);
  font-size: 12px;
  letter-spacing: 0.8px;
  text-transform: uppercase;
  border: none;
}
body.public-area .app-header-register:hover {
  background: var(--mp-accent-light);
}

body.public-area .news-ticker-item { color: var(--brand-muted); }
body.public-area .news-ticker-sep  { color: var(--brand-border); }


/* ── SECTION 4: BUTTONS ───────────────────────────── */

body.public-area .btn-fisit {
  background: var(--mp-accent);
  color: #fff;
  border: none;
  border-radius: 0;
  font-family: var(--font-mono);
  font-size: 12px;
  letter-spacing: 0.8px;
  text-transform: uppercase;
  padding: 10px 24px;
}
body.public-area .btn-fisit:hover {
  background: var(--mp-accent-light);
  color: #fff;
}

body.public-area .btn-fisit-outline {
  background: transparent;
  border: 1px solid var(--mp-border-hi);
  color: var(--brand-muted);
  border-radius: 0;
  font-family: var(--font-mono);
  font-size: 12px;
  letter-spacing: 0.8px;
  text-transform: uppercase;
  padding: 9px 22px;
}
body.public-area .btn-fisit-outline:hover {
  background: var(--mp-accent-glow);
  color: var(--brand-text);
}


/* ── SECTION 5: CARDS ─────────────────────────────── */

body.public-area .card,
body.public-area .card-fisit,
body.public-area .plat-card,
body.public-area .plat-feat-card,
body.public-area .plat-bando-card,
body.public-area .kai-card {
  background: var(--brand-surface);
  border-color: var(--brand-border);
  color: var(--brand-text);
}

body.public-area .card-fisit:hover,
body.public-area .plat-feat-card:hover {
  border-color: var(--mp-border-hi);
}

body.public-area .card-fisit .card-header,
body.public-area .card-header {
  background: var(--brand-surface-alt);
  border-bottom-color: var(--brand-border);
  color: var(--brand-text);
}

body.public-area .plat-card {
  border-top-color: var(--mp-accent);
}
body.public-area .plat-icon-box {
  background: var(--mp-accent-glow);
}
body.public-area .plat-icon-box i    { color: var(--mp-accent-light); }
body.public-area .plat-card-title    { color: var(--brand-text); }
body.public-area .plat-check-item i  { color: var(--mp-accent-light); }

body.public-area .plat-feat-icon  { color: var(--mp-cyan); }
body.public-area .plat-feat-title { color: var(--brand-text); }
body.public-area .plat-feat-desc  { color: var(--brand-muted); }

body.public-area .plat-bando-card {
  border-left-color: var(--mp-accent);
}
body.public-area .plat-bando-card:hover {
  box-shadow: 0 4px 16px rgba(124, 58, 237, 0.12);
}

body.public-area .kai-card--ai  { border-top-color: var(--mp-cyan); }
body.public-area .kai-brand     { font-family: var(--font-head); color: var(--mp-accent-light); }
body.public-area .kai-brand-fin { color: var(--brand-text); }
body.public-area .kai-brand-ai  { color: var(--mp-gold); }
body.public-area .kai-status    { color: var(--mp-gold); font-family: var(--font-mono); }


/* ── SECTION 6: BADGES ────────────────────────────── */

body.public-area .badge {
  border-radius: 0;
  font-family: var(--font-mono);
  font-size: 10px;
  letter-spacing: 1px;
  text-transform: uppercase;
}
body.public-area .badge.bg-primary   { background: var(--mp-accent-glow); color: var(--mp-accent-light); }
body.public-area .badge.bg-success   { background: var(--mp-cyan-dim); color: var(--mp-cyan); }
body.public-area .badge.bg-warning   { background: rgba(251, 191, 36, 0.12); color: var(--mp-gold); }
body.public-area .badge.bg-secondary { background: var(--brand-surface-alt); color: var(--brand-muted); }
body.public-area .badge.bg-info      { background: var(--mp-cyan-dim); color: var(--mp-cyan); }


/* ── SECTION 7: TABLES ────────────────────────────── */

body.public-area .table thead th {
  background: var(--brand-surface-alt);
  color: var(--brand-muted);
  border-bottom-color: var(--brand-border);
}
body.public-area .table tbody td {
  border-bottom-color: var(--brand-border);
  color: var(--brand-text);
}
body.public-area .table tbody tr:hover {
  background: var(--brand-surface-alt);
}

body.public-area thead.table-light th {
  background: var(--brand-surface-alt);
  color: var(--brand-muted);
}

body.public-area .plat-compare-table {
  border-color: var(--brand-border);
}
body.public-area .plat-compare-table thead th {
  background: var(--brand-surface-alt);
  color: var(--brand-text);
  border-bottom-color: var(--mp-accent);
}
body.public-area .plat-compare-table thead th:first-child {
  background: var(--brand-surface);
}
body.public-area .plat-compare-table thead th.plat-compare-hl {
  background: var(--mp-accent);
}
body.public-area .plat-compare-table tbody td {
  border-bottom-color: var(--brand-border);
  color: var(--brand-text);
}
body.public-area .plat-compare-table tbody td:first-child {
  color: var(--brand-text);
}
body.public-area .plat-compare-table tbody tr:nth-child(even) {
  background: var(--brand-surface);
}
body.public-area .plat-compare-table tbody tr:hover {
  background: var(--brand-surface-alt);
}
body.public-area .plat-compare-yes { color: var(--mp-accent-light); }
body.public-area .plat-compare-no  { color: #334155; }


/* ── SECTION 8: FORMS ─────────────────────────────── */

body.public-area .form-control,
body.public-area .form-select {
  background: var(--brand-surface);
  border-color: var(--brand-border);
  color: var(--brand-text);
}
body.public-area .form-control:focus,
body.public-area .form-select:focus {
  border-color: var(--mp-accent);
  box-shadow: 0 0 0 3px var(--mp-accent-glow);
}
body.public-area .form-control::placeholder {
  color: var(--brand-muted);
}
body.public-area .form-label {
  color: var(--brand-muted);
  font-family: var(--font-mono);
  font-size: 11px;
  letter-spacing: 0.5px;
  text-transform: uppercase;
}

body.public-area .form-check-input {
  background-color: var(--brand-surface-alt);
  border-color: var(--mp-border-hi);
  border-width: 2px;
}
body.public-area .form-check-input:checked {
  background-color: var(--mp-accent);
  border-color: var(--mp-accent);
}
body.public-area .form-check-input:focus {
  box-shadow: 0 0 0 3px var(--mp-accent-glow);
  border-color: var(--mp-accent);
}
body.public-area .form-switch .form-check-input {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%2364748B'/%3e%3c/svg%3e");
}
body.public-area .form-switch .form-check-input:checked {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e");
}


/* ── SECTION 9: PAGE HERO, PAGE INTRO, SECTION TITLES */

body.public-area .page-hero {
  background: linear-gradient(135deg, var(--brand-surface) 0%, var(--brand-surface-alt) 100%);
  border-bottom: 1px solid var(--brand-border);
}
body.public-area .page-hero h1 {
  font-family: var(--font-head);
  font-weight: 900;
}
body.public-area .page-hero p { color: var(--brand-muted); }

body.public-area .page-intro h1,
body.public-area .page-intro h2 { color: var(--brand-text); }
body.public-area .page-intro p   { color: var(--brand-muted); }

body.public-area .red-bar {
  background: var(--mp-gradient);
  height: 2px;
  width: 60px;
}

body.public-area .section-title {
  font-family: var(--font-head);
  font-size: 1.6rem;
  font-weight: 700;
  color: var(--brand-text);
  margin-bottom: 8px;
}
body.public-area .section-sub {
  color: var(--brand-muted);
  max-width: 580px;
  font-size: 0.92rem;
  margin: 10px auto 26px;
}

body.public-area .feat-hero {
  background: linear-gradient(135deg, var(--brand-surface) 0%, var(--brand-surface-alt) 100%);
  border-bottom: 1px solid var(--brand-border);
}
body.public-area .feat-hero h1    { font-family: var(--font-head); font-weight: 900; }
body.public-area .feat-hero p     { color: var(--brand-muted); }
body.public-area .feat-section h2 { color: var(--brand-text); }
body.public-area .feat-section h2 i { color: var(--mp-accent-light); }
body.public-area .feat-item       { color: var(--brand-text); }
body.public-area .feat-item i     { color: var(--mp-cyan); }
body.public-area .feat-divider    { border-top-color: var(--brand-border); }
body.public-area .feat-more       { background: var(--brand-surface); border-color: var(--brand-border); }
body.public-area .feat-more h3    { color: var(--brand-text); }
body.public-area .feat-more p     { color: var(--brand-muted); }
body.public-area .feat-cta        { background: var(--brand-surface-alt); }


/* ── SECTION 10: LANDING PAGE (lp-*) ─────────────── */

body.public-area .lp-perchi-bar { background: var(--brand-surface); border-color: var(--brand-border); }
body.public-area .lp-perchi-icon  { color: var(--mp-accent-light); }
body.public-area .lp-perchi-title { color: var(--brand-text); }
body.public-area .lp-perchi-desc  { color: var(--brand-muted); }

body.public-area .lp-step-num   { background: var(--mp-accent); color: #fff; }
body.public-area .lp-step-title { color: var(--brand-text); }
body.public-area .lp-step-desc  { color: var(--brand-muted); }
body.public-area .lp-steps-connector { background: var(--brand-border); }

body.public-area .lp-btn-navy,
body.public-area .lp-btn-white-cta {
  background: var(--mp-accent);
  color: #fff;
  border-radius: 0;
  font-family: var(--font-mono);
  font-size: 12px;
  letter-spacing: 0.8px;
  text-transform: uppercase;
}
body.public-area .lp-btn-navy:hover,
body.public-area .lp-btn-white-cta:hover {
  background: var(--mp-accent-light);
  color: #fff;
}

body.public-area .lp-btn-outline-navy {
  border-color: var(--mp-border-hi);
  color: var(--brand-muted);
  background: transparent;
  border-radius: 0;
  font-family: var(--font-mono);
  font-size: 12px;
  letter-spacing: 0.8px;
  text-transform: uppercase;
}
body.public-area .lp-btn-outline-navy:hover {
  background: var(--mp-accent-glow);
  color: var(--brand-text);
}

body.public-area .lp-come-cta-btns { width: 340px; max-width: 100%; }

body.public-area .lp-chat-mockup {
  background: var(--brand-surface);
  border-color: var(--brand-border);
}
body.public-area .lp-chat-bubble-ai   { background: var(--brand-surface-alt); color: var(--brand-text); }
body.public-area .lp-chat-bubble-user { background: var(--mp-accent-glow); color: var(--brand-text); }
body.public-area .lp-ai-text h4           { color: var(--brand-text); }
body.public-area .lp-ai-feature-title     { color: var(--brand-text); }
body.public-area .lp-ai-feature-icon      { background: var(--mp-accent-glow); }
body.public-area .lp-ai-feature-icon i    { color: var(--mp-accent-light); }
body.public-area .lp-ai-feature-icon--green   { background: var(--mp-cyan-dim); }
body.public-area .lp-ai-feature-icon--green i { color: var(--mp-cyan); }
body.public-area .lp-ai-feature-icon--blue    { background: var(--mp-accent-glow); }
body.public-area .lp-ai-feature-icon--blue i  { color: var(--mp-accent-light); }
body.public-area .lp-ai-feature-icon--navy    { background: var(--mp-accent-glow); }
body.public-area .lp-ai-feature-icon--navy i  { color: var(--mp-accent-light); }

/* ── NVIDIA flow icon — dynamic color via CSS var ── */
body.public-area .lp-nvidia-flow-icon {
  background: color-mix(in srgb, var(--icon-color, #7C3AED) 13%, transparent);
  border: 1px solid color-mix(in srgb, var(--icon-color, #7C3AED) 25%, transparent);
}
body.public-area .lp-nvidia-flow-icon i {
  color: var(--icon-color, var(--mp-accent-light));
  font-size: 0.9rem;
}

body.public-area .lp-nvidia-wrap {
  background: linear-gradient(135deg, #030712 0%, #0a1628 50%, #060d1f 100%);
  border: 1px solid var(--mp-border-cyan);
}
body.public-area .lp-nvidia-metric-val { font-family: var(--font-mono); color: var(--mp-gold); }

body.public-area .lp-feature-card {
  background: var(--brand-surface);
  border-color: var(--brand-border);
}
body.public-area .lp-feature-card:hover  { border-color: var(--mp-border-hi); }
body.public-area .lp-feature-icon        { color: var(--mp-accent-light); }
body.public-area .lp-feature-title       { color: var(--brand-text); }
body.public-area .lp-feature-list li     { color: var(--brand-muted); }
body.public-area .lp-feature-list li::before { color: var(--mp-cyan); }
body.public-area .lp-feature-more        { color: var(--mp-accent-light); }

body.public-area .lp-hero-stats       { color: var(--brand-muted); }
body.public-area .lp-hero-stats strong { color: var(--mp-gold); font-family: var(--font-mono); }

body.public-area .lp-promo-card   { background: var(--brand-surface); border-color: var(--brand-border); }
body.public-area .lp-promo-header { background: var(--brand-surface-alt); }
body.public-area .lp-promo-title  { color: #fff; }
body.public-area .lp-promo-text   { color: var(--brand-text); }
body.public-area .lp-promo-code-box   { background: var(--brand-surface-alt); border-color: var(--mp-border-hi); }
body.public-area .lp-promo-code-value { color: var(--mp-gold); font-family: var(--font-mono); }
body.public-area .lp-promo-cta {
  background: var(--mp-accent);
  border-radius: 0;
  font-family: var(--font-mono);
  letter-spacing: 0.8px;
  text-transform: uppercase;
}


/* ── SECTION 11: PLATFORM CTA, ICON BOXES, CTA BOX ─ */

body.public-area .plat-cta {
  background: var(--brand-surface-alt);
  border: 1px solid var(--brand-border);
}
body.public-area .plat-cta-title { font-family: var(--font-head); color: #fff; }
body.public-area .plat-cta-sub   { color: var(--brand-muted); }

body.public-area .plat-btn-white,
body.public-area .plat-btn-red {
  background: var(--mp-accent);
  color: #fff;
  border-radius: 0;
  font-family: var(--font-mono);
  font-size: 12px;
  letter-spacing: 0.8px;
  text-transform: uppercase;
}
body.public-area .plat-btn-white {
  background: transparent;
  border: 1px solid var(--mp-border-hi);
  color: var(--brand-text);
}

body.public-area .plat-step-title { color: var(--brand-text); }
body.public-area .plat-step-desc  { color: var(--brand-muted); }

body.public-area .cta-box {
  background: var(--brand-surface);
  border-color: var(--brand-border);
  border-left-color: var(--mp-accent);
}

body.public-area .icon-box--navy  { background: var(--mp-accent-glow); color: var(--mp-accent-light); }
body.public-area .icon-box--blue  { background: var(--mp-accent-glow); color: var(--mp-accent-light); }
body.public-area .icon-box--green { background: var(--mp-cyan-dim); color: var(--mp-cyan); }
body.public-area .icon-box--red   { background: var(--mp-accent-glow); color: var(--mp-accent-light); }


/* ── SECTION 12: FOOTER ───────────────────────────── */

body.public-area .fisit-footer {
  background: var(--brand-surface);
  border-top: 1px solid var(--brand-border);
}
body.public-area .fisit-footer-bar-top {
  height: 1px;
  background: var(--mp-gradient);
}
body.public-area .fisit-footer-brand {
  font-family: var(--font-head);
  font-weight: 900;
}
body.public-area .fisit-footer-brand span { color: var(--mp-accent-light); }
body.public-area .fisit-footer-heading {
  color: var(--mp-accent-light);
  font-family: var(--font-mono);
  font-size: 10px;
  letter-spacing: 2px;
}
body.public-area .fisit-footer-links a,
body.public-area .fisit-footer-links span { color: var(--brand-muted); }
body.public-area .fisit-footer-links a:hover { color: var(--brand-text); }
body.public-area .fisit-footer-bottom { border-top-color: var(--brand-border); }

body.public-area .footer-social-link {
  border-color: var(--brand-border);
  color: var(--brand-muted);
}
body.public-area .footer-social-link:hover {
  color: var(--mp-accent-light);
  border-color: var(--mp-accent);
}

body.public-area .footer-cta {
  background: linear-gradient(180deg, var(--mp-accent-glow) 0%, transparent 100%);
  border-bottom-color: var(--brand-border);
}
body.public-area .footer-cta-title {
  font-family: var(--font-head);
  font-weight: 900;
}
body.public-area .footer-cta-sub { color: var(--brand-muted); }

body.public-area .footer-cta-btn--solid {
  background: var(--mp-accent);
  border-color: var(--mp-accent);
  font-family: var(--font-mono);
  font-size: 12px;
  letter-spacing: 0.8px;
  text-transform: uppercase;
}
body.public-area .footer-cta-btn--solid:hover { background: var(--mp-accent-light); }

body.public-area .footer-cta-btn--outline {
  border-color: var(--mp-border-hi);
  color: var(--brand-muted);
  font-family: var(--font-mono);
  font-size: 12px;
  letter-spacing: 0.8px;
  text-transform: uppercase;
}
body.public-area .footer-cta-btn--outline:hover {
  background: var(--mp-accent-glow);
  color: var(--brand-text);
}

body.public-area .footer-trust      { border-top-color: var(--brand-border); }
body.public-area .footer-trust-item { color: var(--brand-muted); }
body.public-area .footer-trust-sep  { background: var(--brand-border); }

/* ── Local Partner ── */
.cons-card { display: flex; flex-direction: column; }
.cons-logo-wrap { height: 60px; display: flex; align-items: center; }
.cons-logo { max-height: 60px; max-width: 180px; object-fit: contain; }
.cons-logo-placeholder { width: 60px; height: 60px; display: flex; align-items: center; justify-content: center; color: var(--brand-muted); background: var(--brand-surface-alt); }
.cons-contacts { font-size: 0.85rem; }
.cons-contact-row { display: flex; align-items: baseline; gap: 8px; margin-bottom: 6px; color: var(--brand-text); }
.cons-contact-row a { color: var(--mp-accent-light); text-decoration: none; }
.cons-contact-row a:hover { text-decoration: underline; }
.cons-contact-icon { width: 14px; text-align: center; color: var(--brand-muted); font-size: 0.8rem; flex-shrink: 0; }
.cons-badge { font-family: var(--font-mono); font-size: 0.7rem; letter-spacing: 0.5px; text-transform: uppercase; color: var(--mp-accent-light); border: 1px solid var(--brand-border); padding: 3px 10px; }
.cons-hero-sub { max-width: 640px; }
.cons-benefit-icon { color: var(--mp-accent-light); }
.cons-filter-select { max-width: 300px; }
.cons-city-label { color: var(--mp-accent-light); }

