html.js-motion { --motion-ease: cubic-bezier(0.16, 1, 0.3, 1); --motion-ease-soft: cubic-bezier(0.22, 1, 0.36, 1); --motion-glow: rgba(180, 202, 14, 0.22); --hero-enter-duration: 1500ms; --hero-child-duration: 1200ms; --hero-unit-duration: 1100ms; --hero-image-duration: 1600ms; }html.js-motion header { transition: background-color 240ms ease; }html.js-motion header.is-scrolled { background: rgba(255, 255, 255, 0.18); }html.js-motion .motion-hero { opacity: 0; transform: translate3d(0, 32px, 0) scale(0.972); filter: blur(16px); will-change: transform, opacity, filter; }html.js-motion .motion-hero.is-visible { animation: coronas-hero-enter var(--hero-enter-duration) var(--motion-ease-soft) both; animation-delay: var(--motion-delay, 0ms); opacity: 1; transform: translate3d(0, 0, 0) scale(1); filter: blur(0); }html.js-motion .motion-hero-copy { opacity: 0; transform: translate3d(0, 24px, 0); filter: blur(12px); will-change: transform, opacity, filter; }html.js-motion .motion-hero-copy.is-visible { animation: coronas-hero-child-enter var(--hero-child-duration) var(--motion-ease-soft) both; opacity: 1; transform: translate3d(0, 0, 0); filter: blur(0); }html.js-motion .motion-hero-kicker, html.js-motion .motion-hero-title, html.js-motion .motion-hero-lead, html.js-motion .motion-hero-actions { opacity: 0; transform: translate3d(0, 16px, 0); filter: blur(8px); will-change: transform, opacity, filter; }html.js-motion .motion-hero-kicker.is-visible { animation: coronas-hero-kicker-enter 760ms var(--motion-ease-soft) both; opacity: 1; transform: translate3d(0, 0, 0); filter: blur(0); }html.js-motion .motion-hero-title.is-visible { animation: coronas-hero-title-enter 1200ms var(--motion-ease-soft) both; opacity: 1; transform: translate3d(0, 0, 0); filter: blur(0); }html.js-motion .motion-hero-lead.is-visible { animation: coronas-hero-lead-enter 960ms var(--motion-ease-soft) both; opacity: 1; transform: translate3d(0, 0, 0); filter: blur(0); }html.js-motion .motion-hero-actions.is-visible { animation: coronas-hero-actions-enter 980ms var(--motion-ease-soft) both; opacity: 1; transform: translate3d(0, 0, 0); filter: blur(0); }html.js-motion .motion-hero-title { text-shadow: 0 0 0 rgba(180, 202, 14, 0); }html.js-motion .motion-hero-title span { text-shadow: 0 0 0 rgba(251, 188, 5, 0); }html.js-motion .motion-hero-button { position: relative; opacity: 0; transform: translate3d(0, 16px, 0) scale(0.965); filter: blur(10px); will-change: transform, opacity, filter; }html.js-motion .motion-hero-button.is-visible { animation: coronas-hero-button-enter 900ms var(--motion-ease-soft) both, coronas-button-pulse 2.9s ease-in-out infinite 900ms; opacity: 1; transform: translate3d(0, 0, 0) scale(1); filter: blur(0); }html.js-motion .motion-hero-button:hover { animation-play-state: paused; }html.js-motion .motion-hero-unit { opacity: 0; transform: translate3d(0, 18px, 0) scale(0.985); filter: blur(10px); will-change: transform, opacity, filter; }html.js-motion .motion-hero-unit.is-visible { animation: coronas-hero-unit-enter var(--hero-unit-duration) var(--motion-ease-soft) both; opacity: 1; transform: translate3d(0, 0, 0) scale(1); filter: blur(0); }html.js-motion .motion-timeline-track { transform-origin: top center; transform: translateX(-50%) scaleY(var(--timeline-progress, 0)) !important; will-change: transform; }html.js-motion .motion-timeline-step { opacity: 0; transform: translate3d(0, 34px, 0) scale(0.985); filter: blur(10px); will-change: transform, opacity, filter; }html.js-motion .motion-timeline-step.is-visible { opacity: 1; transform: translate3d(0, 0, 0) scale(1); filter: blur(0); }html.js-motion .motion-load { animation: coronas-enter 900ms var(--motion-ease-soft) both; animation-delay: var(--motion-delay, 0ms); }html.js-motion .motion-scroll { opacity: 0; transform: translate3d(0, 28px, 0) scale(0.975); filter: blur(10px); transition: transform 760ms var(--motion-ease-soft), opacity 760ms var(--motion-ease-soft), filter 760ms var(--motion-ease-soft), box-shadow 760ms ease, background-color 760ms ease; will-change: transform, box-shadow, filter; }html.js-motion .motion-scroll.is-visible { opacity: 1; transform: translate3d(0, 0, 0) scale(1); filter: blur(0); }html.js-motion .motion-card { position: relative; isolation: isolate; transition: transform 420ms var(--motion-ease), box-shadow 420ms ease, border-color 420ms ease, background-color 420ms ease, filter 420ms ease; will-change: transform; }html.js-motion .motion-card::after { content: ''; position: absolute; inset: 0; border-radius: inherit; opacity: 0; background: radial-gradient(circle at var(--motion-x, 50%) var(--motion-y, 0%), rgba(255, 255, 255, 0.22), transparent 38%); transition: opacity 280ms ease; pointer-events: none; z-index: 0; }html.js-motion .motion-card > * { position: relative; z-index: 1; }html.js-motion .motion-card:hover { transform: translate3d(0, -8px, 0); filter: saturate(1.03); }html.js-motion .motion-card:hover::after { opacity: 1; }html.js-motion .motion-bob { opacity: 0; transform: translate3d(0, 26px, 0) scale(0.965); filter: blur(10px); will-change: transform, opacity, filter; }html.js-motion .motion-bob.is-visible { animation: coronas-bob-enter 900ms var(--motion-ease-soft) both, coronas-bob-float 5.8s ease-in-out infinite; animation-delay: var(--motion-delay, 0ms), calc(var(--motion-delay, 0ms) + 900ms); }html.js-motion .motion-icon { transform-origin: center; }html.js-motion .motion-pulse { position: relative; }html.js-motion .motion-pulse::after { content: ''; position: absolute; inset: -10%; border-radius: inherit; border: 1px solid rgba(180, 202, 14, 0.18); animation: coronas-ring 4.4s ease-out infinite; pointer-events: none; }html.js-motion .motion-button { transition: transform 240ms var(--motion-ease), box-shadow 240ms ease, background-color 240ms ease, color 240ms ease, filter 240ms ease; will-change: transform; }html.js-motion .motion-button:hover { transform: translate3d(0, -3px, 0); box-shadow: 0 22px 42px rgba(1, 41, 92, 0.16); filter: brightness(1.02); }html.js-motion .motion-button:active { transform: translate3d(0, 1px, 0) scale(0.99); }html.js-motion .motion-sheen { position: relative; overflow: hidden; }html.js-motion .motion-sheen::before { content: ''; position: absolute; inset: 0; transform: translateX(-120%); background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.18), transparent); animation: coronas-sheen 5.8s ease-in-out infinite; pointer-events: none; }html.js-motion .motion-section-title { opacity: 0; transform: translate3d(0, 18px, 0); transition: opacity 700ms var(--motion-ease-soft), transform 700ms var(--motion-ease-soft); }html.js-motion .motion-section-title.is-visible { opacity: 1; transform: translate3d(0, 0, 0); }html.js-motion .motion-section-title .motion-underline { transform: scaleX(0.35); transform-origin: center; opacity: 0.35; transition: transform 900ms var(--motion-ease-soft), opacity 900ms ease; }html.js-motion .motion-section-title.is-visible .motion-underline { transform: scaleX(1); opacity: 1; }html.js-motion .motion-soft-pop { transform: translate3d(0, 0, 0) scale(0.98); opacity: 0.6; transition: transform 500ms var(--motion-ease-soft), opacity 500ms ease; }html.js-motion .motion-soft-pop.is-visible { transform: translate3d(0, 0, 0) scale(1); opacity: 1; }html.js-motion #solar .motion-solar-panel { opacity: 0; transform: translate3d(0, 42px, 0) scale(0.965); filter: blur(16px); will-change: transform, opacity, filter; }html.js-motion #solar .motion-solar-panel.is-visible { animation: coronas-solar-enter 1100ms var(--motion-ease-soft) both; }html.js-motion #solar .motion-solar-item { opacity: 0; transform: translate3d(0, 24px, 0) scale(0.985); filter: blur(10px); will-change: transform, opacity, filter; }html.js-motion #solar .motion-solar-item.is-visible { animation: coronas-solar-item-enter 900ms var(--motion-ease-soft) both; animation-delay: var(--motion-delay, 0ms); }html.js-motion .motion-parallax { will-change: transform; }html.js-motion .motion-stagger { animation-delay: var(--motion-delay, 0ms); }@keyframes coronas-bob-enter { 0% { opacity: 0; transform: translate3d(0, 26px, 0) scale(0.965); filter: blur(10px); } 55% { opacity: 1; filter: blur(0); } 100% { opacity: 1; transform: translate3d(0, 0, 0) scale(1); filter: blur(0); } }@keyframes coronas-bob-float { 0%, 100% { transform: translate3d(0, 0, 0) scale(1); } 50% { transform: translate3d(0, -6px, 0) scale(1.01); } }@keyframes coronas-hero-kicker-enter { 0% { opacity: 0; transform: translate3d(0, 16px, 0); filter: blur(8px); } 100% { opacity: 1; transform: translate3d(0, 0, 0); filter: blur(0); } }@keyframes coronas-hero-title-enter { 0% { opacity: 0; transform: translate3d(0, 18px, 0); filter: blur(14px); text-shadow: 0 0 0 rgba(180, 202, 14, 0); } 56% { opacity: 1; filter: blur(0); text-shadow: 0 0 24px rgba(180, 202, 14, 0.24), 0 0 42px rgba(1, 41, 92, 0.24); } 100% { opacity: 1; transform: translate3d(0, 0, 0); filter: blur(0); text-shadow: 0 0 16px rgba(180, 202, 14, 0.14), 0 0 28px rgba(1, 41, 92, 0.14); } }@keyframes coronas-hero-lead-enter { 0% { opacity: 0; transform: translate3d(0, 18px, 0); filter: blur(10px); } 100% { opacity: 1; transform: translate3d(0, 0, 0); filter: blur(0); } }@keyframes coronas-hero-actions-enter { 0% { opacity: 0; transform: translate3d(0, 18px, 0) scale(0.985); filter: blur(10px); } 100% { opacity: 1; transform: translate3d(0, 0, 0) scale(1); filter: blur(0); } }@keyframes coronas-hero-button-enter { 0% { opacity: 0; transform: translate3d(0, 16px, 0) scale(0.965); filter: blur(10px); } 100% { opacity: 1; transform: translate3d(0, 0, 0) scale(1); filter: blur(0); } }@keyframes coronas-button-pulse { 0%, 100% { box-shadow: 0 18px 36px rgba(180, 202, 14, 0.16), 0 0 0 0 rgba(180, 202, 14, 0); filter: brightness(1); } 50% { box-shadow: 0 24px 50px rgba(180, 202, 14, 0.24), 0 0 0 12px rgba(180, 202, 14, 0.08); filter: brightness(1.06); } }@keyframes coronas-hero-enter { 0% { opacity: 0; transform: translate3d(0, 32px, 0) scale(0.972); filter: blur(16px); } 48% { opacity: 1; filter: blur(0); } 100% { opacity: 1; transform: translate3d(0, 0, 0) scale(1); filter: blur(0); } }@keyframes coronas-hero-child-enter { 0% { opacity: 0; transform: translate3d(0, 24px, 0); filter: blur(10px); } 55% { opacity: 1; filter: blur(0); } 100% { opacity: 1; transform: translate3d(0, 0, 0); filter: blur(0); } }@keyframes coronas-hero-unit-enter { 0% { opacity: 0; transform: translate3d(0, 18px, 0) scale(0.985); filter: blur(10px); } 55% { opacity: 1; filter: blur(0); } 100% { opacity: 1; transform: translate3d(0, 0, 0) scale(1); filter: blur(0); } }@keyframes coronas-hero-image-enter { 0% { opacity: 0; transform: translate3d(0, 22px, 0) scale(1.04); filter: blur(12px); } 56% { opacity: 1; filter: blur(0); } 100% { opacity: 1; transform: translate3d(0, 0, 0) scale(1); filter: blur(0); } }@keyframes coronas-enter { 0% { opacity: 0; transform: translate3d(0, 26px, 0) scale(0.97); filter: blur(12px); } 55% { opacity: 1; filter: blur(0); } 100% { opacity: 1; transform: translate3d(0, 0, 0) scale(1); filter: blur(0); } }@keyframes coronas-solar-enter { 0% { opacity: 0; transform: translate3d(0, 42px, 0) scale(0.965); filter: blur(16px); } 56% { opacity: 1; filter: blur(0); } 100% { opacity: 1; transform: translate3d(0, 0, 0) scale(1); filter: blur(0); } }@keyframes coronas-solar-item-enter { 0% { opacity: 0; transform: translate3d(0, 24px, 0) scale(0.985); filter: blur(10px); } 58% { opacity: 1; filter: blur(0); } 100% { opacity: 1; transform: translate3d(0, 0, 0) scale(1); filter: blur(0); } }@keyframes coronas-float { 0%,100% { transform: translate3d(0, 0, 0); } 50% { transform: translate3d(0, -9px, 0); } }@keyframes coronas-ring { 0% { transform: scale(0.9); opacity: 0; } 18% { opacity: 0.24; } 100% { transform: scale(1.15); opacity: 0; } }@keyframes coronas-sheen { 0%, 65% { transform: translateX(-120%); } 100% { transform: translateX(120%); } }@media (max-width: 820px) { html.js-motion { --hero-enter-duration: 900ms; --hero-child-duration: 760ms; --hero-unit-duration: 680ms; } html.js-motion .motion-hero { transform: translate3d(0, 22px, 0) scale(0.985); filter: blur(10px); } html.js-motion .motion-hero-copy { transform: translate3d(0, 18px, 0); filter: blur(8px); } html.js-motion .motion-hero-kicker, html.js-motion .motion-hero-title, html.js-motion .motion-hero-lead, html.js-motion .motion-hero-actions { transform: translate3d(0, 12px, 0); filter: blur(6px); } html.js-motion .motion-hero-unit { transform: translate3d(0, 12px, 0) scale(0.99); filter: blur(6px); } html.js-motion .motion-bob { transform: translate3d(0, 18px, 0) scale(0.98); filter: blur(8px); } html.js-motion .motion-bob.is-visible { animation-duration: 760ms, 7.2s; } html.js-motion #solar .motion-solar-panel { transform: translate3d(0, 28px, 0) scale(0.98); filter: blur(10px); } html.js-motion #solar .motion-solar-item { transform: translate3d(0, 18px, 0) scale(0.99); filter: blur(8px); } }@media (prefers-reduced-motion: reduce) { html.js-motion .motion-load, html.js-motion .motion-scroll, html.js-motion .motion-icon, html.js-motion .motion-pulse::after, html.js-motion .motion-sheen::before, html.js-motion .motion-hero, html.js-motion .motion-hero-copy, html.js-motion .motion-hero-unit, html.js-motion .motion-hero-kicker, html.js-motion .motion-hero-title, html.js-motion .motion-hero-lead, html.js-motion .motion-hero-actions, html.js-motion .motion-hero-button, html.js-motion .motion-timeline-track, html.js-motion .motion-timeline-step, html.js-motion .motion-bob, html.js-motion #solar .motion-solar-panel, html.js-motion #solar .motion-solar-item { animation: none !important; transition-duration: 1ms !important; transform: none !important; filter: none !important; opacity: 1 !important; } html.js-motion header { transition: none !important; } }

html, body { scrollbar-width: none; -ms-overflow-style: none; } html::-webkit-scrollbar, body::-webkit-scrollbar { width: 0; height: 0; display: none; } .glass-card { background: rgba(255, 255, 255, 0.1); border: 1px solid rgba(255, 255, 255, 0.15); } .premium-shadow { box-shadow: 0 20px 40px -10px rgba(1, 41, 92, 0.08); } .solar-grid { background-color: #01295C; background-image: linear-gradient(rgba(180, 202, 14, 0.05) 1px, transparent 1px), linear-gradient(90deg, rgba(180, 202, 14, 0.05) 1px, transparent 1px); background-size: 40px 40px; position: relative; overflow: hidden; } .solar-grid::before { content: ''; position: absolute; inset: 0; background: radial-gradient(circle at 50% 0%, rgba(180, 202, 14, 0.05) 0%, transparent 70%); pointer-events: none; } .glow-pulse { animation: slow-glow 8s ease-in-out infinite alternate; } @keyframes slow-glow { 0% { opacity: 0.15; transform: scale(1); } 100% { opacity: 0.35; transform: scale(1.1); } } .floating { animation: float 5s ease-in-out infinite; } @keyframes float { 0%, 100% { transform: translateY(0px); } 50% { transform: translateY(-10px); } } .reveal { opacity: 0; transform: translateY(20px); transition: all 0.6s cubic-bezier(0.4, 0, 0.2, 1); } .reveal.active { opacity: 1; transform: translateY(0); } .btn-glow { position: relative; isolation: isolate; overflow: hidden; transform: translate3d(0, 0, 0); box-shadow: 0 0 0 0 rgba(180, 202, 14, 0.22), 0 18px 32px rgba(1, 41, 92, 0.14), inset 0 1px 0 rgba(255, 255, 255, 0.18); transition: transform 320ms cubic-bezier(0.16, 1, 0.3, 1), box-shadow 320ms ease, filter 320ms ease, background-color 320ms ease; animation: btnGlowPulse 3.2s ease-in-out infinite; } .btn-glow::before { content: ''; position: absolute; inset: -1px; border-radius: inherit; background: linear-gradient(110deg, transparent 0%, rgba(255, 255, 255, 0.12) 18%, rgba(180, 202, 14, 0.26) 50%, rgba(255, 255, 255, 0.14) 64%, transparent 84%); transform: translateX(-125%); opacity: 0; pointer-events: none; mix-blend-mode: screen; } .btn-glow::after { content: ''; position: absolute; inset: -10px; border-radius: inherit; background: radial-gradient(circle at center, rgba(180, 202, 14, 0.34) 0%, rgba(180, 202, 14, 0.16) 28%, transparent 68%); opacity: 0.18; filter: blur(18px); z-index: -1; pointer-events: none; } .btn-glow:hover { transform: translate3d(0, -3px, 0) scale(1.02); box-shadow: 0 0 0 1px rgba(180, 202, 14, 0.16), 0 24px 48px rgba(1, 41, 92, 0.16), 0 0 28px rgba(180, 202, 14, 0.42), 0 0 52px rgba(180, 202, 14, 0.18), inset 0 1px 0 rgba(255, 255, 255, 0.22); filter: brightness(1.02) saturate(1.03); } .btn-glow:hover::before { animation: btnGlowSweep 950ms ease; opacity: 1; } .btn-glow:hover::after { opacity: 0.32; } .btn-glow:active { transform: translate3d(0, 1px, 0) scale(0.995); } .btn-glow:focus-visible { outline: none; box-shadow: 0 0 0 2px rgba(180, 202, 14, 0.32), 0 24px 48px rgba(1, 41, 92, 0.16), 0 0 30px rgba(180, 202, 14, 0.44); } @keyframes btnGlowPulse { 0%, 100% { box-shadow: 0 0 0 0 rgba(180, 202, 14, 0.22), 0 18px 32px rgba(1, 41, 92, 0.14), inset 0 1px 0 rgba(255, 255, 255, 0.18); } 50% { box-shadow: 0 0 0 10px rgba(180, 202, 14, 0.05), 0 18px 34px rgba(1, 41, 92, 0.15), 0 0 26px rgba(180, 202, 14, 0.22), inset 0 1px 0 rgba(255, 255, 255, 0.18); } } @keyframes btnGlowSweep { 0% { transform: translateX(-125%); opacity: 0; } 20% { opacity: 1; } 100% { transform: translateX(125%); opacity: 0; } } .timeline-step { position: relative; } .timeline-number { opacity: 0; transform: translateY(8px) scale(0.4); will-change: transform, opacity, filter, box-shadow; } .timeline-bubble { opacity: 0; transform: translateY(20px) scale(0.92); filter: blur(8px); will-change: transform, opacity, filter, box-shadow; box-shadow: 0 12px 30px rgba(1, 41, 92, 0.08); } .timeline-step.is-visible .timeline-number { animation: timeline-number-pop 520ms cubic-bezier(0.34, 1.56, 0.64, 1) both; } .timeline-step.is-visible .timeline-bubble { animation: timeline-bubble-pop 840ms cubic-bezier(0.16, 1, 0.3, 1) both; animation-delay: calc(var(--timeline-delay, 0ms) + 120ms); box-shadow: 0 18px 44px rgba(1, 41, 92, 0.12), 0 0 0 1px rgba(180, 202, 14, 0.08), 0 0 36px rgba(180, 202, 14, 0.12); } @keyframes timeline-number-pop { 0% { opacity: 0; transform: translateY(8px) scale(0.4); } 60% { opacity: 1; transform: translateY(0) scale(1.15); } 100% { opacity: 1; transform: translateY(0) scale(1); } } @keyframes timeline-bubble-pop { 0% { opacity: 0; transform: translateY(20px) scale(0.92); filter: blur(8px); } 58% { opacity: 1; transform: translateY(-4px) scale(1.06); filter: blur(0); } 82% { transform: translateY(1px) scale(0.995); } 100% { opacity: 1; transform: translateY(0) scale(1); filter: blur(0); } } @media (prefers-reduced-motion: reduce) { .timeline-step, .timeline-number, .timeline-bubble { animation: none !important; transition: none !important; transform: none !important; filter: none !important; opacity: 1 !important; } .btn-glow, .btn-glow::before, .btn-glow::after { animation: none !important; transition: none !important; } } .process-line-vertical { position: relative; } .process-line-vertical::after { content: ''; position: absolute; left: 50%; transform: translateX(-50%); top: 48px; bottom: -20px; width: 2px; background: #B4CA0E; } .process-step:last-child .process-line-vertical::after { display: none; } .shield-watermark { position: absolute; right: -10%; bottom: -10%; opacity: 0.04; font-size: 320px; pointer-events: none; } .stat-number { background: linear-gradient(135deg, #B4CA0E 0%, #FBBC05 100%); -webkit-background-clip: text; -webkit-text-fill-color: transparent; }

.solar-letter-reveal { position: relative; isolation: isolate; display: inline-block; } .solar-letter-reveal .solar-letter-char { display: inline-block; opacity: 0; transform: translateY(0.25em) scale(0.995); filter: blur(1.5px); will-change: transform, opacity, filter, text-shadow; backface-visibility: hidden; } .solar-letter-reveal .solar-letter-char.is-space { width: 0.28em; } .solar-letter-reveal.is-visible .solar-letter-char { animation: solar-letter-rise 420ms cubic-bezier(0.2, 0.9, 0.2, 1) both; animation-delay: calc(var(--solar-delay, 0ms) + (var(--solar-char-delay, 10ms) * var(--solar-char-index, 0))); } .solar-letter-reveal::after { content: ""; position: absolute; left: -0.2em; right: -0.2em; top: 58%; height: 0.14em; pointer-events: none; opacity: 0; transform: translateX(-130%); background: linear-gradient(90deg, transparent 0%, rgba(120, 196, 255, 0.12) 38%, rgba(180, 202, 14, 0.28) 52%, rgba(219, 235, 255, 0.32) 64%, transparent 100%); mix-blend-mode: screen; filter: blur(2px); z-index: -1; } .solar-letter-reveal.is-visible::after { animation: solar-letter-beam 560ms cubic-bezier(0.2, 0.9, 0.2, 1) both; animation-delay: calc(var(--solar-delay, 0ms) + var(--solar-total-delay, 0ms) + 90ms); } @keyframes solar-letter-rise { 0% { opacity: 0; transform: translateY(0.25em) scale(0.995); filter: blur(1.5px); text-shadow: 0 0 0 rgba(0, 0, 0, 0); } 70% { opacity: 1; transform: translateY(-0.04em) scale(1.008); filter: blur(0); text-shadow: 0 0 4px rgba(180, 202, 14, 0.15), 0 0 7px rgba(120, 196, 255, 0.1); } 100% { opacity: 1; transform: translateY(0) scale(1); filter: blur(0); text-shadow: 0 0 0 rgba(0, 0, 0, 0); } } @keyframes solar-letter-beam { 0% { opacity: 0; transform: translateX(-130%); } 25% { opacity: 0.5; } 55% { opacity: 0.7; transform: translateX(0%); } 100% { opacity: 0; transform: translateX(130%); } } @media (prefers-reduced-motion: reduce) { .solar-letter-reveal .solar-letter-char, .solar-letter-reveal::after { animation: none !important; transition: none !important; filter: none !important; opacity: 1 !important; transform: none !important; text-shadow: none !important; } }

.reveal-card { position: relative; isolation: isolate; opacity: 0; transform: translateY(22px) scale(0.84); filter: blur(8px); will-change: transform, opacity, filter, box-shadow; transform-origin: center center; } .reveal-card::before { content: ''; position: absolute; inset: -12px; border-radius: inherit; background: radial-gradient(circle at center, rgba(180, 202, 14, 0.16) 0%, rgba(120, 196, 255, 0.08) 38%, transparent 72%); opacity: 0; filter: blur(18px); pointer-events: none; z-index: -1; } .reveal-card::after { content: ''; position: absolute; inset: 0; border-radius: inherit; background: radial-gradient(circle at center, rgba(255,255,255,0.26) 0%, rgba(255,255,255,0.06) 22%, transparent 55%); opacity: 0; pointer-events: none; z-index: -1; } .reveal-card.is-visible { animation: bubblePopCard 860ms cubic-bezier(0.2, 0.9, 0.2, 1) both; animation-delay: var(--reveal-delay, 0ms); } .reveal-card.is-visible::before { animation: bubbleGlow 860ms cubic-bezier(0.2, 0.9, 0.2, 1) both; animation-delay: var(--reveal-delay, 0ms); } .reveal-card.is-visible::after { animation: bubbleWave 860ms cubic-bezier(0.2, 0.9, 0.2, 1) both; animation-delay: calc(var(--reveal-delay, 0ms) + 70ms); } .reveal-card-badge { opacity: 0; transform: translateY(8px) scale(0.7); filter: blur(2px); will-change: transform, opacity, filter; } .reveal-card.is-visible .reveal-card-badge { animation: bubbleBadgePop 520ms cubic-bezier(0.2, 1.35, 0.2, 1) both; animation-delay: calc(var(--reveal-delay, 0ms) + 110ms); } @keyframes bubblePopCard { 0% { opacity: 0; transform: translateY(22px) scale(0.84); filter: blur(8px); box-shadow: 0 10px 22px rgba(1, 41, 92, 0.06); } 55% { opacity: 1; transform: translateY(-4px) scale(1.06); filter: blur(0); box-shadow: 0 26px 52px rgba(1, 41, 92, 0.16), 0 0 0 1px rgba(180, 202, 14, 0.08); } 76% { transform: translateY(2px) scale(0.995); } 100% { opacity: 1; transform: translateY(0) scale(1); filter: blur(0); box-shadow: 0 18px 34px rgba(1, 41, 92, 0.1); } } @keyframes bubbleGlow { 0% { opacity: 0; transform: scale(0.86); } 40% { opacity: 0.65; } 100% { opacity: 0; transform: scale(1.12); } } @keyframes bubbleWave { 0% { opacity: 0; transform: scale(0.9); } 35% { opacity: 0.28; } 100% { opacity: 0; transform: scale(1.22); } } @keyframes bubbleBadgePop { 0% { opacity: 0; transform: translateY(8px) scale(0.7); filter: blur(2px); } 60% { opacity: 1; transform: translateY(-2px) scale(1.12); filter: blur(0); } 100% { opacity: 1; transform: translateY(0) scale(1); filter: blur(0); } } @media (prefers-reduced-motion: reduce) { .reveal-card, .reveal-card::before, .reveal-card::after, .reveal-card-badge { animation: none !important; transition: none !important; transform: none !important; filter: none !important; opacity: 1 !important; } }

.hero-entrance{--hero-title-duration:760ms;--hero-copy-delay:460ms;--hero-copy-duration:780ms;--hero-cta-delay:680ms;--hero-cta-duration:780ms}.hero-entrance .hero-title{display:block}.hero-entrance .hero-title-line,.hero-entrance .hero-description,.hero-entrance .hero-cta{opacity:0;transform:translate3d(0,16px,0);will-change:transform,opacity}.hero-entrance .hero-title-line{display:block}.hero-entrance .hero-title-line--accent{transform:translate3d(0,18px,0) scale(.985)}.hero-entrance.motion-hero-copy.is-visible,.hero-title.motion-hero-title.is-visible,.hero-description.motion-hero-lead.is-visible,.hero-cta.motion-hero-button.is-visible,.hero-entrance.motion-hero-actions.is-visible{animation:none!important;transform:none!important;filter:none!important;opacity:1!important}.hero-entrance.is-visible .hero-title-line{animation:hero-title-line-enter var(--hero-title-duration) cubic-bezier(.16,1,.3,1) both;animation-delay:var(--hero-line-delay,0ms)}.hero-entrance.is-visible .hero-title-line--accent{animation-name:hero-title-line-accent-enter}.hero-entrance.is-visible .hero-description{animation:hero-copy-enter var(--hero-copy-duration) cubic-bezier(.16,1,.3,1) both;animation-delay:var(--hero-copy-delay)}.hero-entrance.is-visible .hero-cta{animation:hero-cta-enter var(--hero-cta-duration) cubic-bezier(.16,1,.3,1) both;animation-delay:var(--hero-cta-delay);transform-origin:center}@keyframes hero-title-line-enter{0%{opacity:0;transform:translate3d(0,18px,0)}65%{opacity:1;transform:translate3d(0,-1px,0)}100%{opacity:1;transform:translate3d(0,0,0)}}@keyframes hero-title-line-accent-enter{0%{opacity:0;transform:translate3d(0,20px,0) scale(.98)}62%{opacity:1;transform:translate3d(0,-2px,0) scale(1.015)}100%{opacity:1;transform:translate3d(0,0,0) scale(1)}}@keyframes hero-copy-enter{0%{opacity:0;transform:translate3d(0,14px,0)}70%{opacity:1;transform:translate3d(0,-1px,0)}100%{opacity:1;transform:translate3d(0,0,0)}}@keyframes hero-cta-enter{0%{opacity:0;transform:translate3d(0,14px,0) scale(.98)}68%{opacity:1;transform:translate3d(0,-1px,0) scale(1.01)}100%{opacity:1;transform:translate3d(0,0,0) scale(1)}}@media (max-width:767px){.hero-entrance{--hero-title-duration:620ms;--hero-copy-delay:360ms;--hero-copy-duration:640ms;--hero-cta-delay:540ms;--hero-cta-duration:660ms}.hero-entrance .hero-title-line{transform:translate3d(0,12px,0)}.hero-entrance .hero-title-line--accent{transform:translate3d(0,14px,0) scale(.99)}.hero-entrance .hero-description{transform:translate3d(0,10px,0)}.hero-entrance .hero-cta{transform:translate3d(0,10px,0) scale(.985)}}@media (prefers-reduced-motion: reduce){.hero-entrance .hero-title-line,.hero-entrance .hero-description,.hero-entrance .hero-cta{animation:none!important;transition:none!important;transform:none!important;opacity:1!important}}

html { -webkit-font-smoothing: antialiased; text-rendering: optimizeLegibility; }body { background: radial-gradient(circle at 12% 0%, rgba(180, 202, 14, 0.09), transparent 24%), radial-gradient(circle at 88% 0%, rgba(1, 41, 92, 0.08), transparent 28%), linear-gradient(180deg, #f8fbff 0%, #ffffff 100%); }main > section { position: relative; isolation: isolate; overflow: clip; }.hero { position: relative; isolation: isolate; overflow: hidden; }.hero .hero-video-shell { position: absolute; inset: 0 0 0 auto; width: min(60vw, 960px); pointer-events: none; z-index: 1; overflow: hidden; mask-image: linear-gradient(90deg, transparent 0%, rgba(0, 0, 0, 0.08) 8%, rgba(0, 0, 0, 0.34) 18%, rgba(0, 0, 0, 0.82) 34%, rgba(0, 0, 0, 1) 56%, rgba(0, 0, 0, 1) 84%, rgba(0, 0, 0, 0.2) 96%, transparent 100%), linear-gradient(180deg, transparent 0%, rgba(0, 0, 0, 1) 10%, rgba(0, 0, 0, 1) 90%, transparent 100%); -webkit-mask-image: linear-gradient(90deg, transparent 0%, rgba(0, 0, 0, 0.08) 8%, rgba(0, 0, 0, 0.34) 18%, rgba(0, 0, 0, 0.82) 34%, rgba(0, 0, 0, 1) 56%, rgba(0, 0, 0, 1) 84%, rgba(0, 0, 0, 0.2) 96%, transparent 100%), linear-gradient(180deg, transparent 0%, rgba(0, 0, 0, 1) 10%, rgba(0, 0, 0, 1) 90%, transparent 100%);.hero .hero-video-poster, .hero .hero-video { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center center; display: block; }.hero .hero-video-poster { opacity: 0.9; transform: scale(1.02); }.hero .hero-video { opacity: 0.56; mix-blend-mode: screen; filter: saturate(1.05) contrast(1.04) brightness(0.72); transform: scale(1.02); }.hero .hero-video-overlay { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(1, 41, 92, 0.98) 0%, rgba(1, 41, 92, 0.86) 14%, rgba(1, 41, 92, 0.56) 28%, rgba(1, 41, 92, 0.14) 52%, rgba(1, 41, 92, 0.08) 72%, rgba(1, 41, 92, 0.28) 100%), radial-gradient(circle at 34% 34%, rgba(180, 202, 14, 0.14), transparent 28%), radial-gradient(circle at 60% 72%, rgba(124, 200, 255, 0.14), transparent 30%); }.hero .glow-pulse { z-index: 0; }.hero .hero-content { position: relative; z-index: 2; }.hero .hero__visual { position: relative; z-index: 1; }.hero .hero-video-shell::before { content: ''; position: absolute; inset: 0; background: radial-gradient(circle at 24% 50%, rgba(180, 202, 14, 0.08), transparent 28%), linear-gradient(90deg, rgba(1, 41, 92, 0.86) 0%, rgba(1, 41, 92, 0.28) 40%, rgba(1, 41, 92, 0.02) 70%, rgba(1, 41, 92, 0) 100%); pointer-events: none; z-index: 2; }#solutions, #solar, #consorcios, #depoimentos, #contato, #final-cta { scroll-margin-top: 96px; }#solutions { background: linear-gradient(180deg, #ffffff 0%, #f8fbff 100%); }#solutions { contain: layout paint; content-visibility: auto; contain-intrinsic-size: 860px; }#solutions .grid { align-items: stretch; }#solutions a { min-height: 100%; background: rgba(255, 255, 255, 0.98) !important; border: 1px solid rgba(1, 41, 92, 0.08) !important; box-shadow: 0 10px 24px rgba(1, 41, 92, 0.07) !important; transform: none !important; filter: none !important; transition: border-color 160ms ease, box-shadow 160ms ease !important; will-change: auto !important; }#solutions a:hover { box-shadow: 0 12px 28px rgba(1, 41, 92, 0.09) !important; border-color: rgba(180, 202, 14, 0.24) !important; }#solutions a::before, #solutions a::after { display: none !important; }#solutions a *, #solutions .motion-scroll, #solutions .motion-card, #solutions .motion-bob, #solutions .motion-soft-pop, #solutions .motion-section-title { animation: none !important; transform: none !important; filter: none !important; opacity: 1 !important; transition-duration: 0ms !important; will-change: auto !important; }#solutions a .material-symbols-outlined { transition: none !important; }#solar { background: linear-gradient(180deg, #01295c 0%, #011c40 100%); }#solar .grid.grid-cols-1.md\:grid-cols-2 > div { background: rgba(255, 255, 255, 0.06) !important; border: 1px solid rgba(255, 255, 255, 0.12) !important; box-shadow: 0 16px 40px rgba(0, 0, 0, 0.14); }#solar .grid.grid-cols-1.md\:grid-cols-2 > div p { color: rgba(255, 255, 255, 0.9); }#consorcios { background: linear-gradient(180deg, #f8f9fa 0%, #eef4ff 100%); }#consorcios .space-y-24 > div, #consorcios .grid.grid-cols-2 > div { background: rgba(255, 255, 255, 0.96) !important; border: 1px solid rgba(1, 41, 92, 0.08) !important; box-shadow: 0 16px 44px rgba(1, 41, 92, 0.08); }#depoimentos { background: linear-gradient(180deg, #eaf2ff 0%, #f6f9ff 48%, #ffffff 100%); }#depoimentos .grid > div { position: relative; min-height: 100%; background: rgba(255, 255, 255, 0.98) !important; border: 1px solid rgba(1, 41, 92, 0.08) !important; box-shadow: 0 12px 30px rgba(1, 41, 92, 0.06); backdrop-filter: none; border-radius: 36px !important; }#depoimentos .grid > div::before { content: ''; position: absolute; inset: 0 auto auto 0; width: 100%; height: 3px; background: rgba(180, 202, 14, 0.52); }#depoimentos .grid > div p { color: #01295c !important; }#contato { background: linear-gradient(180deg, #01295c 0%, #001b3f 100%); }#contato form { background: rgba(255, 255, 255, 0.96) !important; border: 1px solid rgba(1, 41, 92, 0.08) !important; box-shadow: 0 18px 48px rgba(1, 41, 92, 0.12); }#contato input, #contato select { background: #ffffff !important; border-color: rgba(1, 41, 92, 0.12) !important; }#final-cta { background: linear-gradient(180deg, #01295c 0%, #00193a 100%); }#final-cta .inline-flex { box-shadow: 0 18px 42px rgba(180, 202, 14, 0.12); }@media (max-width: 820px) {  body { background: linear-gradient(180deg, #f8fbff 0%, #ffffff 100%); }  #solutions a, #depoimentos .grid > div, #consorcios .space-y-24 > div, #consorcios .grid.grid-cols-2 > div, #solar .grid.grid-cols-1.md\:grid-cols-2 > div, #contato form { border-radius: 32px !important; }  #solutions a { padding: 1.5rem !important; }  #solutions .grid, #depoimentos .grid { gap: 1rem !important; }  #depoimentos .grid > div { padding: 1.5rem !important; }  #contato form { padding: 1.25rem !important; }  #solar .grid.grid-cols-1.md\:grid-cols-2 > div { padding: 1rem !important; }  #hero .hero__visual { position: absolute; left: 50%; top: 185px; width: min(90vw, 520px); margin: 0 auto; opacity: 0.22; pointer-events: none; z-index: 1; transform: translateX(-50%); }  #hero .hero__triangle { width: min(90vw, 520px); min-height: 260px; margin: 0 auto; }  #hero .hero__triangle-item { opacity: 0.95; }  .hero .hero-video-shell { inset: auto -8% 0 auto; width: 78vw; height: 62%; opacity: 0.24; }  .hero .hero-video { opacity: 0.42; }  .hero .hero-video-overlay { background: linear-gradient(180deg, rgba(1, 41, 92, 0.98) 0%, rgba(1, 41, 92, 0.34) 32%, rgba(1, 41, 92, 0.1) 100%), linear-gradient(90deg, rgba(1, 41, 92, 0.52) 0%, rgba(1, 41, 92, 0.1) 35%, rgba(1, 41, 92, 0) 72%); }}@media (max-width: 640px) { .hero .hero-video-shell { inset: auto -18% 0 auto; width: 96vw; height: 56%; opacity: 0.18; } }@media (prefers-reduced-motion: reduce) { .hero .hero-video { display: none; } .hero .hero-video-shell { opacity: 0.16; } }@supports not (mask-image: linear-gradient(black, transparent)) { .hero .hero-video-shell { -webkit-mask-image: none; mask-image: none; } }}
