.pf-root{padding:var(--mbh-space-6) var(--mbh-space-5);max-width:72rem;margin:0 auto;font-family:var(--mbh-font-body)}.pf-root--navy{background:var(--mbh-color-ink);max-width:none}.pf-head{gap:var(--mbh-space-2);max-width:44rem}.pf-form,.pf-head{display:flex;flex-direction:column}.pf-form{gap:var(--mbh-space-5);margin-top:var(--mbh-space-6)}.pf-fieldset{border:var(--mbh-border-hairline);border-radius:var(--mbh-radius-lg);padding:var(--mbh-space-5);margin:0}.pf-fieldset,.pf-legend{background:var(--mbh-color-white)}.pf-legend{font-family:var(--mbh-font-display);font-size:1.5rem;font-weight:600;line-height:1;color:var(--mbh-color-navy);padding:0 var(--mbh-space-2);border-radius:2px}.pf-grid{display:grid;grid-gap:var(--mbh-space-4);gap:var(--mbh-space-4)}.pf-grid--2{grid-template-columns:repeat(2,1fr)}.pf-grid--3{grid-template-columns:repeat(3,1fr)}.pf-grid--4{grid-template-columns:repeat(4,1fr)}.pf-setbacks{margin-top:var(--mbh-space-4)}.pf-setbacks summary{cursor:pointer;font-size:var(--mbh-text-sm);color:var(--mbh-color-slate)}.pf-setbacks[open] summary{margin-bottom:var(--mbh-space-4)}.pf-styles{display:flex;flex-wrap:wrap;gap:var(--mbh-space-2);margin-top:var(--mbh-space-4)}.pf-chip{font-family:var(--mbh-font-body);font-size:var(--mbh-text-sm);padding:var(--mbh-space-2) var(--mbh-space-4);border:var(--mbh-border-hairline);border-radius:999px;background:var(--mbh-color-white);color:var(--mbh-color-charcoal);cursor:pointer;transition:all var(--mbh-duration) var(--mbh-ease)}.pf-chip--on,.pf-chip:hover{border-color:var(--mbh-color-navy)}.pf-chip--on{background:var(--mbh-color-navy);color:var(--mbh-color-white)}.pf-form__actions{display:flex;justify-content:flex-start}.pf-status{margin-top:var(--mbh-space-6);padding:var(--mbh-space-5);border:var(--mbh-border-hairline);border-radius:var(--mbh-radius-lg);background:var(--mbh-color-mist);display:flex;flex-direction:column;gap:var(--mbh-space-2)}.pf-root--navy .pf-status{background:hsla(0,0%,100%,.06)}.pf-root--navy .pf-status div,.pf-root--navy .pf-status p{color:var(--mbh-color-stone)}.pf-results{margin-top:var(--mbh-space-6)}.pf-results__summary{margin-bottom:var(--mbh-space-4)}.pf-root--navy .pf-results__summary div{color:var(--mbh-color-stone)}.pf-grid-results{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));grid-gap:var(--mbh-space-5);gap:var(--mbh-space-5)}.pf-card{display:flex;flex-direction:column;background:var(--mbh-color-white);border:var(--mbh-border-hairline);border-radius:var(--mbh-radius-lg);overflow:hidden;transition:box-shadow var(--mbh-duration) var(--mbh-ease)}.pf-card:hover{box-shadow:var(--mbh-shadow-card)}.pf-card__media{position:relative;aspect-ratio:4/3;background:var(--mbh-color-mist)}.pf-card__media img{width:100%;height:100%;object-fit:cover;display:block}.pf-card__flag{position:absolute;top:var(--mbh-space-3);right:var(--mbh-space-3)}.pf-card__body{display:flex;flex-direction:column;gap:var(--mbh-space-2);padding:var(--mbh-space-4) var(--mbh-space-5) var(--mbh-space-5);flex:1 1}.pf-card__name{margin:0;font-family:var(--mbh-font-display);font-size:1.75rem;font-weight:600;line-height:.95;color:var(--mbh-color-ink)}.pf-card__footprint,.pf-card__specs,.pf-card__styles{margin:0;font-size:var(--mbh-text-sm);color:var(--mbh-color-slate)}.pf-card__footprint{color:var(--mbh-color-charcoal);font-weight:500}.pf-card__styles{font-size:var(--mbh-text-xs);letter-spacing:.04em;text-transform:uppercase}.pf-card__actions{display:flex;gap:var(--mbh-space-3);margin-top:auto;padding-top:var(--mbh-space-4)}.pf-btn{font-family:var(--mbh-font-body);font-size:var(--mbh-text-xs);font-weight:600;letter-spacing:.1em;text-transform:uppercase;text-decoration:none;text-align:center;padding:var(--mbh-space-3) var(--mbh-space-4);border-radius:2px;flex:1 1;transition:all var(--mbh-duration) var(--mbh-ease)}.pf-btn--primary{background:var(--mbh-color-navy);color:var(--mbh-color-white);border:1px solid var(--mbh-color-navy)}.pf-btn--primary:hover{background:var(--mbh-color-blue);border-color:var(--mbh-color-blue)}.pf-btn--outline{background:transparent;color:var(--mbh-color-navy);border:1px solid var(--mbh-color-navy)}.pf-btn--outline:hover{background:var(--mbh-color-mist)}@media (max-width:720px){.pf-grid--2,.pf-grid--3,.pf-grid--4{grid-template-columns:1fr}.pf-grid--2{grid-template-columns:repeat(2,1fr)}}