/* Patriot Black website v2 override — black-first system */
:root {
  --navy: #05070a;
  --navy-2: #05070a;
  --blue: #9aa7b6;
  --blue-2: #111820;
  --red: #c8a04a;
  --orange: #c8a04a;
  --black: #05070a;
  --ink: #f8fafc;
  --muted: #a6b0bf;
  --line: rgba(255,255,255,.1);
  --paper: #05070a;
  --white: #0b0f14;
  --soft: #111820;
  --green: #24d17e;
  --matrix: #24d17e;
  --cyan: #34d5ff;
  --shadow: 0 24px 70px rgba(0,0,0,.42);
}

html,
body,
button,
input,
select,
textarea {
  letter-spacing: 0;
}

body {
  background:
    radial-gradient(circle at 18% 0%, rgba(36,209,126,.09), transparent 30%),
    radial-gradient(circle at 88% 8%, rgba(52,213,255,.07), transparent 26%),
    linear-gradient(90deg, rgba(255,255,255,.035) 1px, transparent 1px),
    linear-gradient(180deg, rgba(255,255,255,.026) 1px, transparent 1px),
    var(--black);
  background-size: auto, auto, 56px 56px, 56px 56px, auto;
  color: var(--ink);
  font-family: Inter, "DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;
}

body::before {
  opacity: .62;
  background:
    linear-gradient(90deg, rgba(36,209,126,.045) 1px, transparent 1px),
    linear-gradient(180deg, rgba(52,213,255,.032) 1px, transparent 1px);
  background-size: 72px 72px, 72px 72px;
  mask-image: linear-gradient(to bottom, #000, transparent 86%);
}

body::after {
  display: none;
}

.utility-bar,
.footer {
  background: var(--navy-2);
}

.site-nav {
  background: rgba(5,7,10,.88);
  border-bottom: 1px solid var(--line);
  box-shadow: 0 10px 34px rgba(0,0,0,.34);
}

.brand {
  color: var(--ink);
  letter-spacing: 0;
}

.brand-mark {
  border-radius: 12px;
  background: url("/assets/logo-mark.png") center / cover no-repeat, linear-gradient(135deg, var(--black), var(--soft));
  color: transparent;
}

.brand-mark::after {
  display: none;
}

.nav-links a,
.button,
.submit,
.filter-btn,
.copy-btn {
  letter-spacing: 0;
}

.nav-links .hot,
.button.hot,
.submit {
  background: var(--red);
  border-color: var(--red);
  color: var(--black);
  box-shadow: 0 12px 28px rgba(200,160,74,.24);
}

.button {
  min-height: 46px;
  border-radius: 10px;
  background: var(--navy);
  border-color: var(--navy);
}

.button.secondary,
.button.dark {
  background: rgba(255,255,255,.045);
  color: var(--ink);
  border-color: var(--line);
}

.hero-copy,
.profile-card,
.white-card,
.offer-card,
.case-card,
.form-panel,
.proof-row div,
.flow div,
.project-card,
.notice {
  border-color: var(--line);
  border-radius: 14px;
  box-shadow: var(--shadow);
}

.hero-copy::before,
.offer-card::after,
.case-card::after {
  display: none;
}

.eyebrow,
.crumb,
label,
.case-card small,
.offer-card small,
.project-meta small {
  color: var(--red);
  letter-spacing: 0;
}

h1,
.section-head h2,
.case-card h3,
.offer-card h3,
.project-meta h3,
.profile-label b {
  color: var(--ink);
  letter-spacing: 0;
}

h1 {
  font-size: 68px;
  line-height: 1.02;
}

.lede {
  color: var(--muted);
}

.authority-callout,
.notice {
  border-left-color: var(--red);
  background: rgba(200,160,74,.1);
}

.offer-card::before {
  height: 5px;
  background: linear-gradient(90deg, var(--navy), var(--red));
}

.offer-price,
.proof-row b {
  color: var(--navy);
}

.offer-sub {
  color: var(--blue-2);
}

.blue-band {
  background: linear-gradient(135deg, #05070a, #0b0f14);
}

.blue-band .case-card {
  background: rgba(255,255,255,.09);
  border-color: rgba(255,255,255,.18);
  box-shadow: none;
}

.profile-media {
  background: linear-gradient(135deg, #05070a, #111820);
}

input,
textarea,
select {
  background: rgba(255,255,255,.045);
  border-color: rgba(255,255,255,.16);
  color: var(--ink);
  border-radius: 10px;
  font-family: Inter, "DM Sans", system-ui, sans-serif;
}

@media (max-width: 980px) {
  h1 {
    font-size: 42px;
  }
}

/* Legacy inline-page normalization. Loaded after page-level styles. */
.bg-grid {
  opacity: .55;
  background-image:
    linear-gradient(rgba(15,27,45,.05) 1px, transparent 1px),
    linear-gradient(90deg, rgba(15,27,45,.04) 1px, transparent 1px);
  background-size: 72px 72px;
}

.orb {
  display: none;
}

nav,
.header {
  background: rgba(255,255,255,.94);
  border-bottom-color: var(--line);
  box-shadow: 0 10px 28px rgba(15,27,45,.07);
}

nav .brand,
.header .logo,
.logo {
  color: var(--navy);
  font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;
  letter-spacing: 0;
}

.badge,
.hero-tag,
.eyebrow {
  border-color: rgba(200,160,74,.45);
  background: #fff8e6;
  color: #765b18;
  letter-spacing: 0;
}

.navlink,
.cta,
.btn,
.primary,
button[type="submit"] {
  border-radius: 10px;
  background: var(--navy);
  border-color: var(--navy);
  color: #fff;
  font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;
  letter-spacing: 0;
}

.navlink:hover,
.cta:hover,
.btn:hover,
.primary:hover,
button[type="submit"]:hover {
  background: var(--blue-2);
}

.card,
.tile,
.inputs-panel,
.results-card,
.benchmark,
.method-card,
.cta-card,
.form-card,
.panel,
.module {
  border-color: var(--line);
  border-radius: 14px;
  background: rgba(255,255,255,.96);
  color: var(--ink);
  box-shadow: var(--shadow);
}

.tile p,
.lede,
.hint,
.small,
.muted,
.result-note,
.total-sub,
.method-card p,
.cta-card p,
.cta-note {
  color: var(--muted);
}

.price,
.total-amount,
.total-monthly,
.leak-amount,
.hl,
.method-card .num {
  color: var(--navy);
  background: none;
  -webkit-text-fill-color: currentColor;
}

.method-card h3,
.cta-card h2 {
  color: var(--navy);
}

.cta-card {
  border-color: rgba(200,160,74,.55);
}

.cta-card::before {
  display: none;
}

.cta-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 0 28px;
  border-radius: 10px;
  background: var(--red);
  color: var(--black);
  box-shadow: 0 12px 28px rgba(200,160,74,.22);
  font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;
}

.leak-fill,
.results-card::before,
.inputs-panel h2::before,
.results-card h2::before {
  background: var(--red);
}

input[type="number"],
input[type="text"],
input[type="email"],
textarea,
select {
  background: #fff;
  border-color: #cbd5e1;
  color: var(--ink);
}

input[type="number"]:focus,
input[type="text"]:focus,
input[type="email"]:focus,
textarea:focus,
select:focus {
  border-color: var(--red);
  box-shadow: 0 0 0 3px rgba(200,160,74,.18);
}

/* Black-first final pass. This file loads after legacy page CSS. */
nav,
.header,
.site-nav {
  background: rgba(5,7,10,.88);
  border-bottom-color: var(--line);
  color: var(--ink);
  backdrop-filter: blur(16px);
}

.nav-links a,
.navlink,
.utility-bar,
.footer {
  color: var(--ink);
}

.hero-copy,
.profile-card,
.white-card,
.offer-card,
.case-card,
.form-panel,
.proof-row div,
.flow div,
.project-card,
.notice,
.card,
.tile,
.inputs-panel,
.results-card,
.benchmark,
.method-card,
.cta-card,
.form-card,
.panel,
.module,
.profile-facts {
  background: rgba(11,15,20,.9);
  border-color: var(--line);
  color: var(--ink);
  box-shadow: var(--shadow);
}

.badge,
.hero-tag,
.eyebrow {
  background: rgba(200,160,74,.12);
  color: #f5d37a;
}

.button,
.navlink,
.cta,
.btn,
.primary,
button[type="submit"] {
  background: linear-gradient(135deg, #07140e, #101820);
  border-color: rgba(36,209,126,.42);
  color: var(--ink);
}

.nav-links .hot,
.button.hot,
.submit,
.cta-btn {
  background: var(--red);
  border-color: var(--red);
  color: var(--black);
}

.price,
.total-amount,
.total-monthly,
.leak-amount,
.hl,
.method-card .num,
.offer-price,
.proof-row b,
.fact strong,
.method-card h3,
.cta-card h2 {
  color: var(--matrix);
}

input[type="number"],
input[type="text"],
input[type="email"],
textarea,
select {
  background: rgba(255,255,255,.045);
  border-color: rgba(255,255,255,.16);
  color: var(--ink);
}

.bg-grid {
  opacity: .62;
  background-image:
    linear-gradient(rgba(36,209,126,.045) 1px, transparent 1px),
    linear-gradient(90deg, rgba(52,213,255,.032) 1px, transparent 1px);
  background-size: 72px 72px;
}
