.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem}.loading-overlay{position:fixed;inset:0;background:#ffffffe6;display:flex;align-items:center;justify-content:center;z-index:9999}.loading-content{display:flex;flex-direction:column;align-items:center;gap:1rem}.loading-spinner{display:flex;align-items:center;justify-content:center}.spinner{border:3px solid #f3f3f3;border-top:3px solid var(--brand, #1e40af);border-radius:50%;animation:spin 1s linear infinite}.spinner-small .spinner{width:20px;height:20px;border-width:2px}.spinner-medium .spinner{width:40px;height:40px;border-width:3px}.spinner-large .spinner{width:60px;height:60px;border-width:4px}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.loading-message{margin:0;color:var(--muted, #64748b);font-size:.9rem;text-align:center}.skeleton-loader{display:flex;flex-direction:column;gap:.5rem;padding:1rem}.skeleton-line{height:1rem;background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0,#f0f0f0 75%);background-size:200% 100%;animation:skeleton-loading 1.5s infinite;border-radius:4px}.skeleton-line-short{width:60%}.skeleton-title{height:1.5rem;margin-bottom:.5rem}.skeleton-pill{height:1.5rem;width:4rem;background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0,#f0f0f0 75%);background-size:200% 100%;animation:skeleton-loading 1.5s infinite;border-radius:999px;display:inline-block;margin-right:.5rem}.skeleton-button{height:2rem;width:6rem;background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0,#f0f0f0 75%);background-size:200% 100%;animation:skeleton-loading 1.5s infinite;border-radius:8px}.skeleton-rect{height:100%;width:100%;background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0,#f0f0f0 75%);background-size:200% 100%;animation:skeleton-loading 1.5s infinite;border-radius:8px}@keyframes skeleton-loading{0%{background-position:-200% 0}to{background-position:200% 0}}.skeleton-card{opacity:.7}.skeleton-thumb{background:#f8f9fa;border:1px solid #e9ecef}.skeleton-card .meta{display:flex;gap:.5rem;margin-bottom:.5rem}.skeleton-card .relbar{display:flex;gap:.5rem;margin-top:.5rem}.error-boundary{display:flex;align-items:center;justify-content:center;min-height:50vh;padding:2rem}.error-content{text-align:center;max-width:500px}.error-content h2{color:var(--error, #ef4444);margin-bottom:1rem}.error-content p{color:var(--muted, #64748b);margin-bottom:2rem;line-height:1.6}.error-details{text-align:left;margin:2rem 0;padding:1rem;background:#f8f9fa;border-radius:8px;border:1px solid #e9ecef}.error-details summary{cursor:pointer;font-weight:600;margin-bottom:1rem}.error-stack{font-family:Courier New,monospace;font-size:.8rem;white-space:pre-wrap;color:#666;background:#fff;padding:1rem;border-radius:4px;border:1px solid #ddd;overflow-x:auto}.error-actions{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}.success-modal-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:10000;animation:fadeIn .3s ease-in-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.success-modal{background:#fff;border-radius:12px;padding:2rem;max-width:400px;width:90%;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;animation:slideUp .3s ease-out;text-align:center}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.success-modal-icon{width:64px;height:64px;margin:0 auto 1.5rem}.success-modal-icon svg{width:100%;height:100%;animation:scaleIn .5s ease-out .2s both}@keyframes scaleIn{0%{transform:scale(0)}to{transform:scale(1)}}.success-modal-title{font-size:1.5rem;font-weight:600;color:#1f2937;margin:0 0 .5rem}.success-modal-message{font-size:1rem;color:#6b7280;margin:0 0 1.5rem;line-height:1.5}.success-modal-actions{display:flex;gap:.75rem;justify-content:center}.success-modal-btn{padding:.75rem 1.5rem;border-radius:8px;font-size:1rem;font-weight:500;cursor:pointer;transition:all .2s;border:none;outline:none}.success-modal-btn-primary{background-color:#10b981;color:#fff}.success-modal-btn-primary:hover{background-color:#059669;transform:translateY(-1px);box-shadow:0 4px 6px -1px #0000001a}.success-modal-btn-secondary{background-color:#f3f4f6;color:#374151}.success-modal-btn-secondary:hover{background-color:#e5e7eb}.hero--about{padding-top:28px;padding-bottom:18px;position:relative}.actions{display:flex;gap:10px;flex-wrap:wrap}.grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.grid-4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}@media (max-width: 1100px){.grid-3,.grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 720px){.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}}.card .title-sm{margin:.2rem 0 .35rem}.icon{width:40px;height:40px;border-radius:10px;border:1px solid #e5e7eb;background:linear-gradient(135deg,#eef2ff,#e6f1ff);display:grid;place-items:center;font-weight:700;color:#334155}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}@media (max-width: 900px){.stats{grid-template-columns:repeat(2,minmax(0,1fr))}}.stat{background:#fff;border:1px solid #e5e7eb;border-radius:16px;padding:14px;text-align:center}.stat b{display:block;font-size:1.6rem;line-height:1.15}.stat small{display:block;color:#64748b}.timeline{position:relative;padding-left:14px}.timeline:before{content:"";position:absolute;left:6px;top:6px;bottom:6px;width:2px;background:#e5e7eb;border-radius:2px}.tl-item{position:relative;padding-left:16px;margin-bottom:12px}.tl-item:before{content:"";position:absolute;left:-2px;top:.35rem;width:10px;height:10px;border:2px solid var(--brand);background:#fff;border-radius:50%}.logo-strip{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}@media (max-width: 1000px){.logo-strip{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (max-width: 640px){.logo-strip{grid-template-columns:repeat(2,minmax(0,1fr))}}.logo{height:54px;border:1px dashed #e5e7eb;border-radius:12px;background:#fff;display:grid;place-items:center;color:#94a3b8}.hero-visual{border:1px solid #e5e7eb;border-radius:20px;overflow:hidden;background:linear-gradient(135deg,#f4f8ff,#f8fbff);min-height:180px;display:grid;place-items:center}.hero-visual .grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;width:100%;padding:14px}.hero-visual .cell{aspect-ratio:1/1;border:1px solid #e5e7eb;border-radius:12px;background:#fff;display:grid;place-items:center;color:#64748b}@keyframes pulseCell{0%{transform:scale(1)}50%{transform:scale(1.04)}to{transform:scale(1)}}.cell:nth-child(odd){animation:pulseCell 4s ease-in-out infinite;animation-delay:calc(var(--i) * .2s)}.about .content{display:grid;grid-template-columns:1.4fr 1fr;gap:24px}.about .card{height:100%}@media (max-width: 900px){.about .content{grid-template-columns:1fr}}@keyframes floaty{0%{transform:translateY(0)}50%{transform:translateY(-6px)}to{transform:translateY(0)}}.hero-blob{width:180px;height:180px;border-radius:50%;background:radial-gradient(closest-side,var(--accent),transparent 70%);filter:blur(2px);opacity:.35;position:absolute;right:8%;top:24%;animation:floaty 6s ease-in-out infinite}.title-sm{font-size:1.25rem;font-weight:700;margin:.5rem 0 .25rem}.about .btn,.about .actions .btn{display:inline-flex;align-items:center;gap:.5rem;background:var(--brand);border:none;color:#fff;padding:.7rem 1rem;border-radius:12px;cursor:pointer;font-weight:600;box-shadow:0 6px 18px #0a4d8c26;text-decoration:none}.about .btn.ghost,.about .actions .btn.ghost{background:#fff;color:var(--brand);border:2px solid var(--brand)}.about .btn:hover,.about .actions .btn:hover{text-decoration:none;transform:translateY(-2px);box-shadow:0 8px 24px #0a4d8c33}.about .btn:focus,.about .actions .btn:focus{outline:3px solid var(--ring);outline-offset:2px}.about .container.section{display:grid;gap:18px}.about ul{list-style:none;padding:0;margin:0}.about ul li{position:relative;padding-left:1.5rem;margin-bottom:.5rem}.about ul li:before{content:"•";position:absolute;left:0;color:var(--brand);font-weight:700}.intro{display:grid;grid-template-columns:1.7fr 1fr;gap:18px}.features{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.feature{background:#fff;border:1px solid #e5e7eb;border-radius:var(--radius);padding:16px;box-shadow:0 10px 26px #0208170d}.feature h3{margin:.2rem 0 .35rem}.kicker{display:inline-flex;gap:.5rem;align-items:center;font-size:.9rem;color:var(--muted)}.kicker i{width:8px;height:8px;border-radius:50%;background:var(--accent)}.section-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}.list-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.note{background:#fff;border-left:4px solid var(--brand);border:1px solid #e5e7eb;border-radius:12px;padding:12px 14px}.pill{display:inline-block;border:1px solid #e5e7eb;border-radius:999px;padding:.25rem .6rem;font-size:.85rem;color:var(--muted)}.lead-strong{font-size:1.1rem}.icon{width:38px;height:38px;border-radius:12px;border:1px solid #e5e7eb;background:linear-gradient(180deg,#fff,#f3f7fd);display:flex;align-items:center;justify-content:center;box-shadow:0 6px 18px #0208170d}.milestone{display:flex;gap:12px;align-items:flex-start}.cta-buttons{display:flex;gap:10px;flex-wrap:wrap}@media (max-width:900px){.intro,.features,.list-grid{grid-template-columns:1fr}}.hero-about{padding:64px 0;background:linear-gradient(#fff,#f3f7fd)}main{overflow-x:hidden;max-width:100%}.impact-hero{position:relative}.impact-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.impact-kpi{background:#fff;border:1px solid #e5e7eb;border-radius:var(--radius);padding:16px;text-align:center;box-shadow:0 8px 24px #0208170a}.impact-kpi b{display:block;font-size:2rem}.impact-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.impact-card{background:#fff;border:1px solid #e5e7eb;border-radius:var(--radius);overflow:hidden;box-shadow:0 12px 28px #0208170d;max-width:100%}.impact-card img{width:100%;height:auto;display:block;max-width:100%}.impact-card .pad{padding:14px}.impact-card h3{margin:.2rem 0 .4rem}.soft-launch{display:grid;grid-template-columns:1.3fr .7fr;gap:16px;overflow:hidden;max-width:100%}[data-anim]{opacity:0;transform:translateY(10px);animation:fadeUp .6s ease-out forwards}[data-anim][data-d="1"]{animation-delay:.08s}[data-anim][data-d="2"]{animation-delay:.16s}[data-anim][data-d="3"]{animation-delay:.24s}[data-anim][data-d="4"]{animation-delay:.32s}@keyframes fadeUp{to{opacity:1;transform:translateY(0)}}@media (max-width:900px){.impact-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.impact-grid,.soft-launch{grid-template-columns:1fr}}@media (max-width:600px){.impact-kpis{grid-template-columns:1fr}}.soft-launch img{max-width:100%;height:auto}.soft-launch{overflow:hidden}@media (max-width: 768px){.impact-card .pad{padding:12px}}body{overflow-x:hidden}*{box-sizing:border-box}.partners-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}@media (max-width:900px){.partners-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}}@media (max-width:600px){.partners-grid{grid-template-columns:1fr}}@media (max-width:480px){.partners-grid{grid-template-columns:1fr;gap:12px}}.partner-card{display:flex;gap:12px;align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:var(--radius);padding:14px;box-shadow:0 8px 24px #0208170a;opacity:0;transform:translateY(10px) scale(.98);animation:fadeUp .6s ease-out forwards;text-decoration:none;color:inherit}.partner-card.clickable{cursor:pointer;transition:all .2s ease}.partner-card.clickable:hover{transform:translateY(-4px) scale(1.02);box-shadow:0 12px 32px #0208171f;border-color:var(--brand)}.partner-card:hover{transform:translateY(-2px) scale(1);transition:.2s ease}.partner-logo{width:64px;height:64px;border-radius:12px;display:flex;align-items:center;justify-content:center;background:#fff;border:1px solid #e5e7eb;overflow:hidden;flex-shrink:0}.partner-logo img{width:100%;height:100%;object-fit:contain;padding:4px}.container-partners{max-width:1200px;width:100%;margin:0 auto;padding:0 16px;overflow-x:hidden}@media (max-width: 768px){.container-partners{padding:0 1rem}}.section-partners{overflow-x:hidden;max-width:100%}@media (max-width: 768px){.section-partners{padding:2rem 0}}.btn{display:inline-flex;align-items:center;gap:.5rem;background:var(--brand);border:none;color:#fff;padding:.7rem 1rem;border-radius:12px;cursor:pointer;font-weight:600;box-shadow:0 6px 18px #0a4d8c26}.btn.ghost{background:#fff;color:var(--brand);border:2px solid var(--brand)}.logo-caps{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-weight:800;color:var(--brand);background:linear-gradient(180deg,#fff,#f3f7fd);border:1px solid #e5e7eb;flex-shrink:0}.partners-grid .partner-card:nth-child(1){animation-delay:.05s}.partners-grid .partner-card:nth-child(2){animation-delay:.12s}.partners-grid .partner-card:nth-child(3){animation-delay:.19s}.partners-grid .partner-card:nth-child(4){animation-delay:.26s}.partners-grid .partner-card:nth-child(5){animation-delay:.33s}.partners-grid .partner-card:nth-child(6){animation-delay:.4s}.partners-grid .partner-card:nth-child(7){animation-delay:.47s}@keyframes fadeUp{to{opacity:1;transform:translateY(0) scale(1)}}.partner-meta{color:var(--muted);font-size:.92rem}.cta{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px}.hero--about-contact{padding-top:28px;padding-bottom:18px}.crumb{display:flex;gap:8px;align-items:center;font-size:.92rem;color:#64748b}.crumb a{color:#64748b}.kicker{font-size:.95rem;color:#64748b;letter-spacing:.02em}.lead{max-width:62ch}.pill{display:inline-block;border:1px solid #e5e7eb;border-radius:999px;padding:.25rem .6rem;font-size:.8rem;color:#64748b;background:#fff}.muted{color:#64748b}.grid-2{display:grid;grid-template-columns:1.6fr 1fr;gap:16px}@media (max-width:1000px){.grid-2{grid-template-columns:1fr}}.card{background:#fff;border:1px solid #e5e7eb;border-radius:var(--radius);padding:14px;box-shadow:0 12px 28px #0208170d}.contact-form{display:grid;grid-template-columns:1fr 1fr;gap:12px}form .full{grid-column:1/-1}label{font-size:.9rem;color:#64748b}.req:after{content:" *";color:#ef4444}input,select,textarea{width:100%;border:1px solid #e5e7eb;border-radius:10px;padding:.6rem .7rem}textarea{min-height:140px;resize:vertical}.hint{font-size:.82rem;color:#94a3b8;margin-top:4px}.actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.ok{display:none;margin-top:10px;padding:10px;border:1px solid #DCFCE7;background:#f0fdf4;color:#166534;border-radius:10px}.err{display:none;margin-top:10px;padding:10px;border:1px solid #FEE2E2;background:#fef2f2;color:#991b1b;border-radius:10px}.team{display:grid;gap:10px}.person{display:grid;grid-template-columns:52px 1fr;gap:10px;align-items:center;border:1px solid #eef2f7;border-radius:12px;padding:10px}.avatar{width:52px;height:52px;border-radius:50%;background:#eef2f7;border:1px solid #e5e7eb}.person a{word-break:break-all}.info{position:sticky;top:80px;display:grid;gap:12px}.chip{display:inline-flex;align-items:center;gap:6px;border:1px solid #e5e7eb;border-radius:999px;padding:.35rem .6rem;background:#fff;color:#334155}.faq{display:grid;gap:10px}.faq details{border:1px solid #eef2f7;border-radius:12px;padding:10px;background:#fff}.faq summary{cursor:pointer;font-weight:600;color:#334155}.reveal{opacity:0;transform:translateY(10px)}.reveal.in{opacity:1;transform:translateY(0);transition:opacity .6s ease,transform .6s ease}.hover-lift:hover{transform:translateY(-2px);transition:transform .15s ease}.visual{border:1px solid #e5e7eb;border-radius:18px;background:linear-gradient(135deg,#f4f8ff,#f8fbff);display:grid;place-items:center;min-height:160px;margin-top:12px;overflow:hidden}.cells{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;width:100%;padding:12px}.cell{aspect-ratio:1/1;border:1px solid #e5e7eb;border-radius:12px;background:#fff;display:grid;place-items:center;color:#64748b}.cell:nth-child(odd){animation:pulse 4s ease-in-out infinite;animation-delay:calc(var(--i)*.18s)}@keyframes pulse{0%{transform:scale(1)}50%{transform:scale(1.035)}to{transform:scale(1)}}.ok:not(.hidden),.err:not(.hidden){display:block}
