/* V111: the Eco Heroes app page (/app/) */
.app-page{max-width:1120px;margin:0 auto;padding:110px 20px 64px;font-family:"Nunito",system-ui,-apple-system,"Segoe UI",sans-serif;color:#2a3324}
.app-page h2,.app-btn,.app-new,.app-faq summary{font-family:"Outfit","Nunito",system-ui,sans-serif}
:lang(ar) .app-page,:lang(ar) .app-page h2,:lang(ar) .app-btn{font-family:"Noto Sans Arabic","Nunito",system-ui,sans-serif}
.app-hero{background:linear-gradient(135deg,#1a3a0d 0%,#2f6b12 100%);color:#fff;border-radius:28px;padding:44px 40px;display:grid;grid-template-columns:1.4fr 1fr;gap:32px;align-items:center}
.app-hero .app-new{display:inline-block;background:#f5b400;color:#1a1a1a;font-weight:800;font-size:.8rem;letter-spacing:.1em;text-transform:uppercase;padding:5px 12px;border-radius:999px;margin:0 0 14px}
.app-hero h1{font-family:"DM Serif Display",Georgia,serif;font-size:clamp(2rem,4.5vw,3.2rem);line-height:1.1;margin:0 0 14px;color:#fff}
.app-hero .app-lead{font-size:1.15rem;line-height:1.55;margin:0 0 22px;color:#eef5e8}
.app-btns{display:flex;gap:12px;flex-wrap:wrap;margin:0 0 14px}
.app-btn{display:inline-flex;align-items:center;min-height:48px;padding:12px 20px;border-radius:14px;background:#fff;color:#1a3a0d;font-weight:800;text-decoration:none;font-size:1.02rem}
.app-btn:hover,.app-btn:focus-visible{background:#f5b400;color:#1a1a1a}
.app-btn:focus-visible{outline:3px solid #fff;outline-offset:3px}
.app-req{margin:0;font-size:.92rem;color:#d7e6cc}
.app-phone{justify-self:center;width:210px;aspect-ratio:9/19;border-radius:36px;background:#0f220a;border:8px solid #0b1806;box-shadow:0 24px 60px rgba(0,0,0,.35);display:flex;align-items:center;justify-content:center}
.app-phone img{width:62%;height:auto;border-radius:22px}
.app-features{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin:36px 0}
.app-card{background:#fff;border:1px solid #e3eadb;border-radius:20px;padding:22px}
.app-card h2{font-size:1.15rem;margin:0 0 8px;color:#1a3a0d}
.app-card p{margin:0;line-height:1.55;color:#3d4636}
.app-fam{background:#f3f7ee;border-radius:20px;padding:26px 28px;margin:0 0 36px}
.app-fam h2{margin:0 0 8px;font-size:1.3rem;color:#1a3a0d}.app-fam p{margin:0;line-height:1.6;color:#33402b}
.app-faq h2{font-size:1.4rem;color:#1a3a0d;margin:0 0 12px}
.app-faq details{border-top:1px solid #e3eadb;padding:14px 0}.app-faq summary{font-weight:700;cursor:pointer;color:#1a3a0d}
.app-faq details p{margin:10px 0 0;line-height:1.6;color:#3d4636}
@media (max-width:900px){.app-hero{grid-template-columns:1fr;padding:32px 22px}.app-phone{display:none}.app-features{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.app-features{grid-template-columns:1fr}.app-page{padding-top:96px}}
@media print{.app-btns,.app-phone{display:none}}
