/* ============ Home page styles ============ */
.site-main{background:#fff}

/* hero */
.hero{background:linear-gradient(160deg,#f5f3ff 0%,#eef2ff 55%,#ffffff 100%);padding:64px 0 0}
.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:40px;align-items:center;padding-bottom:56px}
@media(max-width:900px){.hero-grid{grid-template-columns:1fr;text-align:center}}
.hero-badge{display:inline-flex;align-items:center;gap:7px;background:#fff;border:1px solid #e2e8f0;color:#4338ca;padding:7px 14px;border-radius:99px;font-size:13px;font-weight:600;margin-bottom:18px;box-shadow:0 2px 10px rgba(15,23,42,.05)}
.hero-title{font-size:46px;line-height:1.12;font-weight:800;letter-spacing:-1px;color:#0f172a;margin-bottom:16px}
@media(max-width:640px){.hero-title{font-size:32px}}
.hero-subtitle{font-size:17.5px;color:#475569;max-width:520px;margin-bottom:26px}
@media(max-width:900px){.hero-subtitle{margin-left:auto;margin-right:auto}}
.hero-buttons{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:28px}
@media(max-width:900px){.hero-buttons{justify-content:center}}
.hero-trust{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
@media(max-width:900px){.hero-trust{justify-content:center}}
.avatars{display:flex}
.avatars span{width:34px;height:34px;border-radius:50%;background:linear-gradient(135deg,var(--primary),#8b5cf6);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:13px;border:2.5px solid #fff;margin-left:-8px}
.avatars span:first-child{margin-left:0}
.hero-trust p{font-size:13.5px;color:#64748b}
.hero-visual{display:flex;justify-content:center}
.qr-preview{background:#fff;border-radius:22px;padding:20px;width:min(340px,90%);border:1px solid #eef2f7}
.qr-preview-head{display:flex;gap:7px;margin-bottom:16px}
.qr-dot{width:10px;height:10px;border-radius:50%;background:#e2e8f0}
.qr-preview-head .qr-dot:first-child{background:#f87171}
.qr-preview-head .qr-dot:nth-child(2){background:#fbbf24}
.qr-preview-head .qr-dot:nth-child(3){background:#34d399}
.qr-card{background:#fff}
.qr-card svg{display:block;width:100%;height:auto}
.qr-preview-caption{padding:12px 4px 0;text-align:center}
.qr-preview-caption strong{display:block;font-size:14px}
.qr-preview-caption small{color:#94a3b8;font-size:12px}

/* strip */
.logos-strip{background:#0b1220;color:#475569;padding:16px 0;text-align:center}
.logos-inner{display:flex;justify-content:center;gap:22px;flex-wrap:wrap;font-size:13px;letter-spacing:1.5px;font-weight:700}
.logos-inner span{color:#94a3b8}

/* sections */
.section{padding:72px 0}
.section-head{text-align:center;max-width:680px;margin:0 auto 40px}
.section-head h2{font-size:32px;font-weight:800;letter-spacing:-.5px;margin-bottom:10px}
.section-head p{color:#64748b;font-size:16px}

.features-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
@media(max-width:900px){.features-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.features-grid{grid-template-columns:1fr}}
.feature-card{background:#fff;border:1.5px solid #eef2f7;border-radius:18px;padding:26px;transition:all .2s}
.feature-card:hover{box-shadow:0 18px 40px rgba(15,23,42,.08);border-color:#e2e8f0;transform:translateY(-3px)}
.feature-icon{width:50px;height:50px;border-radius:13px;background:color-mix(in srgb,var(--accent) 12%,#fff);color:var(--accent);display:flex;align-items:center;justify-content:center;margin-bottom:16px}
.feature-card h3{font-size:17px;margin-bottom:8px}
.feature-card p{color:#64748b;font-size:14.5px}

.stats-section{background:linear-gradient(135deg,var(--primary),#8b5cf6);padding:52px 0;color:#fff}
.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;text-align:center}
@media(max-width:760px){.stats-grid{grid-template-columns:repeat(2,1fr)}}
.stat-value{font-size:34px;font-weight:800}
.stat-label{opacity:.85;font-size:14px;margin-top:4px}

/* contact */
.contact-section{background:#f8fafc}
.contact-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:24px}
@media(max-width:880px){.contact-grid{grid-template-columns:1fr}}
.contact-cards{display:flex;flex-direction:column;gap:14px}
.contact-card{background:#fff;border-radius:16px;padding:18px 20px;display:flex;align-items:center;gap:14px}
.contact-ico{width:42px;height:42px;border-radius:11px;background:#eef2ff;color:var(--primary);display:flex;align-items:center;justify-content:center;font-size:18px;flex-shrink:0}
.contact-card h4{font-size:14px;color:#64748b;margin-bottom:1px}
.contact-card p{font-weight:600;font-size:14.5px}
.contact-form{background:#fff;border-radius:18px;padding:26px}
.contact-note{margin-top:10px;font-size:13px;color:#16a34a;text-align:center}

/* cta band */
.cta-band{background:#0b1220;color:#fff;padding:64px 0;text-align:center}
.cta-inner h2{font-size:30px;margin-bottom:10px}
.cta-inner p{color:#94a3b8;margin-bottom:24px}