:root{--color-primary: #ABD147;--color-primary-dark: #9BC03A;--color-primary-light: #BBDA5C;--color-secondary: #043125;--color-accent: #ABD147;--color-success: #ABD147;--color-error: #ef4444;--color-warning: #f59e0b;--color-info: #043125;--gradient-primary: linear-gradient(135deg, #ABD147 0%, #043125 100%);--gradient-hero: linear-gradient(135deg, #ABD147 0%, #043125 100%);--gradient-card: linear-gradient(180deg, rgba(171,209,71,.05) 0%, rgba(171,209,71,0) 100%);--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -1px rgba(0, 0, 0, .06);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 10px 10px -5px rgba(0, 0, 0, .04);--shadow-glow: 0 0 20px rgba(171, 209, 71, .3);--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--transition-base: .25s cubic-bezier(.4, 0, .2, 1);--transition-slow: .35s cubic-bezier(.4, 0, .2, 1);--transition-bounce: .5s cubic-bezier(.68, -.55, .265, 1.55);--radius-sm: .375rem;--radius-md: .5rem;--radius-lg: .75rem;--radius-xl: 1rem;--radius-2xl: 1.5rem;--radius-full: 9999px;--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--spacing-2xl: 3rem;--safe-area-bottom: env(safe-area-inset-bottom, 0px)}*{box-sizing:border-box}body{font-family:Public Sans,Inter,system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;margin:0;padding:0;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}@media (max-width: 899px){body{padding-bottom:calc(60px + var(--safe-area-bottom))}}a,button{-webkit-tap-highlight-color:rgba(171,209,71,.15)}img{max-width:100%;height:auto}.fade-in{animation:fadeIn var(--transition-slow) ease-in}.slide-up{animation:slideUp var(--transition-base) ease-out}.scale-in{animation:scaleIn var(--transition-bounce) ease-out}.scroll-reveal{opacity:0;transform:translateY(24px);transition:opacity .6s ease,transform .6s ease}.scroll-reveal.visible{opacity:1;transform:translateY(0)}.horizontal-scroll{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none}.horizontal-scroll::-webkit-scrollbar{display:none}.horizontal-scroll>*{scroll-snap-align:start;flex-shrink:0}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes shimmer{0%{background-position:-1000px 0}to{background-position:1000px 0}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.skeleton{background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0,#f0f0f0 75%);background-size:1000px 100%;animation:shimmer 2s infinite;border-radius:var(--radius-md)}html{scroll-behavior:smooth}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:#f5f5f5}::-webkit-scrollbar-thumb{background:var(--color-primary);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--color-primary-dark)}@media (max-width: 640px){::-webkit-scrollbar{width:0;height:0}}@media (max-width: 640px){.hide-mobile{display:none!important}}@media (min-width: 641px){.show-mobile{display:none!important}}@media (pointer: coarse){button,a,[role=button]{min-height:44px;min-width:44px}}
