* LoansForVA.com Premium Finance Authority Theme */

* {
margin: 0;
padding: 0;
box-sizing: border-box;
}

:root {
--navy: #0b1f3a;
--blue: #1d4ed8;
--light-blue: #eaf2ff;
--soft-blue: #f5f9ff;
--gold: #f5b942;
--green: #10b981;
--gray: #64748b;
--dark: #111827;
--white: #ffffff;
--border: #dbe4f0;
--shadow: 0 12px 30px rgba(15, 23, 42, 0.08);
}

body {
font-family: Arial, Helvetica, sans-serif;
background: var(--soft-blue);
color: var(--dark);
line-height: 1.6;
}

a {
text-decoration: none;
color: inherit;
}

.container {
width: 92%;
max-width: 1180px;
margin: auto;
}

.top-bar {
background: var(--navy);
color: var(--white);
font-size: 14px;
padding: 9px 0;
text-align: center;
}

.header {
background: var(--white);
border-bottom: 1px solid var(--border);
position: sticky;
top: 0;
z-index: 999;
}

.nav {
display: flex;
justify-content: space-between;
align-items: center;
padding: 18px 0;
}

.logo {
font-size: 26px;
font-weight: 800;
color: var(--navy);
}

.logo span {
color: var(--blue);
}

.nav-links {
display: flex;
gap: 26px;
align-items: center;
}

.nav-links a {
font-weight: 700;
color: var(--navy);
font-size: 15px;
}

.btn {
display: inline-block;
padding: 14px 22px;
border-radius: 10px;
font-weight: 800;
transition: 0.2s ease;
}

.btn-primary {
background: var(--blue);
color: var(--white);
}

.btn-primary:hover {
background: #173ea5;
}

.btn-secondary {
background: var(--gold);
color: var(--navy);
}

.btn-outline {
border: 2px solid var(--blue);
color: var(--blue);
background: var(--white);
}

.hero {
background: linear-gradient(135deg, #0b1f3a 0%, #123d73 100%);
color: var(--white);
padding: 80px 0;
}

.hero-grid {
display: grid;
grid-template-columns: 1.15fr 0.85fr;
gap: 42px;
align-items: center;
}

.badge {
display: inline-block;
background: rgba(255,255,255,0.13);
border: 1px solid rgba(255,255,255,0.22);
color: var(--white);
padding: 8px 14px;
border-radius: 999px;
font-size: 14px;
font-weight: 700;
margin-bottom: 18px;
}

.hero h1 {
font-size: 52px;
line-height: 1.08;
margin-bottom: 20px;
}

.hero p {
font-size: 20px;
color: #dbeafe;
margin-bottom: 28px;
}

.hero-buttons {
display: flex;
gap: 14px;
flex-wrap: wrap;
}

.hero-card {
background: var(--white);
color: var(--dark);
border-radius: 18px;
padding: 28px;
box-shadow: var(--shadow);
}

.hero-card h3 {
color: var(--navy);
font-size: 24px;
margin-bottom: 14px;
}

.form-group {
margin-bottom: 14px;
}

.form-group label {
display: block;
font-weight: 700;
margin-bottom: 6px;
color: var(--navy);
}

.form-group input,
.form-group select,
.form-group textarea {
width: 100%;
padding: 14px;
border: 1px solid var(--border);
border-radius: 9px;
font-size: 16px;
}

.section {
padding: 70px 0;
}

.section-white {
background: var(--white);
}

.section-title {
text-align: center;
max-width: 780px;
margin: 0 auto 42px;
}

.section-title h2 {
font-size: 38px;
color: var(--navy);
margin-bottom: 12px;
}

.section-title p {
color: var(--gray);
font-size: 18px;
}

.trust-row {
display: grid;
grid-template-columns: repeat(4, 1fr);
gap: 18px;
}

.trust-card {
background: var(--white);
border: 1px solid var(--border);
border-radius: 14px;
padding: 24px;
text-align: center;
box-shadow: var(--shadow);
}

.trust-card strong {
display: block;
font-size: 30px;
color: var(--blue);
}

.trust-card span {
color: var(--gray);
font-weight: 700;
}

.card-grid {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 22px;
}

.card {
background: var(--white);
border: 1px solid var(--border);
border-radius: 16px;
padding: 28px;
box-shadow: var(--shadow);
}

.card h3 {
color: var(--navy);
font-size: 22px;
margin-bottom: 10px;
}

.card p {
color: var(--gray);
margin-bottom: 16px;
}

.icon {
width: 48px;
height: 48px;
background: var(--light-blue);
border-radius: 12px;
display: flex;
align-items: center;
justify-content: center;
color: var(--blue);
font-weight: 900;
margin-bottom: 16px;
}

.comparison-box {
background: var(--white);
border: 1px solid var(--border);
border-radius: 18px;
box-shadow: var(--shadow);
overflow: hidden;
}

.comparison-header {
background: var(--navy);
color: var(--white);
padding: 20px 24px;
}

.comparison-row {
display: grid;
grid-template-columns: 1.2fr 1fr 1fr 1fr auto;
gap: 16px;
padding: 22px 24px;
border-bottom: 1px solid var(--border);
align-items: center;
}

.comparison-row:last-child {
border-bottom: none;
}

.lender-name {
font-weight: 900;
color: var(--navy);
}

.rating {
color: var(--gold);
font-weight: 900;
}

.table-label {
display: none;
color: var(--gray);
font-size: 13px;
font-weight: 700;
}

.cta-strip {
background: linear-gradient(135deg, var(--blue), #123d73);
color: var(--white);
padding: 45px;
border-radius: 18px;
text-align: center;
box-shadow: var(--shadow);
}

.cta-strip h2 {
font-size: 34px;
margin-bottom: 12px;
}

.cta-strip p {
font-size: 18px;
color: #dbeafe;
margin-bottom: 22px;
}

.calculator-box {
background: var(--white);
border: 1px solid var(--border);
border-radius: 18px;
padding: 30px;
box-shadow: var(--shadow);
}

.calc-result {
background: var(--light-blue);
border-radius: 12px;
padding: 20px;
margin-top: 18px;
font-weight: 800;
color: var(--navy);
}

.article-layout {
display: grid;
grid-template-columns: 0.75fr 2fr;
gap: 34px;
align-items: start;
}

.sidebar {
background: var(--white);
border: 1px solid var(--border);
border-radius: 16px;
padding: 22px;
box-shadow: var(--shadow);
position: sticky;
top: 100px;
}

.sidebar h3 {
color: var(--navy);
margin-bottom: 14px;
}

.sidebar a {
display: block;
padding: 10px 0;
border-bottom: 1px solid var(--border);
color: var(--blue);
font-weight: 700;
}

.article {
background: var(--white);
border: 1px solid var(--border);
border-radius: 18px;
padding: 38px;
box-shadow: var(--shadow);
}

.article h1 {
font-size: 42px;
color: var(--navy);
margin-bottom: 16px;
}

.article h2 {
font-size: 30px;
color: var(--navy);
margin: 32px 0 12px;
}

.article h3 {
color: var(--navy);
margin: 24px 0 10px;
}

.article p {
margin-bottom: 16px;
color: #334155;
}

.article ul,
.article ol {
margin: 16px 0 16px 24px;
}

.article li {
margin-bottom: 8px;
}

.faq {
max-width: 900px;
margin: auto;
}

.faq-item {
background: var(--white);
border: 1px solid var(--border);
border-radius: 14px;
margin-bottom: 14px;
padding: 22px;
box-shadow: var(--shadow);
}

.faq-item h3 {
color: var(--navy);
margin-bottom: 8px;
}

.footer {
background: var(--navy);
color: var(--white);
padding: 55px 0 25px;
}

.footer-grid {
display: grid;
grid-template-columns: 1.3fr repeat(3, 1fr);
gap: 30px;
}

.footer h3,
.footer h4 {
margin-bottom: 14px;
}

.footer p,
.footer a {
color: #cbd5e1;
display: block;
margin-bottom: 9px;
}

.footer-bottom {
border-top: 1px solid rgba(255,255,255,0.14);
margin-top: 30px;
padding-top: 18px;
text-align: center;
color: #cbd5e1;
font-size: 14px;
}

.sticky-cta {
display: none;
position: fixed;
bottom: 0;
left: 0;
right: 0;
background: var(--white);
border-top: 1px solid var(--border);
padding: 12px;
z-index: 9999;
box-shadow: 0 -8px 24px rgba(15, 23, 42, 0.12);
}

.sticky-cta a {
display: block;
text-align: center;
background: var(--blue);
color: var(--white);
padding: 14px;
border-radius: 10px;
font-weight: 900;
}

.disclaimer {
background: #fff7ed;
border: 1px solid #fed7aa;
color: #7c2d12;
padding: 16px;
border-radius: 12px;
font-size: 14px;
margin: 24px 0;
}

@media (max-width: 960px) {
.hero-grid,
.article-layout {
grid-template-columns: 1fr;
}

.hero h1 {
font-size: 42px;
}

.card-grid,
.trust-row,
.footer-grid {
grid-template-columns: 1fr 1fr;
}

.comparison-row {
grid-template-columns: 1fr;
}

.table-label {
display: block;
}

.nav-links {
display: none;
}

.sticky-cta {
display: block;
}

body {
padding-bottom: 74px;
}
}

@media (max-width: 620px) {
.hero {
padding: 55px 0;
}

.hero h1 {
font-size: 34px;
}

.hero p {
font-size: 17px;
}

.section {
padding: 50px 0;
}

.section-title h2 {
font-size: 30px;
}

.card-grid,
.trust-row,
.footer-grid {
grid-template-columns: 1fr;
}

.cta-strip {
padding: 30px 20px;
}

.article {
padding: 26px;
}

.article h1 {
font-size: 32px;
}

.article h2 {
font-size: 25px;
}
}
