.public-page{min-height:100vh;display:flex;flex-direction:column;overflow-x:hidden}
.public-page .landing-nav{flex:none}
.public-main{width:min(1080px,calc(100% - 48px));display:grid;grid-template-columns:minmax(0,.82fr) minmax(420px,1.18fr);align-items:start;gap:clamp(36px,7vw,96px);margin:0 auto;padding:76px 0 90px;flex:1}
.public-intro{position:sticky;top:40px;padding-top:26px;animation:public-enter .6s ease both}
.public-intro h1{margin:18px 0 15px;color:#18332d;font:500 clamp(38px,5vw,58px)/1.08 var(--serif);letter-spacing:-.02em}
.public-intro>p{max-width:460px;margin:0 0 22px;color:#596b65;font-size:15px;line-height:1.75}
.public-form-card{padding:30px;border:1px solid #dce5df;border-radius:14px;background:#fff;box-shadow:0 18px 50px #29423812;animation:public-enter .7s .08s ease both}
.public-form-card h2{margin:0 0 7px;color:#243b34;font:500 27px/1.2 var(--serif)}
.public-muted{margin:0 0 24px;color:#68766f;font-size:13px;line-height:1.65}
.public-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px}
.public-form-card .f{display:block;margin:0 0 15px;color:#354940;font-size:12px;font-weight:600}
.public-form-card .in{display:block;width:100%;margin-top:7px;min-height:43px;border:1px solid #d8e2db;border-radius:7px;background:#fff;color:#243b34;font:400 14px var(--sans);padding:10px 12px}
.public-form-card .in:focus{outline:2px solid #37806055;border-color:#378060}
.public-textarea{min-height:110px;resize:vertical}
.public-consent{display:flex;align-items:flex-start;gap:9px;margin:4px 0 17px;color:#68766f;font-size:11.5px;line-height:1.55}
.public-consent input{width:16px;height:16px;flex:none;margin:1px 0 0;accent-color:#176c53}
.public-consent a{color:#176c53}
.public-honeypot{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
.public-submit-row{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.public-submit-row .btn[disabled]{opacity:.6;cursor:wait}
.public-form-status{min-height:18px;margin:0;color:#68766f;font-size:12px}
.public-form-status.success{color:#176c53}
.public-form-status.error{color:#a53b43}
.demo-main{grid-template-columns:minmax(0,.9fr) minmax(440px,1.1fr)}
.demo-points{display:grid;gap:12px;margin-top:28px;color:#365e4c;font-size:13px;font-weight:600}
.demo-points span{animation:public-enter .45s ease both}
.demo-points span:nth-child(2){animation-delay:.07s}.demo-points span:nth-child(3){animation-delay:.14s}
.public-footer{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:20px max(5vw,24px);border-top:1px solid #e2e8e2;background:#fff;color:#78867f;font-size:11px}
.public-footer nav{display:flex;gap:18px}.public-footer a{color:inherit;text-decoration:none}.public-footer a:hover{color:#176c53}
.public-legal{width:min(800px,calc(100% - 48px));margin:0 auto;padding:54px 0 80px;color:#465954;line-height:1.75}
.public-legal h1{margin:18px 0;color:#18332d;font:500 clamp(38px,5vw,52px)/1.1 var(--serif)}
.public-legal h2{margin:34px 0 8px;color:#243b34;font:500 23px var(--serif)}
.public-legal p,.public-legal li{font-size:14px}
.public-legal .legal-updated{color:#78867f;font-size:12px}
.public-legal a{color:#176c53}
.team-main{width:min(1120px,calc(100% - 48px));margin:0 auto;padding:70px 0 88px}
.team-intro{max-width:700px;margin:0 auto 36px;text-align:center}
.team-intro h1{margin:16px 0 12px;color:#18332d;font:500 clamp(40px,5vw,58px)/1.08 var(--serif)}
.team-intro p{color:#596b65;font-size:14px;line-height:1.7}
.team-placeholder-note{margin:0 auto 28px;padding:12px 16px;border:1px solid #e8dba9;border-radius:8px;background:#fff9e9;color:#695b2d;font-size:12px;line-height:1.55}
.team-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px}
.team-card{overflow:hidden;border:1px solid #dce5df;border-radius:12px;background:#fff;box-shadow:0 8px 24px #2942380d;transition:transform .24s ease,box-shadow .24s ease}
.team-card:hover{transform:translateY(-5px);box-shadow:0 16px 34px #29423818}
.team-card img{display:block;width:100%;aspect-ratio:1/1;object-fit:cover;background:#edf3ed}
.team-card-copy{padding:16px 15px 18px}
.team-card h2{margin:0;color:#243b34;font-size:15px}
.team-card p{margin:5px 0 10px;color:#4a7c60;font-size:11px;font-weight:600}
.team-card small{color:#78867f;font-size:10px}
.legal-nav{display:flex;gap:16px;flex-wrap:wrap;margin-top:24px;font-size:12px}
@keyframes public-enter{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:900px){.team-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.public-main,.demo-main{grid-template-columns:1fr;gap:25px;padding:40px 0 60px}.public-intro{position:static;padding-top:0}.public-intro h1{max-width:680px}}
@media(max-width:620px){.public-page .landing-nav{gap:12px;padding:0 16px}.public-page .landing-nav nav{display:none}.public-page .landing-actions{margin-left:auto}.public-main,.team-main,.public-legal{width:calc(100% - 32px)}.public-main{padding:32px 0 46px}.public-form-card{padding:21px 17px}.public-form-grid{grid-template-columns:1fr;gap:0}.team-main{padding:44px 0 54px}.team-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.team-card-copy{padding:12px}.public-footer{align-items:flex-start;flex-direction:column;padding:16px}.public-legal{padding:36px 0 56px}}
@media(prefers-reduced-motion:reduce){.public-intro,.public-form-card,.demo-points span{animation:none}.team-card{transition:none}.team-card:hover{transform:none}}
