/* Shared public pages use the same tokens as the Plaza home and services. */
html { --ease: cubic-bezier(.22,1,.36,1); --site-dock-clearance: calc(100px + env(safe-area-inset-bottom, 0px)); }
body.hp { overflow-wrap: break-word; }
.hp main.container { padding-bottom: 24px; }
.hp .page-hero { max-width: 850px; padding-block: 36px 26px; }
.hp .page-hero h1 { line-height: 1.5; letter-spacing: 0; }
.hp .page-hero p { max-width: 70ch; line-height: 2; margin-block: 10px 0; }
.hp .field { min-width: 0; }
.hp .field label { display: block; margin-bottom: 7px; color: var(--muted); font-size: 13px; font-weight: bold; }
.hp .field input:not([type=checkbox]):not([type=radio]), .hp .field select, .hp .field textarea { width: 100%; background: var(--solid); color: var(--ink); }
.hp .field input:focus, .hp .field select:focus, .hp .field textarea:focus { background: var(--solid); }
.hp .field input:disabled, .hp .field select:disabled { opacity: .65; cursor: not-allowed; background: var(--panel-2); }
.hp .field input::placeholder, .hp .field textarea::placeholder { color: var(--muted-2); opacity: 1; }
.hp .wizard .wz-step > h2 { font-size: 21px; margin-bottom: 8px; }
.hp .wizard .choice input:checked + span { background: var(--panel-2); color: var(--brand-2); border-color: var(--brand); }
.hp .wizard .hint { color: var(--muted); }
.hp .wizard .wz-progress li.current { color: var(--brand-2); }
.hp .wizard .wz-side, .hp .wizard { box-shadow: 0 8px 28px rgb(32 21 14 / 4%); }
.hp .wz-nav { background: var(--solid); }
.hp .wizard [hidden], .hp [hidden] { display: none !important; }
.hp .btn-accent { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 46px; padding: 10px 20px; border-radius: 12px; border: 1px solid transparent; background: var(--brand); color: var(--on-brand); font-weight: bold; }
.hp .hp-links a[aria-current=page], .hp .hp-mobile-menu a[aria-current=page] { color: var(--brand-2); text-decoration: underline; text-underline-offset: 7px; }
.hp .wz-side .promise { background: var(--panel-2); border-color: var(--line-2); }
.hp .badge, .hp .chip { max-width: 100%; }
.hp .vcard .badge { color: #fff; }
.hp .empty { padding: 32px 20px; }
.hp .filter-bar { min-width: 0; flex-wrap: wrap; }
.hp .filter-bar > * { min-width: 0; }
.hp .narrow { margin-inline: auto; }
.hp .breadcrumb { font-size: 13px; line-height: 1.9; }
@media (max-width: 600px) {
    .hp .page-hero { padding-block: 26px 20px; }
    .hp .page-hero h1 { font-size: 28px; }
    .hp .wz-nav { gap: 8px; border-radius: 0 0 18px 18px; }
    .hp .wz-nav button { padding-inline: 15px; min-height: 46px; }
    .hp .wz-side { padding: 18px; }
    .hp .section-head { flex-wrap: wrap; align-items: start; }
    .hp .panel { padding: 20px; }
    .hp input, .hp select, .hp textarea { font-size: 16px; }
}
html { --cyan: var(--brand-2); --violet: var(--brand); --violet-2: var(--brand-2); --amber: var(--brand); --sh-1: 0 8px 24px rgb(32 21 14 / 6%); --sh-2: 0 20px 50px rgb(32 21 14 / 12%); --sh-glow: 0 8px 24px rgb(32 21 14 / 8%); }
