/* marketing.css - Public marketing site (FrontSite).
   Brand colors come from an inline :root block set by marketing_header.php. */
:root { --brand-primary:#b23b1e; --brand-accent:#e8a33d; --mkt-dark:#1a202c; --mkt-muted:#4a5568; }

.marketing-page { margin:0; color:var(--mkt-dark); background:#fff;
    font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif; line-height:1.6; }
.mkt-container { max-width:1080px; margin:0 auto; padding:0 1.25rem; }

/* Header */
.mkt-header { border-bottom:1px solid #eee; background:#fff; position:sticky; top:0; z-index:50; }
.mkt-header-inner { max-width:1080px; margin:0 auto; display:flex; align-items:center; justify-content:space-between; padding:0.85rem 1.25rem; gap:1rem; }
.mkt-logo { font-weight:800; font-size:1.15rem; color:var(--brand-primary); text-decoration:none; }
.mkt-logo img { max-height:40px; display:block; }
.mkt-nav { display:flex; align-items:center; gap:1.25rem; }
.mkt-nav a { color:var(--mkt-muted); text-decoration:none; font-weight:600; font-size:0.95rem; }
.mkt-nav a:hover { color:var(--brand-primary); }

/* Buttons */
.mkt-btn { display:inline-block; padding:0.7rem 1.3rem; border-radius:6px; font-weight:700; text-decoration:none; cursor:pointer; border:none; }
.mkt-btn-cta { background:var(--brand-primary); color:#fff !important; }
.mkt-btn-cta:hover { filter:brightness(0.92); }
.mkt-btn-outline { background:transparent; color:var(--brand-primary) !important; border:2px solid var(--brand-primary); }

/* Hero */
.mkt-hero { background:linear-gradient(135deg,var(--brand-primary),#7a2713); color:#fff; padding:4rem 0; }
.mkt-hero h1 { font-size:2.5rem; margin:0 0 1rem; line-height:1.15; }
.mkt-hero p.lead { font-size:1.2rem; opacity:0.95; max-width:640px; margin:0 0 1.75rem; }
.mkt-cta-row { display:flex; gap:1rem; flex-wrap:wrap; }
.mkt-hero .mkt-btn-cta { background:var(--brand-accent); color:#1a202c !important; font-size:1.05rem; padding:0.85rem 1.75rem; }
.mkt-hero .mkt-btn-outline { border-color:#fff; color:#fff !important; }

/* Sections */
.mkt-section { padding:3.25rem 0; }
.mkt-section.alt { background:#faf7f4; }
.mkt-section h2 { font-size:1.9rem; margin:0 0 1rem; text-align:center; }
.mkt-lead { text-align:center; color:var(--mkt-muted); max-width:680px; margin:0 auto 1.5rem; font-size:1.1rem; }
.mkt-intro { max-width:680px; margin:0 auto; color:var(--mkt-muted); }
.mkt-steps { display:grid; grid-template-columns:repeat(3,1fr); gap:1.5rem; }
.mkt-step { background:#fff; border:1px solid #eee; border-radius:10px; padding:1.5rem; text-align:center; }
.mkt-step-num { display:inline-flex; width:44px; height:44px; align-items:center; justify-content:center; border-radius:50%; background:var(--brand-primary); color:#fff; font-weight:800; margin-bottom:0.75rem; }
.mkt-step h3 { margin:0 0 0.5rem; font-size:1.15rem; }
.mkt-step p { margin:0; color:var(--mkt-muted); font-size:0.95rem; }

/* Login section + forms */
.mkt-login { max-width:420px; margin:0 auto; background:#fff; border:1px solid #e2e8f0; border-radius:10px; padding:2rem; box-shadow:0 2px 8px rgba(0,0,0,0.05); }
.mkt-login h2 { text-align:center; margin:0 0 1.25rem; font-size:1.5rem; }
.mkt-form .form-group { margin-bottom:1rem; }

/* Content pages (/info) */
.mkt-content { padding:3rem 1.25rem; max-width:780px; margin:0 auto; }
.mkt-content h1 { font-size:2.1rem; margin:0 0 1.25rem; }
.mkt-content h2 { font-size:1.35rem; margin:2rem 0 0.6rem; }
.mkt-content p, .mkt-content li { color:var(--mkt-muted); }
.mkt-faq-q { font-weight:700; color:var(--mkt-dark); margin:1.5rem 0 0.35rem; }

/* Footer */
.mkt-footer { background:#1a202c; color:#cbd5e0; padding:2.5rem 0; margin-top:2rem; font-size:0.9rem; }
.mkt-footer-links { display:flex; gap:1.5rem; flex-wrap:wrap; justify-content:center; margin-bottom:1.25rem; }
.mkt-footer-links a { color:#e2e8f0; text-decoration:none; }
.mkt-footer-links a:hover { color:#fff; text-decoration:underline; }
.mkt-disclaimer { max-width:820px; margin:0 auto 1rem; text-align:center; font-size:0.82rem; color:#a0aec0; }
.mkt-disclaimer p { margin:0.3rem 0; }
.mkt-copyright { text-align:center; margin:0; color:#718096; }

@media (max-width:768px){
    .mkt-nav { gap:0.85rem; flex-wrap:wrap; justify-content:flex-end; }
    .mkt-nav a:not(.mkt-btn) { font-size:0.85rem; }
    .mkt-hero h1 { font-size:1.9rem; }
    .mkt-steps { grid-template-columns:1fr; }
}
