/* Shared patterns for durable product hubs and object pages. */
.structural-heading { align-items: flex-end; }
.structural-heading-actions { justify-content: flex-end; }
.structural-hero { display: flex; align-items: center; justify-content: space-between; gap: 24px; margin-bottom: 20px; background: linear-gradient(120deg, #fff 0%, #f5fffc 100%); }
.structural-hero h2 { margin: 8px 0; font-size: 25px; letter-spacing: -.45px; }
.structural-hero p { max-width: 780px; }
.structural-hero-stat { flex: 0 0 150px; padding: 20px; border-left: 1px solid var(--border); text-align: center; }
.structural-hero-stat strong { display: block; font-size: 34px; letter-spacing: -1px; }
.structural-hero-stat span { display: block; margin-top: 4px; color: var(--muted); font-size: 12px; }
.structural-avatar { display: flex; align-items: center; justify-content: center; flex: 0 0 110px; width: 110px; height: 110px; border-radius: 50%; background: linear-gradient(140deg, #d9fff6, #b8e8e0); color: #005965; font-size: 31px; font-weight: 800; }
.structural-avatar.large { flex-basis: 130px; width: 130px; height: 130px; }
.structural-grid { margin-bottom: 20px; }
.structural-card { min-height: 180px; display: flex; flex-direction: column; justify-content: space-between; }
.structural-card h2 { margin: 0 0 8px; }
.structural-section { margin-bottom: 20px; }
.structural-section > h2 { margin-bottom: 18px; }
.structural-list-row { gap: 16px; }
.structural-list-row > div:first-child { min-width: 0; }
.structural-list-row strong { display: block; }
.structural-metrics { margin: 0 0 20px; }
.structural-profile { display: flex; align-items: center; gap: 28px; margin-bottom: 20px; }
.structural-detail-grid { align-items: start; margin-bottom: 20px; }
.structural-search, .structural-ask { margin-bottom: 20px; }
.structural-search label { display: block; margin-bottom: 10px; }
.structural-search input { flex: 1 1 300px; min-width: 0; }
.structural-ask { max-width: 850px; }
.structural-ask .field { margin: 0 0 18px; }
.structural-ask textarea { display: block; width: 100%; margin-top: 10px; }
.structural-section .list-row:last-child { border-bottom: 0; }
.mega-nav-featured { display: grid !important; color: inherit; text-decoration: none; }
.mega-nav-featured:focus-visible { outline: 3px solid #5284ff; outline-offset: -3px; }
.mega-nav-featured-action { cursor: pointer; }
@media (max-width: 700px) {
  .structural-heading { align-items: flex-start; }
  .structural-heading-actions { justify-content: flex-start; }
  .structural-hero, .structural-profile { align-items: flex-start; flex-direction: column; }
  .structural-hero-stat { flex: 0 0 auto; width: 100%; padding: 14px 0 0; border-top: 1px solid var(--border); border-left: 0; text-align: left; }
  .structural-hero-stat strong { display: inline; margin-right: 7px; font-size: 26px; }
  .structural-hero-stat span { display: inline; }
  .structural-avatar { align-self: flex-start; }
  .structural-profile { gap: 16px; }
}
