.public-page{min-height:100vh;background:radial-gradient(circle at top left,#eef6e8 0,#f7f9fb 45%,#f1f5f1 100%);color:#0f172a}.public-shell{width:min(960px,92vw);margin:0 auto;padding:2rem 0 4rem;display:grid;gap:2rem}.public-hero{display:grid;gap:1rem}.public-hero h1{margin:0;font-family:Fraunces,serif;font-size:clamp(2.2rem,4vw,3rem)}.public-hero p{margin:0;color:#475569;line-height:1.6}.public-card{background:#ffffff;border-radius:24px;border:1px solid rgba(15,23,42,.08);box-shadow:0 24px 50px rgba(15,23,42,.12);padding:1.8rem;display:grid;gap:1rem}.public-card h2{margin:0;font-size:1.35rem}.public-card p{margin:0;color:#475569;line-height:1.6}.public-list{margin:0;padding-left:1.2rem;display:grid;gap:.6rem;color:#475569}.public-goal{background:#f5f9f5;border-color:rgba(45,111,67,.15)}.contact-form,.contact-grid{display:grid;gap:1rem}.contact-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.contact-label{display:block;font-size:.75rem;text-transform:uppercase;letter-spacing:.18em;color:rgba(15,23,42,.5);margin-bottom:.4rem}.contact-field{width:100%;border:1px solid rgba(15,23,42,.12);border-radius:14px;padding:.65rem .8rem;font-size:.95rem;font-family:inherit;background:#ffffff;color:#0f172a}.contact-textarea{min-height:140px;resize:vertical}.contact-button{border:none;background:#7fc27e;color:#2d6f43;font-weight:600;border-radius:999px;padding:.7rem 1.4rem;cursor:pointer}.contact-status{margin:0;color:#64748b;font-size:.9rem}@media (max-width:840px){.public-shell{padding:1.5rem 0 3rem}.contact-grid.two{grid-template-columns:1fr}}