.public-main{width:min(1160px,calc(100% - 32px));margin:0 auto;padding:clamp(40px,7vw,88px) 0 90px}
.public-hero{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(280px,.9fr);gap:clamp(28px,5vw,70px);align-items:center;min-height:560px}
.public-eyebrow{color:var(--so-lime-400);font-weight:800;letter-spacing:.12em;text-transform:uppercase;font-size:var(--so-text-caption)}
.public-hero h1,.public-page-title{font:800 clamp(2.35rem,6vw,4.8rem)/1.02 var(--so-font-display);letter-spacing:-.045em;margin:14px 0 20px;color:#fff}
.public-hero p,.public-lead{max-width:680px;color:var(--so-text-secondary);font-size:clamp(1rem,2vw,1.2rem);line-height:1.65}
.public-hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}
.public-button{min-height:48px;padding:0 20px;border:1px solid var(--so-border);border-radius:12px;display:inline-flex;align-items:center;justify-content:center;color:#fff;text-decoration:none;font-weight:800}
.public-button.primary{color:var(--so-green-950);background:var(--so-lime-500);box-shadow:var(--so-glow)}
.public-hero-visual{position:relative;min-height:430px;border:1px solid var(--so-border);border-radius:32px;overflow:hidden;background:linear-gradient(145deg,rgba(0,71,24,.9),rgba(0,26,9,.95))}
.public-hero-visual img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:64% center;mix-blend-mode:screen}
.public-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:36px}
.public-card{padding:24px;border:1px solid var(--so-border);border-radius:20px;background:var(--so-card-dark-strong);box-shadow:var(--so-shadow)}
.public-card h2,.public-card h3{font:800 var(--so-text-xl)/1.2 var(--so-font-display);margin:0 0 10px}.public-card p,.public-card li{color:var(--so-text-secondary);line-height:1.6}.public-card ul{padding-left:20px}
.public-icon{width:48px;height:48px;border-radius:14px;display:grid;place-items:center;margin-bottom:18px;background:var(--so-green-soft);color:var(--so-lime-500);font-size:24px}
.public-section{margin-top:70px}.public-section h2{font:800 clamp(1.8rem,4vw,3rem)/1.1 var(--so-font-display);margin:0 0 12px}
.public-price{position:relative}.public-price.featured{border-color:var(--so-lime-500);box-shadow:var(--so-glow)}.public-price strong{display:block;font:800 2.5rem var(--so-font-display);margin:18px 0}.public-price .public-button{width:100%;margin-top:16px}
@media(max-width:820px){.public-hero{grid-template-columns:1fr;min-height:auto}.public-hero-visual{min-height:330px}.public-grid{grid-template-columns:1fr}.public-main{width:min(100% - 24px,1160px)}}
