:root{--font-mono:"Roboto Mono",monospace;--color-primary:#315746;--color-primary-600:#27463a;--color-secondary:#d9e5d5;--color-bg:#f8fafc;--color-surface:#ffffff;--color-muted:#64748b;--color-ink:#0f172a;--color-border:#e5e7eb;--radius-xl:1rem;--radius-2xl:1.25rem}*{box-sizing:border-box;margin:0;padding:0}body,html{height:100%;font-family:Inter,system-ui,-apple-system,sans-serif;background:var(--color-bg);color:var(--color-ink);line-height:1.6}img{max-width:100%;height:auto;display:block}.homepage-wrapper{position:relative;min-height:100vh;width:100%;display:flex;flex-direction:column;justify-content:space-between;background:radial-gradient(1200px 400px at 20% -10%,var(--color-secondary) 0,transparent 60%),radial-gradient(900px 300px at 100% 0,#eaf2ea 0,transparent 50%),var(--color-bg)}.overlay{position:absolute;inset:0;background:transparent;z-index:1}.header{position:relative;z-index:2;padding:1rem 2rem;justify-content:space-between;border-bottom:1px solid var(--color-border);background:var(--color-surface)}.header,.logo-container{display:flex;align-items:center}.logo-container{gap:.75rem}.logo{transition:transform .2s ease}.logo:hover{transform:scale(1.04)}.logo-text{font-size:1.25rem;font-weight:700;color:var(--color-primary);letter-spacing:-.01em}.content{position:relative;z-index:2;flex:1 1;padding:3rem 2rem;max-width:1200px;margin:0 auto;width:100%}.hero-section{text-align:center;margin-bottom:3rem}.hero-title{font-size:2.25rem;font-weight:800;letter-spacing:-.02em;margin-bottom:.75rem;color:var(--color-ink)}.hero-subtitle{font-size:1.125rem;color:var(--color-muted);max-width:720px;margin:0 auto}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));grid-gap:1.25rem;gap:1.25rem;margin-bottom:3rem}.feature-card{position:relative;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-2xl);padding:1.5rem;text-align:left;transition:box-shadow .2s ease,transform .2s ease,border-color .2s ease;box-shadow:0 1px 2px rgba(16,24,40,.05)}.feature-card:before{content:"";position:absolute;inset:0 0 auto 0;height:3px;border-top-left-radius:var(--radius-2xl);border-top-right-radius:var(--radius-2xl);background:var(--color-primary)}.feature-card:hover{transform:translateY(-2px);border-color:#d1d5db;box-shadow:0 8px 20px rgba(16,24,40,.08)}.feature-icon{font-size:2rem;margin-bottom:.75rem;display:inline-block}.feature-card h3{font-size:1.1rem;font-weight:700;margin-bottom:.5rem;color:var(--color-ink)}.feature-card p{color:var(--color-muted);font-size:.95rem}.cta-section{text-align:center;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-2xl);padding:2.5rem 2rem;margin-bottom:2rem;box-shadow:0 1px 2px rgba(16,24,40,.05)}.cta-section h2{font-size:1.5rem;font-weight:800;margin-bottom:.5rem;color:var(--color-ink)}.cta-section p{color:var(--color-muted);margin-bottom:1.25rem;font-size:1rem}.button-group{display:flex;gap:.75rem;justify-content:center;flex-wrap:wrap}.primary-button,.secondary-button{display:inline-flex;align-items:center;justify-content:center;padding:.75rem 1.25rem;border-radius:.75rem;font-size:.95rem;font-weight:600;text-decoration:none;transition:all .2s ease;border:2px solid transparent;min-width:150px}.primary-button{background:var(--color-primary);color:#ffffff;border-color:var(--color-primary)}.primary-button:hover{background:var(--color-primary-600);border-color:var(--color-primary-600);box-shadow:0 8px 18px rgba(49,87,70,.25)}.secondary-button{background:transparent;color:var(--color-ink);border-color:var(--color-border)}.secondary-button:hover{border-color:var(--color-primary);color:var(--color-primary);background:#f9fafb}.footer{position:relative;z-index:2;padding:1.5rem 2rem;border-top:1px solid var(--color-border);background:var(--color-surface)}.footer-content{max-width:1200px;margin:0 auto;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:.75rem}.footer-content p{color:var(--color-muted);font-size:.9rem}.footer-links{display:flex;gap:1.25rem;flex-wrap:wrap}.footer-links a{color:var(--color-muted);text-decoration:none;font-size:.9rem;transition:color .2s ease}.footer-links a:hover{color:var(--color-primary)}@media (max-width:768px){.hero-title{font-size:1.75rem}.hero-subtitle{font-size:1rem}.features-grid{grid-template-columns:1fr;gap:1rem}.header{padding:.75rem 1rem}.content{padding:2rem 1rem}}@media (max-width:480px){.cta-section{padding:2rem 1rem}.feature-card{padding:1.25rem}}