/* Landing page */
.hero{position:relative;padding:3.6rem 0 1rem;overflow:hidden}
.hero::before{content:'';position:absolute;right:-18rem;top:-14rem;width:70rem;height:70rem;border-radius:50%;background:radial-gradient(circle,rgba(34,197,94,.22),transparent 65%);pointer-events:none}
.hero-grid{position:relative;display:grid;grid-template-columns:1.05fr .95fr;gap:4rem;align-items:center}
.hero .kicker{display:inline-flex;align-items:center;gap:.6rem;padding:.6rem 1.3rem;border-radius:2rem;background:var(--green-soft);color:var(--taxi);font-weight:700;font-size:1.3rem}
.hero .kicker .mi{font-size:1.8rem}
.hero h1{margin-top:1.8rem;font-weight:900;font-size:6rem;line-height:6.4rem;letter-spacing:-.22rem}
.hero h1 .l1{display:block;color:var(--text-hi)}
.hero h1 .l2{display:block;background:var(--gradient);-webkit-background-clip:text;background-clip:text;color:transparent}
.hero p{margin-top:2rem;max-width:52rem;font-size:1.9rem;line-height:2.8rem;color:var(--text-mid)}
.hero-cta{display:flex;flex-wrap:wrap;gap:1.2rem;margin-top:3rem}
.hero-points{display:flex;flex-wrap:wrap;gap:1rem 2.4rem;margin-top:2.6rem}
.hero-points li{display:flex;align-items:center;gap:.7rem;font-weight:500;font-size:1.4rem;color:var(--text-mid)}
.hero-points .mi{font-size:2rem;color:var(--mint)}
.hero-art{position:relative}
.hero-photo{border-radius:4rem;overflow:hidden;border:.6rem solid #fff;box-shadow:0 3rem 6rem -2.4rem rgba(22,80,45,.55);transform:rotate(1.6deg)}
.hero-photo img{width:100%;height:auto;aspect-ratio:16/12;object-fit:cover}
.float{position:absolute;display:flex;align-items:center;gap:1.1rem;padding:1.3rem 1.8rem;border-radius:2rem;background:rgba(255,255,255,.95);border:1px solid var(--outline);box-shadow:0 1.4rem 3rem -1rem rgba(40,90,60,.45);animation:sg-float 5.2s ease-in-out infinite}
.float b{font-weight:800;font-size:2.2rem;line-height:2.4rem}
.float small{display:block;font-size:1.2rem;color:var(--text-mid)}
.float.f1{left:-2.4rem;bottom:3.6rem}
.float.f2{right:-1rem;top:2.4rem;animation-delay:-2.2s}
.float.f2 b{font-size:1.6rem;line-height:2rem}
.float.f2 .mi{font-size:3rem;color:var(--taxi)}
.live-dot{width:1.2rem;height:1.2rem;border-radius:50%;background:var(--mint);box-shadow:0 0 0 .5rem rgba(22,163,74,.2);animation:sg-pulse 1.8s ease-in-out infinite}
@media (max-width:960px){
  .hero-grid{grid-template-columns:1fr;gap:3rem}
  .hero h1{font-size:4.4rem;line-height:4.8rem;letter-spacing:-.14rem}
  .hero p{font-size:1.7rem;line-height:2.5rem}
  .float.f1{left:1rem}.float.f2{right:1rem}
}
@media (max-width:520px){.hero h1{font-size:3.8rem;line-height:4.2rem}.hero-cta .btn{flex:1 1 100%}.btn-xl{height:5.6rem}}

.why-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem}
.why{padding:2.8rem 2.4rem}
.why .ic{display:flex;align-items:center;justify-content:center;width:6.4rem;height:6.4rem;border-radius:2rem;background:color-mix(in srgb,var(--c) 14%,#fff);color:var(--c)}
.why .ic .mi{font-size:3.4rem}
.why h3{margin-top:2rem;font-weight:700;font-size:2.2rem}
.why p{margin-top:.8rem;font-size:1.6rem;line-height:2.4rem;color:var(--text-mid)}
@media (max-width:860px){.why-grid{grid-template-columns:1fr}}

.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;counter-reset:s}
.steps li{display:flex;gap:1.6rem;align-items:flex-start;padding:2.4rem;border-radius:2.6rem;background:linear-gradient(135deg,#fff,var(--green-soft));border:1px solid var(--outline)}
.steps .n{flex:none;display:flex;align-items:center;justify-content:center;width:4.8rem;height:4.8rem;border-radius:50%;background:var(--gradient);color:#fff;font-weight:800;font-size:2.2rem;box-shadow:0 .8rem 1.6rem -.4rem rgba(22,163,74,.6)}
.steps h3{font-weight:700;font-size:1.9rem}
.steps p{margin-top:.6rem;font-size:1.5rem;line-height:2.2rem;color:var(--text-mid)}
@media (max-width:860px){.steps{grid-template-columns:1fr}}

.stat-row{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem}
.stat{display:flex;flex-direction:column;align-items:center;padding:2.8rem 1.6rem;text-align:center}
.stat .mi{font-size:3.6rem;color:var(--taxi)}
.stat b{margin-top:.8rem;font-weight:900;font-size:5rem;line-height:5.4rem;letter-spacing:-.14rem}
.stat small{margin-top:.4rem;font-size:1.5rem;color:var(--text-mid)}
@media (max-width:640px){.stat-row{grid-template-columns:1fr 1fr 1fr;gap:1rem}.stat{padding:1.8rem .6rem}.stat b{font-size:3.2rem;line-height:3.6rem}.stat small{font-size:1.2rem}.stat .mi{font-size:2.8rem}}
.sub-title{display:flex;align-items:center;gap:1rem;margin:4.4rem 0 1.8rem;font-weight:800;font-size:2.6rem}
.sub-title .mi{font-size:3.2rem;color:var(--gold)}
.top{display:grid;grid-template-columns:repeat(auto-fill,minmax(34rem,1fr));gap:1.4rem}
.top li{display:flex;align-items:center;gap:1.4rem;padding:1.4rem 1.8rem}
.top .rank{flex:none;display:flex;align-items:center;justify-content:center;width:3.4rem;height:3.4rem;border-radius:50%;background:var(--surface-hi);font-weight:800;font-size:1.6rem;color:var(--text-mid)}
.top .rank.r1{background:linear-gradient(135deg,#FFE27A,#F5A524);color:#5a3b00}
.top .rank.r2{background:linear-gradient(135deg,#F1F5F9,#B8C2CC);color:#3b4651}
.top .rank.r3{background:linear-gradient(135deg,#F4C9A1,#C98443);color:#4a2a08}
.top .ava{position:relative;flex:none;width:5.6rem;height:5.6rem;border-radius:50%;padding:.3rem;background:var(--gradient);display:flex;align-items:center;justify-content:center;overflow:hidden}
.top .ava img{width:100%;height:100%;border-radius:50%;object-fit:cover;background:#fff;position:relative;z-index:1}
.top .ava .mi{position:absolute;font-size:3rem;color:#fff}
.top .who{flex:1;min-width:0}
.top .who b{display:block;font-weight:700;font-size:1.7rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.top .who small{display:block;font-size:1.3rem;color:var(--text-mid)}
.top .pax{text-align:right}
.top .pax b{display:block;font-weight:800;font-size:2.4rem;line-height:2.6rem;color:var(--taxi)}
.top .pax small{font-size:1.1rem;color:var(--text-lo)}
.no-data{display:flex;flex-direction:column;align-items:center;gap:1rem;padding:3.6rem 2rem;text-align:center}
.no-data .mi{font-size:4.4rem;color:var(--text-lo)}
.no-data p{font-size:1.5rem;color:var(--text-mid)}

.app-band{display:flex;align-items:center;gap:3rem;padding:4.4rem;border-radius:4rem;color:#fff;background:linear-gradient(135deg,#23B65A,#14923F 55%,#0B7A33);box-shadow:0 2.4rem 5rem -2rem rgba(22,163,74,.7);overflow:hidden;position:relative}
.app-band .txt{flex:1;position:relative;z-index:1}
.app-band .kicker{display:inline-flex;align-items:center;gap:.6rem;padding:.5rem 1.2rem;border-radius:2rem;background:rgba(255,255,255,.2);font-weight:700;font-size:1.2rem;letter-spacing:.08rem;text-transform:uppercase}
.app-band .kicker .mi{font-size:1.8rem}
.app-band h2{margin-top:1.4rem;font-weight:800;font-size:3.4rem;line-height:4rem;letter-spacing:-.06rem}
.app-band p{margin-top:1.2rem;max-width:56rem;font-size:1.6rem;line-height:2.4rem;opacity:.94}
.app-band .btn-taxi{background:#fff;color:var(--taxi);box-shadow:0 1rem 2rem -.8rem rgba(0,0,0,.35)}
.app-band .btn-taxi::after{display:none}
.app-band .art{flex:none;opacity:.95}
.app-band .art img{width:18rem;height:auto;filter:drop-shadow(0 1rem 2rem rgba(0,0,0,.3));animation:sg-float 5.6s ease-in-out infinite}
@media (max-width:760px){.app-band{flex-direction:column;align-items:flex-start;padding:2.8rem 2.2rem;border-radius:3rem}.app-band h2{font-size:2.6rem;line-height:3.1rem}.app-band .art{display:none}}

.contact-band{display:flex;align-items:center;gap:2.4rem;flex-wrap:wrap;padding:3rem 3.4rem;border-radius:3rem;background:#fff;border:1px solid var(--outline);box-shadow:0 .3rem 1rem rgba(127,156,136,.25)}
.contact-band .big{font-size:5.4rem;color:var(--taxi)}
.contact-band>div{flex:1;min-width:24rem}
.contact-band h2{font-weight:800;font-size:2.6rem}
.contact-band p{margin-top:.6rem;font-size:1.6rem;color:var(--text-mid)}
.contact-band .phone{display:inline-flex;align-items:center;gap:1rem;height:6rem;padding:0 2.6rem;border-radius:2rem;background:var(--gradient);color:#fff;font-weight:800;font-size:2.4rem;box-shadow:0 1.2rem 2.4rem -.8rem rgba(22,163,74,.7)}
.contact-band .phone .mi{font-size:2.8rem}

