.home-page{background:var(--bg-color)}.hero{background:linear-gradient(135deg,var(--primary-color),var(--primary-dark));color:#fff;padding:5rem 1.5rem;text-align:center}.hero-content{max-width:900px;margin:0 auto}.hero h1{font-size:3rem;font-weight:800;margin-bottom:1.5rem;line-height:1.2}.tagline{font-size:1.35rem;opacity:.95;max-width:700px;margin:0 auto;line-height:1.6}.container{max-width:1200px;margin:0 auto;padding:0 1.5rem}.mission{padding:4rem 0;text-align:center}.mission h2{font-size:2.5rem;font-weight:700;color:var(--text-primary);margin-bottom:1.5rem}.mission p{font-size:1.15rem;color:var(--text-secondary);line-height:1.8;max-width:900px;margin:0 auto}.features{background:var(--card-bg);padding:4rem 0}.features h2{font-size:2.5rem;font-weight:700;color:var(--text-primary);text-align:center;margin-bottom:3rem}.features-grid{display:grid;grid-template-columns:1fr;gap:2rem}.feature-card{background:var(--bg-color);padding:2rem;border-radius:12px;box-shadow:var(--shadow-sm);transition:all .3s ease}.feature-card:hover{box-shadow:var(--shadow-md);transform:translateY(-4px)}.feature-icon{font-size:3rem;margin-bottom:1rem}.feature-card h3{font-size:1.5rem;font-weight:700;color:var(--text-primary);margin-bottom:.75rem}.feature-card p{color:var(--text-secondary);line-height:1.6}.stats{padding:4rem 0}.stats-grid{display:grid;grid-template-columns:1fr;gap:2rem}.stat-card{background:linear-gradient(135deg,var(--primary-color),var(--primary-dark));color:#fff;padding:2.5rem 2rem;border-radius:12px;text-align:center;box-shadow:var(--shadow-md);transition:all .3s ease}.stat-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}.stat-icon{font-size:2.5rem;margin-bottom:.75rem;opacity:.9}.stat-value{font-size:2.5rem;font-weight:800;margin-bottom:.5rem}.stat-label{font-size:1rem;color:var(--text-secondary);font-weight:500}.preview{background:var(--card-bg);padding:4rem 0}.preview h2{font-size:2.5rem;font-weight:700;color:var(--text-primary);text-align:center;margin-bottom:3rem}.screenshot-placeholder{background:var(--bg-color);border:2px dashed var(--border-color);border-radius:12px;padding:4rem 2rem;text-align:center}.placeholder-content{max-width:600px;margin:0 auto}.placeholder-content p{font-size:1.5rem;color:var(--text-secondary);margin-bottom:.5rem}.placeholder-subtitle{font-size:1rem!important;color:var(--text-secondary);opacity:.8}.screenshot-container{background:var(--card-bg);border-radius:12px;padding:1rem;box-shadow:var(--shadow-lg);border:1px solid var(--border-light)}.dashboard-screenshot{width:100%;height:auto;border-radius:8px;display:block}.cta{padding:5rem 0;text-align:center}.cta h2{font-size:2.5rem;font-weight:700;color:var(--text-primary);margin-bottom:1rem}.cta-description{font-size:1.15rem;color:var(--text-secondary);margin-bottom:2.5rem}.council-selector{max-width:600px;margin:0 auto}.selector-controls{display:flex;flex-direction:column;gap:1rem}.council-dropdown{padding:1rem;font-size:1rem;border:2px solid var(--border-color);border-radius:8px;background:var(--card-bg);color:var(--text-primary);cursor:pointer;transition:all .3s ease}.council-dropdown:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #6d28d91a}.council-dropdown:disabled{opacity:.6;cursor:not-allowed}.view-dashboard-btn{padding:1rem 2rem;font-size:1.1rem;font-weight:600;background:linear-gradient(135deg,var(--primary-color),var(--primary-dark));color:#fff;border:none;border-radius:8px;cursor:pointer;transition:all .3s ease;box-shadow:var(--shadow-md)}.view-dashboard-btn:hover:not(:disabled){background:linear-gradient(135deg,var(--primary-dark),var(--primary-color));transform:translateY(-2px);box-shadow:var(--shadow-lg)}.view-dashboard-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}@media (min-width: 768px){.features-grid{grid-template-columns:repeat(2,1fr)}.stats-grid{grid-template-columns:repeat(3,1fr)}.selector-controls{flex-direction:row;gap:1rem}.council-dropdown{flex:1}.view-dashboard-btn{flex-shrink:0}}@media (min-width: 1024px){.hero{padding:7rem 1.5rem}.hero h1{font-size:3.5rem}.tagline{font-size:1.5rem}.features-grid{grid-template-columns:repeat(4,1fr)}.mission,.features,.stats,.preview,.graph-insights,.cta{padding:5rem 0}}@media (max-width: 767px){.hero{padding:3rem 1.5rem}.hero h1{font-size:2rem}.tagline{font-size:1.1rem}.mission h2,.features h2,.preview h2,.cta h2{font-size:2rem}.mission,.features,.stats,.preview,.graph-insights,.cta{padding:3rem 0}}.graph-insights{background:var(--card-bg);padding:4rem 0;text-align:center}.graph-insights h2{font-size:2.5rem;font-weight:700;color:var(--text-primary);margin-bottom:.75rem}.graph-subtitle{font-size:1.1rem;color:var(--text-secondary);margin-bottom:1.5rem}.graph-badge{display:inline-flex;align-items:center;gap:.5rem;background:var(--bg-color);border:1px solid var(--border-light);border-radius:20px;padding:.4rem 1rem;font-size:.85rem;color:var(--text-secondary);font-weight:500;margin-bottom:2.5rem}.graph-badge-dot{width:8px;height:8px;border-radius:50%;background:#22c55e;animation:graph-pulse 2s ease-in-out infinite}@keyframes graph-pulse{0%,to{opacity:1;box-shadow:0 0 #22c55e66}50%{opacity:.7;box-shadow:0 0 0 4px #22c55e00}}.graph-badge-time{color:var(--primary-color);font-weight:700}.graph-charts-grid{display:grid;grid-template-columns:1fr;gap:2rem;text-align:left}.graph-chart-card{background:var(--bg-color);border-radius:12px;padding:1.5rem;box-shadow:var(--shadow-sm);border:1px solid var(--border-light)}.graph-chart-card h3{font-size:1.1rem;font-weight:700;color:var(--text-primary);margin-bottom:1rem;padding-bottom:.75rem;border-bottom:2px solid var(--border-light)}.graph-chart-card-full{margin-top:2rem;text-align:left}.graph-chart-subtitle{display:block;font-size:.85rem;font-weight:500;color:var(--text-secondary);margin-top:.25rem}.graph-loading{display:flex;flex-direction:column;align-items:center;gap:1rem;padding:3rem;color:var(--text-secondary);font-weight:500}.graph-spinner{width:32px;height:32px;border:3px solid var(--border-color);border-top-color:var(--primary-color);border-radius:50%;animation:graph-spin .8s linear infinite}@keyframes graph-spin{to{transform:rotate(360deg)}}@media (min-width: 768px){.graph-charts-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 767px){.graph-insights h2{font-size:2rem}.graph-chart-card{padding:1rem}}
