.public-page{min-height:100vh;background:radial-gradient(circle at 90% 5%,rgba(204,0,51,.09),transparent 28%),var(--canvas)}.public-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;background:#fff;border-bottom:1px solid var(--line);padding:.7rem clamp(1rem,4vw,3rem)}.public-brand{display:flex;align-items:center;gap:.8rem;text-decoration:none}.public-brand img{height:62px;width:auto}.public-brand strong,.public-brand small{display:block}.public-brand small{color:var(--muted)}.public-shell{width:min(1180px,calc(100% - 2rem));margin:auto;padding:clamp(2rem,6vw,5rem) 0}.public-hero{display:grid;grid-template-columns:1fr auto;align-items:end;gap:2rem;margin-bottom:2rem}.public-hero h1{font-size:clamp(2.4rem,7vw,5.5rem);line-height:.96;max-width:820px;margin:.3rem 0 1rem}.public-hero>div>p:last-child{font-size:1.12rem;color:var(--muted);max-width:700px}.public-count{background:#fff;border:1px solid var(--line);border-top:5px solid var(--scarlet);border-radius:.8rem;padding:1.2rem;min-width:190px}.public-count strong{display:block;font-size:3rem}.public-count span{color:var(--muted)}.public-card img{width:100px;height:120px;object-fit:cover;border-radius:.5rem}.public-note{text-align:center;color:var(--muted);margin:1.5rem}@media(max-width:700px){.public-header{align-items:flex-start}.public-brand img{height:48px}.public-brand strong{font-size:.92rem}.public-brand small{font-size:.7rem}.public-hero{grid-template-columns:1fr}.public-count{min-width:0}.public-shell{padding-top:2rem}.public-header .button{padding:.55rem .7rem;font-size:.8rem}}

/* Drupal iframe mode follows the careers site's clean, full-width embed style. */
html.public-embed-root{background:transparent}
.public-availability-notice{margin:0 0 1rem;padding:.85rem 1rem;border-left:5px solid var(--scarlet);border-radius:.55rem;background:#fff7f8;color:#3f3f46;line-height:1.5}.public-availability-notice strong{color:#9b0025}
.public-page.is-embed{min-height:0;background:var(--embed-bg,transparent);color:#111827;font-family:Arial,"Helvetica Neue",Helvetica,sans-serif}.is-embed .public-shell{width:min(1240px,100%);padding:24px 16px 8px}.is-embed .public-hero{display:none}.is-embed .public-inventory-panel{border:0;border-radius:0;box-shadow:none;padding:0;background:transparent}.is-embed .filter-bar{padding:0 0 14px;margin-bottom:10px;border-bottom:1px solid #e5e7eb}.is-embed .filter-bar input,.is-embed .filter-bar select,.is-embed .filter-bar .button{height:48px;min-height:48px;font-family:inherit}.is-embed .inventory-grid{gap:16px}.is-embed .inventory-card{background:#fff;border-color:#e5e7eb;box-shadow:none}.is-embed .public-note{margin:18px 0 0}.is-embed .empty-state{grid-column:1/-1}
@media(max-width:900px){.is-embed .inventory-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.is-embed .public-shell{padding:18px 12px 6px}.is-embed .public-hero{grid-template-columns:1fr;gap:12px}.is-embed .public-hero h1{font-size:36px}.is-embed .public-count{display:flex;align-items:baseline;gap:.5rem}.is-embed .public-count strong{font-size:2rem}.is-embed .inventory-grid{grid-template-columns:1fr}.is-embed .filter-bar{grid-template-columns:1fr}.is-embed .filter-bar .button{width:100%}}
.public-card img{object-fit:contain}
.public-inventory-panel .filter-bar{grid-template-columns:repeat(auto-fit,minmax(155px,1fr))}.public-inventory-panel .filter-bar .search-field{grid-column:span 2}@media(max-width:600px){.public-inventory-panel .filter-bar .search-field{grid-column:auto}}
.public-results-toolbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin:.5rem 0 1rem}.public-results-toolbar .live-status{margin:0}.public-pagination{display:flex;align-items:center;justify-content:flex-end;gap:.75rem;margin:1rem 0 .25rem;margin-left:auto}.public-results-toolbar .public-pagination{margin:0 0 0 auto}.public-pagination[hidden]{display:none}.public-pagination span{color:var(--muted);white-space:nowrap}.public-pagination button:disabled{cursor:not-allowed;opacity:.45}.public-page-size select{width:auto;min-width:132px;height:auto;padding:.7rem}
@media(max-width:700px){.public-results-toolbar{align-items:stretch;flex-direction:column}.public-results-toolbar .public-pagination,.public-pagination{align-self:flex-end;flex-wrap:wrap}.public-pagination{gap:.5rem}.public-page-size{flex-basis:100%;display:flex;justify-content:flex-end}}
@media (hover:hover) and (pointer:fine){.public-card img:hover{transform:scale(3.5);box-shadow:0 18px 48px rgba(0,0,0,.38)}}
.public-item-number{margin:.45rem 0 0;color:var(--muted);font-size:.8rem;line-height:1.25;letter-spacing:.01em}
