:root{--navy:#1E3A8A;--blue:#2563EB;--slate-800:#1F2937;--slate-200:#E5E7EB;--white:#fff;--font-ui:'Inter',system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;--font-serif:'Source Serif Pro','Source Serif 4',Georgia,serif}*{box-sizing:border-box}

body{margin:0;font-family:var(--font-ui);color:var(--slate-800);background:#fff}

.wrap{max-width:1100px;margin:0 auto;padding:24px}
nav{display:flex;justify-content:space-between;align-items:center}
nav .brand{font-weight:700;color:var(--navy);text-decoration:none}
nav .links a{margin-left:16px;color:var(--slate-800);text-decoration:none}

.hero{padding:40px 0}
.hero h1{font-size:44px;margin:10px 0}
.hero p{max-width:760px;font-size:18px;line-height:1.55}

.cta-row{display:flex;gap:12px;margin-top:18px;flex-wrap:wrap}.btn{display:inline-block;padding:12px 18px;border-radius:12px;border:1px solid var(--slate-200);text-decoration:none}

.btn-primary{background:var(--navy);color:#fff;border-color:var(--navy)}
.btn-ghost{background:#fff;color:var(--navy)}
.card{background:#fff;border:1px solid var(--slate-200);border-radius:16px;padding:20px;margin-top:24px}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px}
footer{border-top:1px solid var(--slate-200);margin-top:40px;padding:24px 0}
h2{color:var(--navy)}small.mono{font-family:ui-monospace,Menlo,Consolas,monospace}

@media print {
  nav, .cta-row, footer { display: none !important; }
  .wrap { max-width: none; padding: 0; }
  body { background: #fff; color: #000; }
  .onepager { margin: 0; padding: 0; }
}
	
	#receipts, #covenant { border-left:4px solid #2563EB; padding-left:14px; }
#receipts h2, #covenant h2 { margin-top:0; }

/* Accessible screen-reader-only text */
.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  white-space: nowrap;
  border: 0;
}

/* Shim for legacy Off-Ramp page layout */
.section { padding: 0; }
.container { max-width: 1100px; margin: 0 auto; padding: 24px; }
.h1 { font-size: 44px; margin: 10px 0; }
.footer { border-top:1px solid var(--slate-200); padding:24px 0; }
.grid-3 { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; }
@media (max-width: 900px){ .grid-3 { grid-template-columns:1fr; } }
