
* { box-sizing: border-box; margin: 0; padding: 0; }
.lp { font-family: var(--font-sans); background: #fff; }

.hero { padding: 64px 32px 48px; text-align: center; border-bottom: 0.5px solid #eee; }
.badge { display: inline-flex; align-items: center; gap: 8px; font-size: 15px; font-weight: 600; background: #e8f4ff; color: #0055cc; border-radius: 99px; padding: 8px 16px; margin-bottom: 28px; }
.hero h1 {
    font-size: 58px;
    font-weight: 700;
    line-height: 1.18;
    color: var(--color-text-primary);
    max-width: 1000px;
    margin: 20px auto;
}
.hero p { font-size: 21px; color: var(--color-text-secondary); max-width: 650px; margin: 0 auto 34px; line-height: 1.7; }
.btn-fill { display: inline-flex; align-items: center; gap: 9px; background: #0088FE; color: #fff; border: none; padding: 15px 30px; border-radius: 6px; font-size: 18px; font-weight: 600; cursor: pointer; text-decoration: none; }
.btn-outline { display: inline-flex; align-items: center; gap: 9px; background: transparent; color: #0088FE; border: 1px solid #0088FE; padding: 15px 30px; border-radius: 6px; font-size: 18px; font-weight: 600; cursor: pointer; text-decoration: none; margin-left: 12px; }
.stats { display: flex; justify-content: center; gap: 48px; margin-top: 40px; padding-top: 32px; border-top: 0.5px solid #eee; }
.stat-num { font-size: 30px; font-weight: 700; color: #0088FE; }
.stat-label { font-size: 16px; color: var(--color-text-secondary); margin-top: 6px; }

.section { padding: 52px 32px; }
.sec-head { text-align: center; margin-bottom: 36px; }
.sec-head h2 { font-size: 34px; font-weight: 700; color: var(--color-text-primary); margin-bottom: 12px; }
.sec-head p { font-size: 19px; color: var(--color-text-secondary); max-width: 720px; margin: 0 auto; line-height: 1.7; }

.bg-tinted { background: #f5faff; }

.grid3 { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 18px; max-width: 980px; margin: 0 auto; }
.grid2 { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 18px; max-width: 980px; margin: 0 auto; }
.grid4 { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 18px; max-width: 1050px; margin: 0 auto; }

.card { background: #ffffff; border: 1px solid #eee; border-radius: 6px; padding: 28px; }
.card-accent { border-left: 3px solid #0088FE; border-radius: 0 3px 5px 0; }
.card-icon { font-size: 30px; color: #0088FE; margin-bottom: 14px; }
.card h4 { font-size: 22px; font-weight: 700; color: var(--color-text-primary); margin-bottom: 10px; }
.card p { font-size: 17px; color: var(--color-text-secondary); line-height: 1.7; }

.step-num { width: 38px; height: 38px; border-radius: 50%; background: #e8f4ff; color: #0055cc; font-size: 18px; font-weight: 700; display: flex; align-items: center; justify-content: center; margin: 0 auto 14px; }
.step-card { background: #fff; border: 1px solid #eee; border-radius: 8px; padding: 28px 18px; text-align: center; }
.step-card i { font-size: 32px; color: var(--color-text-secondary); margin-bottom: 12px; display: block; }
.step-card h4 { font-size: 18px; font-weight: 700; color: var(--color-text-primary); line-height: 1.45; }

.cta-wrap { background: #0088FE; border-radius: 5px; padding: 48px 32px; text-align: center; margin: 0 32px 32px; max-width: 1050px;
    margin: auto;}
.cta-wrap h2 { font-size: 34px; font-weight: 700; color: #fff; margin-bottom: 14px; }
.cta-wrap p { font-size: 19px; color: rgba(255,255,255,0.88); margin-bottom: 30px; max-width: 620px; margin-left: auto; margin-right: auto; line-height: 1.7; }
.btn-white { display: inline-flex; align-items: center; gap: 9px; background: #fff; color: #0055cc; border: none; padding: 15px 34px; border-radius: 6px; font-size: 18px; font-weight: 700; cursor: pointer; text-decoration: none; }

.footer { padding: 24px 32px; border-top: 0.5px solid #eee; display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 12px; }
.footer-logo { width: 30px; height: 30px; border-radius: 8px; background: #0088FE; display: flex; align-items: center; justify-content: center; }
.footer-logo i { color: #fff; font-size: 15px; }
.footer-brand { display: flex; align-items: center; gap: 9px; }
.footer-name { font-size: 18px; font-weight: 700; color: var(--color-text-primary); }
.footer-links { display: flex; gap: 20px; }
.footer-links a { font-size: 16px; color: var(--color-text-secondary); text-decoration: none; }
.footer-copy { font-size: 15px; color: var(--color-text-secondary); }

@media(max-width:580px){
  .grid3,.grid2,.grid4{grid-template-columns:1fr;}
  .hero h1{font-size:34px;}
  .hero p{font-size:18px;}
  .sec-head h2,.cta-wrap h2{font-size:28px;}
  .sec-head p,.cta-wrap p{font-size:17px;}
  .card h4{font-size:20px;}
  .card p{font-size:16px;}
  .btn-fill,.btn-outline,.btn-white{font-size:16px; padding:13px 22px;margin: 10px;}
  .stats{gap:24px;}
  .cta-wrap{margin:0 16px 24px;}
  .footer{flex-direction:column;}
}