:root{--green-900: #0F3D2E;--green-800: #1A5A3E;--green-700: #2E7D32;--green-600: #43A047;--green-500: #66BB6A;--green-300: #A7D7A9;--green-100: #D4EDD5;--green-50: #F4F6F3;--gold-500: #D6A818;--gold-400: #E0C04A;--gold-300: #EAD77A;--neutral-900: #1D2521;--neutral-800: #2D3531;--neutral-700: #4A524E;--neutral-600: #6B7370;--neutral-500: #8E9692;--neutral-400: #B0B8B4;--neutral-300: #D1D8D4;--neutral-200: #E5EAE7;--neutral-100: #F0F3F1;--neutral-50: #F8F9F8;--white: #FFFFFF;--black: #000000;--color-primary: var(--green-900);--color-primary-light: var(--green-700);--color-accent: var(--green-300);--color-accent-gold: var(--gold-500);--color-bg-light: var(--green-50);--color-bg: var(--white);--color-text: var(--neutral-900);--color-text-secondary: var(--neutral-600);--color-text-on-dark: var(--white);--color-border: var(--neutral-200);--color-focus: var(--green-500);--font-heading: "Plus Jakarta Sans", system-ui, sans-serif;--font-body: "Inter", system-ui, sans-serif;--font-mono: "JetBrains Mono", monospace;--text-xs: .75rem;--text-sm: .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;--text-6xl: 3.75rem;--text-7xl: 4.5rem;--text-8xl: 6rem;--leading-tight: 1.1;--leading-snug: 1.25;--leading-normal: 1.5;--leading-relaxed: 1.625;--leading-loose: 1.75;--tracking-tight: -.02em;--tracking-normal: 0;--tracking-wide: .02em;--tracking-wider: .05em;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-14: 3.5rem;--space-16: 4rem;--space-20: 5rem;--space-24: 6rem;--space-28: 7rem;--space-32: 8rem;--space-40: 10rem;--section-padding-y: var(--space-24);--container-max: 80rem;--container-narrow: 64rem;--container-padding: var(--space-6);--radius-sm: .375rem;--radius-md: .5rem;--radius-lg: .75rem;--radius-xl: 1rem;--radius-2xl: 1.5rem;--radius-full: 9999px;--shadow-sm: 0 1px 2px rgba(29, 37, 33, .05);--shadow-md: 0 4px 12px rgba(29, 37, 33, .08);--shadow-lg: 0 8px 30px rgba(29, 37, 33, .1);--shadow-xl: 0 20px 60px rgba(29, 37, 33, .12);--shadow-card: 0 2px 8px rgba(29, 37, 33, .04), 0 8px 24px rgba(29, 37, 33, .06);--shadow-card-hover: 0 4px 16px rgba(29, 37, 33, .06), 0 12px 40px rgba(29, 37, 33, .1);--transition-fast: .2s cubic-bezier(.4, 0, .2, 1);--transition-base: .3s cubic-bezier(.4, 0, .2, 1);--transition-slow: .5s cubic-bezier(.4, 0, .2, 1);--transition-bounce: .4s cubic-bezier(.34, 1.56, .64, 1)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;scroll-behavior:smooth}body{min-height:100vh;line-height:var(--leading-normal);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}img,picture,video,canvas,svg{display:block;max-width:100%}input,button,textarea,select{font:inherit;color:inherit}button{cursor:pointer;border:none;background:none}a{color:inherit;text-decoration:none}ul,ol{list-style:none}h1,h2,h3,h4,h5,h6,p{overflow-wrap:break-word}:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px;border-radius:var(--radius-sm)}body{font-family:var(--font-body);font-size:var(--text-base);color:var(--color-text)}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:600;line-height:var(--leading-tight);letter-spacing:var(--tracking-tight)}.heading-1{font-size:clamp(var(--text-4xl),4vw,var(--text-7xl));font-weight:700;line-height:var(--leading-tight);letter-spacing:var(--tracking-tight)}.heading-2{font-size:clamp(var(--text-3xl),3vw,var(--text-5xl));font-weight:600;line-height:var(--leading-tight)}.heading-3{font-size:clamp(var(--text-2xl),2vw,var(--text-3xl));font-weight:600}.heading-4{font-size:clamp(var(--text-xl),1.5vw,var(--text-2xl));font-weight:600}.body-large{font-size:var(--text-lg);line-height:var(--leading-relaxed)}.body-base{font-size:var(--text-base);line-height:var(--leading-normal)}.body-small{font-size:var(--text-sm);line-height:var(--leading-normal)}.label{font-size:var(--text-xs);font-weight:600;letter-spacing:var(--tracking-wider);text-transform:uppercase}.container{width:100%;max-width:var(--container-max);margin-inline:auto;padding-inline:var(--container-padding)}.container-narrow{width:100%;max-width:var(--container-narrow);margin-inline:auto;padding-inline:var(--container-padding)}.section{padding-block:var(--section-padding-y)}.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}.gradient-overlay{position:absolute;inset:0;background:linear-gradient(to bottom,#0f3d2e4d,#0f3d2e80 40%,#0f3d2ebf)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-3) var(--space-6);font-family:var(--font-body);font-size:var(--text-sm);font-weight:600;line-height:1;border-radius:var(--radius-full);transition:all var(--transition-base);cursor:pointer;white-space:nowrap}.btn:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}.btn--primary{background:var(--color-primary-light);color:var(--white)}.btn--primary:hover{background:var(--green-600);transform:translateY(-1px);box-shadow:0 4px 12px #2e7d324d}.btn--secondary{background:transparent;color:var(--color-primary);border:2px solid var(--color-primary)}.btn--secondary:hover{background:var(--color-primary);color:var(--white);transform:translateY(-1px)}.btn--ghost{background:transparent;color:var(--color-primary)}.btn--ghost:hover{background:var(--green-50)}.btn--sm{padding:var(--space-2) var(--space-4);font-size:var(--text-xs)}.btn--lg{padding:var(--space-4) var(--space-8);font-size:var(--text-base)}.btn--block{width:100%}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes fade-in-up{0%{opacity:0;transform:translateY(2rem)}to{opacity:1;transform:translateY(0)}}@keyframes fade-in-down{0%{opacity:0;transform:translateY(-1.5rem)}to{opacity:1;transform:translateY(0)}}@keyframes scale-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes slide-in-left{0%{opacity:0;transform:translate(-2rem)}to{opacity:1;transform:translate(0)}}@keyframes slide-in-right{0%{opacity:0;transform:translate(2rem)}to{opacity:1;transform:translate(0)}}@keyframes counter-up{0%{opacity:0}to{opacity:1}}.animate-fade-in{animation:fade-in var(--transition-slow) forwards}.animate-fade-in-up{animation:fade-in-up var(--transition-slow) forwards}.reveal{opacity:0;transform:translateY(2rem);transition:opacity .7s cubic-bezier(.4,0,.2,1),transform .7s cubic-bezier(.4,0,.2,1)}.reveal.revealed{opacity:1;transform:translateY(0)}.hero{position:relative}
