.resources-blog-post-cta{background:linear-gradient(135deg,#3b82f6 0%,#1e40af 100%);border-radius:12px;padding:2.5rem;margin:3rem 0;text-align:center;color:white;box-shadow:0 10px 25px rgba(59,130,246,0.15)} .resources-blog-post-cta .cta-content h2{font-size:2rem;font-weight:700;margin-bottom:1rem;color:white} .resources-blog-post-cta .cta-content p{font-size:1.125rem;line-height:1.6;margin-bottom:2rem;color:rgba(255,255,255,0.9);max-width:600px;margin-left:auto;margin-right:auto} .resources-blog-post-cta .cta-buttons{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap} .resources-blog-post-cta .resources-btn{min-width:180px;padding:0.875rem 1.5rem;font-weight:600;text-decoration:none;border-radius:8px;transition:all 0.3s ease;position:relative;overflow:hidden;display:inline-flex !important;align-items:center;justify-content:center;border:2px solid transparent;cursor:pointer;font-size:1rem;line-height:1.5} .resources-blog-post-cta .resources-btn-primary{background:white !important;color:#3b82f6 !important;border:2px solid white !important} .resources-blog-post-cta .resources-btn-primary:hover{background:rgba(255,255,255,0.9) !important;color:#3b82f6 !important;transform:translateY(-2px);box-shadow:0 8px 20px rgba(0,0,0,0.15)} .resources-blog-post-cta .resources-btn-secondary{background:rgba(255,255,255,0.15) !important;color:white !important;border:2px solid rgba(255,255,255,0.3) !important} .resources-blog-post-cta .resources-btn-secondary:hover{background:rgba(255,255,255,0.25) !important;color:white !important;border-color:rgba(255,255,255,0.5) !important;transform:translateY(-2px)} .resources-blog-post-cta .resources-btn-outline{background:transparent;color:white;border:2px solid rgba(255,255,255,0.5)} .resources-blog-post-cta .resources-btn-outline:hover{background:rgba(255,255,255,0.1);border-color:white;transform:translateY(-2px)} @media (max-width:768px){.resources-blog-post-cta{padding:2rem 1.5rem;margin:2rem 0} .resources-blog-post-cta .cta-content h2{font-size:1.75rem} .resources-blog-post-cta .cta-content p{font-size:1rem} .resources-blog-post-cta .cta-buttons{flex-direction:column;align-items:center} .resources-blog-post-cta .resources-btn{width:100%;max-width:280px} } :root{--primary:#3b82f6;--primary-dark:#2563eb;--secondary:#64748b;--accent:#f59e0b;--success:#10b981;--warning:#f59e0b;--error:#ef4444;--white:#ffffff;--stone:#78716c;--stone-light:#a8a29e;--stone-dark:#57534e;--gray:#f8fafc;--gray-dark:#e2e8f0;--text:#1e293b;--text-light:#64748b;--border:#e2e8f0;--shadow:rgba(0,0,0,0.1);--shadow-lg:rgba(0,0,0,0.15);--space-xs:0.5rem;--space-sm:1rem;--space-md:1.5rem;--space-lg:2rem;--space-xl:3rem;--space-2xl:4rem;--text-xs:0.75rem;--text-sm:0.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:1.875rem;--text-4xl:2.25rem;--text-5xl:3rem;--radius:0.5rem;--radius-lg:0.75rem;--radius-xl:1rem;--cream:#FAFAF9;--warm-white:#FFFFFF;--sand:#F5F4F2;--charcoal:#2C2B29;--night:#1A1918;--sage:#2D6A4F;--sage-light:#52B788;--terracotta:#C1666B;--terracotta-light:#D4A5A5;--sky:#4A90A4;--sky-light:#67AAC3;--honey:#D4A574;--coral:#E07A5F;--weather-good:#2D6A4F;--weather-moderate:#D4A574;--weather-poor:#C1666B;--emerald-50:#ECFDF5;--emerald-100:#D1FAE5;--emerald-200:#A7F3D0;--emerald-500:#10B981;--emerald-600:#059669;--emerald-700:#047857;--blue-50:#EFF6FF;--blue-100:#DBEAFE;--blue-500:#3B82F6;--blue-700:#1D4ED8;--orange-50:#FFF7ED;--orange-100:#FFEDD5;--orange-500:#F97316;--orange-700:#C2410C;--purple-50:#FAF5FF;--purple-100:#F3E8FF;--purple-500:#8B5CF6;--purple-700:#7C3AED;--red-50:#FEF2F2;--red-100:#FEE2E2;--red-500:#EF4444;--red-700:#B91C1C;--rose-50:#FFF1F2;--rose-100:#FFE4E6;--rose-200:#FECDD3;--rose-500:#F43F5E;--rose-700:#BE123C;--space-xs:0.5rem;--space-sm:1rem;--space-md:1.5rem;--space-lg:2rem;--space-xl:3rem;--space-2xl:4.5rem;--space-3xl:7rem;--space-4xl:9rem;--font-serif:'Georgia','Times New Roman',serif;--font-sans:-apple-system,BlinkMacSystemFont,'Segoe UI',system-ui,sans-serif;--text-xs:0.825rem;--text-sm:0.925rem;--text-base:1.05rem;--text-lg:1.2rem;--text-xl:1.35rem;--text-2xl:1.75rem;--text-3xl:2.25rem;--text-4xl:3.25rem;--text-5xl:4.25rem;--shadow-sm:0 1px 3px rgba(0,0,0,0.06);--shadow-md:0 4px 6px rgba(0,0,0,0.08);--shadow-lg:0 10px 20px rgba(0,0,0,0.10);--shadow-xl:0 20px 40px rgba(0,0,0,0.12);--radius-sm:0.375rem;--radius-md:0.5rem;--radius-lg:0.75rem;--radius-xl:1rem;--radius-2xl:1.5rem;--radius-3xl:2rem;--transition:cubic-bezier(0.4,0,0.2,1)} .notification{position:fixed;top:20px;right:20px;padding:var(--space-md);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);z-index:1000;max-width:400px;animation:slideInRight 0.3s ease-out;display:flex;align-items:center;gap:var(--space-sm)} .notification.success{background:var(--emerald-50);border:1px solid var(--emerald-200);color:var(--emerald-700)} .notification.error{background:var(--rose-50);border:1px solid var(--rose-200);color:var(--rose-700)} .notification.info{background:var(--blue-50);border:1px solid var(--blue-100);color:var(--blue-700)} .notification .notification-icon{flex-shrink:0;width:20px;height:20px} .notification .notification-content{flex:1;font-size:var(--text-sm);font-weight:500} .notification .notification-close{background:none;border:none;color:inherit;cursor:pointer;padding:0;width:20px;height:20px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);transition:background-color 0.2s ease} .notification .notification-close:hover{background:rgba(0,0,0,0.1)} @keyframes slideInRight{from{transform:translateX(100%);opacity:0} to{transform:translateX(0);opacity:1} } @keyframes slideOutRight{from{transform:translateX(0);opacity:1} to{transform:translateX(100%);opacity:0} } @media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:0.01ms !important;animation-iteration-count:1 !important;transition-duration:0.01ms !important} } html{font-family:var(--font-sans);font-size:16px;line-height:1.6;color:var(--charcoal);scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale} body{background:linear-gradient(to bottom,#FAFAF9,#FFFFFF);min-height:100vh;position:relative;margin:0;padding:0} body::before{content:'';position:fixed;top:0;left:0;right:0;bottom:0;opacity:0.015;pointer-events:none;background-image:repeating-linear-gradient(45deg,transparent,transparent 40px,rgba(0,0,0,0.01) 40px,rgba(0,0,0,0.01) 80px)} h1,h2,h3,h4,h5,h6{font-family:var(--font-sans);font-weight:600;letter-spacing:-0.02em;line-height:1.2;margin:0 0 var(--space-md) 0} h1{font-size:clamp(2rem,5.5vw,var(--text-5xl));line-height:1.1;color:var(--night);font-weight:700} h2{font-size:clamp(1.5rem,4vw,var(--text-3xl));color:var(--charcoal);font-weight:600} h3{font-size:clamp(1.25rem,3vw,var(--text-xl));color:var(--charcoal);font-weight:500} p{font-size:var(--text-base);line-height:1.8;color:var(--stone-dark);max-width:68ch;margin:0 0 var(--space-md) 0} .container{width:100%;margin:0 auto;padding:0 var(--space-md);max-width:1240px;position:relative} @media (min-width:640px){.container{padding:0 var(--space-lg)} } .text-center{text-align:center} .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0} *:focus-visible{outline:2px solid var(--sage);outline-offset:2px} ::selection{background:var(--sage-light);color:white} ::-moz-selection{background:var(--sage-light);color:white} .disclaimer-banner{background:#fef3c7;border:1px solid #fbbf24;padding:12px 0;margin-bottom:0} .disclaimer-banner .container{max-width:1200px;margin:0 auto;padding:0 var(--space-md)} .disclaimer-banner > .container > div{display:flex;align-items:center;gap:8px;justify-content:center;font-size:14px;color:#92400e} .disclaimer-banner svg{flex-shrink:0} .form-disclaimer{margin-top:16px;padding:12px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;font-size:12px;color:#64748b;line-height:1.4} .form-disclaimer > div{display:flex;align-items:flex-start;gap:8px} .form-disclaimer svg{margin-top:1px;flex-shrink:0} .weather-disclaimer{margin-top:2rem;padding:1.5rem;background:linear-gradient(135deg,rgba(102,126,234,0.05) 0%,rgba(139,92,246,0.05) 100%);border:1px solid rgba(102,126,234,0.2);border-radius:1rem;font-size:0.875rem;color:#475569;line-height:1.6;position:relative;overflow:hidden} .weather-disclaimer::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%)} .weather-disclaimer > div{display:flex;align-items:flex-start;gap:0.75rem;position:relative;z-index:1} .weather-disclaimer svg{margin-top:0.125rem;flex-shrink:0;color:#667eea;width:16px;height:16px} .hero-disclaimer{margin-top:20px;padding:12px;background:rgba(255,255,255,0.9);border:1px solid rgba(59,130,246,0.2);border-radius:8px;font-size:13px;color:#64748b;line-height:1.4} .hero-disclaimer > div{display:flex;align-items:center;gap:8px} .features-disclaimer{margin-bottom:30px;padding:16px;background:#f0f9ff;border:1px solid #0ea5e9;border-radius:8px;font-size:14px;color:#0369a1;line-height:1.5;text-align:center} .features-disclaimer > div{display:flex;align-items:center;justify-content:center;gap:10px} @media (max-width:768px){.disclaimer-banner > .container > div{flex-direction:column;text-align:center;gap:12px} .form-disclaimer > div,.weather-disclaimer > div,.hero-disclaimer > div,.features-disclaimer{flex-direction:column;text-align:center;gap:8px} .form-disclaimer,.weather-disclaimer,.hero-disclaimer,.features-disclaimer{font-size:12px;padding:12px} } .beta-notice{background:linear-gradient(135deg,#fbbf24 0%,#f59e0b 100%);color:#92400e;padding:12px 0;font-size:var(--text-sm);font-weight:600;text-align:center;position:relative;z-index:1001;border-bottom:1px solid #f59e0b;box-shadow:0 2px 8px rgba(245,158,11,0.2)} .beta-notice-content{max-width:1200px;margin:0 auto;padding:0 var(--space-md);display:flex;align-items:center;justify-content:center;gap:var(--space-md);flex-wrap:wrap} .beta-notice-text{display:flex;align-items:center;gap:var(--space-xs)} .beta-notice-icon{font-size:16px;animation:pulse 2s infinite} @keyframes pulse{0%,100%{opacity:1;transform:scale(1)} 50%{opacity:0.7;transform:scale(1.05)} } .beta-notice-button{background:rgba(255,255,255,0.9);color:#92400e;border:1px solid #fbbf24;padding:6px 12px;border-radius:var(--radius);font-size:var(--text-xs);font-weight:600;text-decoration:none;transition:all 0.2s ease;display:inline-flex;align-items:center;gap:var(--space-xs);text-transform:uppercase;letter-spacing:0.025em;cursor:pointer} .beta-notice-button:hover{background:white;color:#78350f;transform:translateY(-1px);box-shadow:0 4px 8px rgba(0,0,0,0.1)} .beta-notice-button svg{width:12px;height:12px} @media (max-width:768px){.beta-notice{padding:8px 0;font-size:var(--text-xs)} .beta-notice-content{flex-direction:column;gap:var(--space-xs)} .beta-notice-button{padding:4px 8px;font-size:10px} } .btn{display:inline-flex;align-items:center;justify-content:center;padding:0.75rem 1.5rem;font-size:var(--text-base);font-weight:500;border-radius:var(--radius-lg);text-decoration:none;transition:all 0.2s var(--transition);cursor:pointer;border:none;position:relative;letter-spacing:-0.01em;font-family:inherit} .btn:focus-visible{outline:2px solid var(--sage);outline-offset:2px} .btn-primary{background:var(--sage);color:white;box-shadow:0 2px 8px rgba(45,106,79,0.2)} .btn-primary:hover{transform:translateY(-1px);box-shadow:0 4px 12px rgba(45,106,79,0.3);background:#245A42} .btn-secondary{background:white;color:var(--charcoal);border:1px solid var(--stone-light)} .btn-secondary:hover{background:var(--sand);transform:translateY(-1px);box-shadow:var(--shadow-sm)} .btn-clear{background:transparent;color:var(--stone,#64748b);border:1px solid var(--border,#e2e8f0);font-size:var(--text-sm,0.875rem);padding:var(--space-xs,0.5rem) var(--space-sm,1rem);margin:0 auto;display:block;width:auto;min-width:100px} .btn-clear:hover{background:var(--stone-light,#f1f5f9);color:var(--stone-dark,#475569);border-color:var(--stone,#64748b)} .btn-ghost{background:transparent;color:var(--stone-dark);padding:0.625rem 1.25rem} .btn-ghost:hover{background:var(--sand);color:var(--charcoal)} .btn-sm{padding:0.5rem 1rem;font-size:var(--text-sm)} .form-group{margin-bottom:var(--space-md);position:relative} .waypoints-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-sm)} .waypoints-container{display:flex;flex-direction:column;gap:var(--space-sm);margin-bottom:var(--space-md)} .waypoints-actions{display:flex;justify-content:flex-start;margin-bottom:var(--space-sm)} .waypoint-item{background:var(--sand);border:1px solid var(--stone-light);border-radius:var(--radius);padding:var(--space-md);transition:all 0.2s ease;cursor:move;position:relative} .waypoint-item.dragging{opacity:0.5;transform:none;z-index:1000;box-shadow:0 8px 25px rgba(0,0,0,0.15);cursor:grabbing} .waypoint-item.drag-over{border-color:var(--sage);background:var(--sage-light)} .waypoint-item:focus-within{border-color:var(--sage);box-shadow:0 0 0 3px rgba(45,106,79,0.1)} .waypoint-item:hover{border-color:var(--sage);background:white} .waypoint-item label{font-weight:600;color:var(--charcoal);margin-bottom:var(--space-xs);display:block;display:flex;align-items:center;gap:var(--space-xs)} .waypoint-drag-handle{cursor:move;color:var(--stone-dark);opacity:0.6;transition:opacity 0.2s ease} .waypoint-drag-handle:hover{opacity:1} .waypoint-input-group{display:flex;gap:var(--space-xs);align-items:center} .waypoint-input{flex:1;padding:var(--space-sm);border:1px solid var(--stone-light);border-radius:var(--radius);font-size:var(--text-base);transition:border-color 0.2s ease} .waypoint-input:focus{outline:none;border-color:var(--sage);box-shadow:0 0 0 3px rgba(45,106,79,0.1)} .waypoint-location-btn{width:32px;height:32px;background:var(--sage);border:none;border-radius:var(--radius-md);color:white;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all 0.2s var(--transition);z-index:2} .waypoint-location-btn:hover{background:var(--sage-light);transform:scale(1.05)} .waypoint-location-btn:disabled{opacity:0.8;cursor:not-allowed;background:var(--sage-light)} .waypoint-location-btn.success{background:var(--emerald-500);color:white} .waypoint-location-btn svg{width:16px;height:16px} .remove-waypoint-btn{padding:var(--space-sm);background:var(--warning);color:white;border:none;border-radius:var(--radius);cursor:pointer;transition:all 0.2s ease;min-width:40px;height:40px;display:flex;align-items:center;justify-content:center} .remove-waypoint-btn:hover{background:#dc2626;transform:translateY(-1px)} .waypoints-help{font-size:var(--text-sm);color:var(--stone-dark);margin:0;line-height:1.5} .btn-outline-primary{background:transparent;color:var(--sage);border:1px solid var(--sage)} .btn-outline-primary:hover{background:var(--sage);color:white} .btn-outline-danger{background:transparent;color:var(--warning);border:1px solid var(--warning)} .btn-outline-danger:hover{background:var(--warning);color:white} .waypoint-marker{border:2px solid white !important;box-shadow:0 2px 8px rgba(0,0,0,0.2)} .timeline-item.waypoint{border-left:4px solid var(--accent);background:linear-gradient(to right,var(--accent)05,transparent)} .waypoint-risks-grid{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))} .waypoint-risk-item{transition:transform 0.2s ease,box-shadow 0.2s ease} .waypoint-risk-item:hover{transform:translateY(-2px);box-shadow:0 4px 12px rgba(0,0,0,0.1)} .timeline-marker{position:relative;transition:all 0.3s ease} .timeline-marker.waypoint-marker::after{content:'';position:absolute;top:-2px;left:-2px;right:-2px;bottom:-2px;border:2px solid var(--accent);border-radius:50%;animation:pulse 2s infinite} @keyframes pulse{0%{opacity:1;transform:scale(1)} 50%{opacity:0.5;transform:scale(1.1)} 100%{opacity:1;transform:scale(1)} } .multi-stop-summary{background:linear-gradient(135deg,var(--sage)10,var(--accent)10);border:1px solid var(--sage)30;border-radius:var(--radius-lg);padding:var(--space-lg);margin:var(--space-md) 0} .stop-count-badge{display:inline-flex;align-items:center;gap:var(--space-xs);background:var(--accent);color:white;padding:var(--space-xs) var(--space-sm);border-radius:var(--radius);font-size:var(--text-sm);font-weight:600} @media (max-width:768px){.waypoints-header{flex-direction:column;gap:var(--space-sm);align-items:stretch} .waypoint-input-group{flex-wrap:wrap} .waypoint-input{min-width:0;flex:1 1 200px} .waypoint-risks-grid{grid-template-columns:1fr} .waypoints-actions{justify-content:center} } .form-label{display:block;margin-bottom:var(--space-xs);font-size:var(--text-sm);font-weight:500;color:var(--charcoal)} .form-heading{margin-bottom:var(--space-md);font-size:var(--text-xl);font-weight:600;color:var(--charcoal);text-align:center} .input-with-location{position:relative;display:flex;align-items:center} .input-with-location .form-input{flex:1;padding-right:3rem} .form-label-inline{display:inline-block;font-weight:600;margin-right:var(--space-sm);color:var(--text);min-width:40px;flex-shrink:0} .location-btn{position:absolute;right:var(--space-xs);top:50%;transform:translateY(-50%);width:32px;height:32px;background:var(--sage);border:none;border-radius:var(--radius-md);color:white;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all 0.2s var(--transition);z-index:2} .location-btn:hover{background:var(--sage-light);transform:translateY(-50%) scale(1.05)} .location-btn:disabled{opacity:0.8;cursor:not-allowed;background:var(--sage-light)} .location-btn.success{background:var(--emerald-500);color:white} .location-btn svg{width:16px;height:16px} @keyframes spin{to{transform:none} } .animate-spin{animation:spin 1s linear infinite} .form-input{width:100%;padding:0.75rem 1rem;background:#ffffff;border:1px solid #d1d5db;border-radius:var(--radius-md);font-size:var(--text-base);transition:all 0.2s var(--transition);color:var(--charcoal);font-family:inherit;box-shadow:0 1px 2px rgba(0,0,0,0.05)} .form-input:focus{outline:none;border-color:var(--sage);background:#ffffff;box-shadow:0 0 0 3px rgba(45,106,79,0.1),0 1px 2px rgba(0,0,0,0.05)} .form-input::placeholder{color:var(--stone)} .form-row{display:grid;gap:var(--space-md)} @media (min-width:640px){.form-row{grid-template-columns:1fr 1fr} } .avoids-chips{display:flex;gap:0.625rem;flex-wrap:wrap;margin-top:0.75rem} .chip{padding:0.375rem 0.875rem;background:var(--sand);border:1px solid var(--stone-light);border-radius:var(--radius-lg);font-size:var(--text-sm);cursor:pointer;transition:all 0.2s var(--transition);color:var(--stone-dark);font-family:inherit;border:none;user-select:none} .chip:hover{background:var(--stone-100);border-color:var(--stone);transform:translateY(-1px);box-shadow:var(--shadow-sm)} .chip.active{background:var(--sage);border-color:var(--sage);color:white;transform:translateY(-1px);box-shadow:0 2px 8px rgba(45,106,79,0.2)} .chip:focus-visible{outline:2px solid var(--sage);outline-offset:2px} .badge{display:inline-flex;align-items:center;gap:var(--space-xs);padding:0.375rem 0.75rem;background:var(--sand);color:var(--charcoal);border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:500} .hero-badge{display:inline-block;padding:0.375rem 0.875rem;background:rgba(45,106,79,0.08);color:var(--sage);border-radius:var(--radius-lg);font-size:var(--text-sm);font-weight:500;margin-bottom:var(--space-md)} .logo{display:flex;align-items:center;gap:0.625rem;font-size:var(--text-xl);font-weight:600;color:var(--night);text-decoration:none;transition:transform 0.2s var(--transition)} .logo:hover{transform:translateX(2px)} .logo-icon{width:32px;height:32px;background:var(--sage);border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center} .logo-icon svg{width:18px;height:18px;color:white} .popular-badge{position:absolute;top:-12px;left:50%;transform:translateX(-50%);padding:0.25rem 1rem;background:var(--sage);color:white;font-size:var(--text-xs);font-weight:600;border-radius:var(--radius-lg);text-transform:uppercase;letter-spacing:0.05em} .resource-tag{position:absolute;top:var(--space-md);left:var(--space-md);padding:0.25rem 0.625rem;background:white;border-radius:var(--radius-md);font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:0.05em;color:var(--sage)} .stars{display:flex;gap:2px;margin-bottom:var(--space-md);color:var(--honey)} .avatar{width:44px;height:44px;background:linear-gradient(135deg,var(--stone-light),var(--stone));border-radius:50%} .field-error{color:var(--rose-600);font-size:var(--text-sm);margin-top:var(--space-xs);padding:var(--space-xs) var(--space-sm);background:var(--rose-50);border:1px solid var(--rose-200);border-radius:var(--radius-sm);border-top:none;border-top-left-radius:0;border-top-right-radius:0;font-weight:500;display:flex;align-items:center;gap:var(--space-xs)} .field-error::before{content:"⚠️";font-size:var(--text-sm)} .form-error{color:var(--rose-600);text-align:center;margin-top:var(--space-md);padding:var(--space-sm);background:var(--rose-50);border:1px solid var(--rose-200);border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:500;display:flex;align-items:center;justify-content:center;gap:var(--space-xs)} .form-error::before{content:"⚠️";font-size:var(--text-sm)} .form-success{color:var(--emerald-600);text-align:center;margin-top:var(--space-md);padding:var(--space-sm);background:var(--emerald-50);border:1px solid var(--emerald-200);border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:500;display:flex;align-items:center;justify-content:center;gap:var(--space-xs)} .form-success::before{content:"✅";font-size:var(--text-sm)} .form-input.error{border-color:var(--rose-500);background:var(--rose-50)} .form-input.success{border-color:var(--emerald-500);background:var(--emerald-50)} .stop-item{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-sm);background:var(--sand);border-radius:var(--radius-md);margin-bottom:var(--space-sm)} .stop-number{width:24px;height:24px;background:var(--sage);color:white;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:var(--text-xs);font-weight:600} .stop-input{flex:1;padding:0.5rem;border:1px solid var(--stone-light);border-radius:var(--radius-sm);font-size:var(--text-sm)} .remove-stop{width:24px;height:24px;background:var(--terracotta);color:white;border:none;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all 0.2s var(--transition)} .remove-stop:hover{background:var(--terracotta-light);transform:scale(1.1)} .autocomplete-wrapper{position:relative;width:100%} .form-group{transition:transform 0.3s ease} .form-group:focus-within{transform:scale(1.02)} .form-actions{margin-top:1.5rem} .form-actions .btn{margin-bottom:0.75rem} .form-actions .btn:last-child{margin-bottom:0} .weather-section{background:white;border-radius:2rem;padding:3rem;margin-top:2rem;box-shadow:0 20px 60px rgba(0,0,0,0.08);border:1px solid rgba(0,0,0,0.05);position:relative;overflow:hidden;animation:fadeInUp 0.8s ease-out} .weather-section::before{content:'';position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%)} .weather-header{text-align:center;margin-bottom:2.5rem;position:relative;z-index:1} .weather-title{font-size:2rem;font-weight:700;color:#0f172a;margin-bottom:0.75rem;line-height:1.3;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text} .weather-subtitle{color:#64748b;font-size:1.125rem;line-height:1.6;max-width:600px;margin:0 auto} .weather-loading{text-align:center;padding:var(--space-xl)} .loading-spinner{width:40px;height:40px;border:3px solid var(--stone-light);border-top:3px solid var(--sage);border-radius:50%;animation:spin 1s linear infinite;margin:0 auto var(--space-md)} @keyframes spin{0%{transform:none} 100%{transform:none} } .weather-table-container{margin-top:var(--space-lg);background:white;border-radius:var(--radius-lg);border:1px solid var(--stone-light);overflow:hidden;box-shadow:var(--shadow-sm);max-width:100%} .weather-table-info{padding:20px 24px;background:var(--sage);color:white;border-bottom:1px solid var(--stone-light)} .table-info-content{display:flex;justify-content:space-between;align-items:center} .table-info-main h4{margin:0 0 8px 0;font-size:18px;font-weight:700;color:white} .table-info-main p{margin:0;opacity:0.9;font-size:14px;font-weight:500;color:white} .weather-table{width:100%;max-width:100%;border-collapse:separate;border-spacing:0;font-size:var(--text-sm);background:white;border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-sm);table-layout:auto} .weather-table thead{background:var(--stone-50);border-bottom:2px solid var(--stone-light);position:relative} .weather-table th{padding:16px 20px;text-align:left;font-weight:600;color:var(--charcoal);font-size:11px;text-transform:uppercase;letter-spacing:0.08em;border-right:1px solid var(--stone-light);position:relative} .weather-table th:last-child{border-right:none} .weather-table tbody tr{border-bottom:1px solid var(--stone-light);transition:all 0.3s cubic-bezier(0.4,0,0.2,1);background:white;position:relative} .weather-table tbody tr:nth-child(even){background:linear-gradient(135deg,#f8fafc 0%,#f1f5f9 100%)} .weather-table tbody tr:hover{background:var(--stone-25);transform:translateY(-1px);box-shadow:var(--shadow-sm)} .weather-table tbody tr:last-child{border-bottom:none} .weather-table td{padding:12px 16px;vertical-align:middle;border-right:1px solid var(--stone-light);position:relative;transition:all 0.2s ease;word-wrap:break-word;overflow:hidden} .weather-table td:last-child{border-right:none} .weather-table tbody tr:hover td{border-color:var(--stone)} .weather-table td:not(.location-cell):not(.status-cell){font-weight:600;color:var(--charcoal);text-align:center} .weather-table td:not(.location-cell):not(.status-cell):hover{background:var(--stone-25);border-radius:4px} .location-cell{min-width:160px;max-width:200px;background:var(--stone-25);border-radius:6px;padding:8px 12px;word-wrap:break-word;overflow-wrap:break-word} .location-info{display:flex;align-items:flex-start;gap:8px} .location-icon{font-size:16px;margin-top:1px;flex-shrink:0} .location-details{display:flex;flex-direction:column;gap:2px;min-width:0} .location-name{font-weight:600;color:var(--charcoal);font-size:13px;line-height:1.2;word-wrap:break-word;overflow-wrap:break-word;hyphens:auto} .location-state{font-size:9px;color:var(--stone-dark);font-weight:500;text-transform:uppercase;letter-spacing:0.05em;background:var(--stone-50);padding:1px 4px;border-radius:4px;display:inline-block;width:fit-content} .eta-cell{min-width:80px;font-weight:600;color:var(--charcoal)} .distance-cell{min-width:100px;color:var(--stone-dark)} .weather-cell{text-align:center;min-width:80px;padding:8px 16px} .weather-content{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;margin-top:2rem} .weather-timeline{background:linear-gradient(135deg,#f8fafc 0%,#ffffff 100%);border-radius:1rem;padding:1.5rem;border:1px solid rgba(0,0,0,0.05);transition:all 0.3s ease;position:relative;overflow:hidden} .weather-timeline:hover{transform:translateY(-2px);box-shadow:0 8px 30px rgba(0,0,0,0.1)} .weather-timeline::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%)} .weather-icon{font-size:1.5rem;display:inline-block;padding:0.75rem;background:linear-gradient(135deg,rgba(102,126,234,0.1) 0%,rgba(139,92,246,0.1) 100%);border-radius:50%;width:48px;height:48px;line-height:1;display:flex;align-items:center;justify-content:center;margin:0 auto 1rem;color:#667eea;text-align:center;border:1px solid var(--stone-light);transition:all 0.2s ease} .weather-icon:hover{transform:scale(1.05);background:var(--stone-50)} .weather-condition{font-size:10px;color:var(--stone-dark);font-weight:500;text-transform:capitalize;text-align:center;line-height:1.2} .temp-cell{min-width:80px;font-weight:600;color:var(--charcoal)} .humidity-cell{min-width:80px;text-align:center} .visibility-cell{min-width:80px;text-align:center} .wind-cell{min-width:80px;text-align:center} .status-cell{min-width:120px;max-width:140px;text-align:center;font-weight:600;font-size:9px;text-transform:uppercase;letter-spacing:0.08em;padding:8px 12px;border-radius:var(--radius-sm);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;border:1px solid transparent;transition:all 0.2s ease} .status-cell.good{background:var(--emerald-100);color:var(--emerald-700);border-color:var(--emerald-200)} .status-cell.caution{background:var(--blue-100);color:var(--blue-700);border-color:var(--blue-200)} .status-cell.hazard{background:var(--orange-100);color:var(--orange-700);border-color:var(--orange-200)} .status-cell.extreme{background:var(--red-100);color:var(--red-700);border-color:var(--red-200)} .status-icon{font-size:16px;margin-bottom:2px} .status-label{font-size:9px;line-height:1.2} @media (max-width:768px){.weather-table-container{overflow-x:auto;margin:var(--space-md) -16px;border-radius:var(--radius-lg);max-width:calc(100vw - 32px)} .weather-table{min-width:800px;max-width:none} .table-info-content{flex-direction:column;align-items:flex-start;gap:var(--space-sm)} } @media (max-width:480px){.weather-table-container{margin:var(--space-sm) -12px} .weather-table-info{padding:16px 20px} .table-info-main h4{font-size:16px} .table-info-main p{font-size:12px} } .weather-warnings{margin-top:var(--space-md);margin-bottom:var(--space-md);padding:0;background:linear-gradient(135deg,#fef7f0 0%,#fef2f2 100%);border:none;border-radius:16px;box-shadow:0 4px 20px rgba(0,0,0,0.08);overflow:hidden} .weather-warnings h4{color:#dc2626;margin:0;padding:20px 24px 16px;background:linear-gradient(135deg,#fef2f2 0%,#fee2e2 100%);display:flex;align-items:center;gap:12px;font-size:18px;font-weight:700;border-bottom:1px solid rgba(220,38,38,0.1)} .warnings-list{display:flex;flex-direction:column;gap:0;padding:0} .warning-item{padding:20px 24px;border:none;border-radius:0;position:relative;transition:all 0.2s ease} .warning-item:not(:last-child){border-bottom:1px solid rgba(0,0,0,0.05)} .warning-item:hover{background:rgba(255,255,255,0.5);transform:translateY(-1px)} .warning-item.hazard{background:linear-gradient(135deg,#fff7ed 0%,#ffedd5 100%);border-left:4px solid #ea580c} .warning-item.extreme{background:linear-gradient(135deg,#fef2f2 0%,#fee2e2 100%);border-left:4px solid #dc2626} .warning-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;flex-wrap:wrap;gap:12px} .warning-level{font-weight:700;font-size:11px;text-transform:uppercase;letter-spacing:0.1em;padding:6px 12px;border-radius:20px;background:linear-gradient(135deg,#ea580c 0%,#dc2626 100%);color:white;box-shadow:0 2px 8px rgba(234,88,12,0.3);position:relative;overflow:hidden} .warning-level::before{content:'';position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,0.2),transparent);transition:left 0.5s} .warning-item:hover .warning-level::before{left:100%} .warning-location{color:#374151;font-size:14px;font-weight:600;display:flex;align-items:center;gap:6px} .warning-time{color:#6b7280;font-size:13px;font-weight:500;background:rgba(107,114,128,0.1);padding:4px 10px;border-radius:12px} .warning-description{color:#374151;font-size:15px;line-height:1.5;font-weight:500;margin:0} @media (max-width:768px){.weather-warnings{margin:var(--space-sm) 0;border-radius:12px} .weather-warnings h4{padding:16px 20px 12px;font-size:16px} .warning-item{padding:16px 20px} .warning-header{flex-direction:column;align-items:flex-start;gap:8px} .warning-time{align-self:flex-end} } .weather-warnings h4::before{content:'⚠️';font-size:20px;filter:drop-shadow(0 1px 2px rgba(0,0,0,0.1))} .weather-info-window{padding:0;max-width:320px;font-family:inherit;background:white;border-radius:16px;box-shadow:0 20px 25px -5px rgba(0,0,0,0.1),0 10px 10px -5px rgba(0,0,0,0.04);overflow:hidden;border:1px solid rgba(0,0,0,0.05);position:relative;animation:weatherWindowSlideIn 0.3s cubic-bezier(0.4,0,0.2,1)} @keyframes weatherWindowSlideIn{from{opacity:0;transform:translateY(-10px) scale(0.95)} to{opacity:1;transform:translateY(0) scale(1)} } .weather-header{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:white;padding:16px;position:relative;display:flex;flex-direction:column;gap:12px} .weather-header::after{content:'';position:absolute;bottom:-10px;left:50%;transform:translateX(-50%);width:0;height:0;border-left:10px solid transparent;border-right:10px solid transparent;border-top:10px solid #667eea} .weather-main{display:flex;align-items:center;gap:12px;margin-bottom:0} .weather-icon{font-size:48px;filter:drop-shadow(0 2px 4px rgba(0,0,0,0.1))} .weather-primary{flex:1} .weather-condition{font-weight:600;font-size:14px;opacity:0.9;margin-bottom:4px;text-transform:capitalize} .weather-temp{font-size:32px;font-weight:700;margin-bottom:4px;line-height:1} .weather-feels-like{font-size:12px;opacity:0.8} .weather-route{text-align:right;font-size:11px;opacity:0.9;display:flex;flex-direction:column;gap:2px} .route-location{font-weight:700;font-size:14px;opacity:1;margin-bottom:4px} .route-eta{font-weight:600;margin-bottom:2px} .route-distance{opacity:0.8} .weather-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(2,1fr);gap:1px;background:#f8fafc;padding:10px;min-height:90px} .weather-item{text-align:center;padding:8px 6px;background:white;border-radius:6px;transition:all 0.3s cubic-bezier(0.4,0,0.2,1);position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:40px;border:1px solid rgba(0,0,0,0.05)} .weather-item::before{content:'';position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,0.4),transparent);transition:left 0.5s ease} .weather-item:hover::before{left:100%} .weather-item:hover{transform:translateY(-2px);box-shadow:0 4px 12px rgba(0,0,0,0.1)} .weather-item-icon{font-size:14px;margin-bottom:2px;display:block} .weather-item-label{font-size:8px;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:0.05em;margin-bottom:1px} .weather-item-value{font-size:12px;font-weight:700;color:#1e293b;margin-top:1px} .weather-severity{padding:8px 12px;text-align:center;font-weight:600;font-size:11px;text-transform:uppercase;letter-spacing:0.05em;display:flex;align-items:center;justify-content:center;gap:6px;margin:0;border-radius:8px;background:rgba(255,255,255,0.15);backdrop-filter:blur(4px)} .weather-severity.good{background:linear-gradient(135deg,#ecfdf5 0%,#d1fae5 100%);color:#065f46;border-top:1px solid #d1fae5} .weather-severity.caution{background:linear-gradient(135deg,#eff6ff 0%,#dbeafe 100%);color:#1e40af;border-top:1px solid #dbeafe} .weather-severity.hazard{background:linear-gradient(135deg,#fef3c7 0%,#fde68a 100%);color:#92400e;border-top:1px solid #fde68a} .weather-severity.extreme{background:linear-gradient(135deg,#fef2f2 0%,#fecaca 100%);color:#991b1b;border-top:1px solid #fecaca} .severity-icon{font-size:16px} .severity-label{font-weight:700} @media (max-width:480px){.weather-info-window{max-width:280px} .weather-header{padding:12px;gap:8px} .weather-icon{font-size:28px} .weather-temp{font-size:20px} .weather-grid{padding:8px;gap:0.5px;min-height:80px} .weather-item{padding:6px 4px;min-height:35px} .weather-item-icon{font-size:12px} .weather-item-label{font-size:7px} .weather-item-value{font-size:10px;margin-top:1px} } @media (max-width:768px){.timeline-item{width:240px;height:280px;padding:var(--space-sm)} .timeline-header{padding:12px;margin:-12px -12px 12px -12px} .timeline-weather-grid{gap:1px;padding:12px;min-height:120px} .timeline-weather-item{padding:8px 6px;min-height:45px} .timeline-weather-icon{font-size:14px} .timeline-weather-label{font-size:8px} .timeline-weather-value{font-size:12px} } @media (max-width:480px){.timeline-item{width:200px;height:240px;padding:var(--space-xs)} .timeline-header{padding:10px;margin:-10px -10px 10px -10px} .timeline-weather-grid{gap:1px;padding:8px;min-height:100px} .timeline-weather-item{padding:6px 4px;min-height:40px} .timeline-weather-icon{font-size:12px} .timeline-weather-label{font-size:7px} .timeline-weather-value{font-size:10px} } .map-loading-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:rgba(255,255,255,0.95);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:9999;border-radius:inherit} .modern-loading-content{text-align:center;display:flex;flex-direction:column;align-items:center;gap:var(--space-md)} .loading-spinner-modern{width:40px;height:40px;border:3px solid rgba(45,106,79,0.1);border-top:3px solid var(--sage);border-radius:50%;animation:spin 1s linear infinite} .progress-bar-container{width:100%;max-width:300px;margin:0 auto} .progress-bar{width:100%;height:8px;background:rgba(45,106,79,0.1);border-radius:4px;overflow:hidden;position:relative} .progress-bar-fill{height:100%;background:linear-gradient(90deg,var(--sage),#4ade80);border-radius:4px;transition:width 0.3s ease;animation:progress-shimmer 2s infinite} .progress-text{text-align:center;margin-top:8px;font-size:var(--text-sm);color:var(--charcoal);font-weight:500} @keyframes progress-shimmer{0%{background-position:-100% 0} 100%{background-position:100% 0} } .progress-bar-fill::before{content:'';position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,0.4),transparent );animation:progress-glow 1.5s infinite} @keyframes progress-glow{0%{left:-100%} 100%{left:100%} } .loading-text-modern{font-size:var(--text-base);font-weight:500;color:var(--charcoal)} @media (max-width:768px){.loading-spinner-modern{width:32px;height:32px;border-width:2px} .loading-text-modern{font-size:var(--text-sm)} } .no-weather{text-align:center;color:var(--stone-dark);font-style:italic;padding:var(--space-lg)} .enhanced-warnings{margin-top:24px;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden} .enhanced-warnings .warnings-header{display:flex;justify-content:space-between;align-items:center;padding:20px;background:linear-gradient(135deg,#fef3c7 0%,#fde68a 100%);border-bottom:1px solid #f59e0b} .enhanced-warnings .warnings-header h3{margin:0;color:#92400e;font-size:18px;font-weight:700} .overall-risk-badge{font-size:14px;font-weight:600;text-shadow:0 1px 2px rgba(0,0,0,0.2)} .enhanced-warnings .warning-item{padding:20px;border-bottom:1px solid #f3f4f6;transition:all 0.2s ease} .enhanced-warnings .warning-item:hover{background-color:#f9fafb} .enhanced-warnings .warning-item:last-child{border-bottom:none} .enhanced-warnings .warning-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px} .enhanced-warnings .warning-level{font-size:11px;font-weight:700;letter-spacing:0.5px} .enhanced-warnings .warning-time{font-size:14px;color:#6b7280;font-weight:500} .enhanced-warnings .warning-description{font-size:15px;line-height:1.5;color:#1f2937;margin-bottom:12px;font-weight:500} .enhanced-warnings .warning-location{font-size:13px;color:#6b7280;margin-bottom:12px} .enhanced-warnings .risk-factors{background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;padding:12px;margin-bottom:12px;font-size:14px} .enhanced-warnings .risk-factors strong{color:#374151;display:block;margin-bottom:6px} .enhanced-warnings .risk-recommendations{background:#fef3c7;border:1px solid #f59e0b;border-radius:6px;padding:12px;font-size:14px} .enhanced-warnings .risk-recommendations strong{color:#92400e;display:block;margin-bottom:8px} .enhanced-warnings .risk-recommendations ul{margin:0;padding-left:20px;color:#78350f} .enhanced-warnings .risk-recommendations li{margin-bottom:4px;line-height:1.4} .trip-risk-summary{margin-top:20px} .trip-risk-summary h4{font-size:16px;font-weight:700;margin:0 0 12px 0} .trip-risk-summary p{font-size:14px;line-height:1.5;margin:0 0 8px 0} .trip-risk-summary .trip-recommendations{margin-top:12px} .trip-risk-summary .trip-recommendations strong{color:inherit;display:block;margin-bottom:8px} .trip-risk-summary .trip-recommendations ul{margin:8px 0 0 0;padding-left:20px} .trip-risk-summary .trip-recommendations li{margin-bottom:4px;line-height:1.4} .enhanced-warnings .warning-item.low{border-left-color:#10b981} .enhanced-warnings .warning-item.moderate{border-left-color:#f59e0b} .enhanced-warnings .warning-item.high{border-left-color:#f97316} .enhanced-warnings .warning-item.very_high{border-left-color:#ef4444} .enhanced-warnings .warning-item.extreme{border-left-color:#7c2d12} @media (max-width:768px){.enhanced-warnings .warnings-header{flex-direction:column;gap:12px;align-items:flex-start;padding:16px} .enhanced-warnings .warning-item{padding:16px} .enhanced-warnings .warning-header{flex-direction:column;align-items:flex-start;gap:8px} .overall-risk-badge{font-size:12px;padding:3px 10px} } .svg-icon{width:48px;height:48px;fill:currentColor;transition:all 0.3s ease;flex-shrink:0;background:none} .svg-icon:hover{transform:scale(1.05)} .svg-icon.small{width:24px;height:24px} .svg-icon.medium{width:32px;height:32px} .svg-icon.large{width:64px;height:64px} .svg-icon.xlarge{width:80px;height:80px} .feature-icon{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0;background:none} .feature-icon:hover{transform:scale(1.1);transition:transform 0.2s ease} img[src*=".svg"]{background:none !important;background-color:transparent !important} .trust-icon .feature-icon{width:20px;height:20px;color:var(--primary)} .node-icon .feature-icon{width:20px;height:20px;color:var(--primary)} .feature-icon svg{width:48px;height:48px;fill:currentColor;transition:all 0.3s ease} .feature-icon svg:hover{transform:scale(1.05)} .safety-icon svg{width:40px;height:40px;fill:currentColor;transition:all 0.3s ease} .safety-icon svg:hover{transform:scale(1.05)} .benefit-icon svg{width:44px;height:44px;fill:currentColor;transition:all 0.3s ease} .benefit-icon svg:hover{transform:scale(1.05)} .hero-icon svg{width:64px;height:64px;fill:currentColor;transition:all 0.3s ease} .hero-icon svg:hover{transform:scale(1.05)} @media (max-width:768px){.svg-icon{width:40px;height:40px} .svg-icon.large{width:48px;height:48px} .svg-icon.xlarge{width:56px;height:56px} .feature-icon svg,.safety-icon svg,.benefit-icon svg{width:36px;height:36px} .hero-icon svg{width:48px;height:48px} } .international-route-notice{margin-top:16px;padding:16px;background:#fef3c7;border:1px solid #fbbf24;border-radius:8px;font-size:14px;color:#92400e;line-height:1.5;animation:slideInFromTop 0.3s ease-out} .international-route-notice .notice-header{display:flex;align-items:center;gap:8px;margin-bottom:12px;font-weight:600} .international-route-notice .notice-header svg{flex-shrink:0;color:#f59e0b} .international-route-notice .notice-content p{margin-bottom:12px;font-weight:500} .international-route-notice .notice-content ul{margin:0;padding-left:20px} .international-route-notice .notice-content li{margin-bottom:6px} .international-route-notice .notice-content strong{color:#78350f} @keyframes slideInFromTop{from{opacity:0;transform:translateY(-10px)} to{opacity:1;transform:translateY(0)} } .nav{position:fixed;top:0;left:0;right:0;z-index:1000;background:rgba(255,255,255,0.95);backdrop-filter:blur(20px);border-bottom:1px solid rgba(0,0,0,0.05);transition:all 0.3s var(--transition);min-height:90px} .nav.scrolled{background:rgba(255,255,255,0.98);box-shadow:0 4px 20px rgba(0,0,0,0.08)} .nav-inner{display:flex;align-items:center;justify-content:space-between;padding:var(--space-lg) 0;transition:padding 0.3s var(--transition);position:relative;min-height:90px} .nav.scrolled .nav-inner{padding:var(--space-md) 0;min-height:60px} .logo{display:flex;align-items:center;gap:var(--space-sm);text-decoration:none;color:var(--night);font-weight:700;font-size:var(--text-lg);transition:all 0.3s var(--transition)} .logo:hover{color:var(--sage);transform:translateY(-1px)} .logo svg{width:24px;height:24px;color:var(--sage);transition:all 0.3s var(--transition)} .logo:hover svg{transform:scale(1.1)} .logo-text{font-weight:700;letter-spacing:-0.01em} .nav-links{display:none;align-items:center;gap:var(--space-xl)} @media (min-width:768px){.nav-links{display:flex} } @media (max-width:768px){.nav-links{display:none;position:absolute;top:100%;left:0;right:0;background:rgba(255,255,255,0.98);backdrop-filter:blur(20px);flex-direction:column;padding:1rem 0;gap:0;transform:translateY(-100%);opacity:0;visibility:hidden;transition:all 0.3s var(--transition);z-index:1001;box-shadow:0 4px 20px rgba(0,0,0,0.1);border-top:1px solid rgba(0,0,0,0.05)} .nav-links.active{transform:translateY(0);opacity:1;visibility:visible;display:flex} .nav-links a{padding:0.75rem 1.5rem;font-size:1rem;text-align:left;border-bottom:1px solid rgba(0,0,0,0.05);color:var(--stone-dark);text-decoration:none;font-weight:500;transition:all 0.3s var(--transition);display:block} .nav-links a:hover{color:var(--night);background:rgba(0,0,0,0.02)} .nav-links a:last-child{border-bottom:none} .mobile-menu-close{display:none} } @media (min-width:768px){.mobile-menu-close{display:none} } .nav-links a{color:var(--stone-dark);text-decoration:none;font-weight:500;font-size:var(--text-sm);transition:all 0.3s var(--transition);position:relative;padding:var(--space-xs) 0} .nav-links a::after{content:'';position:absolute;bottom:0;left:0;width:0;height:2px;background:var(--sage);transition:width 0.3s var(--transition)} .nav-links a:hover{color:var(--night)} .nav-links a:hover::after{width:100%} .nav-actions{display:flex;align-items:center;gap:var(--space-md)} .btn-nav-primary{display:none;align-items:center;padding:var(--space-sm) var(--space-lg);background:linear-gradient(135deg,var(--sage),var(--sage-light));color:white;text-decoration:none;border-radius:var(--radius-lg);font-weight:600;font-size:var(--text-sm);transition:all 0.3s var(--transition);box-shadow:0 2px 8px rgba(45,106,79,0.2)} @media (min-width:768px){.btn-nav-primary{display:flex} } .btn-nav-primary:hover{transform:translateY(-2px);box-shadow:0 4px 15px rgba(45,106,79,0.3);color:white} .mobile-menu-toggle{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:none;border:none;color:var(--stone-dark);cursor:pointer;border-radius:var(--radius-md);transition:all 0.3s var(--transition);position:relative;z-index:1003} @media (min-width:768px){.mobile-menu-toggle{display:none} } .mobile-menu-toggle:hover{background:var(--sand);color:var(--night)} .mobile-menu-toggle svg{width:20px;height:20px} .hero{padding:calc(90px + var(--space-3xl)) 0 var(--space-2xl);background:linear-gradient(135deg,#FAFAF9 0%,#FFFFFF 100%);min-height:100vh;display:flex;align-items:center;margin-top:0;position:relative} .hero::before{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(circle at 20% 80%,rgba(45,106,79,0.03) 0%,transparent 50%),radial-gradient(circle at 80% 20%,rgba(74,144,164,0.03) 0%,transparent 50%);pointer-events:none} .hero-centered{display:flex;flex-direction:column;align-items:center;text-align:center;max-width:800px;margin:0 auto;position:relative;z-index:1} .hero-header{margin-bottom:var(--space-2xl);animation:fadeInUp 0.8s var(--transition)} .hero-badge{display:inline-block;background:linear-gradient(135deg,var(--sage),var(--sage-light));color:white;padding:var(--space-sm) var(--space-lg);border-radius:50px;font-size:var(--text-sm);font-weight:600;text-transform:uppercase;letter-spacing:0.5px;margin-bottom:var(--space-lg);box-shadow:0 4px 15px rgba(45,106,79,0.3);animation:slideInDown 0.6s var(--transition)} .hero-title{font-size:clamp(2.5rem,6vw,var(--text-5xl));font-weight:800;line-height:1.1;margin-bottom:var(--space-lg);color:var(--night);letter-spacing:-0.02em} .hero-title .highlight{background:linear-gradient(135deg,var(--sage),var(--sage-light));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;position:relative} .hero-subtitle{font-size:var(--text-xl);color:var(--stone-dark);line-height:1.7;max-width:600px;margin:0 auto var(--space-2xl);font-weight:400} .planner-card-prominent{background:white;border-radius:var(--radius-xl);padding:var(--space-lg);box-shadow:0 15px 40px rgba(0,0,0,0.08);border:1px solid rgba(0,0,0,0.05);width:100%;max-width:500px;margin:0 auto var(--space-xl);animation:fadeInUp 0.8s var(--transition) 0.2s both;position:relative;overflow:hidden} .planner-card-prominent::before{content:'';position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(135deg,var(--sage),var(--sage-light))} .planner-card-prominent .form-heading{font-size:var(--text-xl);font-weight:600;margin-bottom:var(--space-lg);color:var(--night);text-align:center} .trust-indicators{display:flex;justify-content:center;gap:var(--space-xl);flex-wrap:wrap;animation:fadeInUp 0.8s var(--transition) 0.4s both} .trust-item{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);background:rgba(255,255,255,0.8);border-radius:var(--radius-lg);border:1px solid rgba(0,0,0,0.05);backdrop-filter:blur(10px);transition:all 0.3s var(--transition)} .trust-item:hover{transform:translateY(-2px);box-shadow:0 8px 25px rgba(0,0,0,0.1);background:white} .trust-icon{font-size:var(--text-lg)} .trust-text{font-size:var(--text-sm);font-weight:500;color:var(--stone-dark)} @keyframes fadeInUp{from{opacity:0;transform:translateY(30px)} to{opacity:1;transform:translateY(0)} } @keyframes slideInDown{from{opacity:0;transform:translateY(-20px)} to{opacity:1;transform:translateY(0)} } @media (max-width:768px){.nav{min-height:75px} .nav-inner{min-height:75px;padding:var(--space-md) 0} .hero{padding:calc(75px + var(--space-2xl)) 0 var(--space-xl);min-height:auto} .hero-centered{max-width:100%} .planner-card-prominent{padding:var(--space-xl);margin:0 0 var(--space-xl)} .planner-card-prominent .form-row{grid-template-columns:1fr;gap:var(--space-sm)} .trust-indicators{gap:var(--space-md)} .trust-item{padding:var(--space-xs) var(--space-sm)} .trust-text{font-size:var(--text-xs)} .nav-inner{padding:var(--space-md) 0} .logo{font-size:var(--text-base)} .features-grid-minimal{grid-template-columns:1fr;gap:var(--space-sm)} .feature-card-minimal{padding:var(--space-md)} .timeline-container-minimal{padding:var(--space-md)} .timeline-strip-minimal{height:50px} .timeline-handle-minimal{width:16px;height:60px} .resource-grid-minimal{grid-template-columns:1fr;gap:var(--space-sm)} .resource-card-minimal{padding:var(--space-md)} .testimonial-grid-minimal{grid-template-columns:1fr;gap:var(--space-sm)} .testimonial-minimal{padding:var(--space-md)} .cta-band-minimal{padding:var(--space-xl) 0} .cta-band-minimal h2{font-size:var(--text-xl)} } @media (max-width:480px){.hero{padding:calc(70px + var(--space-xl)) 0} .hero-title{font-size:var(--text-3xl)} .hero-subtitle{font-size:var(--text-lg)} .planner-card-prominent{padding:var(--space-lg);border-radius:var(--radius-xl)} .planner-card-prominent .form-heading{font-size:var(--text-xl)} .trust-indicators{flex-direction:column;align-items:center;gap:var(--space-sm)} .trust-item{width:100%;justify-content:center} .nav-inner{padding:var(--space-sm) 0} .logo{font-size:var(--text-sm)} .logo svg{width:20px;height:20px} .planner-card-prominent .form-input{padding:var(--space-sm);font-size:var(--text-sm)} .planner-card-prominent .btn{padding:var(--space-sm) var(--space-lg);font-size:var(--text-sm)} .section-header-minimal h2{font-size:var(--text-xl)} .section-subtitle-minimal{font-size:var(--text-sm)} .timeline-container-minimal h2{font-size:var(--text-xl)} .timeline-subtitle{font-size:var(--text-sm)} .cta-band-minimal h2{font-size:var(--text-lg)} .cta-subtitle-minimal{font-size:var(--text-sm)} .btn-cta-minimal{padding:var(--space-sm) var(--space-lg);font-size:var(--text-sm)} } .planner-card-prominent .form-group{margin-bottom:var(--space-md)} .planner-card-prominent .form-label{display:block;font-weight:600;margin-bottom:var(--space-sm);color:var(--night);font-size:var(--text-base)} .planner-card-prominent .form-input{width:100%;padding:var(--space-sm);border:2px solid var(--stone-light);border-radius:var(--radius-md);font-size:var(--text-base);transition:all 0.3s var(--transition);background:white;color:var(--night)} .planner-card-prominent .form-input:focus{outline:none;border-color:var(--sage);box-shadow:0 0 0 3px rgba(45,106,79,0.1);transform:translateY(-1px)} .planner-card-prominent .form-input::placeholder{color:var(--stone);font-weight:400} .planner-card-prominent .form-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-md)} .planner-card-prominent .btn{display:inline-flex;align-items:center;justify-content:center;padding:var(--space-md) var(--space-xl);border-radius:var(--radius-lg);font-weight:600;text-decoration:none;transition:all 0.3s var(--transition);border:none;cursor:pointer;font-size:var(--text-base);position:relative;overflow:hidden} .planner-card-prominent .btn-primary{background:linear-gradient(135deg,var(--sage),var(--sage-light));color:white;box-shadow:0 4px 15px rgba(45,106,79,0.3)} .planner-card-prominent .btn-primary:hover{transform:translateY(-2px);box-shadow:0 8px 25px rgba(45,106,79,0.4)} .planner-card-prominent .btn-secondary{background:transparent;color:var(--sage);border:2px solid var(--sage)} .planner-card-prominent .btn-secondary:hover{background:var(--sage);color:white;transform:translateY(-2px)} .planner-card-prominent .form-actions{margin-top:var(--space-lg)} .planner-card-prominent .form-disclaimer{margin-top:var(--space-md);padding:var(--space-sm);background:rgba(45,106,79,0.05);border-radius:var(--radius-md);border:1px solid rgba(45,106,79,0.1)} .planner-card-prominent .form-disclaimer div{display:flex;align-items:flex-start;gap:var(--space-sm);color:var(--stone-dark);font-size:var(--text-sm);line-height:1.6} .planner-card-prominent .form-disclaimer svg{color:var(--sage);flex-shrink:0;margin-top:2px} .avoids-chips{display:flex;gap:var(--space-sm);flex-wrap:wrap;margin-top:var(--space-xs)} .chip{display:inline-flex;align-items:center;padding:var(--space-xs) var(--space-sm);background:var(--sand);border:2px solid var(--stone-light);border-radius:var(--radius-lg);font-size:var(--text-sm);font-weight:500;color:var(--stone-dark);cursor:pointer;transition:all 0.3s var(--transition);user-select:none} .chip:hover{background:var(--stone-light);border-color:var(--sage);color:var(--charcoal);transform:translateY(-1px)} .chip.active{background:var(--sage);border-color:var(--sage);color:white;box-shadow:0 2px 8px rgba(45,106,79,0.3)} .chip:focus{outline:2px solid var(--sage);outline-offset:2px} .waypoints-section-compact{margin-bottom:var(--space-md);opacity:0.8;transition:opacity 0.3s var(--transition)} .waypoints-section-compact:hover{opacity:1} .waypoints-header-compact{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-xs)} .form-label-compact{font-size:var(--text-sm);font-weight:500;color:var(--stone-dark);margin:0} .btn-compact-add{display:inline-flex;align-items:center;gap:var(--space-xs);padding:var(--space-xs) var(--space-sm);background:transparent;border:1px solid var(--stone-light);border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:500;color:var(--stone-dark);cursor:pointer;transition:all 0.3s var(--transition);text-decoration:none} .btn-compact-add:hover{background:var(--sage-light);border-color:var(--sage);color:var(--sage-dark);transform:translateY(-1px)} .btn-compact-add:focus{outline:2px solid var(--sage);outline-offset:2px} .waypoints-container-compact{display:flex;flex-direction:column;gap:var(--space-xs);margin-bottom:var(--space-sm)} .waypoint-item-compact{background:var(--sand);border:1px solid var(--stone-light);border-radius:var(--radius-md);padding:var(--space-sm);transition:all 0.2s var(--transition);position:relative;cursor:move} .waypoint-item-compact:hover{border-color:var(--sage);background:white} .waypoint-item-compact:focus-within{border-color:var(--sage);box-shadow:0 0 0 2px rgba(45,106,79,0.1)} .waypoint-item-compact:active{transform:scale(0.98)} .waypoint-header-compact{display:flex;align-items:center;gap:var(--space-xs);margin-bottom:var(--space-xs)} .waypoint-drag-handle{display:flex;align-items:center;justify-content:center;width:20px;height:20px;color:var(--stone);cursor:grab;transition:color 0.2s var(--transition)} .waypoint-drag-handle:hover{color:var(--sage)} .waypoint-drag-handle:active{cursor:grabbing} .waypoint-number-compact{font-size:var(--text-xs);font-weight:600;color:var(--stone-dark);background:var(--stone-light);padding:2px 6px;border-radius:var(--radius-sm);min-width:20px;text-align:center} .waypoint-remove-compact{width:20px;height:20px;background:var(--red-light);border:none;border-radius:50%;color:var(--red);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all 0.2s var(--transition);font-size:12px} .waypoint-remove-compact:hover{background:var(--red);color:white;transform:scale(1.1)} .waypoint-input-container-compact{display:flex;gap:var(--space-xs);align-items:center} .waypoint-input-compact{flex:1;padding:var(--space-xs) var(--space-sm);border:1px solid var(--stone-light);border-radius:var(--radius-sm);font-size:var(--text-sm);transition:border-color 0.2s var(--transition);background:white} .waypoint-input-compact:focus{outline:none;border-color:var(--sage);box-shadow:0 0 0 2px rgba(45,106,79,0.1)} .waypoint-location-btn-compact{width:24px;height:24px;background:var(--sage-light);border:1px solid var(--sage);border-radius:var(--radius-sm);color:var(--sage-dark);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all 0.2s var(--transition);flex-shrink:0} .waypoint-location-btn-compact:hover{background:var(--sage);color:white;transform:scale(1.05)} .waypoint-location-btn-compact:disabled{background:var(--stone-light);border-color:var(--stone-light);color:var(--stone-dark);cursor:not-allowed;transform:none} .planner-card{background:#f1f3f4;border-radius:var(--radius-xl);padding:var(--space-lg);box-shadow:0 10px 30px rgba(0,0,0,0.08);border:1px solid var(--stone-light);animation:slideUp 0.9s var(--transition) 0.1s both} .map-section{margin-top:var(--space-3xl);padding:var(--space-2xl);background:var(--sand);border-radius:var(--radius-xl)} .map-section-full{margin:0;padding:0;background:linear-gradient(135deg,#f8fafc 0%,#e2e8f0 100%);width:100vw;position:relative;left:50%;right:50%;margin-left:-50vw;margin-right:-50vw;border-top:1px solid rgba(0,0,0,0.05);border-bottom:1px solid rgba(0,0,0,0.05)} .map-header{text-align:center;margin-bottom:var(--space-md);padding:var(--space-lg) var(--space-md)} .map-section-full .map-header{padding:var(--space-lg) var(--space-md) var(--space-md) var(--space-md)} .map-section-full .map-header h2{font-size:var(--text-2xl);font-weight:700;color:var(--charcoal);margin-bottom:var(--space-xs)} .map-section-full .map-header .section-subtitle{font-size:var(--text-base);color:var(--stone-dark);max-width:600px;margin:0 auto} .map-mock{position:relative;height:400px;background:linear-gradient(135deg,#ffffff 0%,#f1f5f9 100%);border-radius:var(--radius-lg);overflow:hidden;animation:fadeIn 1s var(--transition) 0.2s both;box-shadow:0 4px 20px rgba(0,0,0,0.08);border:1px solid rgba(255,255,255,0.8);margin:0 var(--space-md)} .map-section-full .map-mock{border-radius:var(--radius-lg);height:450px;margin:0} @media (min-width:1024px){.map-section-full .map-mock{margin:0 100px;height:600px;border-radius:var(--radius-xl);box-shadow:0 8px 32px rgba(0,0,0,0.12)} } .map-section-full .container{padding-top:var(--space-lg);padding-bottom:var(--space-xl)} .map-section-full .map-mock{transition:all 0.3s cubic-bezier(0.4,0,0.2,1)} .map-section-full .map-mock:hover{transform:translateY(-2px);box-shadow:0 12px 40px rgba(0,0,0,0.15)} @media (max-width:768px){.map-section-full .map-header{padding:var(--space-md) var(--space-sm) var(--space-sm) var(--space-sm)} .map-section-full .map-header h2{font-size:var(--text-xl)} .map-section-full .map-mock{height:350px;margin:0;border-radius:var(--radius-md)} .map-section-full .container{padding-top:var(--space-md);padding-bottom:var(--space-lg)} } .map-texture{position:absolute;inset:0;opacity:0.03;background-image:radial-gradient(circle at 25% 25%,rgba(45,106,79,0.1) 0%,transparent 50%),radial-gradient(circle at 75% 75%,rgba(74,144,164,0.08) 0%,transparent 50%),repeating-linear-gradient(45deg,transparent,transparent 40px,rgba(0,0,0,0.01) 40px,rgba(0,0,0,0.01) 80px)} .map-route{position:absolute;inset:0;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 800 400' xmlns='http://www.w3.org/2000/svg'%3E%3Cdefs%3E%3ClinearGradient id='routeGrad' x1='0%25' y1='0%25' x2='100%25' y2='0%25'%3E%3Cstop offset='0%25' style='stop-color:%232D6A4F;stop-opacity:0.9'/%3E%3Cstop offset='50%25' style='stop-color:%234A90A4;stop-opacity:0.8'/%3E%3Cstop offset='100%25' style='stop-color:%232D6A4F;stop-opacity:0.9'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cpath d='M 50 200 Q 200 120,400 180 T 750 160' stroke='url(%23routeGrad)' stroke-width='4' fill='none' stroke-linecap='round' /%3E%3Ccircle cx='50' cy='200' r='6' fill='%232D6A4F'/%3E%3Ccircle cx='750' cy='160' r='6' fill='%232D6A4F'/%3E%3C/svg%3E");background-size:cover;background-position:center;background-repeat:no-repeat} .features-secondary{padding:var(--space-2xl) 0;background:var(--sand)} .section-header-minimal{text-align:center;margin-bottom:var(--space-xl)} .section-header-minimal h2{font-size:var(--text-2xl);font-weight:600;color:var(--charcoal);margin-bottom:var(--space-sm)} .section-subtitle-minimal{color:var(--stone-dark);font-size:var(--text-base);margin:0} .features-grid-minimal{display:grid;gap:var(--space-md);max-width:1000px;margin:0 auto} @media (min-width:640px){.features-grid-minimal{grid-template-columns:repeat(2,1fr)} } @media (min-width:1024px){.features-grid-minimal{grid-template-columns:repeat(4,1fr)} } .feature-card-minimal{padding:var(--space-lg);background:white;border-radius:var(--radius-lg);border:1px solid rgba(0,0,0,0.05);transition:all 0.3s var(--transition);text-align:center;position:relative;overflow:hidden} .feature-card-minimal::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:var(--sage);transform:scaleX(0);transition:transform 0.3s var(--transition)} .feature-card-minimal:hover{transform:translateY(-2px);box-shadow:0 4px 20px rgba(0,0,0,0.08)} .feature-card-minimal:hover::before{transform:scaleX(1)} .feature-icon-minimal{width:40px;height:40px;background:rgba(45,106,79,0.1);border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;margin:0 auto var(--space-md);color:var(--sage)} .feature-icon-minimal svg{width:20px;height:20px} .feature-title-minimal{font-size:var(--text-base);font-weight:600;margin-bottom:var(--space-xs);color:var(--charcoal)} .feature-description-minimal{font-size:var(--text-sm);color:var(--stone-dark);line-height:1.6;margin:0} .features{padding:var(--space-3xl) 0} .section-header{text-align:center;margin-bottom:var(--space-2xl)} .section-subtitle{color:var(--stone-dark);font-size:var(--text-lg);margin-top:var(--space-sm)} .features-grid{display:grid;gap:var(--space-lg)} @media (min-width:640px){.features-grid{grid-template-columns:repeat(2,1fr)} } @media (min-width:1024px){.features-grid{grid-template-columns:repeat(4,1fr)} } .feature-card{padding:var(--space-xl);background:white;border-radius:var(--radius-lg);border:1px solid var(--stone-light);transition:all 0.2s var(--transition);cursor:pointer;position:relative;overflow:hidden} .feature-card::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:var(--sage);transform:scaleX(0);transition:transform 0.2s var(--transition)} .feature-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px rgba(0,0,0,0.12)} .feature-card:hover::before{transform:scaleX(1)} .feature-icon{width:48px;height:48px;background:rgba(45,106,79,0.08);border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;margin-bottom:var(--space-md);color:var(--sage)} .feature-icon svg{width:24px;height:24px} .feature-title{font-size:var(--text-lg);font-weight:500;margin-bottom:var(--space-xs);color:var(--charcoal)} .feature-description{font-size:var(--text-base);color:var(--stone-dark);line-height:1.7} .timeline-section-minimal{padding:var(--space-2xl) 0;background:white} .timeline-container-minimal{background:var(--sand);border-radius:var(--radius-xl);padding:var(--space-xl);max-width:800px;margin:0 auto} .timeline-container-minimal h2{font-size:var(--text-2xl);font-weight:600;color:var(--charcoal);margin-bottom:var(--space-sm)} .timeline-subtitle{color:var(--stone-dark);font-size:var(--text-base);margin-bottom:var(--space-lg)} .timeline-strip-minimal{position:relative;height:60px;background:linear-gradient(90deg,var(--weather-good) 0%,var(--weather-good) 25%,var(--weather-moderate) 40%,var(--weather-poor) 60%,var(--weather-moderate) 75%,var(--weather-good) 100% );border-radius:var(--radius-lg);margin:var(--space-lg) 0;overflow:hidden} .timeline-strip-minimal::after{content:'';position:absolute;inset:0;background:linear-gradient(to bottom,rgba(255,255,255,0.1),transparent)} .timeline-handle-minimal{position:absolute;top:50%;left:30%;transform:translate(-50%,-50%);width:20px;height:80px;background:white;border:2px solid var(--charcoal);border-radius:var(--radius-md);cursor:grab;box-shadow:0 2px 8px rgba(0,0,0,0.15);transition:box-shadow 0.2s var(--transition)} .timeline-handle-minimal:active{cursor:grabbing;box-shadow:0 1px 4px rgba(0,0,0,0.1)} .timeline-labels-minimal{display:flex;justify-content:space-between;color:var(--stone-dark);font-size:var(--text-xs);padding:0 var(--space-sm)} .features-secondary h1{font-size:var(--text-4xl);font-weight:800;color:var(--night);margin-bottom:var(--space-lg);line-height:1.1;text-align:center} .features-secondary .section-subtitle-minimal{font-size:var(--text-lg);color:var(--stone-dark);line-height:1.6;max-width:800px;margin:0 auto var(--space-xl);text-align:center} .section-header-minimal h2{font-size:var(--text-3xl);font-weight:700;color:var(--night);margin-bottom:var(--space-md);line-height:1.2;text-align:center} .section-header-minimal .section-subtitle-minimal{font-size:var(--text-lg);color:var(--stone-dark);line-height:1.6;max-width:900px;margin:0 auto;text-align:center} .feature-card-minimal{background:var(--white);padding:var(--space-xl);border-radius:var(--radius-xl);box-shadow:0 4px 20px rgba(0,0,0,0.08);border:1px solid var(--border);transition:all 0.3s var(--transition);text-align:center} .feature-card-minimal:hover{transform:translateY(-4px);box-shadow:0 8px 30px rgba(0,0,0,0.12);border-color:var(--sage-light)} .feature-icon-minimal{width:64px;height:64px;margin:0 auto var(--space-md);background:linear-gradient(135deg,var(--sage) 0%,var(--sage-light) 100%);border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;color:var(--white);transition:all 0.3s var(--transition)} .feature-card-minimal:hover .feature-icon-minimal{transform:scale(1.1);background:linear-gradient(135deg,var(--sage-light) 0%,var(--sage) 100%)} .feature-title-minimal{font-size:var(--text-xl);font-weight:600;color:var(--night);margin-bottom:var(--space-sm);line-height:1.3} .feature-description-minimal{color:var(--stone-dark);font-size:var(--text-base);line-height:1.6;margin:0} .resource-card-minimal{background:var(--white);padding:var(--space-xl);border-radius:var(--radius-xl);box-shadow:0 4px 20px rgba(0,0,0,0.08);border:1px solid var(--border);transition:all 0.3s var(--transition);text-align:center} .resource-card-minimal:hover{transform:translateY(-4px);box-shadow:0 8px 30px rgba(0,0,0,0.12);border-color:var(--sage-light)} .resource-title-minimal{font-size:var(--text-lg);font-weight:600;color:var(--night);margin-bottom:var(--space-sm);line-height:1.3} .resource-description-minimal{color:var(--stone-dark);font-size:var(--text-base);line-height:1.6;margin:0} .testimonial-minimal{background:var(--white);padding:var(--space-xl);border-radius:var(--radius-xl);box-shadow:0 4px 20px rgba(0,0,0,0.08);border:1px solid var(--border);transition:all 0.3s var(--transition);text-align:center;position:relative} .testimonial-minimal:hover{transform:translateY(-4px);box-shadow:0 8px 30px rgba(0,0,0,0.12);border-color:var(--sage-light)} .testimonial-minimal .quote-minimal{font-size:var(--text-xl);font-weight:600;color:var(--night);margin-bottom:var(--space-md);line-height:1.3} .testimonial-minimal .author-name-minimal{color:var(--stone-dark);font-size:var(--text-base);line-height:1.6;margin:0} .testimonial-minimal .author-role-minimal{color:var(--stone);font-size:var(--text-sm);margin-top:var(--space-xs);font-style:italic} .stars-minimal{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;background:linear-gradient(135deg,var(--sage) 0%,var(--sage-light) 100%);color:var(--white);border-radius:50%;font-weight:600;font-size:var(--text-lg);margin-bottom:var(--space-md)} .features-grid-minimal{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--space-xl);margin-top:var(--space-xl);max-width:1200px;margin-left:auto;margin-right:auto} .resource-grid-minimal{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--space-lg);margin-top:var(--space-xl);max-width:1000px;margin-left:auto;margin-right:auto} .testimonial-grid-minimal{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--space-xl);margin-top:var(--space-xl);max-width:1200px;margin-left:auto;margin-right:auto} .cta-band-minimal{background:linear-gradient(135deg,var(--night) 0%,var(--charcoal) 100%);color:var(--white);padding:var(--space-2xl) 0;text-align:center} .cta-content-minimal h2{font-size:var(--text-3xl);font-weight:700;margin-bottom:var(--space-md);color:var(--white)} .cta-content-minimal .cta-subtitle-minimal{font-size:var(--text-lg);color:rgba(255,255,255,0.9);margin-bottom:var(--space-md);line-height:1.6} .cta-content-minimal .cta-tagline{font-size:var(--text-sm);color:var(--sage-light);margin-top:var(--space-lg);font-style:italic;font-weight:500} .btn-cta-minimal{display:inline-flex;align-items:center;justify-content:center;padding:var(--space-md) var(--space-xl);background:var(--sage);color:var(--white);text-decoration:none;border-radius:var(--radius-lg);font-weight:600;font-size:var(--text-lg);transition:all 0.3s var(--transition);border:2px solid var(--sage)} .btn-cta-minimal:hover{background:var(--sage-light);border-color:var(--sage-light);transform:translateY(-2px);box-shadow:0 8px 25px rgba(45,106,79,0.3)} @media (max-width:768px){.features-secondary h1{font-size:var(--text-3xl)} .section-header-minimal h2{font-size:var(--text-2xl)} .features-grid-minimal,.resource-grid-minimal,.testimonial-grid-minimal{grid-template-columns:1fr;gap:var(--space-lg)} .feature-card-minimal,.resource-card-minimal,.testimonial-minimal{padding:var(--space-lg)} } .timeline-section{padding:var(--space-3xl) 0;background:var(--sand)} .timeline-container{background:white;border-radius:var(--radius-xl);padding:var(--space-2xl);box-shadow:var(--shadow-md);max-width:900px;margin:0 auto} .timeline-strip{position:relative;height:80px;background:linear-gradient(90deg,var(--weather-good) 0%,var(--weather-good) 25%,var(--weather-moderate) 40%,var(--weather-poor) 60%,var(--weather-moderate) 75%,var(--weather-good) 100% );border-radius:var(--radius-lg);margin:var(--space-xl) 0;overflow:hidden} .timeline-strip::after{content:'';position:absolute;inset:0;background:linear-gradient(to bottom,rgba(255,255,255,0.1),transparent)} .timeline-handle{position:absolute;top:50%;left:30%;transform:translate(-50%,-50%);width:24px;height:100px;background:white;border:2px solid var(--charcoal);border-radius:var(--radius-md);cursor:grab;box-shadow:0 4px 12px rgba(0,0,0,0.2);transition:box-shadow 0.2s var(--transition)} .timeline-handle:active{cursor:grabbing;box-shadow:0 2px 8px rgba(0,0,0,0.15)} .timeline-labels{display:flex;justify-content:space-between;color:var(--stone-dark);font-size:var(--text-sm);padding:0 var(--space-sm)} .resources-minimal{padding:var(--space-2xl) 0;background:var(--sand)} .resource-grid-minimal{display:grid;gap:var(--space-md);margin-top:var(--space-xl);max-width:1000px;margin-left:auto;margin-right:auto} @media (min-width:768px){.resource-grid-minimal{grid-template-columns:repeat(3,1fr)} } .resource-card-minimal{background:white;border-radius:var(--radius-lg);padding:var(--space-lg);transition:all 0.3s var(--transition);border:1px solid rgba(0,0,0,0.05);position:relative;overflow:hidden} .resource-card-minimal::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:var(--sage);transform:scaleX(0);transition:transform 0.3s var(--transition)} .resource-card-minimal:hover{transform:translateY(-2px);box-shadow:0 4px 20px rgba(0,0,0,0.08)} .resource-card-minimal:hover::before{transform:scaleX(1)} .resource-content-minimal{padding:0} .resource-title-minimal{font-size:var(--text-lg);margin-bottom:var(--space-sm);color:var(--charcoal);font-weight:600;line-height:1.3} .resource-description-minimal{font-size:var(--text-sm);color:var(--stone-dark);line-height:1.6;margin:0} .testimonials-minimal{padding:var(--space-2xl) 0;background:white} .testimonial-grid-minimal{display:grid;gap:var(--space-md);margin-top:var(--space-xl);max-width:1000px;margin-left:auto;margin-right:auto} @media (min-width:768px){.testimonial-grid-minimal{grid-template-columns:repeat(3,1fr)} } .testimonial-minimal{padding:var(--space-lg);background:var(--sand);border-radius:var(--radius-lg);border:1px solid rgba(0,0,0,0.05);transition:all 0.3s var(--transition);text-align:center} .testimonial-minimal:hover{transform:translateY(-2px);box-shadow:0 4px 20px rgba(0,0,0,0.08)} .stars-minimal{color:var(--sage);font-size:var(--text-sm);margin-bottom:var(--space-sm)} .quote-minimal{color:var(--charcoal);margin-bottom:var(--space-md);line-height:1.6;font-size:var(--text-sm);font-style:italic} .author-minimal{display:flex;flex-direction:column;align-items:center;gap:var(--space-xs)} .author-name-minimal{font-weight:600;color:var(--charcoal);font-size:var(--text-sm)} .author-role-minimal{font-size:var(--text-xs);color:var(--stone-dark)} .resources{padding:var(--space-3xl) 0;background:var(--sand)} .resource-grid{display:grid;gap:var(--space-lg);margin-top:var(--space-2xl)} @media (min-width:768px){.resource-grid{grid-template-columns:repeat(3,1fr)} } .resource-card{background:white;border-radius:var(--radius-lg);overflow:hidden;transition:all 0.2s var(--transition);cursor:pointer;box-shadow:var(--shadow-sm)} .resource-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)} .resource-image{width:100%;height:200px;background:linear-gradient(135deg,var(--stone-light),var(--stone));position:relative} .resource-content{padding:var(--space-lg)} .resource-title{font-size:var(--text-xl);margin-bottom:var(--space-xs);color:var(--charcoal);font-weight:600} .testimonials{padding:var(--space-3xl) 0} .testimonial-grid{display:grid;gap:var(--space-lg);margin-top:var(--space-2xl)} @media (min-width:768px){.testimonial-grid{grid-template-columns:repeat(3,1fr)} } .testimonial{padding:var(--space-xl);background:white;border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);position:relative} .quote{color:var(--charcoal);margin-bottom:var(--space-md);line-height:1.7} .author{display:flex;align-items:center;gap:var(--space-sm)} .cta-band-minimal{padding:var(--space-2xl) 0;background:linear-gradient(135deg,var(--sage),var(--sage-light));color:white;text-align:center;position:relative;overflow:hidden} .cta-content-minimal{max-width:600px;margin:0 auto} .cta-band-minimal h2{color:white;margin-bottom:var(--space-md);font-size:var(--text-2xl);font-weight:600} .cta-subtitle-minimal{color:rgba(255,255,255,0.9);font-size:var(--text-base);margin-bottom:var(--space-lg);line-height:1.6} .btn-cta-minimal{display:inline-flex;align-items:center;justify-content:center;padding:var(--space-md) var(--space-xl);background:white;color:var(--sage);text-decoration:none;border-radius:var(--radius-lg);font-weight:600;font-size:var(--text-base);transition:all 0.3s var(--transition);box-shadow:0 4px 15px rgba(0,0,0,0.1)} .btn-cta-minimal:hover{transform:translateY(-2px);box-shadow:0 6px 20px rgba(0,0,0,0.15);color:var(--sage)} .cta-band{padding:var(--space-3xl) 0;background:linear-gradient(135deg,var(--sage),var(--sky));color:white;text-align:center;position:relative;overflow:hidden} .cta-band h2{color:white;margin-bottom:var(--space-lg);font-size:var(--text-3xl);font-weight:600} .cta-band .btn{background:white;color:var(--sage);font-size:var(--text-base);padding:0.875rem 2rem;box-shadow:0 4px 12px rgba(0,0,0,0.15);font-weight:600} .cta-band .btn:hover{transform:translateY(-2px);box-shadow:0 6px 16px rgba(0,0,0,0.2)} .footer{padding:var(--space-2xl) 0 var(--space-xl);background:var(--charcoal);color:var(--stone)} .footer-grid{display:grid;gap:var(--space-xl);margin-bottom:var(--space-xl)} @media (min-width:768px){.footer-grid{grid-template-columns:repeat(4,1fr)} } .footer-section h3{color:white;margin-bottom:var(--space-md);font-size:var(--text-base);font-family:var(--font-sans);font-weight:500} .footer-links{display:flex;flex-direction:column;gap:var(--space-xs)} .footer-links a{color:var(--stone);text-decoration:none;transition:color 0.3s var(--transition);font-size:var(--text-sm)} .footer-links a:hover{color:white} .footer-bottom{padding-top:var(--space-xl);border-top:1px solid rgba(212,207,196,0.2);display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:var(--space-md)} .route-results{margin-top:var(--space-xl);padding:var(--space-lg);background:white;border-radius:var(--radius-lg);border:1px solid var(--stone-light);box-shadow:var(--shadow-sm)} .route-results-row{margin-top:var(--space-xs);padding:0.5rem;background:white;border-radius:var(--radius-sm);border:1px solid var(--stone-light);box-shadow:var(--shadow-sm)} .route-results-row .results-header{margin-bottom:var(--space-xs);display:flex;justify-content:space-between;align-items:center} .route-results-row .results-title{font-size:var(--text-sm);margin:0;color:var(--charcoal);font-weight:600} .route-actions{display:flex;gap:var(--space-sm);align-items:center} .route-actions .btn{display:flex;align-items:center;gap:var(--space-xs);font-size:var(--text-sm);padding:var(--space-sm) var(--space-md)} .route-actions .btn svg{width:16px;height:16px} .route-results-row .results-content{display:grid;grid-template-columns:repeat(6,1fr);gap:0.25rem;align-items:center} .route-results-row .result-item{display:flex;flex-direction:column;align-items:center;text-align:center;padding:var(--space-xs);background:var(--sand);border-radius:var(--radius-sm);min-height:45px;justify-content:center} .route-results-row .result-item:hover{background:var(--stone-light)} .route-results-row .result-label{font-size:var(--text-xs);color:var(--stone-dark);font-weight:500;margin-bottom:0.125rem;line-height:1} .route-results-row .result-value{font-size:var(--text-xs);color:var(--charcoal);font-weight:600;line-height:1} .route-results-row .result-value .btn{margin:0.0625rem;font-size:var(--text-xs);padding:0.125rem 0.25rem;line-height:1} .route-results-row .result-value .btn:first-child{margin-left:0} @media (max-width:1200px){.route-results-row .results-content{grid-template-columns:repeat(4,1fr);gap:var(--space-xs)} } @media (max-width:768px){.route-results-row .results-content{grid-template-columns:repeat(3,1fr);gap:var(--space-xs)} .route-results-row .result-item{min-height:50px} } @media (max-width:480px){.route-results-row .results-content{grid-template-columns:repeat(2,1fr);gap:var(--space-xs)} } .route-results-row .result-item .result-details{gap:0} .route-results-row .result-item .result-label{margin-bottom:0.125rem} .results-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-lg)} .results-title{font-size:var(--text-xl);color:var(--charcoal);margin:0} .results-actions{display:flex;gap:var(--space-sm)} .results-content{display:grid;gap:var(--space-md)} .result-item{display:flex;align-items:center;gap:var(--space-md);padding:var(--space-sm);background:var(--sand);border-radius:var(--radius-md)} .result-icon{font-size:var(--text-lg)} .result-details{display:flex;flex-direction:column} .result-label{font-size:var(--text-sm);color:var(--stone-dark);font-weight:500} .result-value{font-size:var(--text-base);color:var(--charcoal);font-weight:600} .main-content{padding-top:90px} .about-hero{background:linear-gradient(135deg,var(--sage) 0%,var(--sky) 100%);color:white;text-align:center;padding:var(--space-3xl) 0} .about-hero .hero-title{font-size:var(--text-5xl);margin-bottom:var(--space-lg);color:white} .about-hero .hero-subtitle{font-size:var(--text-xl);opacity:0.95;max-width:600px;margin:0 auto} .content-section{padding:var(--space-2xl) 0} .content-section.bg-light{background-color:var(--sand)} .section-header{text-align:center;margin-bottom:var(--space-2xl)} .section-header h2{font-size:var(--text-4xl);color:var(--charcoal);margin-bottom:var(--space-md)} .section-subtitle{font-size:var(--text-lg);color:var(--stone-dark);max-width:600px;margin:0 auto} .mission-content{display:grid;gap:var(--space-2xl);align-items:start} @media (min-width:768px){.mission-content{grid-template-columns:1fr auto;gap:var(--space-3xl)} } .mission-text p{font-size:var(--text-lg);line-height:1.7;color:var(--stone-dark);margin-bottom:var(--space-lg)} .mission-highlights{display:grid;gap:var(--space-lg);grid-template-columns:repeat(auto-fit,minmax(200px,1fr))} .highlight-item{background:white;padding:var(--space-lg);border-radius:var(--radius-lg);text-align:center;box-shadow:var(--shadow-sm);transition:transform 0.3s var(--transition),box-shadow 0.3s var(--transition);border:1px solid rgba(0,0,0,0.05)} .highlight-item:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)} .highlight-icon{font-size:2.5rem;margin-bottom:var(--space-md)} .highlight-content h3{font-size:var(--text-lg);color:var(--charcoal);margin-bottom:var(--space-sm);font-weight:600} .highlight-content p{color:var(--stone-dark);line-height:1.5;font-size:var(--text-sm)} .mission-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:var(--space-lg);text-align:center} .stat-item{padding:var(--space-lg);background:white;border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)} .stat-number{font-size:var(--text-3xl);font-weight:700;color:var(--sage);margin-bottom:var(--space-sm)} .stat-label{font-size:var(--text-sm);color:var(--stone-dark);text-transform:uppercase;letter-spacing:0.5px} .story-timeline{display:grid;gap:var(--space-xl);max-width:800px;margin:0 auto} .timeline-item{display:grid;gap:var(--space-lg);align-items:start} @media (min-width:768px){.timeline-item{grid-template-columns:auto 1fr;gap:var(--space-xl)} } .timeline-year{background:var(--sage);color:white;padding:var(--space-sm) var(--space-md);border-radius:var(--radius-lg);font-weight:700;font-size:var(--text-lg);text-align:center;min-width:80px} .timeline-content h3{font-size:var(--text-xl);color:var(--charcoal);margin-bottom:var(--space-sm)} .timeline-content p{font-size:var(--text-base);line-height:1.6;color:var(--stone-dark)} .values-grid{display:grid;gap:var(--space-lg);grid-template-columns:repeat(auto-fit,minmax(280px,1fr))} .value-card{background:white;padding:var(--space-xl);border-radius:var(--radius-lg);text-align:center;box-shadow:var(--shadow-sm);transition:transform 0.3s var(--transition),box-shadow 0.3s var(--transition)} .value-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)} .value-icon{font-size:3rem;margin-bottom:var(--space-md)} .value-card h3{font-size:var(--text-xl);color:var(--charcoal);margin-bottom:var(--space-sm)} .value-card p{color:var(--stone-dark);line-height:1.6} .team-grid{display:grid;gap:var(--space-lg);grid-template-columns:repeat(auto-fit,minmax(250px,1fr))} .team-member{background:white;padding:var(--space-xl);border-radius:var(--radius-lg);text-align:center;box-shadow:var(--shadow-sm)} .member-avatar{width:80px;height:80px;margin:0 auto var(--space-md);border-radius:50%;overflow:hidden;background:var(--sand);display:flex;align-items:center;justify-content:center} .member-avatar img{width:100%;height:100%;object-fit:cover} .team-member h3{font-size:var(--text-lg);color:var(--charcoal);margin-bottom:var(--space-sm)} .team-member p{color:var(--stone-dark);line-height:1.6} .tech-features{display:grid;gap:var(--space-xl)} .tech-feature{display:grid;gap:var(--space-lg);align-items:start} @media (min-width:768px){.tech-feature{grid-template-columns:auto 1fr;gap:var(--space-xl)} } .feature-icon{font-size:3rem;text-align:center} @media (min-width:768px){.feature-icon{text-align:left} } .feature-content h3{font-size:var(--text-xl);color:var(--charcoal);margin-bottom:var(--space-sm)} .feature-content p{color:var(--stone-dark);line-height:1.6;font-size:var(--text-base)} .impact-stats{display:grid;gap:var(--space-lg);grid-template-columns:repeat(auto-fit,minmax(200px,1fr))} .impact-stat{background:white;padding:var(--space-xl);border-radius:var(--radius-lg);text-align:center;box-shadow:var(--shadow-sm)} .impact-number{font-size:var(--text-3xl);font-weight:700;color:var(--sage);margin-bottom:var(--space-sm)} .impact-label{font-size:var(--text-sm);color:var(--stone-dark);line-height:1.4} .cta-content{text-align:center;max-width:600px;margin:0 auto} .cta-content h2{font-size:var(--text-3xl);color:var(--charcoal);margin-bottom:var(--space-lg)} .cta-content p{font-size:var(--text-lg);color:var(--stone-dark);margin-bottom:var(--space-xl);line-height:1.6} .cta-buttons{display:flex;gap:var(--space-md);justify-content:center;flex-wrap:wrap} @media (max-width:768px){.about-hero .hero-title{font-size:var(--text-4xl)} .about-hero .hero-subtitle{font-size:var(--text-lg)} .section-header h2{font-size:var(--text-3xl)} .cta-content h2{font-size:var(--text-2xl)} .cta-buttons{flex-direction:column;align-items:center} .cta-buttons .btn{width:100%;max-width:300px} } .hero-badge{margin-bottom:var(--space-lg)} .badge-text{display:inline-block;background:linear-gradient(135deg,var(--sage),#68d391);color:white;padding:var(--space-sm) var(--space-lg);border-radius:50px;font-size:var(--text-sm);font-weight:600;text-transform:uppercase;letter-spacing:0.5px;box-shadow:0 4px 15px rgba(104,211,145,0.3)} .hero-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-xl);margin-top:var(--space-2xl);max-width:600px;margin-left:auto;margin-right:auto} .stat-item{text-align:center;padding:var(--space-lg);background:rgba(255,255,255,0.1);backdrop-filter:blur(10px);border-radius:var(--radius-lg);border:1px solid rgba(255,255,255,0.2)} .stat-number{font-size:var(--text-3xl);font-weight:800;color:white;margin-bottom:var(--space-xs);text-shadow:0 2px 4px rgba(0,0,0,0.1)} .stat-label{font-size:var(--text-sm);color:rgba(255,255,255,0.9);font-weight:500} .hero-background{position:absolute;top:0;left:0;right:0;bottom:0;z-index:-1;overflow:hidden} .gradient-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%)} .floating-shapes{position:absolute;top:0;left:0;right:0;bottom:0} .shape{position:absolute;border-radius:50%;background:rgba(255,255,255,0.1);animation:float 6s ease-in-out infinite} .shape-1{width:80px;height:80px;top:20%;left:10%;animation-delay:0s} .shape-2{width:120px;height:120px;top:60%;right:15%;animation-delay:2s} .shape-3{width:60px;height:60px;bottom:20%;left:20%;animation-delay:4s} @keyframes float{0%,100%{transform:translateY(0px)} 50%{transform:translateY(-20px)} } .section-badge{display:inline-block;background:linear-gradient(135deg,var(--sage),#68d391);color:white;padding:var(--space-xs) var(--space-lg);border-radius:50px;font-size:var(--text-sm);font-weight:600;text-transform:uppercase;letter-spacing:0.5px;margin-bottom:var(--space-lg);box-shadow:0 4px 15px rgba(104,211,145,0.3)} .section-title{font-size:var(--text-4xl);font-weight:800;color:var(--charcoal);margin-bottom:var(--space-lg);line-height:1.2} .mission-section{padding:var(--space-4xl) 0} .mission-content{display:grid;gap:var(--space-3xl);margin-top:var(--space-2xl)} .mission-text{max-width:800px;margin:0 auto;text-align:center} .lead-text{font-size:var(--text-xl);color:var(--charcoal);font-weight:500;line-height:1.7;margin-bottom:var(--space-lg)} .mission-highlights{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--space-xl);margin-top:var(--space-2xl)} .highlight-card{background:white;padding:var(--space-xl);border-radius:var(--radius-xl);box-shadow:0 10px 40px rgba(0,0,0,0.08);border:1px solid rgba(0,0,0,0.05);transition:all 0.3s var(--transition);position:relative;overflow:hidden} .highlight-card::before{content:'';position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(135deg,var(--sage),#68d391)} .highlight-card:hover{transform:translateY(-5px);box-shadow:0 20px 60px rgba(0,0,0,0.12)} .highlight-icon{width:48px;height:48px;background:linear-gradient(135deg,var(--sage),#68d391);border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;margin-bottom:var(--space-lg);color:white} .highlight-content h3{font-size:var(--text-xl);font-weight:700;color:var(--charcoal);margin-bottom:var(--space-sm)} .highlight-content p{color:var(--stone-dark);line-height:1.6} .story-section{padding:var(--space-4xl) 0} .story-timeline{margin-top:var(--space-3xl);position:relative} .timeline-item{display:grid;grid-template-columns:auto 1fr;gap:var(--space-xl);margin-bottom:var(--space-3xl);position:relative} .timeline-marker{position:relative;display:flex;flex-direction:column;align-items:center} .timeline-dot{width:20px;height:20px;background:linear-gradient(135deg,var(--sage),#68d391);border-radius:50%;border:4px solid white;box-shadow:0 0 0 4px rgba(104,211,145,0.2);z-index:2} .timeline-line{width:2px;height:100%;background:linear-gradient(to bottom,var(--sage),rgba(104,211,145,0.3));margin-top:var(--space-sm)} .timeline-item:last-child .timeline-line{display:none} .timeline-content{padding-top:var(--space-sm)} .timeline-year{display:inline-block;background:linear-gradient(135deg,var(--sage),#68d391);color:white;padding:var(--space-xs) var(--space-md);border-radius:50px;font-size:var(--text-sm);font-weight:600;margin-bottom:var(--space-sm)} .timeline-content h3{font-size:var(--text-xl);font-weight:700;color:var(--charcoal);margin-bottom:var(--space-sm)} .timeline-content p{color:var(--stone-dark);line-height:1.6;margin-bottom:var(--space-md)} .timeline-milestone{display:inline-block;background:rgba(104,211,145,0.1);color:var(--sage);padding:var(--space-xs) var(--space-md);border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:500;border:1px solid rgba(104,211,145,0.2)} .values-section{padding:var(--space-4xl) 0} .values-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--space-xl);margin-top:var(--space-2xl)} .value-card{background:white;padding:var(--space-xl);border-radius:var(--radius-xl);box-shadow:0 10px 40px rgba(0,0,0,0.08);border:1px solid rgba(0,0,0,0.05);transition:all 0.3s var(--transition);text-align:center;position:relative;overflow:hidden} .value-card::before{content:'';position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(135deg,var(--sage),#68d391)} .value-card:hover{transform:translateY(-5px);box-shadow:0 20px 60px rgba(0,0,0,0.12)} .value-icon{width:64px;height:64px;background:linear-gradient(135deg,var(--sage),#68d391);border-radius:var(--radius-xl);display:flex;align-items:center;justify-content:center;margin:0 auto var(--space-lg);color:white} .value-card h3{font-size:var(--text-xl);font-weight:700;color:var(--charcoal);margin-bottom:var(--space-md)} .value-card p{color:var(--stone-dark);line-height:1.6} .tech-section{padding:var(--space-4xl) 0} .tech-features{display:grid;gap:var(--space-xl);margin-top:var(--space-2xl)} .tech-feature{display:grid;grid-template-columns:auto 1fr;gap:var(--space-xl);background:white;padding:var(--space-xl);border-radius:var(--radius-xl);box-shadow:0 10px 40px rgba(0,0,0,0.08);border:1px solid rgba(0,0,0,0.05);transition:all 0.3s var(--transition)} .tech-feature:hover{transform:translateY(-2px);box-shadow:0 20px 60px rgba(0,0,0,0.12)} .feature-icon{width:64px;height:64px;background:linear-gradient(135deg,var(--sage),#68d391);border-radius:var(--radius-xl);display:flex;align-items:center;justify-content:center;color:white;flex-shrink:0} .feature-content h3{font-size:var(--text-xl);font-weight:700;color:var(--charcoal);margin-bottom:var(--space-sm)} .feature-content p{color:var(--stone-dark);line-height:1.6;margin-bottom:var(--space-md)} .feature-tags{display:flex;gap:var(--space-sm);flex-wrap:wrap} .tag{background:rgba(104,211,145,0.1);color:var(--sage);padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:500;border:1px solid rgba(104,211,145,0.2)} .team-section{padding:var(--space-4xl) 0} .team-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--space-xl);margin-top:var(--space-2xl)} .team-member{background:white;padding:var(--space-xl);border-radius:var(--radius-xl);box-shadow:0 10px 40px rgba(0,0,0,0.08);border:1px solid rgba(0,0,0,0.05);transition:all 0.3s var(--transition);text-align:center;position:relative;overflow:hidden} .team-member::before{content:'';position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(135deg,var(--sage),#68d391)} .team-member:hover{transform:translateY(-5px);box-shadow:0 20px 60px rgba(0,0,0,0.12)} .member-avatar{margin-bottom:var(--space-lg)} .avatar-placeholder{width:80px;height:80px;background:linear-gradient(135deg,var(--sage),#68d391);border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto;color:white} .team-member h3{font-size:var(--text-xl);font-weight:700;color:var(--charcoal);margin-bottom:var(--space-sm)} .team-member p{color:var(--stone-dark);line-height:1.6;margin-bottom:var(--space-md)} .member-expertise{display:flex;gap:var(--space-sm);justify-content:center;flex-wrap:wrap} .expertise-tag{background:rgba(104,211,145,0.1);color:var(--sage);padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:500;border:1px solid rgba(104,211,145,0.2)} .cta-section{padding:var(--space-4xl) 0;background:linear-gradient(135deg,#f8fafc 0%,#e2e8f0 100%)} .cta-badge{display:inline-block;background:linear-gradient(135deg,var(--sage),#68d391);color:white;padding:var(--space-xs) var(--space-lg);border-radius:50px;font-size:var(--text-sm);font-weight:600;text-transform:uppercase;letter-spacing:0.5px;margin-bottom:var(--space-lg);box-shadow:0 4px 15px rgba(104,211,145,0.3)} .cta-title{font-size:var(--text-4xl);font-weight:800;color:var(--charcoal);margin-bottom:var(--space-lg);line-height:1.2} .cta-subtitle{font-size:var(--text-xl);color:var(--stone-dark);margin-bottom:var(--space-2xl);line-height:1.6;max-width:600px;margin-left:auto;margin-right:auto} .cta-buttons{display:flex;gap:var(--space-md);justify-content:center;flex-wrap:wrap} .btn-large{padding:var(--space-md) var(--space-xl);font-size:var(--text-lg);font-weight:600;display:inline-flex;align-items:center;gap:var(--space-sm)} .btn-primary svg{transition:transform 0.3s var(--transition)} .btn-primary:hover svg{transform:translate(2px,-2px)} @media (max-width:768px){.hero-stats{grid-template-columns:1fr;gap:var(--space-lg)} .mission-highlights{grid-template-columns:1fr} .values-grid{grid-template-columns:1fr} .tech-feature{grid-template-columns:1fr;text-align:center} .team-grid{grid-template-columns:1fr} .timeline-item{grid-template-columns:1fr;text-align:center} .timeline-marker{margin-bottom:var(--space-lg)} .timeline-line{display:none} .section-title{font-size:var(--text-3xl)} .cta-title{font-size:var(--text-3xl)} .cta-buttons{flex-direction:column;align-items:center} .cta-buttons .btn{width:100%;max-width:300px} } @media (max-width:480px){.hero-stats{margin-top:var(--space-xl)} .stat-item{padding:var(--space-md)} .stat-number{font-size:var(--text-2xl)} .highlight-card,.value-card,.tech-feature,.team-member{padding:var(--space-lg)} .section-badge,.cta-badge{font-size:var(--text-xs);padding:var(--space-xs) var(--space-md)} } .contact-hero{background:linear-gradient(135deg,var(--sage) 0%,var(--sky) 100%);color:white;padding:var(--space-3xl) 0 var(--space-2xl);text-align:center} .contact-hero .hero-title{font-size:var(--text-4xl);margin-bottom:var(--space-lg);color:white} .contact-hero .hero-subtitle{font-size:var(--text-xl);max-width:600px;margin:0 auto;opacity:0.95} .contact-methods-section{padding:var(--space-3xl) 0;background:white} .contact-methods-section .section-header{text-align:center;margin-bottom:var(--space-2xl)} .contact-methods-section .section-header h2{font-size:var(--text-3xl);color:var(--charcoal);margin-bottom:var(--space-md)} .contact-methods-section .section-header p{font-size:var(--text-lg);color:var(--stone-dark);max-width:600px;margin:0 auto;line-height:1.6} .contact-methods-grid{display:grid;gap:var(--space-xl);max-width:900px;margin:0 auto} @media (min-width:768px){.contact-methods-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))} } .contact-method-card{background:white;padding:var(--space-xl);border-radius:var(--radius-xl);box-shadow:0 10px 40px rgba(0,0,0,0.08);border:1px solid var(--stone-light);transition:all 0.3s var(--transition);text-align:center;position:relative;overflow:hidden} .contact-method-card::before{content:'';position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(135deg,var(--sage),var(--sky))} .contact-method-card:hover{transform:translateY(-5px);box-shadow:0 20px 60px rgba(0,0,0,0.12);border-color:var(--sage)} .method-icon{width:64px;height:64px;background:linear-gradient(135deg,var(--sage),var(--sky));border-radius:var(--radius-xl);display:flex;align-items:center;justify-content:center;margin:0 auto var(--space-lg);color:white} .method-icon svg{width:32px;height:32px} .contact-method-card h3{font-size:var(--text-xl);font-weight:700;color:var(--charcoal);margin-bottom:var(--space-md)} .contact-method-card p{color:var(--stone-dark);line-height:1.6;margin-bottom:var(--space-sm)} .contact-method-card a{color:var(--sage);text-decoration:none;font-weight:600} .contact-method-card a:hover{text-decoration:underline} .response-time{font-size:var(--text-sm);color:var(--stone);font-style:italic;margin:0 !important} .contact-page .faq-section{padding:var(--space-3xl) 0;background:var(--sand)} .contact-page .faq-section .section-header{text-align:center;margin-bottom:var(--space-2xl)} .contact-page .faq-section .section-header h2{font-size:var(--text-3xl);color:var(--charcoal);margin-bottom:var(--space-md)} .contact-page .faq-section .section-header p{font-size:var(--text-lg);color:var(--stone-dark);max-width:600px;margin:0 auto;line-height:1.6} .contact-page .faq-section .section-header a{color:var(--sage);text-decoration:none;font-weight:600} .contact-page .faq-section .section-header a:hover{text-decoration:underline} .contact-page .faq-grid{display:grid;gap:var(--space-lg);max-width:800px;margin:0 auto} @media (min-width:768px){.contact-page .faq-grid{grid-template-columns:repeat(2,1fr)} } .contact-page .faq-item{background:white;padding:var(--space-xl);border-radius:var(--radius-lg);box-shadow:0 4px 20px rgba(0,0,0,0.08);border:1px solid var(--stone-light);transition:all 0.3s var(--transition)} .contact-page .faq-item:hover{transform:translateY(-2px);box-shadow:0 8px 30px rgba(0,0,0,0.12);border-color:var(--sage)} .contact-page .faq-item h3{font-size:var(--text-lg);color:var(--charcoal);margin-bottom:var(--space-sm);font-weight:600} .contact-page .faq-item p{color:var(--stone-dark);line-height:1.6;margin:0} @media (max-width:768px){.contact-hero .hero-title{font-size:var(--text-3xl)} .contact-hero .hero-subtitle{font-size:var(--text-lg)} .contact-methods-section .section-header h2{font-size:var(--text-2xl)} .contact-methods-section .section-header p{font-size:var(--text-base)} .contact-methods-grid{grid-template-columns:1fr;padding:0 var(--space-md)} .contact-page .faq-section .section-header h2{font-size:var(--text-2xl)} .contact-page .faq-section .section-header p{font-size:var(--text-base)} .contact-page .faq-grid{grid-template-columns:1fr;padding:0 var(--space-md)} .contact-method-card,.contact-page .faq-item{padding:var(--space-lg)} } @media (max-width:480px){.contact-hero{padding:var(--space-2xl) 0 var(--space-xl)} .contact-methods-section,.contact-page .faq-section{padding:var(--space-2xl) 0} .method-icon{width:48px;height:48px} .method-icon svg{width:24px;height:24px} } .intelligence-overview{padding:8rem 0;background:linear-gradient(135deg,#f8fafc 0%,#ffffff 100%);position:relative;overflow:hidden} .intelligence-overview::before{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(circle at 20% 80%,rgba(99,102,241,0.03) 0%,transparent 50%),radial-gradient(circle at 80% 20%,rgba(139,92,246,0.03) 0%,transparent 50%);pointer-events:none} .section-hero{text-align:center;margin-bottom:5rem;position:relative;z-index:1} .badge-container{margin-bottom:2rem} .premium-badge{display:inline-block;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:white;padding:0.75rem 2rem;border-radius:50px;font-size:0.875rem;font-weight:600;text-transform:uppercase;letter-spacing:0.5px;box-shadow:0 4px 15px rgba(102,126,234,0.3);animation:slideInDown 0.6s ease-out} .section-title{font-size:clamp(2.5rem,5vw,3.5rem);font-weight:800;color:#0f172a;margin-bottom:2rem;line-height:1.1;letter-spacing:-0.02em;animation:fadeInUp 0.8s ease-out 0.2s both} .section-lead{font-size:1.25rem;color:#475569;max-width:900px;margin:0 auto;line-height:1.7;font-weight:400;animation:fadeInUp 0.8s ease-out 0.4s both} .intelligence-grid{display:grid;gap:3rem;margin:5rem 0;max-width:1200px;margin-left:auto;margin-right:auto} .intelligence-feature{display:grid;grid-template-columns:auto 1fr;gap:2.5rem;align-items:center;background:white;padding:3rem;border-radius:2rem;box-shadow:0 20px 60px rgba(0,0,0,0.08);border:1px solid rgba(0,0,0,0.05);transition:all 0.4s cubic-bezier(0.4,0,0.2,1);position:relative;overflow:hidden;animation:fadeInUp 0.8s ease-out both} .intelligence-feature:nth-child(1){animation-delay:0.1s} .intelligence-feature:nth-child(2){animation-delay:0.2s} .intelligence-feature:nth-child(3){animation-delay:0.3s} .intelligence-feature::before{content:'';position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%)} .intelligence-feature:hover{transform:translateY(-8px);box-shadow:0 30px 80px rgba(0,0,0,0.15)} .feature-visual{width:100px;height:100px;position:relative;flex-shrink:0} .animated-icon{width:100%;height:100%;animation:float 6s ease-in-out infinite} .feature-svg{width:100%;height:100%} .feature-content h3{font-size:1.75rem;font-weight:700;color:#0f172a;margin-bottom:1rem;line-height:1.3} .feature-content p{color:#64748b;line-height:1.7;margin-bottom:1.5rem;font-size:1.1rem} .feature-metrics{display:flex;gap:1rem;flex-wrap:wrap} .metric{background:rgba(102,126,234,0.1);color:#667eea;padding:0.5rem 1rem;border-radius:1.5rem;font-size:0.875rem;font-weight:600;border:1px solid rgba(102,126,234,0.2);transition:all 0.3s ease} .metric:hover{background:rgba(102,126,234,0.15);transform:translateY(-1px)} .stats-showcase{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:2.5rem;margin-top:5rem;max-width:1000px;margin-left:auto;margin-right:auto} .stat-item{text-align:center;background:white;padding:2.5rem 2rem;border-radius:1.5rem;box-shadow:0 10px 40px rgba(0,0,0,0.08);border:1px solid rgba(0,0,0,0.05);transition:all 0.3s ease;position:relative;overflow:hidden;animation:fadeInUp 0.8s ease-out both} .stat-item:nth-child(1){animation-delay:0.1s} .stat-item:nth-child(2){animation-delay:0.2s} .stat-item:nth-child(3){animation-delay:0.3s} .stat-item:nth-child(4){animation-delay:0.4s} .stat-item::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%)} .stat-item:hover{transform:translateY(-5px);box-shadow:0 20px 60px rgba(0,0,0,0.12)} .stat-number{font-size:3rem;font-weight:800;color:#0f172a;margin-bottom:0.5rem;line-height:1;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text} .stat-label{font-size:1rem;color:#64748b;font-weight:500;text-transform:uppercase;letter-spacing:0.5px} .use-cases{padding:8rem 0;background:white;position:relative;overflow:hidden} .use-cases::before{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(circle at 80% 20%,rgba(99,102,241,0.02) 0%,transparent 50%),radial-gradient(circle at 20% 80%,rgba(139,92,246,0.02) 0%,transparent 50%);pointer-events:none} .cases-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:2rem;margin-top:5rem;max-width:1200px;margin-left:auto;margin-right:auto} @media (max-width:1024px){.cases-grid{grid-template-columns:repeat(2,1fr);gap:2rem} } .case-card{background:white;padding:2.5rem;border-radius:2rem;box-shadow:0 20px 60px rgba(0,0,0,0.08);border:1px solid rgba(0,0,0,0.05);transition:all 0.4s cubic-bezier(0.4,0,0.2,1);position:relative;overflow:hidden;animation:fadeInUp 0.8s ease-out both} .case-card:nth-child(1){animation-delay:0.1s} .case-card:nth-child(2){animation-delay:0.2s} .case-card:nth-child(3){animation-delay:0.3s} .case-card:nth-child(4){animation-delay:0.4s} .case-card::before{content:'';position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%)} .case-card.premium::before{background:linear-gradient(135deg,#f59e0b 0%,#f97316 100%)} .case-card:hover{transform:translateY(-8px);box-shadow:0 30px 80px rgba(0,0,0,0.15)} .case-header{display:flex;align-items:center;gap:1.5rem;margin-bottom:1.5rem} .case-icon{width:60px;height:60px;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border-radius:1rem;display:flex;align-items:center;justify-content:center;color:white;flex-shrink:0} .case-card.premium .case-icon{background:linear-gradient(135deg,#f59e0b 0%,#f97316 100%)} .case-meta h3{font-size:1.5rem;font-weight:700;color:#0f172a;margin-bottom:0.5rem;line-height:1.3} .case-type{font-size:0.875rem;color:#667eea;font-weight:600;text-transform:uppercase;letter-spacing:0.5px} .case-card.premium .case-type{color:#f59e0b} .case-card p{color:#64748b;line-height:1.7;margin-bottom:1.5rem;font-size:1rem} .case-benefits{display:flex;gap:0.75rem;flex-wrap:wrap} .case-benefits span{background:rgba(102,126,234,0.1);color:#667eea;padding:0.375rem 0.875rem;border-radius:1rem;font-size:0.875rem;font-weight:500;border:1px solid rgba(102,126,234,0.2)} .case-card.premium .case-benefits span{background:rgba(245,158,11,0.1);color:#f59e0b;border-color:rgba(245,158,11,0.2)} .technology{padding:8rem 0;background:linear-gradient(135deg,#f8fafc 0%,#ffffff 100%);position:relative;overflow:hidden} .technology::before{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(circle at 20% 80%,rgba(99,102,241,0.03) 0%,transparent 50%),radial-gradient(circle at 80% 20%,rgba(139,92,246,0.03) 0%,transparent 50%);pointer-events:none} .tech-showcase{display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:center;margin-top:5rem;max-width:1200px;margin-left:auto;margin-right:auto} .tech-visual{position:relative;animation:fadeInLeft 0.8s ease-out} .data-flow{position:relative;background:white;padding:3rem;border-radius:2rem;box-shadow:0 20px 60px rgba(0,0,0,0.08);border:1px solid rgba(0,0,0,0.05)} .data-node{display:flex;align-items:center;gap:1rem;padding:1.5rem;background:linear-gradient(135deg,#f8fafc 0%,#ffffff 100%);border-radius:1rem;box-shadow:0 4px 20px rgba(0,0,0,0.05);border:1px solid rgba(0,0,0,0.05);margin-bottom:1.5rem;transition:all 0.3s ease} .data-node:hover{transform:translateY(-2px);box-shadow:0 8px 30px rgba(0,0,0,0.1)} .data-node.primary{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:white;box-shadow:0 8px 30px rgba(102,126,234,0.3)} .data-sources{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem} .node-icon{width:40px;height:40px;background:rgba(102,126,234,0.1);border-radius:0.75rem;display:flex;align-items:center;justify-content:center;color:#667eea;flex-shrink:0} .data-node.primary .node-icon{background:rgba(255,255,255,0.2);color:white} .data-node span{font-weight:600;font-size:0.875rem} .tech-features{animation:fadeInRight 0.8s ease-out} .tech-feature{display:flex;gap:2rem;align-items:flex-start;margin-bottom:3rem;padding:2rem;background:white;border-radius:1.5rem;box-shadow:0 10px 40px rgba(0,0,0,0.08);border:1px solid rgba(0,0,0,0.05);transition:all 0.3s ease} .tech-feature:hover{transform:translateY(-3px);box-shadow:0 20px 60px rgba(0,0,0,0.12)} .feature-number{width:60px;height:60px;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:white;border-radius:1rem;display:flex;align-items:center;justify-content:center;font-size:1.5rem;font-weight:800;flex-shrink:0} .tech-feature h3{font-size:1.5rem;font-weight:700;color:#0f172a;margin-bottom:1rem;line-height:1.3} .tech-feature p{color:#64748b;line-height:1.7;font-size:1rem} .getting-started{padding:8rem 0;background:white;position:relative;overflow:hidden} .getting-started::before{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(circle at 80% 20%,rgba(99,102,241,0.02) 0%,transparent 50%),radial-gradient(circle at 20% 80%,rgba(139,92,246,0.02) 0%,transparent 50%);pointer-events:none} .steps-process{display:grid;gap:4rem;margin-top:5rem;max-width:1000px;margin-left:auto;margin-right:auto} .step-item{display:grid;grid-template-columns:auto 1fr;gap:3rem;align-items:center;position:relative;animation:fadeInUp 0.8s ease-out both} .step-item:nth-child(1){animation-delay:0.1s} .step-item:nth-child(2){animation-delay:0.2s} .step-item:nth-child(3){animation-delay:0.3s} .step-item:nth-child(4){animation-delay:0.4s} .step-visual{position:relative;display:flex;flex-direction:column;align-items:center} .step-number{width:80px;height:80px;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:white;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:2rem;font-weight:800;box-shadow:0 10px 30px rgba(102,126,234,0.3);position:relative;z-index:2} .step-connector{width:2px;height:60px;background:linear-gradient(to bottom,#667eea,rgba(102,126,234,0.3));margin-top:1rem} .step-item:last-child .step-connector{display:none} .step-content h3{font-size:1.75rem;font-weight:700;color:#0f172a;margin-bottom:1rem;line-height:1.3} .step-content p{color:#64748b;line-height:1.7;margin-bottom:1.5rem;font-size:1.1rem} .step-features{display:flex;gap:0.75rem;flex-wrap:wrap} .step-features span{background:rgba(102,126,234,0.1);color:#667eea;padding:0.375rem 0.875rem;border-radius:1rem;font-size:0.875rem;font-weight:500;border:1px solid rgba(102,126,234,0.2)} .cta-section{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:white;padding:4rem 0;margin-top:3rem;border-radius:2rem;text-align:center;position:relative;overflow:hidden} .cta-section::before{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(circle at 20% 80%,rgba(255,255,255,0.1) 0%,transparent 50%),radial-gradient(circle at 80% 20%,rgba(255,255,255,0.1) 0%,transparent 50%);pointer-events:none} .cta-content h3{font-size:2.5rem;font-weight:800;margin-bottom:1rem;color:white;position:relative;z-index:1} .cta-content p{font-size:1.25rem;color:rgba(255,255,255,0.9);margin-bottom:2rem;line-height:1.6;position:relative;z-index:1} .btn-premium{display:inline-flex;align-items:center;gap:0.75rem;padding:1rem 2rem;background:white;color:#667eea;text-decoration:none;border-radius:1rem;font-weight:700;font-size:1.1rem;transition:all 0.3s ease;box-shadow:0 10px 30px rgba(0,0,0,0.2);position:relative;z-index:1} .btn-premium:hover{transform:translateY(-3px);box-shadow:0 15px 40px rgba(0,0,0,0.3);color:#667eea} .btn-premium svg{transition:transform 0.3s ease} .btn-premium:hover svg{transform:translate(3px,-3px)} .faq-premium{padding:8rem 0;background:linear-gradient(135deg,#f8fafc 0%,#ffffff 100%);position:relative;overflow:hidden} .faq-premium::before{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(circle at 20% 80%,rgba(99,102,241,0.03) 0%,transparent 50%),radial-gradient(circle at 80% 20%,rgba(139,92,246,0.03) 0%,transparent 50%);pointer-events:none} .faq-grid{display:grid;gap:2rem;margin-top:5rem;max-width:1000px;margin-left:auto;margin-right:auto} .faq-item{background:white;border-radius:1.5rem;box-shadow:0 10px 40px rgba(0,0,0,0.08);border:1px solid rgba(0,0,0,0.05);transition:all 0.3s ease;overflow:hidden;animation:fadeInUp 0.8s ease-out both} .faq-item:nth-child(1){animation-delay:0.1s} .faq-item:nth-child(2){animation-delay:0.2s} .faq-item:nth-child(3){animation-delay:0.3s} .faq-item:nth-child(4){animation-delay:0.4s} .faq-item:nth-child(5){animation-delay:0.5s} .faq-item:nth-child(6){animation-delay:0.6s} .faq-item:hover{transform:translateY(-3px);box-shadow:0 20px 60px rgba(0,0,0,0.12)} .faq-question{display:flex;justify-content:space-between;align-items:center;padding:2rem;cursor:pointer;transition:all 0.3s ease} .faq-question:hover{background:rgba(102,126,234,0.02)} .faq-question h3{font-size:1.25rem;font-weight:700;color:#0f172a;margin:0;line-height:1.4} .faq-toggle{width:40px;height:40px;background:rgba(102,126,234,0.1);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#667eea;transition:all 0.3s ease;flex-shrink:0} .faq-item:hover .faq-toggle{background:rgba(102,126,234,0.2);transform:scale(1.1)} .faq-toggle svg{width:20px;height:20px;transition:transform 0.3s ease} .faq-answer{padding:0 2rem 2rem;color:#64748b;line-height:1.7;font-size:1rem} .cta-band-minimal{padding:6rem 0;background:linear-gradient(135deg,#0f172a 0%,#1e293b 100%);color:white;text-align:center;position:relative;overflow:hidden} .cta-band-minimal::before{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(circle at 20% 80%,rgba(102,126,234,0.1) 0%,transparent 50%),radial-gradient(circle at 80% 20%,rgba(139,92,246,0.1) 0%,transparent 50%);pointer-events:none} .cta-content-minimal{position:relative;z-index:1} .cta-content-minimal h2{font-size:clamp(2.5rem,5vw,3.5rem);font-weight:800;margin-bottom:1.5rem;color:white;line-height:1.1;letter-spacing:-0.02em} .cta-content-minimal .cta-subtitle-minimal{font-size:1.25rem;color:rgba(255,255,255,0.9);margin-bottom:2.5rem;line-height:1.6;max-width:800px;margin-left:auto;margin-right:auto} .btn-cta-minimal{display:inline-flex;align-items:center;gap:0.75rem;padding:1.25rem 2.5rem;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:white;text-decoration:none;border-radius:1rem;font-weight:700;font-size:1.1rem;transition:all 0.3s ease;box-shadow:0 10px 30px rgba(102,126,234,0.3);position:relative;z-index:1} .btn-cta-minimal:hover{transform:translateY(-3px);box-shadow:0 15px 40px rgba(102,126,234,0.4);color:white} .cta-content-minimal .cta-tagline{font-size:1rem;color:rgba(255,255,255,0.7);margin-top:2rem;font-style:italic;font-weight:500;position:relative;z-index:1} @keyframes slideInDown{from{opacity:0;transform:translateY(-20px)} to{opacity:1;transform:translateY(0)} } @keyframes fadeInUp{from{opacity:0;transform:translateY(30px)} to{opacity:1;transform:translateY(0)} } @keyframes fadeInLeft{from{opacity:0;transform:translateX(-30px)} to{opacity:1;transform:translateX(0)} } @keyframes fadeInRight{from{opacity:0;transform:translateX(30px)} to{opacity:1;transform:translateX(0)} } @keyframes float{0%,100%{transform:translateY(0px)} 50%{transform:translateY(-10px)} } @media (max-width:1024px){.tech-showcase{grid-template-columns:1fr;gap:3rem} .data-sources{grid-template-columns:1fr} } @media (max-width:768px){.intelligence-overview,.use-cases,.technology,.getting-started,.faq-premium{padding:5rem 0} .intelligence-feature,.step-item{grid-template-columns:1fr;text-align:center;gap:2rem} .cases-grid{grid-template-columns:1fr} .stats-showcase{grid-template-columns:repeat(2,1fr)} .step-connector{display:none} .cta-content h3{font-size:2rem} .cta-content-minimal h2{font-size:2.5rem} } @media (max-width:480px){.stats-showcase{grid-template-columns:1fr} .intelligence-feature,.case-card,.tech-feature,.faq-item{padding:2rem} .step-number{width:60px;height:60px;font-size:1.5rem} .feature-visual{width:80px;height:80px} .case-icon{width:50px;height:50px} .weather-section{padding:2rem;margin-top:1.5rem} .weather-title{font-size:1.5rem} .weather-subtitle{font-size:1rem} .weather-content{grid-template-columns:1fr;gap:1rem} .weather-timeline{padding:1.25rem} .weather-icon{width:40px;height:40px;font-size:1.25rem} .section-title{font-size:2rem} .section-lead{font-size:1rem} .premium-badge{padding:0.5rem 1.5rem;font-size:0.75rem} } @keyframes fadeIn{from{opacity:0} to{opacity:1} } @keyframes slideUp{from{opacity:0;transform:translateY(20px)} to{opacity:1;transform:translateY(0)} } @keyframes float{0%,100%{transform:translateY(0)} 25%{transform:translateY(-5px)} 75%{transform:translateY(3px)} } @keyframes slideInUp{from{opacity:0;transform:translateY(20px)} to{opacity:1;transform:translateY(0)} } @keyframes slideInLeft{from{opacity:0;transform:translateX(-20px)} to{opacity:1;transform:translateX(0)} } @keyframes slideInRight{from{opacity:0;transform:translateX(20px)} to{opacity:1;transform:translateX(0)} } @keyframes scaleIn{from{opacity:0;transform:scale(0.9)} to{opacity:1;transform:scale(1)} } @keyframes bounceIn{0%{opacity:0;transform:scale(0.3)} 50%{opacity:1;transform:scale(1.05)} 70%{transform:scale(0.9)} 100%{opacity:1;transform:scale(1)} } @keyframes pulse{0%,100%{opacity:1} 50%{opacity:0.7} } @keyframes shimmer{0%{background-position:-200px 0} 100%{background-position:calc(200px + 100%) 0} } @keyframes spin{0%{transform:none} 100%{transform:none} } .animate-fade-in{animation:fadeIn 0.8s var(--transition)} .animate-slide-up{animation:slideUp 0.8s var(--transition)} .animate-slide-in-up{animation:slideInUp 0.6s var(--transition)} .animate-slide-in-left{animation:slideInLeft 0.6s var(--transition)} .animate-slide-in-right{animation:slideInRight 0.6s var(--transition)} .animate-scale-in{animation:scaleIn 0.6s var(--transition)} .animate-bounce-in{animation:bounceIn 0.8s var(--transition)} .animate-pulse{animation:pulse 2s var(--transition) infinite} .animate-spin{animation:spin 1s linear infinite} .stagger-1{animation-delay:0.1s} .stagger-2{animation-delay:0.2s} .stagger-3{animation-delay:0.3s} .stagger-4{animation-delay:0.4s} .stagger-5{animation-delay:0.5s} .hover-lift{transition:transform 0.2s var(--transition)} .hover-lift:hover{transform:translateY(-4px)} .hover-scale{transition:transform 0.2s var(--transition)} .hover-scale:hover{transform:scale(1.05)} .hover-rotate{transition:transform 0.2s var(--transition)} .hover-rotate:hover{transform:none} .loading-shimmer{background:linear-gradient(90deg,var(--stone-light) 25%,var(--stone) 50%,var(--stone-light) 75% );background-size:200px 100%;animation:shimmer 1.5s infinite} .form-group{transition:transform 0.3s ease} .form-group:focus-within{transform:scale(1.02)} @media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:0.01ms !important;animation-iteration-count:1 !important;transition-duration:0.01ms !important} .form-group:focus-within{transform:none !important} } .animate-fade-in,.animate-slide-up,.animate-slide-in-up,.animate-slide-in-left,.animate-slide-in-right,.animate-scale-in,.animate-bounce-in{will-change:opacity,transform} .feature-card,.resource-card,.testimonial{opacity:0;transform:translateY(30px);transition:opacity 0.8s ease,transform 0.8s ease} .feature-card.animate-in,.resource-card.animate-in,.testimonial.animate-in{opacity:1;transform:translateY(0)} .timeline-handle{transition:box-shadow 0.2s var(--transition)} .timeline-handle:active{box-shadow:0 2px 8px rgba(0,0,0,0.15)} .chip{transition:all 0.2s var(--transition)} .chip:hover{transform:scale(1.05)} .chip.active{transform:scale(1.05)} .btn-primary:hover{transform:translateY(-1px)} .btn-secondary:hover{transform:translateY(-1px)} .logo:hover{transform:translateX(2px)} .nav-inner{transition:padding 0.4s var(--transition)} .nav.scrolled .nav-inner{padding:1rem 0} @keyframes fadeIn{from{opacity:0} to{opacity:1} } @keyframes slideUp{from{opacity:0;transform:translateY(20px)} to{opacity:1;transform:translateY(0)} } @keyframes float{0%,100%{transform:translateY(0)} 25%{transform:translateY(-5px)} 75%{transform:translateY(3px)} } @keyframes slideInUp{from{opacity:0;transform:translateY(20px)} to{opacity:1;transform:translateY(0)} } @keyframes slideInLeft{from{opacity:0;transform:translateX(-20px)} to{opacity:1;transform:translateX(0)} } @keyframes slideInRight{from{opacity:0;transform:translateX(20px)} to{opacity:1;transform:translateX(0)} } @keyframes scaleIn{from{opacity:0;transform:scale(0.9)} to{opacity:1;transform:scale(1)} } @keyframes bounceIn{0%{opacity:0;transform:scale(0.3)} 50%{opacity:1;transform:scale(1.05)} 70%{transform:scale(0.9)} 100%{opacity:1;transform:scale(1)} } @keyframes pulse{0%,100%{opacity:1} 50%{opacity:0.7} } @keyframes shimmer{0%{background-position:-200px 0} 100%{background-position:calc(200px + 100%) 0} } @keyframes spin{0%{transform:none} 100%{transform:none} } .animate-fade-in{animation:fadeIn 0.8s var(--transition)} .animate-slide-up{animation:slideUp 0.8s var(--transition)} .animate-slide-in-up{animation:slideInUp 0.6s var(--transition)} .animate-slide-in-left{animation:slideInLeft 0.6s var(--transition)} .animate-slide-in-right{animation:slideInRight 0.6s var(--transition)} .animate-scale-in{animation:scaleIn 0.6s var(--transition)} .animate-bounce-in{animation:bounceIn 0.8s var(--transition)} .animate-pulse{animation:pulse 2s var(--transition) infinite} .animate-spin{animation:spin 1s linear infinite} .stagger-1{animation-delay:0.1s} .stagger-2{animation-delay:0.2s} .stagger-3{animation-delay:0.3s} .stagger-4{animation-delay:0.4s} .stagger-5{animation-delay:0.5s} .hover-lift{transition:transform 0.2s var(--transition)} .hover-lift:hover{transform:translateY(-4px)} .hover-scale{transition:transform 0.2s var(--transition)} .hover-scale:hover{transform:scale(1.05)} .hover-rotate{transition:transform 0.2s var(--transition)} .hover-rotate:hover{transform:none} .loading-shimmer{background:linear-gradient(90deg,var(--stone-light) 25%,var(--stone) 50%,var(--stone-light) 75% );background-size:200px 100%;animation:shimmer 1.5s infinite} .form-group{transition:transform 0.3s ease} .form-group:focus-within{transform:scale(1.02)} @media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:0.01ms !important;animation-iteration-count:1 !important;transition-duration:0.01ms !important} .form-group:focus-within{transform:none !important} } .animate-fade-in,.animate-slide-up,.animate-slide-in-up,.animate-slide-in-left,.animate-slide-in-right,.animate-scale-in,.animate-bounce-in{will-change:opacity,transform} .feature-card,.resource-card,.testimonial{opacity:0;transform:translateY(30px);transition:opacity 0.8s ease,transform 0.8s ease} .feature-card.animate-in,.resource-card.animate-in,.testimonial.animate-in{opacity:1;transform:translateY(0)} .timeline-handle{transition:box-shadow 0.2s var(--transition)} .timeline-handle:active{box-shadow:0 2px 8px rgba(0,0,0,0.15)} .chip{transition:all 0.2s var(--transition)} .chip:hover{transform:scale(1.05)} .chip.active{transform:scale(1.05)} .btn-primary:hover{transform:translateY(-1px)} .btn-secondary:hover{transform:translateY(-1px)} .logo:hover{transform:translateX(2px)} .nav-inner{transition:padding 0.4s var(--transition)} .nav.scrolled .nav-inner{padding:1rem 0} .footer{padding:var(--space-2xl) 0 var(--space-xl);background:var(--charcoal);color:var(--stone)} .footer-grid{display:grid;gap:var(--space-xl);margin-bottom:var(--space-xl)} @media (min-width:768px){.footer-grid{grid-template-columns:repeat(4,1fr)} } .footer-section h3{color:white;margin-bottom:var(--space-md);font-size:var(--text-base);font-family:var(--font-sans);font-weight:500} .footer-links{display:flex;flex-direction:column;gap:var(--space-xs)} .footer-links a{color:var(--stone);text-decoration:none;transition:color 0.3s var(--transition);font-size:var(--text-sm)} .footer-links a:hover{color:white} .footer-bottom{padding-top:var(--space-xl);border-top:1px solid rgba(212,207,196,0.2);display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:var(--space-md)} .footer-disclaimers{margin-top:var(--space-lg);padding-top:var(--space-lg);border-top:1px solid rgba(255,255,255,0.1)} .footer-disclaimers .container{max-width:1200px;margin:0 auto;padding:0 var(--space-md)} .footer-disclaimers > .container > div:first-child{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--space-md);margin-bottom:var(--space-md)} .disclaimer-item{color:rgba(255,255,255,0.8);font-size:12px;line-height:1.5} .disclaimer-item strong{color:white} .footer-disclaimers > .container > div:last-child{text-align:center;color:rgba(255,255,255,0.6);font-size:11px;margin-bottom:var(--space-md)} .footer-disclaimers a{color:rgba(255,255,255,0.8);text-decoration:underline} .footer-disclaimers a:hover{color:white} @media (max-width:768px){.footer-grid{grid-template-columns:repeat(2,1fr);gap:var(--space-lg)} .footer-bottom{flex-direction:column;text-align:center;gap:var(--space-md)} .footer-disclaimers > .container > div:first-child{grid-template-columns:1fr;gap:var(--space-md)} .disclaimer-item{text-align:center;font-size:11px} } @media (max-width:480px){.footer-grid{grid-template-columns:1fr;gap:var(--space-lg)} .footer-section{text-align:center} } :root{--primary:#2563eb;--primary-light:#3b82f6;--primary-dark:#1d4ed8;--secondary:#0f172a;--secondary-light:#1e293b;--accent:#06b6d4;--text-primary:#0f172a;--text-secondary:#475569;--text-tertiary:#64748b;--surface:#ffffff;--surface-elevated:#f8fafc;--border:#e2e8f0;--border-light:#f1f5f9;--shadow-sm:0 1px 2px 0 rgba(0,0,0,0.05);--shadow-md:0 4px 6px -1px rgba(0,0,0,0.1),0 2px 4px -1px rgba(0,0,0,0.06);--shadow-lg:0 10px 15px -3px rgba(0,0,0,0.1),0 4px 6px -2px rgba(0,0,0,0.05);--shadow-xl:0 20px 25px -5px rgba(0,0,0,0.1),0 10px 10px -5px rgba(0,0,0,0.04);--gradient-primary:linear-gradient(135deg,#667eea 0%,#764ba2 100%);--gradient-accent:linear-gradient(135deg,#06b6d4 0%,#0891b2 100%);--gradient-hero:linear-gradient(135deg,rgba(37,99,235,0.1) 0%,rgba(6,182,212,0.1) 100%);--font-sans:'Inter',-apple-system,BlinkMacSystemFont,sans-serif;--font-mono:'JetBrains Mono','SF Mono',Monaco,monospace;--spacing-xs:0.25rem;--spacing-sm:0.5rem;--spacing-md:1rem;--spacing-lg:1.5rem;--spacing-xl:2rem;--spacing-2xl:3rem;--spacing-3xl:4rem;--spacing-4xl:6rem;--radius-sm:0.375rem;--radius-md:0.5rem;--radius-lg:0.75rem;--radius-xl:1rem;--transition:cubic-bezier(0.4,0,0.2,1)} *{margin:0;padding:0;box-sizing:border-box} html{scroll-behavior:smooth} body{font-family:var(--font-sans);line-height:1.6;color:var(--text-primary);background:var(--surface);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale} .about-container{max-width:1400px;margin:0 auto;padding:0} .hero-section{position:relative;min-height:60vh;display:flex;align-items:center;justify-content:center;background:var(--gradient-hero);overflow:hidden;padding:var(--spacing-2xl) 0;margin-top:-100px;padding-top:calc(100px + var(--spacing-2xl))} .hero-section::before{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1000 1000"><defs><radialGradient id="a" cx="50%" cy="50%" r="50%"><stop offset="0%" stop-color="%23ffffff" stop-opacity="0.1"/><stop offset="100%" stop-color="%23ffffff" stop-opacity="0"/></radialGradient></defs><circle cx="200" cy="200" r="3" fill="url(%23a)"/><circle cx="800" cy="400" r="2" fill="url(%23a)"/><circle cx="400" cy="600" r="1" fill="url(%23a)"/><circle cx="600" cy="800" r="2" fill="url(%23a)"/></svg>');opacity:0.3;animation:float 20s ease-in-out infinite} @keyframes float{0%,100%{transform:translateY(0px)} 50%{transform:translateY(-20px)} } .hero-content{text-align:center;max-width:800px;padding:var(--spacing-2xl);position:relative;z-index:1;margin:0 auto;width:100%} .hero-badge{display:inline-flex;align-items:center;gap:var(--spacing-sm);background:rgba(37,99,235,0.1);border:1px solid rgba(37,99,235,0.2);padding:var(--spacing-sm) var(--spacing-lg);border-radius:50px;font-size:0.875rem;font-weight:500;color:var(--primary-dark);margin-bottom:var(--spacing-xl);backdrop-filter:blur(10px);animation:slideDown 0.8s var(--transition)} @keyframes slideDown{from{opacity:0;transform:translateY(-20px)} to{opacity:1;transform:translateY(0)} } .hero-title{font-size:clamp(2.5rem,5vw,4rem);font-weight:700;line-height:1.1;margin-bottom:var(--spacing-lg);background:linear-gradient(135deg,var(--text-primary) 0%,var(--primary) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:slideUp 0.8s var(--transition) 0.2s both} .hero-subtitle{font-size:1.25rem;color:var(--text-secondary);margin-bottom:var(--spacing-2xl);font-weight:400;line-height:1.6;animation:slideUp 0.8s var(--transition) 0.4s both} @keyframes slideUp{from{opacity:0;transform:translateY(30px)} to{opacity:1;transform:translateY(0)} } .hero-cta{display:inline-flex;align-items:center;gap:var(--spacing-sm);background:var(--primary);color:white;padding:var(--spacing-lg) var(--spacing-2xl);border:none;border-radius:var(--radius-lg);font-size:1.125rem;font-weight:600;text-decoration:none;cursor:pointer;transition:all 0.3s var(--transition);box-shadow:var(--shadow-lg);animation:slideUp 0.8s var(--transition) 0.6s both} .hero-cta:hover{background:var(--primary-dark);transform:translateY(-2px);box-shadow:var(--shadow-xl)} .section{padding:var(--spacing-4xl) var(--spacing-xl)} .section-header{text-align:center;max-width:800px;margin:0 auto var(--spacing-3xl)} .section-title{font-size:clamp(2rem,3vw,2.5rem);font-weight:700;margin-bottom:var(--spacing-lg);color:var(--text-primary)} .section-description{font-size:1.125rem;color:var(--text-secondary);line-height:1.7} .features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:var(--spacing-lg);margin-top:var(--spacing-2xl)} .feature-card{position:relative;background:var(--surface);border:1px solid var(--border-light);border-radius:var(--radius-lg);padding:var(--spacing-lg);transition:all 0.4s var(--transition);overflow:hidden;display:flex;align-items:flex-start;gap:var(--spacing-md)} .feature-card::before{content:'';position:absolute;top:0;left:0;right:0;height:4px;background:var(--gradient-primary);transform:translateX(-100%);transition:transform 0.4s var(--transition)} .feature-card:hover::before{transform:translateX(0)} .feature-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);border-color:var(--primary)} .feature-icon{width:40px;height:40px;background:var(--gradient-primary);border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;font-size:1rem;margin-right:var(--spacing-md);margin-bottom:0;transition:transform 0.3s var(--transition);flex-shrink:0} .feature-card:hover .feature-icon{transform:scale(1.05)} .feature-title{font-size:1.125rem;font-weight:600;margin-bottom:var(--spacing-sm);color:var(--text-primary)} .feature-description{color:var(--text-secondary);line-height:1.5;font-size:0.95rem} .safety-section{background:var(--surface-elevated)} .safety-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--spacing-lg);margin-top:var(--spacing-2xl)} .safety-item{display:flex;align-items:flex-start;gap:var(--spacing-md);padding:var(--spacing-lg);background:var(--surface);border-radius:var(--radius-md);border:1px solid var(--border-light);transition:all 0.3s var(--transition)} .safety-item:hover{transform:translateY(-4px);box-shadow:var(--shadow-md);border-color:var(--accent)} .safety-icon{flex-shrink:0;width:36px;height:36px;background:var(--gradient-accent);border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;font-size:1rem;color:white} .safety-content h3{font-size:1rem;font-weight:600;margin-bottom:var(--spacing-xs);color:var(--text-primary)} .safety-content p{color:var(--text-secondary);font-size:0.9rem;line-height:1.5} .stats-section{background:var(--secondary);color:white;text-align:center} .stats-section .section-title{color:white} .stats-section .section-description{color:rgba(255,255,255,0.8)} .stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-2xl);margin-top:var(--spacing-3xl)} .stat-item{padding:var(--spacing-xl);border-radius:var(--radius-lg);background:rgba(255,255,255,0.05);border:1px solid rgba(255,255,255,0.1);backdrop-filter:blur(10px);transition:all 0.3s var(--transition)} .stat-item:hover{background:rgba(255,255,255,0.1);transform:translateY(-4px)} .stat-number{font-size:3rem;font-weight:700;margin-bottom:var(--spacing-sm);background:linear-gradient(135deg,#ffffff 0%,var(--accent) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text} .stat-label{font-size:1.125rem;font-weight:500;opacity:0.9} .benefits-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--spacing-xl);margin-top:var(--spacing-2xl)} .benefit-item{background:var(--surface);padding:var(--spacing-lg);border-radius:var(--radius-lg);border:1px solid var(--border-light);text-align:center;transition:all 0.4s var(--transition);position:relative;overflow:hidden} .benefit-item::before{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background:var(--gradient-primary);opacity:0;transition:opacity 0.4s var(--transition);z-index:1} .benefit-item:hover::before{opacity:0.05} .benefit-item:hover{transform:translateY(-4px);box-shadow:var(--shadow-md);border-color:var(--primary)} .benefit-item > *{position:relative;z-index:2} .benefit-icon{width:50px;height:50px;background:var(--gradient-primary);border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;font-size:1.25rem;margin:0 auto var(--spacing-md);transition:transform 0.3s var(--transition)} .benefit-item:hover .benefit-icon{transform:scale(1.05)} .benefit-title{font-size:1.125rem;font-weight:600;margin-bottom:var(--spacing-sm);color:var(--text-primary)} .benefit-description{color:var(--text-secondary);line-height:1.5;font-size:0.95rem} .cta-section{background:var(--gradient-primary);color:white;text-align:center;position:relative;overflow:hidden} .cta-section::before{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><defs><pattern id="grid" width="10" height="10" patternUnits="userSpaceOnUse"><path d="M 10 0 L 0 0 0 10" fill="none" stroke="white" stroke-opacity="0.1" stroke-width="1"/></pattern></defs><rect width="100" height="100" fill="url(%23grid)"/></svg>');opacity:0.3} .cta-content{position:relative;z-index:1} .cta-section .section-title{color:white} .cta-section .section-description{color:rgba(255,255,255,0.9);margin-bottom:var(--spacing-2xl)} .cta-button{display:inline-flex;align-items:center;gap:var(--spacing-sm);background:white;color:var(--primary);padding:var(--spacing-lg) var(--spacing-2xl);border:none;border-radius:var(--radius-lg);font-size:1.125rem;font-weight:600;text-decoration:none;cursor:pointer;transition:all 0.3s var(--transition);box-shadow:var(--shadow-lg)} .cta-button:hover{transform:translateY(-2px);box-shadow:var(--shadow-xl);background:var(--surface-elevated)} @media (max-width:768px){.section{padding:var(--spacing-2xl) var(--spacing-md)} .hero-content{padding:var(--spacing-xl) var(--spacing-md)} .features-grid{grid-template-columns:repeat(2,1fr);gap:var(--spacing-lg)} .safety-grid{grid-template-columns:1fr} .stats-grid{grid-template-columns:repeat(2,1fr);gap:var(--spacing-lg)} .benefits-grid{grid-template-columns:1fr} .safety-item{flex-direction:column;text-align:center} } @media (max-width:480px){.stats-grid{grid-template-columns:1fr} .features-grid{grid-template-columns:1fr} .hero-title{font-size:2rem} .section-title{font-size:1.75rem} } @media (max-width:768px){*{box-sizing:border-box} body{font-display:swap;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Oxygen,Ubuntu,Cantarell,sans-serif} img{max-width:100%;height:auto;loading:lazy;decoding:async} .svg-icon{width:24px;height:24px;fill:currentColor} .hero{will-change:transform;transform:translateZ(0)} .animated-icon{will-change:transform;transform:translateZ(0)} .planner-card{contain:layout style paint} .nav{will-change:transform;transform:translateZ(0)} } .touch-device{-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none} .touch-target-small{min-width:44px;min-height:44px;padding:8px} :root{--vh:1vh} @media (max-width:768px){.btn{min-height:44px;padding:12px 24px;font-size:16px} .btn-primary,.btn-secondary{width:100%;margin-bottom:12px} .form-input{font-size:16px;padding:12px;min-height:44px} .form-label{font-size:14px;margin-bottom:8px} .nav{min-height:100px} .nav-container{min-height:100px;padding:0 16px} .nav-logo{font-size:18px} .hero{padding:calc(100px + 2rem) 0 3rem;min-height:calc(var(--vh,1vh) * 100)} .hero-title{font-size:2rem;line-height:1.2;margin-bottom:1rem} .hero-subtitle{font-size:1rem;line-height:1.5;margin-bottom:1.5rem} .planner-card{padding:1.5rem;margin:0 16px} .planner-card-prominent{padding:1.5rem} .trust-indicators{flex-direction:column;gap:1rem;margin-top:2rem} .trust-item{flex-direction:row;align-items:center;gap:0.75rem} .intelligence-grid{grid-template-columns:1fr;gap:2rem} .intelligence-feature{text-align:center} .feature-visual{margin-bottom:1rem} .cases-grid{grid-template-columns:1fr;gap:1.5rem} .case-card{padding:1.5rem} .tech-showcase{flex-direction:column;gap:2rem} .data-flow{flex-direction:column;align-items:center;gap:1rem} .data-sources{grid-template-columns:repeat(2,1fr);gap:1rem} .steps-process{flex-direction:column;gap:2rem} .step-item{flex-direction:row;align-items:flex-start;gap:1rem} .step-visual{flex-shrink:0} .step-connector{display:none} .faq-grid{grid-template-columns:1fr;gap:1rem} .faq-item{padding:1rem} .faq-question h3{font-size:16px;line-height:1.4} .footer-grid{grid-template-columns:repeat(2,1fr);gap:2rem} .footer-bottom{flex-direction:column;gap:1rem;text-align:center} } @media (max-width:480px){.container{padding:0 16px} .hero-title{font-size:1.75rem} .planner-card{padding:1rem;margin:0 8px} .form-group{margin-bottom:1rem} .btn{padding:10px 20px;font-size:14px} .nav-links{display:none} .mobile-menu-toggle{display:block} } @media (max-width:768px) and (orientation:landscape){.hero{min-height:auto;padding:calc(100px + 1rem) 0 2rem} .hero-title{font-size:1.5rem} .planner-card{padding:1rem} } @media (-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){.svg-icon{image-rendering:-webkit-optimize-contrast;image-rendering:crisp-edges} } @media (prefers-reduced-motion:reduce){*{animation-duration:0.01ms !important;animation-iteration-count:1 !important;transition-duration:0.01ms !important} .animated-icon{animation:none} } @media (prefers-color-scheme:dark){:root{--text:#f1f5f9;--text-light:#94a3b8;--white:#0f172a;--gray:#1e293b;--border:#334155} } @import url('./resources.css');@import url('./article-tables.css');