/* =========================================================
   Prime 1099 Marketing Site — site.css
   ========================================================= */

/* ── Tokens ─────────────────────────────────────────────── */
:root {
    --p1099-navy:    #0d1b3e;
    --p1099-blue:    #1a56db;
    --p1099-accent:  #f59e0b;
    --p1099-light:   #f0f4ff;
    --radius-card:   1rem;
    --shadow-card:   0 4px 24px rgba(13, 27, 62, .10);
}

/* ── Global ──────────────────────────────────────────────── */
html { scroll-behavior: smooth; }

body {
    font-family: 'Segoe UI', system-ui, -apple-system, sans-serif;
    color: #1e2d4b;
}

.py-6 { padding-top: 5rem; padding-bottom: 5rem; }

/* ── Navbar ──────────────────────────────────────────────── */
.p1099-navbar {
    background: var(--p1099-navy);
    box-shadow: 0 2px 12px rgba(0,0,0,.25);
}

/* ── Hero ────────────────────────────────────────────────── */
.p1099-hero {
    background: linear-gradient(135deg, var(--p1099-navy) 0%, #1a3a7a 60%, #1a56db 100%);
    padding-top: 5rem;
}

.hero-accent { color: var(--p1099-accent); }

.hero-trust-bar {
    background: rgba(255,255,255,.08);
    border-top: 1px solid rgba(255,255,255,.12);
}

.trust-stat {
    display: flex;
    flex-direction: column;
    align-items: center;
}
.trust-num  { font-size: 1.6rem; font-weight: 700; color: #fff; }
.trust-label { font-size: .78rem; color: rgba(255,255,255,.6); letter-spacing: .02em; }

/* ── Hero mock card ──────────────────────────────────────── */
.hero-card-wrap { perspective: 1000px; }

.hero-mock-card {
    background: rgba(255,255,255,.07);
    border: 1px solid rgba(255,255,255,.15);
    border-radius: var(--radius-card);
    padding: 1.75rem 2rem;
    backdrop-filter: blur(8px);
    transform: rotateY(-6deg) rotateX(4deg);
    transition: transform .4s ease;
    max-width: 380px;
    margin: 0 auto;
}
.hero-mock-card:hover { transform: rotateY(0deg) rotateX(0deg); }

.hmc-header { border-bottom: 1px solid rgba(255,255,255,.15); padding-bottom: .75rem; }

.hmc-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: .45rem 0;
    border-bottom: 1px solid rgba(255,255,255,.07);
}
.hmc-label { font-size: .8rem; color: rgba(255,255,255,.5); }
.hmc-val   { font-size: .9rem; color: #fff; font-weight: 600; }

/* ── Form chips ──────────────────────────────────────────── */
.form-chip {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 1.1rem .5rem .9rem;
    background: #fff;
    border: 1px solid #e0e7ff;
    border-radius: var(--radius-card);
    transition: transform .2s, box-shadow .2s;
    cursor: default;
}
.form-chip:hover { transform: translateY(-4px); box-shadow: var(--shadow-card); }
.form-chip-icon  { font-size: 1.5rem; color: var(--p1099-blue); margin-bottom: .35rem; }
.form-chip-type  { font-weight: 700; font-size: .95rem; }
.form-chip-desc  { font-size: .68rem; color: #6b7280; text-align: center; line-height: 1.3; margin-top: .2rem; }

/* ── Feature cards ───────────────────────────────────────── */
.feature-card {
    background: #fff;
    border: 1px solid #e8edf7;
    border-radius: var(--radius-card);
    padding: 1.75rem;
    transition: transform .2s, box-shadow .2s;
}
.feature-card:hover { transform: translateY(-4px); box-shadow: var(--shadow-card); }

.feature-icon {
    width: 52px; height: 52px;
    border-radius: .75rem;
    display: flex; align-items: center; justify-content: center;
    font-size: 1.4rem;
}

/* soft-color helpers */
.bg-primary-soft  { background: #dbeafe; }
.bg-success-soft  { background: #dcfce7; }
.bg-warning-soft  { background: #fef3c7; }
.bg-danger-soft   { background: #fee2e2; }
.bg-info-soft     { background: #e0f2fe; }
.bg-purple-soft   { background: #ede9fe; }
.bg-teal-soft     { background: #ccfbf1; }
.bg-orange-soft   { background: #ffedd5; }

.text-purple { color: #7c3aed; }
.text-teal   { color: #0d9488; }
.text-orange { color: #ea580c; }

/* ── Steps ───────────────────────────────────────────────── */
.step-circle {
    width: 72px; height: 72px;
    border-radius: 50%;
    background: var(--p1099-blue);
    color: #fff;
    font-size: 1.8rem;
    font-weight: 700;
    display: flex; align-items: center; justify-content: center;
    margin: 0 auto;
    box-shadow: 0 8px 20px rgba(26,86,219,.3);
}

/* ── Testimonials ────────────────────────────────────────── */
.testimonial-card {
    background: #fff;
    border: 1px solid #e8edf7;
    border-radius: var(--radius-card);
    padding: 1.75rem;
    box-shadow: var(--shadow-card);
}
.stars { color: #f59e0b; font-size: 1.1rem; letter-spacing: .1rem; }

/* ── Pricing ─────────────────────────────────────────────── */
.pricing-card {
    background: #fff;
    border: 2px solid #e8edf7;
    border-radius: var(--radius-card);
    padding: 2rem;
    display: flex;
    flex-direction: column;
    position: relative;
    transition: box-shadow .2s;
}
.pricing-card:hover { box-shadow: var(--shadow-card); }

.pricing-featured {
    border-color: var(--p1099-accent);
    background: var(--p1099-navy);
    color: #fff;
}
.pricing-featured .text-muted { color: rgba(255,255,255,.6) !important; }

.pricing-badge {
    position: absolute;
    top: -14px; left: 50%;
    transform: translateX(-50%);
    background: var(--p1099-accent);
    color: #000;
    font-size: .75rem;
    font-weight: 700;
    padding: .25rem .9rem;
    border-radius: 999px;
    white-space: nowrap;
}

.pricing-header { margin-bottom: 1.5rem; }

.pricing-price { display: flex; align-items: baseline; gap: .1rem; margin: .5rem 0; }
.price-dollar  { font-size: 1.5rem; font-weight: 700; margin-top: .3rem; }
.price-amount  { font-size: 3rem; font-weight: 800; line-height: 1; }
.price-period  { font-size: .9rem; color: #6b7280; margin-left: .25rem; }
.pricing-featured .price-period { color: rgba(255,255,255,.6); }

.pricing-features li { padding: .45rem 0; font-size: .9rem; }
.pricing-features { flex: 1; margin-bottom: 1.5rem; }

/* ── FAQ ─────────────────────────────────────────────────── */
.accordion-button:not(.collapsed) {
    background: var(--p1099-light);
    color: var(--p1099-blue);
    box-shadow: none;
}
.accordion-button:focus { box-shadow: 0 0 0 .2rem rgba(26,86,219,.2); }

/* ── CTA section ─────────────────────────────────────────── */
.p1099-cta-section {
    background: linear-gradient(135deg, var(--p1099-navy) 0%, #1a56db 100%);
}

/* ── Footer ──────────────────────────────────────────────── */
.p1099-footer {
    background: #080f20;
}
.footer-link {
    color: rgba(255,255,255,.55);
    text-decoration: none;
    display: block;
    margin-bottom: .4rem;
    transition: color .15s;
}
.footer-link:hover { color: #fff; }

/* ── Responsive tweaks ───────────────────────────────────── */
@media (max-width: 768px) {
    .hero-mock-card { transform: none; }
    .py-6 { padding-top: 3rem; padding-bottom: 3rem; }
    .trust-num { font-size: 1.3rem; }
}
