/* Shared public design components. Scoped to .kd-public, not the family portal. */
.kd-public *{box-sizing:border-box}.kd-public a{color:var(--kd-color-link)}.kd-public :focus-visible{outline:3px solid #b47a43;outline-offset:3px}.kd-public .eyebrow{color:#426b5e;text-transform:uppercase;letter-spacing:.17em;font-size:.72rem;font-weight:800}.kd-public .button,.kd-public button{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.86rem 1.3rem;border:1px solid var(--kd-color-primary);border-radius:999px;background:var(--kd-color-primary);color:white!important;text-decoration:none;font:700 .95rem var(--kd-font-body);cursor:pointer;transition:background .15s,border .15s}.kd-public .button:hover,.kd-public button:hover{background:var(--kd-color-primary-hover)}.kd-public .button-outline{background:transparent;color:var(--kd-color-primary)!important}.kd-public .button-outline:hover{background:var(--kd-color-sage)}.kd-public .panel,.kd-public .feature-card,.kd-public section:not(.hero-section):not(.story-band):not(.feature-section){border:1px solid var(--kd-color-border);border-radius:var(--kd-radius);background:var(--kd-color-surface);box-shadow:var(--kd-shadow)}.kd-public .feature-card{padding:1.65rem;display:flex;flex-direction:column;align-items:flex-start;min-height:225px}.kd-public .feature-card a:last-child{margin-top:auto;font-weight:750;text-decoration:none}.kd-public .feature-icon{width:49px;height:49px;border-radius:13px;background:var(--kd-color-sage);display:grid;place-items:center;font-size:1.4rem;margin-bottom:1rem}.kd-public .muted{color:var(--kd-color-muted)}.kd-public input,.kd-public textarea,.kd-public select{border:1px solid var(--kd-color-border);border-radius:10px;background:white;color:var(--kd-color-text);padding:.8rem;font:inherit;width:100%;max-width:600px;display:block;margin:.35rem 0 1.1rem}.kd-public label{font-weight:700}.kd-public .grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.25rem}.kd-public .prose-panel{padding:2rem}.kd-public .prose-panel p{max-width:73ch}.kd-public .callout{padding:1.4rem;border-left:4px solid #86a696;background:var(--kd-color-sage);border-radius:0 14px 14px 0}@media(prefers-reduced-motion:reduce){.kd-public *{transition:none!important;animation:none!important}}
