/* Catalog redesign: compact surfaces, clear product hierarchy, restrained motion. */
.hero { min-height: 0; display: block; }
.hero-content { padding: 56px 0 36px; }
.hero-content h1 { max-width: 790px; font-size: clamp(2.7rem, 5.8vw, 4.9rem); line-height: 1.04; letter-spacing: -.045em; }
.hero-copy { max-width: 620px; }
.hero-index { position: relative; inset: auto; padding: 0; }
.hero-index > div { min-height: 60px; padding: 16px; }
.section { padding-top: 48px; padding-bottom: 48px; }
.eyebrow, .product-type { font-size: .875rem; letter-spacing: .1em; }
.section-top { gap: 20px; align-items: end; margin-bottom: 24px; }
.section-main h2, .section-top h2, .statement h2 { font-size: clamp(1.65rem, 3vw, 2.65rem); line-height: 1.15; margin-bottom: 16px; }
.section-lead { margin-bottom: 24px; line-height: 1.65; }
.split-layout { grid-template-columns: 170px minmax(0, 1fr); gap: 40px; }
.principle { padding: 20px 0; grid-template-columns: 40px minmax(0, 1fr); gap: 16px; }
.section-top p { max-width: 660px; color: var(--text-soft); }
.home-products { background: var(--bg-soft); }
.product-list, .product-list.product-list-full { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }
.product-list .product-card { display: flex; flex-direction: column; min-height: 0; padding: 0; gap: 0; border: 1px solid var(--line-strong); border-radius: 8px; background: var(--surface); box-shadow: none; overflow: hidden; transform: none; }
.product-list .product-card:hover { transform: none; border-color: var(--accent-soft); background: var(--surface-raised); }
.product-card::after { display: none; }
.product-list .product-content { display: flex; flex: 1; flex-direction: column; gap: 12px; width: 100%; padding: 22px 22px 12px; }
.product-list .product-heading { min-height: 0; }
.product-list .product-heading h3 { font-size: clamp(1.2rem, 2vw, 1.6rem); line-height: 1.25; letter-spacing: -.025em; overflow-wrap: anywhere; }
.product-list .product-description { color: var(--text-soft); font-size: 1rem; line-height: 1.65; margin-bottom: 18px; }
.product-status { display: inline-flex; width: fit-content; font-size: .875rem; padding: 4px 10px; border: 1px solid var(--line-strong); border-radius: 4px; }
.product-status[data-tone="success"] { color: var(--color-success); }
.product-status[data-tone="warning"] { color: var(--color-warning); }
.compatibility li { font-size: .875rem; }
.product-list .card-actions { margin-top: auto; padding: 0 22px 22px; width: 100%; }
.product-list .card-actions a { display: flex; justify-content: space-between; align-items: center; width: 100%; min-height: 48px; font-size: 1rem; padding: 12px 16px; }
.products-hero { min-height: 0; }
.products-hero-inner { padding: 40px 0; }
.products-hero-inner h1 { font-size: clamp(2.4rem, 5vw, 4rem); line-height: 1.05; }
.products-hero-inner .button { display: none; }
.catalog-tools { background: transparent; box-shadow: none; padding: 0; border: 0; grid-template-columns: minmax(0, 1fr); margin: 0 0 24px; }
.catalog-filters { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)) auto; }
.catalog-count { text-align: left; margin: 0; }
.catalog-tools input, .catalog-tools select { min-height: 48px; font-size: 1rem; }
.community-band { border-block: 1px solid var(--line); background: var(--surface); }
.community-band .hero-actions { margin-top: 0; }
.community-band .section-top { margin-bottom: 0; flex-wrap: wrap; }
.community-band h2 + .hero-actions { margin-top: 20px; }
.community-band .section-top > div { flex: 1 1 300px; min-width: 0; }
.partner-shortcuts { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; margin-top: 28px; }
.partner-shortcuts a { display: flex; align-items: center; justify-content: space-between; gap: 12px; min-height: 64px; padding: 16px; border-top: 1px solid var(--line-strong); text-decoration: none; }
.social-section { padding-top: 32px; padding-bottom: 40px; }
.social-section h2 { font-size: 1.5rem; }
.project-intro { padding-top: 48px; }
.project-intro nav { color: var(--muted); margin-bottom: 24px; }
.project-intro h1 { font-size: clamp(2rem, 5vw, 4rem); line-height: 1.1; letter-spacing: -.035em; overflow-wrap: anywhere; }
.project-intro .section-lead { max-width: 780px; margin-top: 20px; }
.project-intro .hero-actions { margin-top: 28px; }
.project-screenshot { margin-block: 0; }
.project-screenshot img { width: 100%; height: auto; max-height: 620px; object-fit: cover; border-radius: 8px; }
.project-screenshot figcaption { color: var(--muted); font-size: .875rem; margin-top: 12px; }
.product-list .product-media { height: auto; min-height: 0; aspect-ratio: 16 / 9; }
.project-columns { display: grid; grid-template-columns: minmax(0, 1.5fr) minmax(0, 1fr); gap: 40px; }
.project-columns h2 { font-size: 1.8rem; }
.project-columns h3 { margin-top: 28px; font-size: 1.1rem; }
.project-columns p, .project-columns li { color: var(--text-soft); }
.project-columns li + li { margin-top: 12px; }
.project-columns aside { border-left: 1px solid var(--line); padding-left: 32px; }
.button::before { display: none; }
.reveal, .reveal.is-visible, .product-card.reveal, .product-card.reveal.is-visible, .partner-card.reveal, .partner-card.reveal.is-visible { opacity: 1; transform: none; transition: none; }
.site-header { backdrop-filter: none; background: var(--bg); }
.site-nav-dropdown:not([open]) .site-nav-dropdown-menu { display: none; }
.site-nav-dropdown[open] .site-nav-dropdown-menu { display: grid; }
.product-card [hidden], [hidden] { display: none !important; }
.product-list .product-image { aspect-ratio: 1000 / 562; background: #0b0b0b; }
.project-screenshot { width: min(calc(100% - 40px), var(--shell)); margin-inline: auto; }
@media (max-width: 760px) {
  .hero { min-height: 0; }
  .hero-content { padding: 36px 0 24px; }
  .hero-index { position: relative; bottom: auto; }
  .section { padding-block: 32px; }
  .split-layout { grid-template-columns: minmax(0, 1fr); gap: 16px; }
  .section-label .line { display: none; }
  .section-label .eyebrow { margin-bottom: 0; }
  .hero-index > div { min-height: 44px; padding: 10px 0; }
  .site-nav { visibility: hidden; max-height: calc(100dvh - var(--header-height) - 24px); overflow-y: auto; }
  .site-nav.is-open { visibility: visible; }
  .site-nav-dropdown-menu { position: static; width: 100%; margin: 0; box-shadow: none; transform: none; }
  .site-nav-dropdown summary { min-height: 48px; padding: 13px 12px; }
  .catalog-filters { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .product-list, .product-list.product-list-full, .project-columns { grid-template-columns: 1fr; }
  .section-top { align-items: start; flex-direction: column; }
  .partner-shortcuts { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .project-columns { gap: 32px; }
  .project-columns aside { border-left: 0; border-top: 1px solid var(--line); padding: 24px 0 0; }
  .hero-actions { flex-direction: column; }
  .hero-actions .button { width: 100%; }
  .product-list .product-content { padding: 22px 22px 16px; }
  .product-list .card-actions { padding: 0 22px 22px; }
}
