/* People portal additions to the Standa design system (standa.css stays identical to the business portal). */
[hidden] { display: none !important; }
.price { font: 600 var(--fs-lg)/1 var(--font-head); color: var(--navy); white-space: nowrap; }
.services.grid-2 { margin-bottom: var(--s5); }
.services .service h2 { margin: 0; }
.custom { margin-top: var(--s5); }
.crumbs { margin: 0 0 var(--s3); }
.crumbs a::before { content: "← "; }
.purchase { display: grid; gap: var(--s5); align-items: start; }
@media (min-width: 900px) { .purchase { grid-template-columns: minmax(0, 1fr) 360px; } .buy { position: sticky; top: 80px; } }
.buy h2 { font-size: 2rem; margin-bottom: var(--s1); }
.buy .btn { width: 100%; margin-top: var(--s3); }
.steps-list { padding-left: 1.25rem; margin: 0; }
.steps-list li { margin-bottom: var(--s2); }
.narrow-card { max-width: 640px; margin: 0 auto; }
.tabs { display: flex; gap: var(--s2); border-bottom: 1px solid var(--border); margin-bottom: var(--s5); }
.tabs a { padding: var(--s2) var(--s3); text-decoration: none; color: var(--navy); }
.tabs a[aria-current="page"] { box-shadow: inset 0 -3px 0 var(--orange); font-weight: 600; }
.filters { display: flex; flex-wrap: wrap; gap: var(--s4); align-items: flex-end; }
.filters .field { margin: 0; min-width: 180px; }
.order-row { display: flex; flex-wrap: wrap; justify-content: space-between; gap: var(--s3); padding: var(--s3) 0; border-bottom: 1px solid var(--border); }
.order-row:last-child { border-bottom: 0; }
.client-row { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: var(--s3); padding: var(--s3) 0; border-bottom: 1px solid var(--border); }
.msg:empty { display: none; }
/* The People menu has more items than the business one: wrap on narrow screens so Help and Sign out stay visible. */
@media (max-width: 900px) { .portal-bar .nav { flex-wrap: wrap; justify-content: flex-start; } .portal-bar .nav a { min-height: 40px; } }
