/* Bridge the existing website design to native, editable WordPress blocks. */
body { font-size: 1rem; line-height: 1.6; }
.wp-site-blocks { padding: 0; }
.wp-site-blocks > *, .wp-block-post-content > *, .wp-block-template-part { margin-block-start: 0; }
.wp-block-post-content { max-width: none; }
figure.wp-block-image { margin: 0; }
.wp-block-image img { height: auto; max-width: 100%; }
.wp-block-group { box-sizing: border-box; }
.phone-frame > figure, .feature-guide-screen > figure { width: 100%; }
.phone-frame img, .feature-guide-screen img { width: 100% !important; }
.wp-block-heading { margin-block-start: 0; }
.wp-block-details { margin-block: 0; }
.hero-actions > p, .closing-actions > p, .section-action > p { margin: 0; }
.hero-actions .wp-block-image img { width: 180px !important; }
.feature-card-top > p { margin: 0; }
.marquee-track > p { margin: 0; white-space: nowrap; }
.marquee-track > p:empty { display: none; }
.feature-guide-index > p { margin: 0; }
.feature-guide-index > p > a { display: flex; gap: 12px; }
.nv-header .brand { flex-shrink: 0; }
.nv-header .brand figure { flex: 0 0 48px; }
.nv-header .brand p { margin: 0; line-height: 1.35; }
.nv-header .brand small { display: block; font-size: .875rem; letter-spacing: 0; }
.site-header.nv-header { display: grid; grid-template-columns: minmax(0, 1fr) max-content; align-items: center; gap: 28px; width: var(--shell); max-width: calc(100% - 32px); min-height: 92px; padding-block: 18px; margin-inline: auto; }
.nv-header > .brand { margin: 0; width: auto; min-width: 0; max-width: 100%; justify-self: start; }
.nv-header .brand p { min-width: 0; overflow-wrap: anywhere; }
.nv-header > .wp-block-navigation { display: flex; flex-flow: row nowrap; justify-self: end; width: auto; min-width: 0; max-width: 100%; margin: 0; color: var(--ink); font-size: .9375rem; }
.nv-header .wp-block-navigation__container { display: flex; flex-flow: row nowrap; align-items: center; gap: 22px; margin: 0; padding: 0; list-style: none; }
.nv-header .wp-block-navigation-item { margin: 0; }
.nv-header .wp-block-navigation-item__content { display: block; white-space: nowrap; color: inherit; }
.nv-header .wp-block-navigation__responsive-container-content { display: flex; align-items: center; }
.nv-header .wp-block-navigation__responsive-container-open,
.nv-header .wp-block-navigation__responsive-container-close { color: var(--ink); background: var(--paper); min-width: 44px; min-height: 44px; align-items: center; justify-content: center; border: 1px solid var(--line); border-radius: 8px; }
.nv-header button svg { display: block; width: 24px; height: 24px; fill: currentColor; }
.nv-header a:focus-visible, .nv-header button:focus-visible { outline: 3px solid var(--gold); outline-offset: 4px; }
/* Use the native WordPress accessible overlay, but switch before the links wrap. */
@media (min-width: 1101px) {
  .nv-header .wp-block-navigation__responsive-container:not(.is-menu-open) { display: block !important; }
  .nv-header .wp-block-navigation__responsive-container-open:not(.always-shown) { display: none !important; }
}
@media (max-width: 1100px) {
  .site-header.nv-header { grid-template-columns: minmax(0, 1fr) 44px; gap: 12px; }
  .nv-header .wp-block-navigation__responsive-container:not(.is-menu-open) { display: none !important; }
  .nv-header .wp-block-navigation__responsive-container-open { display: flex !important; }
}
.nv-header .wp-block-navigation__responsive-container.is-menu-open { position: fixed; inset: 0; z-index: 100000; display: flex !important; background: var(--paper); color: var(--ink); padding: 28px; overflow: auto; }
body.admin-bar .nv-header .wp-block-navigation__responsive-container.is-menu-open { top: 32px; }
.nv-header .is-menu-open .wp-block-navigation__responsive-container-close { display: flex; }
.nv-header .is-menu-open .wp-block-navigation__responsive-container-content { padding-top: 72px; align-items: stretch; }
.nv-header .is-menu-open .wp-block-navigation__container { flex-direction: column; align-items: stretch; gap: 10px; width: 100%; }
.nv-header .is-menu-open .wp-block-navigation-item__content { padding: 12px; font-size: 1.125rem; }
@media (max-width: 782px) { body.admin-bar .nv-header .wp-block-navigation__responsive-container.is-menu-open { top: 46px; } }
.site-footer .wp-block-navigation__container { gap: 20px; }
.site-footer > p, .site-footer > .wp-block-group > p { margin: 0; }
.kicker, .brand small, .feature-card-top, .release-status { font-size: .875rem; }
.prose a, .faq-list p a, .nv-article a { text-decoration: underline; text-underline-offset: .2em; }
.wp-block-query .wp-block-post-template { margin: 0; padding: 0; list-style: none; }
.wp-block-post-template > li { margin: 0; }
.wp-block-query-pagination { gap: 20px; padding-block: 28px; }
.nv-article { width: min(760px, calc(100% - 44px)); margin: 56px auto 90px; }
.nv-article .release-entry { padding: 0; border: 0; }
.nv-article .release-columns { grid-template-columns: 1fr; }
.nv-article .release-entry h2 { font-size: clamp(2rem, 5vw, 3.5rem); }
.nv-staging-note { margin: 0; padding: 12px 22px; background: var(--aqua); font-size: .875rem; text-align: center; }
.nv-local-catalogue { margin: 32px auto 72px; }
.nv-catalogue-search { display: flex; flex-wrap: wrap; gap: 18px; align-items: end; margin-block: 28px; }
.nv-catalogue-search label { display: grid; gap: 8px; }
.nv-catalogue-search input, .nv-catalogue-search select { max-width: 100%; padding: 12px; color: var(--ink); background: var(--field); border: 1px solid var(--line); border-radius: 8px; font: inherit; }
.nv-catalogue-grid { display: grid; grid-template-columns: repeat(auto-fit,minmax(min(100%,280px),1fr)); gap: 20px; }
.nv-catalogue-card { padding: 24px; border: 1px solid var(--line); border-radius: 16px; background: var(--paper-raised); overflow-wrap: anywhere; }
.nv-catalogue-card h2 { font-size: 1.65rem; margin-block: 12px; }
.nv-catalogue-card p { margin-block: 10px; }
.nv-catalogue-pages { display: flex; justify-content: space-between; gap: 28px; margin-block: 28px; }
.promise-row > p { margin: 0; }
@media (max-width: 620px) {
  .screen-pair > .phone-secondary.first { left: 20px; }
  .screen-pair > .phone-secondary.second { right: 20px; }
}
@media (max-width: 780px) {
  .nv-header { gap: 12px; min-height: 86px; flex-wrap: nowrap; }
  .nv-header .brand small { max-width: 175px; }
  .site-footer .wp-block-navigation__container { flex-wrap: wrap; }
  .release-columns { grid-template-columns: 1fr; }
  .hero-actions, .closing-actions { flex-wrap: wrap; }
  .wp-block-group, .wp-block-post-content { min-width: 0; }
}
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { scroll-behavior: auto !important; } }

/* Catalogue working surface. Keep the fixed site-header rules above unchanged. */
.nv-local-catalogue { max-width:100%; min-width:0; margin-block:32px 72px; overflow-wrap:anywhere; }
.nv-local-catalogue h1 { font-size:clamp(2rem,5vw,3.5rem); line-height:1.12; margin:20px 0 14px; letter-spacing:-.025em; }
.nv-local-catalogue h2 { font-size:clamp(1.35rem,3vw,1.8rem); line-height:1.25; margin:0 0 18px; }
.nv-local-catalogue h3 { font-size:1.4rem; line-height:1.3; margin:0 0 12px; }
.nv-local-catalogue a { text-underline-offset:.2em; }
.nv-local-catalogue a:focus-visible,.nv-local-catalogue input:focus-visible,.nv-local-catalogue select:focus-visible { outline:3px solid var(--gold); outline-offset:3px; }
.nvb-breadcrumbs,.nvb-tabs { display:flex; flex-wrap:wrap; align-items:center; gap:10px; font-size:.9375rem; }
.nvb-breadcrumbs a { text-decoration:underline; }
.nvb-tabs { margin:24px 0 0; border-bottom:1px solid var(--line); gap:6px; }
.nvb-tabs a { padding:12px 24px; border-radius:10px 10px 0 0; font-weight:700; }
.nvb-tabs a[aria-current] { background:var(--gold); color:#071720; }
.nv-catalogue-search { display:grid; grid-template-columns:minmax(150px,1fr) minmax(200px,2fr) auto auto; gap:16px; margin:24px 0 32px; }
.nv-catalogue-search label { min-width:0; font-size:.9375rem; }
.nv-catalogue-search input,.nv-catalogue-search select { width:100%; min-width:0; min-height:48px; box-sizing:border-box; }
.nv-catalogue-search button { min-height:48px; padding:12px 26px; }
.nvb-reset { padding:12px 4px; text-decoration:underline; }
.nvb-note { color:var(--muted); font-size:.9375rem; }
.nvb-description { max-width:75ch; }
.nvb-results-heading { display:flex; gap:16px; justify-content:space-between; align-items:baseline; flex-wrap:wrap; }
.nv-catalogue-card { background:var(--field); min-width:0; }
.nv-catalogue-card .kicker { font-size:.875rem; }
.nvb-more { display:inline-block; margin-top:14px; font-weight:700; text-decoration:underline; }
.nvb-matches { padding-left:20px; font-size:.9375rem; }
.nvb-matches a { text-decoration:underline; }
.nvb-detail-grid { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.4fr); gap:24px; align-items:start; margin-block:28px; }
.nvb-detail-grid > * { min-width:0; }
.nvb-variant-list { display:grid; gap:18px; }
.nvb-facts { margin:0; }
.nvb-facts > div { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:12px; padding:12px 0; border-bottom:1px solid var(--line); }
.nvb-facts > div:last-child { border-bottom:0; }
.nvb-facts dt { color:var(--muted); font-size:.9375rem; }
.nvb-facts dd { margin:0; text-align:right; }
.nvb-reference { display:block; width:100%; height:200px; object-fit:contain; margin-bottom:18px; border-radius:10px; }
.nvb-status { font-size:.9375rem; color:var(--gold); }
.nv-catalogue-pages { flex-wrap:wrap; align-items:center; }
@media(max-width:900px) { .nv-catalogue-search { grid-template-columns:minmax(0,1fr) minmax(0,2fr); } .nvb-detail-grid { grid-template-columns:1fr; } }
@media(max-width:520px) { .nv-catalogue-search { grid-template-columns:minmax(0,1fr); } .nv-catalogue-search button { width:100%; } .nv-catalogue-card { padding:20px; } .nvb-facts > div { grid-template-columns:minmax(0,1fr); gap:4px; } .nvb-facts dd { text-align:left; } }
