/**
 * Public portal — native mobile app polish (subtle layer on portal.css).
 * Applies on phones/tablets in portrait-width public shell only.
 */

@media (max-width: 991px) {
  body:not(.pmts-has-sidebar) {
    -webkit-tap-highlight-color: transparent;
    --pmts-mobile-card-radius: 1rem;
    --pmts-mobile-gap: 0.65rem;
    --pmts-mobile-inset: max(0.75rem, env(safe-area-inset-left, 0px));
    --pmts-mobile-inset-right: max(0.75rem, env(safe-area-inset-right, 0px));
    --pmts-mobile-bottom: max(0.75rem, env(safe-area-inset-bottom, 0px));
    --pmts-public-header-height: calc(3.5rem + env(safe-area-inset-top, 0px));
    --pmts-mobile-touch-transition: transform 0.12s ease, opacity 0.12s ease, box-shadow 0.12s ease;
  }

  /* App canvas — soft grey backdrop, content floats as cards */
  body:not(.pmts-has-sidebar) #page-scroll-shell {
    background: linear-gradient(180deg, #e8ecf1 0%, #eef1f6 32%, #f3f4f6 100%);
    -webkit-overflow-scrolling: touch;
    overscroll-behavior-y: contain;
  }

  body:not(.pmts-has-sidebar) .pmts-public-shell {
    padding-left: var(--pmts-mobile-inset);
    padding-right: var(--pmts-mobile-inset-right);
    padding-bottom: calc(0.65rem + var(--pmts-mobile-bottom));
  }

  body:not(.pmts-has-sidebar) .public-page-root {
    display: flex;
    flex-direction: column;
    gap: var(--pmts-mobile-gap);
    min-width: 0;
  }

  /* Sticky frosted header */
  body:not(.pmts-has-sidebar) .pmts-topbar:has(.public-site-header) {
    position: sticky;
    top: 0;
    z-index: 40;
    padding-top: env(safe-area-inset-top, 0px);
  }

  body:not(.pmts-has-sidebar) .public-site-header {
    border-radius: 0 0 var(--pmts-mobile-card-radius) var(--pmts-mobile-card-radius);
    border: 1px solid rgb(226 232 240 / 0.85);
    border-top: none;
    box-shadow:
      0 4px 18px rgb(15 23 42 / 0.08),
      0 1px 0 rgb(255 255 255 / 0.65) inset;
    backdrop-filter: blur(12px) saturate(1.35);
    -webkit-backdrop-filter: blur(12px) saturate(1.35);
    background: rgb(255 255 255 / 0.88);
  }

  body:not(.pmts-has-sidebar) .public-site-header__row {
    min-height: 3.5rem;
  }

  body:not(.pmts-has-sidebar) .public-site-header__logo {
    height: 2.35rem;
  }

  body:not(.pmts-has-sidebar) .public-site-header__brand-title {
    font-size: 0.8125rem;
  }

  body:not(.pmts-has-sidebar) .public-site-header__brand-sub {
    display: block;
    font-size: 0.5625rem;
  }

  body:not(.pmts-has-sidebar) .public-site-header__menu-btn {
    display: inline-flex;
  }

  body:not(.pmts-has-sidebar) .pmts-header-drawer__link,
  body:not(.pmts-has-sidebar) .pmts-header-drawer__close {
    min-height: 2.85rem;
  }

  /* Card stacks for sections */
  body:not(.pmts-has-sidebar) .landing-page {
    gap: var(--pmts-mobile-gap);
  }

  /* Landing home — hide redundant blocks; restored sections use .landing-mobile-compact */
  body:not(.pmts-has-sidebar) .pmts-mobile-hide,
  body:not(.pmts-has-sidebar) .landing-section--desktop-only,
  body:not(.pmts-has-sidebar) .landing-bottom-cta {
    display: none !important;
  }

  /* Summary panels — stacked, tight */
  body:not(.pmts-has-sidebar) .landing-summary-panels {
    grid-template-columns: 1fr;
    gap: var(--pmts-mobile-gap);
  }

  body:not(.pmts-has-sidebar) .landing-summary-panels .landing-panel__title {
    font-size: 0.9375rem;
  }

  body:not(.pmts-has-sidebar) .landing-summary-panels .landing-panel__subtitle {
    font-size: 0.75rem;
    margin-bottom: 0.5rem;
  }

  body:not(.pmts-has-sidebar) .landing-summary-panels .pd-progress-row {
    margin-bottom: 0.45rem;
  }

  body:not(.pmts-has-sidebar) .landing-summary-panels .pd-progress-row__meta {
    font-size: 0.75rem;
  }

  body:not(.pmts-has-sidebar) .landing-summary-panels .landing-budget-stats {
    gap: 0.35rem;
  }

  body:not(.pmts-has-sidebar) .landing-summary-panels .landing-budget-stats dd {
    font-size: 0.8125rem;
  }

  body:not(.pmts-has-sidebar) .landing-summary-panels .landing-panel__footnote {
    font-size: 0.75rem;
    margin-top: 0.5rem;
  }

  /* Project types — 2-up grid, top 4 only */
  body:not(.pmts-has-sidebar) .landing-mobile-compact .landing-type-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.5rem;
  }

  body:not(.pmts-has-sidebar) .landing-mobile-compact .landing-type-card {
    padding: 0.65rem 0.75rem;
    border-radius: 0.625rem;
  }

  body:not(.pmts-has-sidebar) .landing-mobile-compact .landing-type-card__name {
    font-size: 0.8125rem;
  }

  body:not(.pmts-has-sidebar) .landing-mobile-compact .landing-type-card__meta {
    font-size: 0.625rem;
    line-height: 1.35;
  }

  body:not(.pmts-has-sidebar) .landing-mobile-compact .landing-type-card:nth-child(n + 5) {
    display: none;
  }

  /* Leading departments — compact cards, top 3 only */
  body:not(.pmts-has-sidebar) .landing-mobile-compact .landing-dept-grid {
    gap: 0.5rem;
  }

  body:not(.pmts-has-sidebar) .landing-mobile-compact .landing-dept-card {
    padding: 0.75rem;
    gap: 0.45rem;
    border-radius: 0.625rem;
  }

  body:not(.pmts-has-sidebar) .landing-mobile-compact .landing-dept-card__name {
    font-size: 0.8125rem;
  }

  body:not(.pmts-has-sidebar) .landing-mobile-compact .landing-dept-card__desc {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    font-size: 0.75rem;
    line-height: 1.4;
  }

  body:not(.pmts-has-sidebar) .landing-mobile-compact .landing-dept-card__tags {
    flex-wrap: wrap;
    gap: 0.25rem;
  }

  body:not(.pmts-has-sidebar) .landing-mobile-compact .landing-dept-card__tags .public-tag {
    font-size: 0.625rem;
    padding: 0.15rem 0.4rem;
  }

  body:not(.pmts-has-sidebar) .landing-mobile-compact .landing-dept-card__budget {
    font-size: 0.75rem;
  }

  body:not(.pmts-has-sidebar) .landing-mobile-compact .landing-dept-card:nth-child(n + 4) {
    display: none;
  }

  /* County band — 2×2 stats */
  body:not(.pmts-has-sidebar) .landing-county-band.landing-mobile-compact .landing-county-stat:nth-child(n + 5) {
    display: none;
  }

  body:not(.pmts-has-sidebar) .landing-county-band.landing-mobile-compact .landing-section-head__title {
    font-size: 1rem;
  }

  /* Status KPI strip — 2×3 grid, hide budget sub-lines */
  body:not(.pmts-has-sidebar) .landing-page > .dashboard-section .gis-kpi-grid--6 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.5rem;
    margin-bottom: 0;
  }

  body:not(.pmts-has-sidebar) .landing-page > .dashboard-section .gis-kpi-grid--6 .gis-kpi {
    flex-direction: column;
    align-items: center;
    text-align: center;
    padding: 0.55rem 0.4rem;
    gap: 0.25rem;
  }

  body:not(.pmts-has-sidebar) .landing-page > .dashboard-section .gis-kpi-grid--6 .gis-kpi__icon {
    width: 1.35rem;
    height: 1.35rem;
  }

  body:not(.pmts-has-sidebar) .landing-page > .dashboard-section .gis-kpi-grid--6 .gis-kpi__label {
    font-size: 0.5625rem;
  }

  body:not(.pmts-has-sidebar) .landing-page > .dashboard-section .gis-kpi-grid--6 .gis-kpi__value {
    font-size: 0.875rem;
  }

  body:not(.pmts-has-sidebar) .landing-page > .dashboard-section .gis-kpi-grid--6 .gis-kpi__meta {
    display: none;
  }

  body:not(.pmts-has-sidebar) .landing-hero {
    margin-bottom: 0.35rem;
  }

  body:not(.pmts-has-sidebar) .landing-hero__title {
    font-size: clamp(1.15rem, 5vw, 1.45rem);
    line-height: 1.2;
  }

  body:not(.pmts-has-sidebar) .landing-hero__lead {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    margin-bottom: 0;
    font-size: 0.8125rem;
    line-height: 1.45;
  }

  body:not(.pmts-has-sidebar) .landing-hero__actions {
    margin-top: 0.65rem;
  }

  body:not(.pmts-has-sidebar) .landing-hero__actions .landing-hero__btn {
    flex: 1 1 calc(50% - 0.25rem);
  }

  body:not(.pmts-has-sidebar) .landing-hero__panel {
    margin-top: 0.6rem;
    padding: 0.75rem;
  }

  body:not(.pmts-has-sidebar) .landing-hero__panel-label {
    font-size: 0.625rem;
    margin-bottom: 0.35rem;
  }

  body:not(.pmts-has-sidebar) .landing-hero__panel-link {
    margin-top: 0.5rem;
    font-size: 0.75rem;
  }

  body:not(.pmts-has-sidebar) .landing-page > .dashboard-section .landing-section-head {
    margin-bottom: 0.65rem;
  }

  body:not(.pmts-has-sidebar) .landing-page > .dashboard-section .landing-section-head__link {
    display: none;
  }

  body:not(.pmts-has-sidebar) .landing-page > .dashboard-section .landing-section-head__title {
    font-size: 0.9375rem;
  }

  body:not(.pmts-has-sidebar) .landing-page > .dashboard-section .landing-section-head__eyebrow {
    font-size: 0.625rem;
  }

  body:not(.pmts-has-sidebar) .landing-page .dashboard-section,
  body:not(.pmts-has-sidebar) .public-project-page .dashboard-section,
  body:not(.pmts-has-sidebar) .public-page-content .dashboard-section,
  body:not(.pmts-has-sidebar) .dashboard-page-root .dashboard-section {
    margin-bottom: var(--pmts-mobile-gap);
    padding: 1rem;
    border-radius: var(--pmts-mobile-card-radius);
    border: 1px solid rgb(226 232 240 / 0.9);
    background: #fff;
    box-shadow:
      0 1px 2px rgb(15 23 42 / 0.04),
      0 8px 24px rgb(15 23 42 / 0.06);
  }

  /* County overview band — keep dark gradient (generic section rule forces white bg) */
  body:not(.pmts-has-sidebar) .landing-page .dashboard-section.landing-county-band {
    padding: 1.25rem 1rem 1.1rem;
    border: 1px solid rgb(30 58 138 / 0.35);
    background: linear-gradient(
      145deg,
      rgb(15 23 42) 0%,
      rgb(30 58 138) 52%,
      rgb(29 78 216) 100%
    );
    box-shadow: 0 10px 28px rgb(15 23 42 / 0.2);
  }

  body:not(.pmts-has-sidebar) .landing-county-band .landing-section-head {
    margin-bottom: 0.85rem;
  }

  body:not(.pmts-has-sidebar) .landing-county-band .landing-section-head--light .landing-section-head__title,
  body:not(.pmts-has-sidebar) .landing-county-band .landing-section-head--light .landing-section-head__eyebrow {
    color: #fff;
  }

  body:not(.pmts-has-sidebar) .landing-county-band .landing-section-head__eyebrow {
    color: rgb(191 219 254);
  }

  body:not(.pmts-has-sidebar) .landing-county-stats {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.6rem;
  }

  body:not(.pmts-has-sidebar) .landing-county-stat {
    padding: 0.75rem 0.65rem;
    background: rgb(255 255 255 / 0.1);
    border-color: rgb(255 255 255 / 0.14);
  }

  body:not(.pmts-has-sidebar) .landing-county-stat__value {
    font-size: 1rem;
    line-height: 1.25;
    word-break: break-word;
    color: #fff;
  }

  body:not(.pmts-has-sidebar) .landing-county-stat__label {
    margin-top: 0.3rem;
    font-size: 0.625rem;
    line-height: 1.3;
    color: rgb(191 219 254);
  }

  body:not(.pmts-has-sidebar) .landing-hero {
    border-radius: calc(var(--pmts-mobile-card-radius) + 0.125rem);
    margin-bottom: var(--pmts-mobile-gap);
    box-shadow: 0 12px 32px rgb(15 23 42 / 0.16);
  }

  body:not(.pmts-has-sidebar) .landing-hero__panel {
    margin-top: 0.5rem;
    border-radius: 0.875rem;
    background: rgb(255 255 255 / 0.12);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
  }

  body:not(.pmts-has-sidebar) .landing-hero__inner {
    grid-template-columns: 1fr;
  }

  body:not(.pmts-has-sidebar) .landing-hero__metrics {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.5rem;
  }

  body:not(.pmts-has-sidebar) .landing-hero__metrics dd {
    font-size: 0.875rem;
    word-break: break-word;
  }

  body:not(.pmts-has-sidebar) .public-page-hero,
  body:not(.pmts-has-sidebar) .public-page-content > .dashboard-panel,
  body:not(.pmts-has-sidebar) .public-feedback-form-wrap {
    border-radius: var(--pmts-mobile-card-radius);
  }

  /* Touch-friendly controls */
  body:not(.pmts-has-sidebar) .public-btn,
  body:not(.pmts-has-sidebar) .landing-hero__btn,
  body:not(.pmts-has-sidebar) .landing-cta-btn,
  body:not(.pmts-has-sidebar) .public-footer-link {
    min-height: 2.75rem;
    touch-action: manipulation;
  }

  body:not(.pmts-has-sidebar) .public-btn:active,
  body:not(.pmts-has-sidebar) .landing-hero__btn:active,
  body:not(.pmts-has-sidebar) .landing-cta-btn:active {
    transform: scale(0.98);
  }

  body:not(.pmts-has-sidebar) .public-feedback-form__input,
  body:not(.pmts-has-sidebar) .public-feedback-form__rating {
    font-size: 16px; /* prevent iOS zoom on focus */
  }

  /* Mobile footer — scrolls with page content above the fixed tab bar */
  body.pmts-pwa-mobile:not(.pmts-has-sidebar) .pmts-public-footer-wrap {
    margin-top: auto;
  }

  body.pmts-pwa-mobile:not(.pmts-has-sidebar) .pmts-public-mobile-footer {
    border-radius: var(--pmts-mobile-card-radius) var(--pmts-mobile-card-radius) 0 0;
    box-shadow: 0 -4px 16px rgb(15 23 42 / 0.05);
  }

  /* Footer — desktop only on mobile */
  body:not(.pmts-has-sidebar) .public-site-footer--desktop {
    margin-top: var(--pmts-mobile-gap);
    border-radius: var(--pmts-mobile-card-radius) var(--pmts-mobile-card-radius) 0 0;
    border: 1px solid rgb(226 232 240);
    border-bottom: none;
    box-shadow: 0 -4px 20px rgb(15 23 42 / 0.05);
  }

  /* Toast messages — top sheet on mobile */
  body:not(.pmts-has-sidebar) .pmts-messages-wrap {
    padding-left: var(--pmts-mobile-inset);
    padding-right: var(--pmts-mobile-inset-right);
  }

  body:not(.pmts-has-sidebar) .pmts-alert {
    border-radius: 0.875rem;
    box-shadow: 0 10px 30px rgb(15 23 42 / 0.12);
  }

  body:not(.pmts-has-sidebar) .landing-explore-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--pmts-mobile-gap);
  }

  body:not(.pmts-has-sidebar) .landing-explore-card {
    border-radius: var(--pmts-mobile-card-radius);
    box-shadow:
      0 1px 2px rgb(15 23 42 / 0.04),
      0 6px 20px rgb(15 23 42 / 0.07);
    touch-action: manipulation;
    transition: transform 0.12s ease, box-shadow 0.15s ease;
  }

  body:not(.pmts-has-sidebar) .landing-explore-card:active {
    transform: scale(0.985);
    box-shadow: 0 2px 8px rgb(15 23 42 / 0.08);
  }

  /* Inner pages — hero + list panels as cards */
  body:not(.pmts-has-sidebar) .public-page-hero,
  body:not(.pmts-has-sidebar) .projects-archive-hero {
    margin-bottom: var(--pmts-mobile-gap);
    border-radius: calc(var(--pmts-mobile-card-radius) + 0.125rem);
    box-shadow: 0 12px 32px rgb(15 23 42 / 0.14);
  }

  body:not(.pmts-has-sidebar) .projects-archive-panel,
  body:not(.pmts-has-sidebar) .projects-filter-panel,
  body:not(.pmts-has-sidebar) .projects-archive-chips {
    border-radius: var(--pmts-mobile-card-radius);
    box-shadow:
      0 1px 2px rgb(15 23 42 / 0.04),
      0 8px 24px rgb(15 23 42 / 0.06);
  }

  body:not(.pmts-has-sidebar) .projects-archive-btn,
  body:not(.pmts-has-sidebar) .projects-archive-page-btn {
    min-height: 2.75rem;
    touch-action: manipulation;
  }

  body:not(.pmts-has-sidebar) .projects-archive-btn:active,
  body:not(.pmts-has-sidebar) .projects-archive-page-btn:active {
    transform: scale(0.98);
  }

  /* Filter chips — horizontal swipe row */
  body:not(.pmts-has-sidebar) .public-filter-chips,
  body:not(.pmts-has-sidebar) .project-gallery-filters {
    flex-wrap: nowrap;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    scroll-snap-type: x proximity;
    scrollbar-width: none;
    padding-bottom: 0.25rem;
    margin-left: calc(-1 * var(--pmts-mobile-inset));
    margin-right: calc(-1 * var(--pmts-mobile-inset-right));
    padding-left: var(--pmts-mobile-inset);
    padding-right: var(--pmts-mobile-inset-right);
  }

  body:not(.pmts-has-sidebar) .public-page-hero__stats,
  body:not(.pmts-has-sidebar) .about-hero__stats,
  body:not(.pmts-has-sidebar) .project-gallery-hero__stats,
  body:not(.pmts-has-sidebar) .public-gis-hero__stats {
    display: block;
    width: 100%;
    min-width: 0;
  }

  body:not(.pmts-has-sidebar) .public-page-hero__stats .gis-kpi-grid,
  body:not(.pmts-has-sidebar) .about-hero__stats .gis-kpi-grid,
  body:not(.pmts-has-sidebar) .project-gallery-hero__stats .gis-kpi-grid,
  body:not(.pmts-has-sidebar) .public-gis-hero__stats .gis-kpi-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.4rem;
    width: 100%;
  }

  body:not(.pmts-has-sidebar) .public-filter-chips::-webkit-scrollbar,
  body:not(.pmts-has-sidebar) .project-gallery-filters::-webkit-scrollbar {
    display: none;
  }

  body:not(.pmts-has-sidebar) .public-filter-chip,
  body:not(.pmts-has-sidebar) .project-gallery-filter {
    scroll-snap-align: start;
    flex-shrink: 0;
  }

  body:not(.pmts-has-sidebar) .public-filter-chip {
    min-height: 2.5rem;
    touch-action: manipulation;
  }

  /* Breadcrumb — tab bar covers primary routes */
  body:not(.pmts-has-sidebar) .public-breadcrumb,
  body:not(.pmts-has-sidebar) .pd-breadcrumb {
    display: none;
  }

  /* Auth screens — floating sheet */
  body:not(.pmts-has-sidebar) .form-container {
    padding-left: var(--pmts-mobile-inset);
    padding-right: var(--pmts-mobile-inset-right);
  }

  body:not(.pmts-has-sidebar) .form-container > div:last-child > div {
    border-radius: var(--pmts-mobile-card-radius);
    border: 1px solid rgb(226 232 240);
    box-shadow: 0 12px 36px rgb(15 23 42 / 0.1);
  }

  body:not(.pmts-has-sidebar) .form-container .pmts-field-control,
  body:not(.pmts-has-sidebar) .form-container select {
    font-size: 16px;
    min-height: 2.75rem;
  }

  /* ── Hero actions — side-by-side CTAs on mobile ───────────────── */

  body:not(.pmts-has-sidebar) .about-hero__actions,
  body:not(.pmts-has-sidebar) .contact-hero__actions,
  body:not(.pmts-has-sidebar) .public-page-hero__actions,
  body:not(.pmts-has-sidebar) .project-gallery-hero__actions,
  body:not(.pmts-has-sidebar) .public-gis-hero__actions,
  body:not(.pmts-has-sidebar) .update-post-hero__actions,
  body:not(.pmts-has-sidebar) .landing-hero__actions {
    flex-direction: row;
    align-items: stretch;
    flex-wrap: wrap;
    gap: 0.5rem;
    margin-top: 0.75rem;
  }

  body:not(.pmts-has-sidebar) .about-hero__actions .public-btn,
  body:not(.pmts-has-sidebar) .about-hero__actions .landing-cta-btn,
  body:not(.pmts-has-sidebar) .contact-hero__actions .public-btn,
  body:not(.pmts-has-sidebar) .contact-hero__actions .landing-cta-btn,
  body:not(.pmts-has-sidebar) .public-page-hero__actions .public-btn,
  body:not(.pmts-has-sidebar) .public-page-hero__actions .landing-cta-btn,
  body:not(.pmts-has-sidebar) .project-gallery-hero__actions .public-btn,
  body:not(.pmts-has-sidebar) .project-gallery-hero__actions .landing-cta-btn,
  body:not(.pmts-has-sidebar) .public-gis-hero__actions .public-btn,
  body:not(.pmts-has-sidebar) .public-gis-hero__actions .landing-cta-btn,
  body:not(.pmts-has-sidebar) .update-post-hero__actions .public-btn,
  body:not(.pmts-has-sidebar) .update-post-hero__actions .landing-cta-btn,
  body:not(.pmts-has-sidebar) .landing-hero__actions .landing-hero__btn {
    flex: 1 1 calc(50% - 0.25rem);
    min-width: 0;
    width: auto;
    justify-content: center;
    padding: 0.5rem 0.55rem;
    font-size: 0.75rem;
    min-height: 2.375rem;
  }

  /* Smooth in-app scrolling */
  body:not(.pmts-has-sidebar) #page-scroll-shell {
    scroll-behavior: smooth;
  }

  /* ── Page shells & typography ───────────────────────────────────── */

  body:not(.pmts-has-sidebar) .landing-page,
  body:not(.pmts-has-sidebar) .about-page,
  body:not(.pmts-has-sidebar) .contact-page,
  body:not(.pmts-has-sidebar) .departments-page,
  body:not(.pmts-has-sidebar) .resources-page,
  body:not(.pmts-has-sidebar) .faqs-page,
  body:not(.pmts-has-sidebar) .feedback-page,
  body:not(.pmts-has-sidebar) .public-project-page,
  body:not(.pmts-has-sidebar) .updates-archive-page,
  body:not(.pmts-has-sidebar) .update-post-page,
  body:not(.pmts-has-sidebar) .project-gallery-page,
  body:not(.pmts-has-sidebar) .public-gis-page,
  body:not(.pmts-has-sidebar) .legal-page,
  body:not(.pmts-has-sidebar) .projects-archive,
  body:not(.pmts-has-sidebar) .pmts-error-page {
    gap: var(--pmts-mobile-gap);
  }

  body:not(.pmts-has-sidebar) .dashboard-page-root {
    gap: var(--pmts-mobile-gap);
  }

  body:not(.pmts-has-sidebar) .public-content-panel {
    padding: 1rem;
    border-radius: var(--pmts-mobile-card-radius);
  }

  /* ── All public heroes — tighter padding & readable titles ────────── */

  body:not(.pmts-has-sidebar) .landing-hero__inner,
  body:not(.pmts-has-sidebar) .public-page-hero,
  body:not(.pmts-has-sidebar) .about-hero,
  body:not(.pmts-has-sidebar) .contact-hero,
  body:not(.pmts-has-sidebar) .project-gallery-hero,
  body:not(.pmts-has-sidebar) .public-gis-hero,
  body:not(.pmts-has-sidebar) .update-post-hero,
  body:not(.pmts-has-sidebar) .projects-archive-hero {
    padding: 1rem 0.85rem !important;
    gap: 0.75rem;
  }

  body:not(.pmts-has-sidebar) .public-page-hero__eyebrow,
  body:not(.pmts-has-sidebar) .about-hero__eyebrow,
  body:not(.pmts-has-sidebar) .contact-hero__eyebrow,
  body:not(.pmts-has-sidebar) .project-gallery-hero__eyebrow,
  body:not(.pmts-has-sidebar) .public-gis-hero__eyebrow,
  body:not(.pmts-has-sidebar) .update-post-hero__eyebrow,
  body:not(.pmts-has-sidebar) .landing-hero__eyebrow {
    font-size: 0.625rem;
    letter-spacing: 0.08em;
  }

  body:not(.pmts-has-sidebar) .public-page-hero__title,
  body:not(.pmts-has-sidebar) .about-hero__title,
  body:not(.pmts-has-sidebar) .contact-hero__title,
  body:not(.pmts-has-sidebar) .project-gallery-hero__title,
  body:not(.pmts-has-sidebar) .public-gis-hero__title,
  body:not(.pmts-has-sidebar) .update-post-hero__title,
  body:not(.pmts-has-sidebar) .landing-hero__title {
    margin-top: 0.35rem;
    font-size: clamp(1.15rem, 5vw, 1.45rem);
    line-height: 1.15;
    word-break: break-word;
    hyphens: auto;
  }

  body:not(.pmts-has-sidebar) .public-page-hero__lead,
  body:not(.pmts-has-sidebar) .about-hero__lead,
  body:not(.pmts-has-sidebar) .contact-hero__lead,
  body:not(.pmts-has-sidebar) .project-gallery-hero__lead,
  body:not(.pmts-has-sidebar) .public-gis-hero__lead,
  body:not(.pmts-has-sidebar) .update-post-hero__lead,
  body:not(.pmts-has-sidebar) .landing-hero__lead {
    margin-top: 0.5rem;
    font-size: 0.8125rem;
    line-height: 1.5;
  }

  body:not(.pmts-has-sidebar) .projects-archive-hero__toolbar,
  body:not(.pmts-has-sidebar) .projects-archive-hero__actions,
  body:not(.pmts-has-sidebar) .projects-archive-panel__toolbar {
    flex-direction: column;
    align-items: stretch;
    width: 100%;
  }

  body:not(.pmts-has-sidebar) .projects-archive-hero__actions .projects-archive-btn,
  body:not(.pmts-has-sidebar) .projects-archive-panel__toolbar .projects-archive-btn {
    width: 100%;
    justify-content: center;
  }

  body:not(.pmts-has-sidebar) .about-hero,
  body:not(.pmts-has-sidebar) .contact-hero,
  body:not(.pmts-has-sidebar) .update-post-hero,
  body:not(.pmts-has-sidebar) .project-gallery-hero,
  body:not(.pmts-has-sidebar) .public-gis-hero {
    margin-bottom: var(--pmts-mobile-gap);
    border-radius: calc(var(--pmts-mobile-card-radius) + 0.125rem);
    box-shadow: 0 12px 32px rgb(15 23 42 / 0.14);
  }

  /* ── Hero KPI / stats — prevent money overflow ──────────────────── */

  body:not(.pmts-has-sidebar) .public-page-hero__stats .gis-kpi,
  body:not(.pmts-has-sidebar) .about-hero__stats .gis-kpi,
  body:not(.pmts-has-sidebar) .project-gallery-hero__stats .gis-kpi,
  body:not(.pmts-has-sidebar) .public-gis-hero__stats .gis-kpi,
  body:not(.pmts-has-sidebar) .public-page-hero__stats .gis-kpi-grid--stack .gis-kpi {
    flex-direction: column;
    align-items: center;
    text-align: center;
    padding: 0.5rem 0.3rem;
    gap: 0.3rem;
    border-radius: 0.625rem;
  }

  body:not(.pmts-has-sidebar) .public-page-hero__stats .gis-kpi__icon,
  body:not(.pmts-has-sidebar) .about-hero__stats .gis-kpi__icon,
  body:not(.pmts-has-sidebar) .project-gallery-hero__stats .gis-kpi__icon,
  body:not(.pmts-has-sidebar) .public-gis-hero__stats .gis-kpi__icon {
    width: 1.5rem;
    height: 1.5rem;
    border-radius: 0.4rem;
  }

  body:not(.pmts-has-sidebar) .public-page-hero__stats .gis-kpi__icon svg,
  body:not(.pmts-has-sidebar) .about-hero__stats .gis-kpi__icon svg,
  body:not(.pmts-has-sidebar) .project-gallery-hero__stats .gis-kpi__icon svg,
  body:not(.pmts-has-sidebar) .public-gis-hero__stats .gis-kpi__icon svg {
    width: 0.75rem;
    height: 0.75rem;
  }

  body:not(.pmts-has-sidebar) .public-page-hero__stats .gis-kpi__label,
  body:not(.pmts-has-sidebar) .about-hero__stats .gis-kpi__label,
  body:not(.pmts-has-sidebar) .project-gallery-hero__stats .gis-kpi__label,
  body:not(.pmts-has-sidebar) .public-gis-hero__stats .gis-kpi__label {
    font-size: 0.5rem;
    letter-spacing: 0.04em;
    line-height: 1.2;
  }

  body:not(.pmts-has-sidebar) .public-page-hero__stats .gis-kpi__metric,
  body:not(.pmts-has-sidebar) .about-hero__stats .gis-kpi__metric,
  body:not(.pmts-has-sidebar) .project-gallery-hero__stats .gis-kpi__metric,
  body:not(.pmts-has-sidebar) .public-gis-hero__stats .gis-kpi__metric {
    margin-top: 0.1rem;
    justify-content: center;
  }

  body:not(.pmts-has-sidebar) .public-page-hero__stats .gis-kpi__value,
  body:not(.pmts-has-sidebar) .about-hero__stats .gis-kpi__value,
  body:not(.pmts-has-sidebar) .project-gallery-hero__stats .gis-kpi__value,
  body:not(.pmts-has-sidebar) .public-gis-hero__stats .gis-kpi__value {
    font-size: 0.8125rem;
  }

  body:not(.pmts-has-sidebar) .public-page-hero__stats .gis-kpi__value--money,
  body:not(.pmts-has-sidebar) .about-hero__stats .gis-kpi__value--money,
  body:not(.pmts-has-sidebar) .project-gallery-hero__stats .gis-kpi__value--money,
  body:not(.pmts-has-sidebar) .public-gis-hero__stats .gis-kpi__value--money {
    white-space: normal;
    word-break: break-word;
    font-size: 0.5625rem;
    line-height: 1.2;
  }

  /* ── Project detail mobile ──────────────────────────────────────── */

  body:not(.pmts-has-sidebar) .public-project-hero__badges {
    flex-wrap: wrap;
    gap: 0.4rem;
  }

  body:not(.pmts-has-sidebar) .public-project-hero__title {
    font-size: clamp(1.25rem, 5.5vw, 1.65rem);
    line-height: 1.25;
    word-break: break-word;
  }

  body:not(.pmts-has-sidebar) .public-project-layout {
    gap: var(--pmts-mobile-gap);
  }

  body:not(.pmts-has-sidebar) .public-project-main,
  body:not(.pmts-has-sidebar) .public-project-aside {
    min-width: 0;
  }

  body:not(.pmts-has-sidebar) .public-project-facts__row {
    grid-template-columns: 1fr;
    gap: 0.25rem;
  }

  body:not(.pmts-has-sidebar) .public-project-facts__row dt {
    font-size: 0.68rem;
  }

  /* ── Landing & section headers ──────────────────────────────────── */

  body:not(.pmts-has-sidebar) .landing-section-head {
    flex-direction: column;
    align-items: flex-start;
    gap: 0.5rem;
  }

  body:not(.pmts-has-sidebar) .landing-section-head__title {
    font-size: 1.05rem;
  }

  body:not(.pmts-has-sidebar) .landing-metrics-panel {
    border-radius: var(--pmts-mobile-card-radius);
  }

  /* ── Departments, legal, FAQ grids ──────────────────────────────── */

  body:not(.pmts-has-sidebar) .public-dept-grid,
  body:not(.pmts-has-sidebar) .legal-index-grid {
    grid-template-columns: 1fr;
    gap: var(--pmts-mobile-gap);
  }

  body:not(.pmts-has-sidebar) .public-dept-card,
  body:not(.pmts-has-sidebar) .legal-index-card {
    border-radius: var(--pmts-mobile-card-radius);
  }

  body:not(.pmts-has-sidebar) .legal-page__layout {
    grid-template-columns: 1fr;
    gap: var(--pmts-mobile-gap);
  }

  body:not(.pmts-has-sidebar) .legal-page__nav {
    position: static;
    border-radius: var(--pmts-mobile-card-radius);
    padding: 0.75rem;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }

  body:not(.pmts-has-sidebar) .public-faq__item {
    border-radius: 0.75rem;
  }

  /* ── Contact & forms (iOS-friendly) ─────────────────────────────── */

  body:not(.pmts-has-sidebar) .contact-split {
    gap: var(--pmts-mobile-gap);
  }

  body:not(.pmts-has-sidebar) .contact-form__input,
  body:not(.pmts-has-sidebar) .contact-form__textarea,
  body:not(.pmts-has-sidebar) .contact-form select,
  body:not(.pmts-has-sidebar) .contact-form input,
  body:not(.pmts-has-sidebar) .contact-form textarea {
    font-size: 16px;
    min-height: 2.75rem;
  }

  body:not(.pmts-has-sidebar) .contact-form__grid {
    grid-template-columns: 1fr;
  }

  body:not(.pmts-has-sidebar) .contact-quick-card {
    border-radius: 0.75rem;
  }

  /* ── Public analytics pages (statistics, dept tables) ───────────── */

  body:not(.pmts-has-sidebar) .dashboard-page-header {
    margin-left: 0;
    margin-right: 0;
    padding: 1rem 1.125rem;
    border-radius: var(--pmts-mobile-card-radius);
    border: 1px solid rgb(226 232 240 / 0.9);
    background: #fff;
    box-shadow: 0 8px 24px rgb(15 23 42 / 0.06);
  }

  body:not(.pmts-has-sidebar) .dashboard-page-header__title {
    font-size: clamp(1.1rem, 5vw, 1.35rem);
    line-height: 1.3;
    word-break: break-word;
  }

  body:not(.pmts-has-sidebar) .dashboard-page-header__subtitle {
    font-size: 0.85rem;
    line-height: 1.5;
  }

  body:not(.pmts-has-sidebar) .dashboard-page-header .flex.flex-col.gap-4 {
    gap: 0.75rem !important;
  }

  body:not(.pmts-has-sidebar) .dashboard-table-wrap {
    position: relative;
    margin-left: calc(-1 * var(--pmts-mobile-inset));
    margin-right: calc(-1 * var(--pmts-mobile-inset-right));
    padding-left: var(--pmts-mobile-inset);
    padding-right: var(--pmts-mobile-inset-right);
    border-radius: 0;
    border-left: none;
    border-right: none;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: thin;
  }

  body:not(.pmts-has-sidebar) .dashboard-table-wrap::after {
    content: "Swipe sideways to see more →";
    display: block;
    padding: 0.45rem 0.15rem 0;
    font-size: 0.68rem;
    font-weight: 600;
    letter-spacing: 0.03em;
    text-transform: uppercase;
    color: rgb(100 116 139);
    text-align: center;
  }

  body:not(.pmts-has-sidebar) .pd-page-header {
    border-radius: var(--pmts-mobile-card-radius);
    box-shadow: 0 8px 24px rgb(15 23 42 / 0.06);
  }

  /* ── Project archive panels ─────────────────────────────────────── */

  body:not(.pmts-has-sidebar) .projects-archive__layout {
    gap: var(--pmts-mobile-gap);
  }

  body:not(.pmts-has-sidebar) .projects-archive-panel {
    padding: 1rem;
    overflow: hidden;
  }

  body:not(.pmts-has-sidebar) .projects-archive-quick-filters {
    margin-left: -1rem;
    margin-right: -1rem;
    padding-left: 1rem;
    padding-right: 1rem;
  }

  body:not(.pmts-has-sidebar) .projects-archive-quick-filters__row {
    flex-wrap: nowrap;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    scroll-snap-type: x proximity;
    padding-bottom: 0.2rem;
  }

  body:not(.pmts-has-sidebar) .projects-archive-quick-filters__field {
    flex: 0 0 auto;
    min-width: 8.25rem;
    scroll-snap-align: start;
  }

  body:not(.pmts-has-sidebar) .projects-archive-quick-filters__field--search {
    min-width: 11rem;
    flex-basis: 11rem;
  }

  body:not(.pmts-has-sidebar) .projects-archive-quick-filters__actions {
    flex: 0 0 auto;
    margin-left: 0;
  }

  body:not(.pmts-has-sidebar) .projects-archive-quick-filters__control {
    font-size: 16px;
    min-height: 2.5rem;
  }

  body:not(.pmts-has-sidebar) .projects-archive-per-page {
    flex-wrap: wrap;
    justify-content: space-between;
    width: 100%;
  }

  body:not(.pmts-has-sidebar) .projects-filter-panel {
    max-height: min(78vh, 32rem);
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
  }

  /* ── Feedback archive ─────────────────────────────────────────────── */

  body:not(.pmts-has-sidebar) .feedback-archive-layout {
    gap: var(--pmts-mobile-gap);
  }

  body:not(.pmts-has-sidebar) .feedback-archive-sidebar {
    border-radius: var(--pmts-mobile-card-radius);
  }

  /* ── GIS map page ─────────────────────────────────────────────────── */

  body:not(.pmts-has-sidebar) .public-gis-page .gis-map-panel {
    min-height: min(52vh, 22rem);
    border-radius: var(--pmts-mobile-card-radius);
  }

  body:not(.pmts-has-sidebar) .public-gis-page .gis-filters-panel {
    border-radius: var(--pmts-mobile-card-radius);
  }

  body:not(.pmts-has-sidebar) .public-gis-page .gis-layout {
    gap: var(--pmts-mobile-gap);
  }

  /* ── Schedule timeline on public project detail ───────────────────── */

  body:not(.pmts-has-sidebar) .pmts-project-schedule {
    padding: 1rem;
  }

  body:not(.pmts-has-sidebar) .pmts-project-schedule__hero {
    grid-template-columns: 1fr;
    padding: 1.15rem 1rem;
  }

  body:not(.pmts-has-sidebar) .pmts-project-schedule__toolbar {
    grid-template-columns: 1fr;
    padding: 1rem;
  }

  body:not(.pmts-has-sidebar) .pmts-error-toolbar {
    grid-template-columns: 1fr;
  }

  /* ── Update gallery & lightbox ──────────────────────────────────── */

  body:not(.pmts-has-sidebar) .update-gallery-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.5rem;
  }

  body:not(.pmts-has-sidebar) .public-project-timeline__photo img {
    width: 3.75rem;
    height: 3.75rem;
  }

  /* ── Global public app shell (all citizen pages) ─────────────────── */

  body.pmts-pwa-mobile:not(.pmts-has-sidebar) .public-site-header--scrolled {
    box-shadow:
      0 6px 22px rgb(15 23 42 / 0.1),
      0 1px 0 rgb(255 255 255 / 0.65) inset;
  }

  body:not(.pmts-has-sidebar) .public-content-panel {
    display: flex;
    flex-direction: column;
    gap: var(--pmts-mobile-gap);
    padding: 0.85rem;
    border-radius: var(--pmts-mobile-card-radius);
    border: 1px solid rgb(226 232 240 / 0.9);
    background: #fff;
    box-shadow:
      0 1px 2px rgb(15 23 42 / 0.04),
      0 8px 24px rgb(15 23 42 / 0.06);
  }

  body:not(.pmts-has-sidebar) .public-page-root .dashboard-panel,
  body:not(.pmts-has-sidebar) .public-page-root .dashboard-section:not(.landing-hero):not(.landing-county-band),
  body:not(.pmts-has-sidebar) .about-page .dashboard-section,
  body:not(.pmts-has-sidebar) .departments-page .dashboard-section:not(.dept-catalog-section),
  body:not(.pmts-has-sidebar) .resources-page .dashboard-section,
  body:not(.pmts-has-sidebar) .faqs-page .dashboard-section,
  body:not(.pmts-has-sidebar) .feedback-page .dashboard-section,
  body:not(.pmts-has-sidebar) .contact-page .dashboard-section,
  body:not(.pmts-has-sidebar) .project-gallery-page .dashboard-section,
  body:not(.pmts-has-sidebar) .public-gis-page .dashboard-section,
  body:not(.pmts-has-sidebar) .updates-archive-page .dashboard-section {
    border-radius: var(--pmts-mobile-card-radius);
    border: 1px solid rgb(226 232 240 / 0.9);
    background: #fff;
    box-shadow:
      0 1px 2px rgb(15 23 42 / 0.04),
      0 8px 24px rgb(15 23 42 / 0.06);
    overflow: hidden;
  }

  body:not(.pmts-has-sidebar) .public-page-root .dashboard-panel__body,
  body:not(.pmts-has-sidebar) .public-page-root .dashboard-panel__header,
  body:not(.pmts-has-sidebar) .about-page .dashboard-panel__body,
  body:not(.pmts-has-sidebar) .about-page .dashboard-panel__header {
    padding-left: 0.85rem;
    padding-right: 0.85rem;
  }

  body:not(.pmts-has-sidebar) .public-page-root .dashboard-panel__body,
  body:not(.pmts-has-sidebar) .about-page .dashboard-panel__body {
    padding-top: 0.75rem;
    padding-bottom: 0.85rem;
  }

  body:not(.pmts-has-sidebar) .public-page-root .dashboard-panel__header,
  body:not(.pmts-has-sidebar) .about-page .dashboard-panel__header {
    padding-top: 0.85rem;
    padding-bottom: 0.65rem;
  }

  /* Compact hero intros — less scrolling on phones */
  body:not(.pmts-has-sidebar) .about-hero__lead,
  body:not(.pmts-has-sidebar) .contact-hero__lead,
  body:not(.pmts-has-sidebar) .public-page-hero__lead,
  body:not(.pmts-has-sidebar) .project-gallery-hero__lead,
  body:not(.pmts-has-sidebar) .public-gis-hero__lead,
  body:not(.pmts-has-sidebar) .update-post-hero__lead,
  body:not(.pmts-has-sidebar) .projects-archive-hero__lead {
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
  }

  /* Secondary hero CTAs — tab bar / header cover these routes */
  body:not(.pmts-has-sidebar) .about-hero__actions .landing-cta-btn:nth-child(n + 2),
  body:not(.pmts-has-sidebar) .contact-hero__actions .landing-cta-btn:nth-child(n + 2),
  body:not(.pmts-has-sidebar) .public-page-hero__actions .public-btn--ghost,
  body:not(.pmts-has-sidebar) .public-gis-hero__actions .public-btn:nth-child(n + 2) {
    display: none;
  }

  body:not(.pmts-has-sidebar) .about-hero__actions .landing-cta-btn:first-child,
  body:not(.pmts-has-sidebar) .contact-hero__actions .landing-cta-btn:first-child,
  body:not(.pmts-has-sidebar) .public-page-hero__actions .public-btn:first-child,
  body:not(.pmts-has-sidebar) .public-gis-hero__actions .public-btn:first-child {
    flex: 1 1 100%;
  }

  /* Snappy touch feedback (paired with pwa.js) */
  body.pmts-pwa-mobile:not(.pmts-has-sidebar) .pmts-touch-press {
    transition: var(--pmts-mobile-touch-transition);
    transform: scale(0.985);
    opacity: 0.94;
  }

  body:not(.pmts-has-sidebar) a,
  body:not(.pmts-has-sidebar) button,
  body:not(.pmts-has-sidebar) .public-dept-card,
  body:not(.pmts-has-sidebar) .projects-archive-row,
  body:not(.pmts-has-sidebar) .public-archive-item,
  body:not(.pmts-has-sidebar) .landing-explore-card,
  body:not(.pmts-has-sidebar) .public-filter-chip,
  body:not(.pmts-has-sidebar) .pmts-pwa-tab,
  body:not(.pmts-has-sidebar) .legal-index-card,
  body:not(.pmts-has-sidebar) .public-footer-link,
  body:not(.pmts-has-sidebar) .pmts-public-mobile-footer__chip {
    transition: var(--pmts-mobile-touch-transition);
  }

  /* Faster paint on long lists */
  body:not(.pmts-has-sidebar) .projects-archive-row,
  body:not(.pmts-has-sidebar) .public-archive-item,
  body:not(.pmts-has-sidebar) .public-dept-card,
  body:not(.pmts-has-sidebar) .legal-index-card,
  body:not(.pmts-has-sidebar) .public-faq__item,
  body:not(.pmts-has-sidebar) .updates-post-card {
    content-visibility: auto;
    contain-intrinsic-size: auto 4.5rem;
  }

  /* Public dashboard — tighter section rhythm */
  body:not(.pmts-has-sidebar) .dashboard-page-root .dashboard-section,
  body:not(.pmts-has-sidebar) .dashboard-page-root .dashboard-panel {
    padding: 0.85rem;
  }

  body:not(.pmts-has-sidebar) .pd-page-header {
    padding: 0.85rem 1rem;
  }

  body:not(.pmts-has-sidebar) .pd-header-pill {
    padding: 0.25rem 0.5rem;
  }

  body:not(.pmts-has-sidebar) .pd-fy-strip {
    padding-top: 0.35rem;
    padding-bottom: 0.35rem;
  }

  body:not(.pmts-has-sidebar) .pd-kpi-grid,
  body:not(.pmts-has-sidebar) .pd-status-grid {
    gap: 0.5rem;
  }

  /* Hero KPI strips — top 3 metrics on phones */
  body:not(.pmts-has-sidebar) .about-hero__stats .gis-kpi:nth-child(n + 4),
  body:not(.pmts-has-sidebar) .public-page-hero__stats .gis-kpi:nth-child(n + 4),
  body:not(.pmts-has-sidebar) .project-gallery-hero__stats .gis-kpi:nth-child(n + 4),
  body:not(.pmts-has-sidebar) .public-gis-hero__stats .gis-kpi:nth-child(n + 4) {
    display: none;
  }

  /* About — shorter overview on mobile */
  body:not(.pmts-has-sidebar) .about-split__intro .about-body {
    display: -webkit-box;
    -webkit-line-clamp: 8;
    -webkit-box-orient: vertical;
    overflow: hidden;
  }

  /* Redundant hero actions — bottom tab bar covers these routes */
  body:not(.pmts-has-sidebar) .updates-archive-page .public-page-hero__actions,
  body:not(.pmts-has-sidebar) .departments-page .public-page-hero__actions {
    display: none;
  }

  body:not(.pmts-has-sidebar) .dept-catalog-head__surface {
    padding: 0.95rem 0.85rem 0.85rem;
  }

  body:not(.pmts-has-sidebar) .dept-catalog-head__top {
    flex-direction: column;
    align-items: stretch;
  }

  body:not(.pmts-has-sidebar) .dept-catalog-head__action {
    align-self: flex-start;
  }

  body:not(.pmts-has-sidebar) .dept-catalog-head__lead {
    font-size: 0.75rem;
  }

  body:not(.pmts-has-sidebar) .dept-catalog-body {
    padding: 0.85rem;
  }

  body:not(.pmts-has-sidebar) .dept-catalog-section {
    border-radius: var(--pmts-mobile-card-radius);
  }

  body:not(.pmts-has-sidebar) .faqs-page .public-page-hero__actions .landing-cta-btn:nth-child(n + 2),
  body:not(.pmts-has-sidebar) .project-gallery-hero__actions .landing-cta-btn:nth-child(n + 2),
  body:not(.pmts-has-sidebar) .public-gis-hero__actions .landing-cta-btn:nth-child(n + 2) {
    display: none;
  }

  body:not(.pmts-has-sidebar) .projects-archive-hero__toolbar-row .projects-archive-btn--hero-outline[href*='public_dashboard'] {
    display: none;
  }

  body:not(.pmts-has-sidebar) .pd-header-pill--link {
    display: none;
  }

  body:not(.pmts-has-sidebar) .public-review-banner__text {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
  }

  body:not(.pmts-has-sidebar) .legal-page__footer-note p + p {
    display: none;
  }

  body:not(.pmts-has-sidebar) .resources-list__item,
  body:not(.pmts-has-sidebar) .contact-dept-card,
  body:not(.pmts-has-sidebar) .feedback-archive-card {
    border-radius: var(--pmts-mobile-card-radius);
  }

  body:not(.pmts-has-sidebar) .resources-list {
    gap: var(--pmts-mobile-gap);
  }

  body:not(.pmts-has-sidebar) .public-faq__footer {
    font-size: 0.8125rem;
    margin-top: 0.75rem;
  }

  /* County overview band — must win over generic white-card section rules above */
  body:not(.pmts-has-sidebar) .landing-page .dashboard-section.landing-county-band,
  body:not(.pmts-has-sidebar) .public-page-root .dashboard-section.landing-county-band {
    padding: 1.25rem 1rem 1.1rem;
    border: 1px solid rgb(30 58 138 / 0.35);
    background: linear-gradient(
      145deg,
      rgb(15 23 42) 0%,
      rgb(30 58 138) 52%,
      rgb(29 78 216) 100%
    );
    box-shadow: 0 10px 28px rgb(15 23 42 / 0.2);
    overflow: visible;
  }

  body:not(.pmts-has-sidebar) .landing-county-band .landing-section-head--light .landing-section-head__title,
  body:not(.pmts-has-sidebar) .landing-county-band .landing-section-head--light .landing-section-head__eyebrow,
  body:not(.pmts-has-sidebar) .landing-county-band .landing-county-stat__value {
    color: #fff;
  }

  body:not(.pmts-has-sidebar) .landing-county-band .landing-section-head__eyebrow,
  body:not(.pmts-has-sidebar) .landing-county-band .landing-county-stat__label {
    color: rgb(191 219 254);
  }
}

@media (max-width: 991px) and (prefers-reduced-motion: reduce) {
  body:not(.pmts-has-sidebar) #page-scroll-shell,
  body:not(.pmts-has-sidebar) .landing-explore-card,
  body:not(.pmts-has-sidebar) .public-btn,
  body:not(.pmts-has-sidebar) .pmts-public-menu__quick-item,
  body:not(.pmts-has-sidebar) .pmts-public-menu__row,
  body:not(.pmts-has-sidebar) .pmts-touch-press {
    scroll-behavior: auto;
    transition: none;
    transform: none;
    opacity: 1;
  }

  body:not(.pmts-has-sidebar) .landing-explore-card:active,
  body:not(.pmts-has-sidebar) .public-btn:active,
  body:not(.pmts-has-sidebar) .pmts-public-menu__quick-item:active {
    transform: none;
  }
}
