/*
 * ParishMart visual skin inspired by the Vercel prototype.
 * Kept separate from Martfury compiled CSS so it can be reviewed or rolled back cleanly.
 */

:root {
  --pm-navy: #0b3454;
  --pm-navy-deep: #082843;
  --pm-blue: #057ea2;
  --pm-cyan: #45b1e1;
  --pm-soft: #eef8fb;
  --pm-ink: #102a43;
  --pm-muted: #64748b;
  --pm-border: #dbeafe;
  --pm-font-segoe: "Segoe UI", system-ui, -apple-system, BlinkMacSystemFont, sans-serif;
  --pm-font-inter: Inter, var(--pm-font-segoe);
  --pm-font-sans: var(--pm-font-segoe);
  --primary-font: var(--pm-font-sans);
  --pm-card-radius: 24px;
  --pm-pill-radius: 999px;
  --pm-card-shadow: 0 18px 50px rgba(2, 80, 110, 0.08);
  --pm-soft-shadow: 0 12px 32px rgba(5, 126, 162, 0.10);
}

/* Local Business onboarding: reference parity and step-5-only preview controls. */
#onboarding-local-business-combined-page .pm-cause-onboarding,
#onboarding-local-business-combined-page .pm-cause-onboarding * {
    font-family: "PM Inter V2", Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
}
#onboarding-local-business-combined-page .pm-local-business-topbar-actions { display:flex; align-items:center; gap:10px; }
#onboarding-local-business-combined-page .pm-local-business-preview-toggle {
    display:inline-flex; align-items:center; justify-content:center; gap:7px; min-height:42px; padding:0 17px;
    border:1px solid #d6e5f2; border-radius:999px; background:#fff; color:#0d3150;
    font-size:13px; font-weight:700; line-height:20px; cursor:pointer;
}
#onboarding-local-business-combined-page .pm-local-business-preview-toggle[hidden],
#onboarding-local-business-combined-page [data-pm-preview-toggle-inline][hidden] { display:none !important; }
#onboarding-local-business-combined-page [data-pm-preview-toggle-inline] {
    margin-left:8px; padding:3px 9px; border:1px solid #d8e6f1; border-radius:999px; background:#fff;
    color:#61748a; font-size:11px; font-weight:700; line-height:16px; cursor:pointer;
}
#onboarding-local-business-combined-page .pm-cause-onboarding.is-preview-hidden .pm-cause-onboarding__grid { grid-template-columns:minmax(0,1fr); gap:0; }
#onboarding-local-business-combined-page .pm-cause-onboarding.is-preview-hidden .pm-cause-onboarding__panel { width:100%; max-width:none; }
#onboarding-local-business-combined-page .pm-cause-onboarding.is-preview-hidden .pm-cause-onboarding__preview { display:none; }
#onboarding-local-business-combined-page .pm-cause-onboarding.is-preview-hidden .pm-cause-onboarding__panel > *:not(.pm-cause-onboarding__topbar) { max-width:617px; }
#onboarding-local-business-combined-page .pm-cause-onboarding.is-preview-hidden .pm-cause-onboarding__topbar { max-width:617px; }
#onboarding-local-business-combined-page .pm-local-business-plan-option__price small { white-space:nowrap; }
@media (max-width:639.98px) {
    #onboarding-local-business-combined-page .pm-local-business-topbar-actions { gap:6px; }
    #onboarding-local-business-combined-page .pm-local-business-preview-toggle { min-height:38px; padding:0 11px; font-size:11px; }
}

/* Current onboarding reference: compact search form and partner marquee. */
.pm-onboarding-search__form {
  padding: 0 0 56px;
}

.pm-onboarding-search__form h1 {
  font-size: 36px !important;
  font-weight: 800 !important;
  line-height: 40px !important;
}

.pm-onboarding-search__form .pm-onboarding-search__eyebrow {
  color: #0789ad;
  font-size: 11px;
  font-weight: 700;
}

.pm-onboarding-search__form .pm-onboarding-search__lead {
  max-width: 448px;
  margin-top: 12px;
  font-size: 14px;
  line-height: 20px;
}

.pm-onboarding-search__form .pm-onboarding-search__fields {
  gap: 24px;
  margin-top: 24px;
}

.pm-onboarding-search__form .pm-onboarding-search__field {
  gap: 6px;
  font-weight: 700;
}

.pm-onboarding-search__form .pm-onboarding-search__field input {
  min-height: 50px;
  font-size: 16px;
  font-weight: 400;
}

.pm-onboarding-search__form .pm-onboarding-search__chooser {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
}

.pm-onboarding-search__form .pm-onboarding-search__choice,
.pm-onboarding-search__form .pm-onboarding-search__choice[data-pm-choice="auto"] {
  grid-column: auto;
  min-height: 62px;
}

.pm-onboarding-search__form .pm-onboarding-search__choice span {
  font-weight: 700;
}

.pm-onboarding-partners {
  overflow: hidden;
  padding: 34px 0 32px;
  background: #eef8fc;
}

.pm-onboarding-partners h2 {
  margin: 0 0 20px;
  color: #607086;
  font-size: 11px;
  font-weight: 700;
  line-height: 16px;
  letter-spacing: .14em;
  text-align: center;
  text-transform: uppercase;
}

.pm-onboarding-partners__marquee {
  width: min(1232px, calc(100% - 48px));
  margin: 0 auto;
  overflow: hidden;
  -webkit-mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent);
  mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent);
}

.pm-onboarding-partners__track {
  display: flex;
  width: max-content;
  animation: pmOnboardingPartnersScroll var(--pm-partners-duration, 34s) linear infinite;
  will-change: transform;
}

.pm-onboarding-partners__group {
  display: flex;
  flex: 0 0 auto;
  gap: 14px;
  padding-right: 14px;
}

.pm-onboarding-partners__tile {
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 176px;
  width: 176px;
  height: 76px;
  padding: 18px 22px;
  border: 1px solid #d8e7f3;
  border-radius: 15px;
  background: #fff;
}

.pm-onboarding-partners__tile img {
  display: block;
  width: 100%;
  max-width: 132px;
  height: 40px;
  object-fit: contain;
}

@keyframes pmOnboardingPartnersScroll {
  to { transform: translate3d(calc(-1 * var(--pm-partners-shift, 570px)), 0, 0); }
}

@media (max-width: 640px) {
  .pm-onboarding-search__form .pm-onboarding-search__chooser {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .pm-onboarding-partners__tile {
    flex-basis: 150px;
    width: 150px;
  }

  .pm-onboarding-partners__marquee {
    width: calc(100% - 20px);
  }
}

@media (prefers-reduced-motion: reduce) {
  .pm-onboarding-partners__track {
    animation-play-state: paused;
  }
}

/* Home hero replacement for the old home-slider shortcode. */
.pm-home-hero {
  box-sizing: border-box !important;
  max-width: 1280px;
  margin-right: auto;
  margin-left: auto;
  padding: 32px 16px !important;
  color: var(--pm-ink);
  font-family: var(--pm-font-segoe) !important;
  font-size: 16px !important;
  line-height: 24px !important;
}

.pm-home-hero *,
.pm-home-hero *::before,
.pm-home-hero *::after {
  box-sizing: border-box !important;
}

.pm-home-hero > .grid {
  display: grid !important;
  gap: 32px !important;
  min-width: 0 !important;
}

.pm-home-hero > .grid > *,
.pm-home-hero > .mt-8 {
  min-width: 0 !important;
  max-width: 100% !important;
}

.pm-home-hero .grid {
  display: grid !important;
}

.pm-home-hero .flex {
  display: flex !important;
}

.pm-home-hero .items-center {
  align-items: center;
}

.pm-home-hero .flex-wrap {
  flex-wrap: wrap;
}

.pm-home-hero .gap-2 {
  gap: 8px;
}

.pm-home-hero .gap-3 {
  gap: 12px !important;
}

.pm-home-hero .relative {
  position: relative;
}

.pm-home-hero .absolute {
  position: absolute;
}

.pm-home-hero .inset-0 {
  inset: 0;
}

.pm-home-hero .left-4 {
  left: 16px;
}

.pm-home-hero .top-4 {
  top: 16px;
}

.pm-home-hero .overflow-hidden {
  overflow: hidden;
}

.pm-home-hero .h-full {
  height: 100%;
}

.pm-home-hero .w-full {
  width: 100%;
}

.pm-home-hero .object-cover {
  object-fit: cover;
}

.pm-home-hero .shrink-0 {
  flex-shrink: 0;
}

.pm-home-hero .pointer-events-none {
  pointer-events: none;
}

.pm-home-hero .truncate {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.pm-home-hero .pm-kicker {
  display: inline-flex;
  align-items: center;
  padding: 6px 12px;
  border-radius: var(--pm-pill-radius);
  color: var(--pm-blue);
  background: #e9f8ff;
  font-family: var(--pm-font-segoe) !important;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.02em;
  line-height: 18px;
}

.pm-home-hero h1 {
  margin: 16px 0 0 !important;
  color: var(--pm-navy) !important;
  font-family: var(--pm-font-sans) !important;
  font-size: clamp(48px, 5vw, 64px) !important;
  font-weight: 800 !important;
  letter-spacing: -0.025em !important;
  line-height: 65.7px !important;
}

.pm-home-hero h1 .pm-gradient-text {
  display: inline !important;
  font-family: inherit !important;
  font-weight: 800 !important;
  letter-spacing: inherit !important;
  position: relative !important;
  background: linear-gradient(90deg, var(--pm-blue), var(--pm-cyan)) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  color: transparent !important;
  -webkit-text-fill-color: transparent !important;
}

.pm-home-hero h1 .pm-gradient-text:first-of-type {
  top: 0.75px !important;
}

.pm-home-hero h1 .pm-gradient-text:nth-of-type(2) {
  top: -0.75px !important;
}

.pm-home-hero p {
  margin-bottom: 0 !important;
  font-family: var(--pm-font-sans) !important;
  line-height: 1.5 !important;
}

.pm-home-hero > .grid > div:first-child p {
  font-family: var(--pm-font-sans) !important;
}

.pm-home-hero .mt-3 {
  margin-top: 12px !important;
}

.pm-home-hero .mt-5 {
  margin-top: 20px !important;
}

.pm-home-hero .mt-6 {
  margin-top: 24px !important;
}

.pm-home-hero .mt-8 {
  margin-top: 32px !important;
}

.pm-home-hero .max-w-xl {
  max-width: 576px;
}

.pm-home-hero .text-base {
  font-size: 16px !important;
}

.pm-home-hero .text-sm {
  font-size: 14px !important;
}

.pm-home-hero .text-xs {
  font-size: 12px !important;
}

.pm-home-hero .font-medium {
  font-weight: 500 !important;
}

.pm-home-hero .font-bold {
  font-weight: 700 !important;
}

.pm-home-hero .font-extrabold {
  font-weight: 800 !important;
}

.pm-home-hero .text-pm-navy {
  color: var(--pm-navy) !important;
}

.pm-home-hero .text-pm-muted {
  color: var(--pm-muted) !important;
}

.pm-home-hero .text-pm-ink {
  color: var(--pm-ink) !important;
}

.pm-home-hero .text-pm-blue {
  color: var(--pm-blue) !important;
}

.pm-home-hero form[role="search"] {
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  width: 100%;
  max-width: 100%;
  min-width: 0 !important;
  min-height: 46px;
  border: 1px solid var(--pm-border) !important;
  border-radius: var(--pm-pill-radius);
  background: #ffffff;
  box-shadow: var(--pm-soft-shadow);
  padding: 4px 12px !important;
  margin-bottom: 0 !important;
  overflow: visible !important;
}

.pm-home-hero form[role="search"]:focus-within {
  border-color: var(--pm-blue) !important;
  box-shadow: 0 0 0 3px rgba(69, 177, 225, 0.18) !important;
}

.pm-home-hero form[role="search"] svg {
  width: 16px;
  height: 16px;
  margin-left: 0;
}

.pm-home-hero .pm-input {
  display: block !important;
  flex: 1 1 auto !important;
  width: 100% !important;
  min-width: 0 !important;
  height: 36px !important;
  border: 0 !important;
  outline: 0 !important;
  color: var(--pm-muted) !important;
  background: transparent !important;
  padding: 0 4px !important;
  font-family: var(--pm-font-sans) !important;
  font-size: 15px !important;
  line-height: 21.4286px !important;
  box-shadow: none !important;
}

.pm-input::placeholder {
  color: #64748b !important;
  font-size: inherit !important;
  line-height: inherit !important;
  opacity: 1 !important;
}

.pm-home-hero .pm-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 12px 20px;
  border: 1px solid transparent;
  border-radius: var(--pm-pill-radius);
  font-size: 14px;
  font-weight: 700;
  line-height: 21px;
  text-decoration: none;
  white-space: nowrap;
  font-family: var(--pm-font-sans) !important;
  transition: transform 0.15s ease, box-shadow 0.15s ease, border-color 0.15s ease, color 0.15s ease, background 0.15s ease;
}

.pm-home-hero .pm-btn:hover {
  transform: translateY(-1px);
  text-decoration: none;
}

.pm-home-hero .pm-btn-primary {
  color: #ffffff !important;
  background: linear-gradient(90deg, var(--pm-blue), var(--pm-cyan));
  box-shadow: 0 14px 30px rgba(5, 126, 162, 0.25);
}

.pm-home-hero form[role="search"] .pm-btn-primary {
  background: #0b3454 !important;
  box-shadow: none !important;
}

.pm-home-hero .pm-btn-secondary {
  color: var(--pm-blue) !important;
  background: #ffffff;
  border-color: var(--pm-border);
}

.pm-home-hero .pm-btn-ghost {
  color: var(--pm-blue) !important;
  background: transparent;
  border-color: transparent;
  box-shadow: none;
}

.pm-home-hero .pm-btn.\!px-5 {
  padding-right: 20px !important;
  padding-left: 20px !important;
}

.pm-home-hero .pm-btn.\!px-4 {
  padding-right: 16px !important;
  padding-left: 16px !important;
}

.pm-home-hero .pm-btn.\!py-2 {
  min-height: 38px !important;
  padding-top: 8px !important;
  padding-bottom: 8px !important;
  line-height: 20px !important;
}

.pm-home-hero form[role="search"] .pm-btn {
  min-height: 34px !important;
  padding: 6px 16px !important;
  line-height: 20px !important;
}

.pm-home-hero form[role="search"] .spinner-icon {
  display: none;
  flex: 0 0 auto;
  width: 16px;
  height: 16px;
  color: var(--pm-blue);
  font-size: 13px;
  line-height: 16px;
}

.pm-home-hero form[role="search"] .ps-panel--search-result.active {
  top: calc(100% + 10px) !important;
  padding: 16px 20px !important;
  border-radius: 20px !important;
}

.pm-home-hero .pm-search-results--home {
  gap: 16px !important;
}

.pm-home-hero .pm-search-results--home .pm-search-results__section {
  gap: 6px !important;
}

.pm-home-hero .pm-search-results--home .pm-search-results__label {
  padding: 0 !important;
  text-align: center !important;
  letter-spacing: 0.14em !important;
}

.pm-home-hero .pm-search-results--home .pm-search-result {
  grid-template-columns: 46px minmax(0, 1fr) auto !important;
  min-height: 56px !important;
  padding: 6px 0 !important;
  border: 0 !important;
  border-radius: 10px !important;
  background: transparent !important;
  box-shadow: none !important;
}

.pm-home-hero .pm-search-results--home .pm-search-result:hover {
  background: #f7fcff !important;
  transform: none !important;
  box-shadow: none !important;
}

.pm-home-hero .pm-search-results--home .pm-search-result--store,
.pm-home-hero .pm-search-results--home .pm-search-result--home-store {
  grid-template-columns: 46px minmax(0, 1fr) auto !important;
}

.pm-home-hero .pm-search-results--home .pm-search-result__media {
  width: 44px !important;
  height: 44px !important;
  border-radius: 12px !important;
  background: #f8fdff !important;
}

.pm-home-hero .pm-search-results--home .pm-search-result__title {
  font-size: 14px !important;
  font-weight: 850 !important;
  line-height: 1.25 !important;
  -webkit-line-clamp: 1 !important;
}

.pm-home-hero .pm-search-results--home .pm-search-result__side,
.pm-home-hero .pm-search-results--home .pm-search-result__price {
  min-width: 72px !important;
  justify-self: end !important;
  color: var(--pm-navy) !important;
  font-size: 14px !important;
  font-weight: 900 !important;
  line-height: 1.2 !important;
  text-align: right !important;
  white-space: nowrap !important;
}

.pm-home-hero .pm-card {
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  border: 1px solid var(--pm-border);
  border-radius: var(--pm-card-radius);
  background: rgba(255, 255, 255, 0.92);
  box-shadow: var(--pm-card-shadow);
}

.pm-home-hero > .grid > .pm-card {
  padding: 12px !important;
}

.pm-home-hero [data-photo="church"] {
  border: 1px solid var(--pm-border) !important;
  border-radius: 16px !important;
}

.pm-home-hero [data-photo="church"] img {
  display: block;
}

.pm-home-hero .bg-gradient-to-t {
  background: linear-gradient(to top, rgba(0, 0, 0, 0.25), transparent 58%);
}

.pm-home-hero .pm-label {
  display: block !important;
  padding: 4px 10px !important;
  color: var(--pm-blue);
  background: rgba(255, 255, 255, 0.85) !important;
  font-family: var(--pm-font-sans) !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  line-height: 16.5px !important;
}

.pm-home-hero .space-y-3 {
  padding: 16px !important;
}

.pm-home-hero .space-y-3 > * + * {
  margin-top: 12px;
}

.pm-home-hero .space-y-3 > p {
  line-height: 20px !important;
}

.pm-home-hero h3 {
  margin: 0;
  color: var(--pm-navy);
  font-size: 24px;
  font-weight: 800;
  line-height: 32px !important;
}

.pm-home-hero .grid-cols-3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.pm-home-hero .pt-2 {
  padding-top: 8px;
}

.pm-home-hero .pt-1 {
  padding-top: 4px;
}

.pm-home-hero .rounded-2xl {
  border-radius: 16px;
}

.pm-home-hero .rounded-full {
  border-radius: var(--pm-pill-radius) !important;
}

.pm-home-hero .border {
  border: 1px solid var(--pm-border) !important;
}

.pm-home-hero .border-pm-border {
  border-color: var(--pm-border) !important;
}

.pm-home-hero .bg-white {
  background: #ffffff;
}

.pm-home-hero .p-3 {
  padding: 12px !important;
}

.pm-home-hero .px-4 {
  padding-right: 16px;
  padding-left: 16px;
}

.pm-home-hero .py-3 {
  padding-top: 12px;
  padding-bottom: 12px;
}

.pm-home-hero .uppercase {
  text-transform: uppercase;
}

.pm-home-hero .tracking-wider {
  letter-spacing: 0.05em;
}

.pm-home-hero .text-\[10px\] {
  font-size: 10px;
}

.pm-home-hero .text-2xl {
  font-size: 24px;
}

.pm-home-hero .place-items-center {
  place-items: center;
}

.pm-home-hero .h-9 {
  height: 36px;
}

.pm-home-hero .w-9 {
  width: 36px;
}

.pm-home-hero .bg-emerald-50 {
  background: #ecfdf5;
}

.pm-home-hero .bg-emerald-500 {
  background: #10b981;
}

.pm-home-hero .animate-pulse {
  width: 10px;
  height: 10px;
  border-radius: 999px;
  animation: pm-hero-pulse 1.8s cubic-bezier(0.4, 0, 0.6, 1) infinite;
}

@keyframes pm-hero-pulse {
  0%,
  100% {
    opacity: 1;
  }

  50% {
    opacity: 0.45;
  }
}

@media (min-width: 640px) {
  .pm-home-hero {
    padding: 48px 24px !important;
  }

  .pm-home-hero .sm\:text-sm {
    font-size: 14px;
  }
}

@media (min-width: 768px) {
  .pm-home-hero > .grid {
    grid-template-columns: 1.05fr 0.95fr;
    align-items: center;
    gap: 40px !important;
  }
}

@media (max-width: 767px) {
  .pm-home-hero {
    overflow-x: hidden !important;
  }

  .pm-home-hero > .grid {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  .pm-home-hero h1 {
    font-size: 36px !important;
    line-height: 1.12 !important;
  }

  .pm-home-hero .grid-cols-3 {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 8px !important;
  }

  .pm-home-hero form[role="search"] {
    align-items: stretch;
    border-radius: 24px;
    flex-wrap: wrap;
    width: 100% !important;
    max-width: 100% !important;
  }

  .pm-home-hero form[role="search"] .pm-btn {
    width: 100%;
  }

  .pm-home-hero .mt-5.flex {
    gap: 12px !important;
  }

  .pm-home-hero .pm-btn {
    padding-right: 20px !important;
    padding-left: 20px !important;
  }

  .pm-home-hero .pm-btn-ghost {
    padding-right: 20px !important;
    padding-left: 20px !important;
  }
}

html,
body,
button,
input,
select,
textarea {
  font-family: var(--pm-font-sans) !important;
}

html,
body {
  max-width: 100%;
  overflow-x: hidden;
}

body {
  background:
    radial-gradient(1200px 600px at 80% -10%, #d6f0fb 0%, transparent 60%),
    linear-gradient(180deg, #f6fcff 0%, #ffffff 35%, #eef8fb 100%);
  color: var(--pm-ink);
  font-feature-settings: "cv02", "cv03", "cv04", "cv11";
  font-synthesis-weight: none;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

h1,
h2,
h3,
h4,
h5,
h6,
.title_site,
.ps-section__title,
.ps-product__title,
.ps-product__price,
.pm-site-header__nav a,
.pm-site-header__menu-list a,
.pm-ecosystem,
.ps-btn,
.btn {
  font-family: var(--pm-font-sans) !important;
}

/* Header system: align Martfury headers with the Vercel prototype. */
.user-bar-container {
  display: none !important;
}

.header.header--1 {
  position: sticky;
  top: 0;
  z-index: 50;
  border-bottom: 1px solid rgba(219, 234, 254, 0.82);
  background: rgba(255, 255, 255, 0.94) !important;
  box-shadow: 0 10px 30px rgba(2, 80, 110, 0.05);
  backdrop-filter: blur(18px);
}

.header.header--1 .header__top {
  border: 0 !important;
  background: transparent !important;
}

.header.header--1 .header__top .ps-container,
.header.header--1 .navigation .ps-container {
  max-width: 1320px;
  margin-right: auto;
  margin-left: auto;
  padding-right: 24px;
  padding-left: 24px;
}

.header.header--1 .header__top .ps-container {
  display: flex;
  min-height: 68px;
  align-items: center;
  gap: 18px;
}

.header.header--1 .header__left {
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  gap: 12px;
  max-width: none;
}

.header.header--1 .ps-logo {
  display: inline-flex;
  align-items: center;
}

.header.header--1 .ps-logo img,
.header--mobile .ps-logo img {
  height: 40px !important;
  max-height: 40px !important;
  width: auto;
}

.header.header--1 .header__left .menu--product-categories {
  position: relative;
  width: 42px;
  height: 42px;
  margin: 0;
}

.header.header--1 .header__left .menu--product-categories .menu__toggle {
  display: grid;
  width: 42px;
  height: 42px;
  min-height: 0;
  place-items: center;
  border: 1px solid var(--pm-border);
  border-radius: 50%;
  background: #ffffff;
  color: var(--pm-navy);
}

.header.header--1 .header__left .menu--product-categories .menu__toggle span,
.header.header--1 .header__left .menu--product-categories .menu__toggle::before {
  display: none !important;
}

.header.header--1 .header__left .menu--product-categories .menu__toggle i {
  margin: 0;
  color: var(--pm-navy) !important;
  font-size: 18px;
}

.header.header--1 .header__center {
  flex: 1 1 440px;
  min-width: 260px;
  max-width: 560px;
}

.header.header--1 .header__right {
  flex: 0 0 auto;
  margin-left: auto;
}

.header.header--1 .header__actions {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

.header .header__extra,
.header .ps-block--user-header .ps-block__left,
.header--mobile .ps-block--user-header .ps-block__left {
  display: grid !important;
  width: 42px !important;
  height: 42px !important;
  min-width: 42px;
  place-items: center;
  border: 1px solid var(--pm-border);
  border-radius: 50%;
  background: #ffffff;
  color: var(--pm-navy) !important;
  line-height: 1;
}

.header .header__extra > i,
.header--mobile .header__actions i,
.header--mobile .ps-block--user-header i {
  color: var(--pm-navy) !important;
  font-size: 18px !important;
  line-height: 1 !important;
}

.header .header__extra span,
.header--mobile .header__extra span {
  right: -4px !important;
  bottom: -4px !important;
  display: grid !important;
  min-width: 20px !important;
  height: 20px !important;
  place-items: center;
  border: 2px solid #ffffff;
  border-radius: 50%;
  background: linear-gradient(135deg, var(--pm-blue), var(--pm-cyan)) !important;
}

.header .header__extra span i,
.header--mobile .header__extra span i {
  color: #ffffff !important;
  font-size: 10px !important;
  font-style: normal;
  font-weight: 800;
}

.header .ps-block--user-header {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin: 0;
}

.header .ps-block--user-header .ps-block__right {
  display: inline-flex;
  gap: 6px;
  align-items: center;
}

.header .ps-block--user-header .ps-block__right a {
  display: inline-flex;
  min-height: 34px;
  align-items: center;
  padding: 8px 11px;
  border-radius: var(--pm-pill-radius);
  color: var(--pm-muted) !important;
  font-size: 13px;
  font-weight: 800;
}

.header .ps-block--user-header .ps-block__right a:hover,
.header .header__extra:hover,
.header.header--1 .header__left .menu--product-categories .menu__toggle:hover {
  border-color: var(--pm-blue);
  color: var(--pm-blue) !important;
}

.header.header--1 .navigation {
  border: 0 !important;
  background: transparent !important;
}

.header.header--1 .navigation .ps-container {
  display: flex;
  min-height: 46px;
  align-items: center;
}

.header.header--1 .navigation__left {
  display: none !important;
}

.header.header--1 .navigation__right {
  display: flex;
  width: 100%;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}

.header.header--1 .navigation__right > .menu {
  display: flex;
  flex: 1 1 auto;
  align-items: center;
  gap: 4px;
  min-width: 0;
}

.header.header--1 .navigation__right > .menu > li > a {
  display: inline-flex;
  min-height: 34px;
  align-items: center;
  padding: 8px 13px;
  border-radius: var(--pm-pill-radius);
  color: var(--pm-muted) !important;
  font-size: 14px;
  font-weight: 800;
  line-height: 1;
}

.header.header--1 .navigation__right > .menu > li > a:hover,
.header.header--1 .navigation__right > .menu > li.current-menu-item > a {
  color: var(--pm-navy) !important;
  background: var(--pm-soft);
}

.header.header--1 .navigation__extra {
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  gap: 8px;
  margin: 0;
}

.header.header--1 .navigation__extra > li {
  margin: 0 !important;
}

.header.header--1 .navigation__extra > li::after {
  display: none !important;
}

.header.header--1 .navigation__extra > li > a,
.header.header--1 .navigation__extra .ps-dropdown > a {
  display: inline-flex;
  min-height: 34px;
  align-items: center;
  padding: 8px 12px;
  border: 1px solid var(--pm-border);
  border-radius: var(--pm-pill-radius);
  background: #ffffff;
  color: var(--pm-navy) !important;
  font-size: 13px;
  font-weight: 800;
  line-height: 1;
}

.header.header--1 .navigation__extra > li:last-child > a {
  color: #ffffff !important;
  border-color: transparent;
  background: linear-gradient(90deg, var(--pm-blue), var(--pm-cyan));
  box-shadow: 0 12px 28px rgba(5, 126, 162, 0.20);
}

.header--mobile {
  position: sticky;
  top: 0;
  z-index: 60;
  border-bottom: 1px solid rgba(219, 234, 254, 0.82) !important;
  background: rgba(255, 255, 255, 0.96) !important;
  box-shadow: 0 10px 30px rgba(2, 80, 110, 0.05);
  backdrop-filter: blur(18px);
}

.header--mobile .navigation--mobile {
  min-height: 64px;
  padding: 10px 14px;
  background: transparent !important;
}

.header--mobile .header__actions {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

.header--mobile .ps-search--mobile {
  padding: 0 14px 12px;
  background: transparent !important;
}

.header--mobile .ps-search--mobile .form-group--nest {
  overflow: hidden;
  border: 1px solid var(--pm-border);
  border-radius: var(--pm-pill-radius);
  background: #ffffff;
  box-shadow: var(--pm-soft-shadow);
}

.header--mobile .ps-search--mobile input.form-control {
  min-height: 42px;
  border: 0 !important;
}

.header--mobile .ps-search--mobile button {
  width: 42px;
  color: var(--pm-navy);
  background: transparent;
}

.navigation--list {
  display: none !important;
  border-top: 1px solid rgba(219, 234, 254, 0.88);
  background: rgba(255, 255, 255, 0.96);
  box-shadow: 0 -10px 26px rgba(2, 80, 110, 0.08);
  backdrop-filter: blur(18px);
}

.navigation--list .navigation__item {
  color: var(--pm-muted) !important;
  font-size: 11px;
  font-weight: 800;
}

.navigation--list .navigation__item i {
  color: var(--pm-navy) !important;
  font-size: 19px;
}

.navigation--list .navigation__item:hover,
.navigation--list .navigation__item:hover i {
  color: var(--pm-blue) !important;
}

.header.header--product {
  position: sticky;
  top: 0;
  z-index: 55;
  border-bottom: 1px solid #cfe4f5;
  background: #f6fcff !important;
  box-shadow: 0 14px 34px rgba(2, 80, 110, 0.10);
  backdrop-filter: blur(18px);
}

.header.header--product.header--sticky {
  background: #f6fcff !important;
}

.header.header--product .navigation {
  min-height: 74px;
  border: 0 !important;
  background: #f6fcff !important;
}

.header.header--product .ps-container {
  max-width: 1320px;
  padding-right: 24px;
  padding-left: 24px;
}

.header.header--product .pm-product-sticky-bar {
  display: grid !important;
  grid-template-columns: auto minmax(0, 1fr);
  min-height: 74px;
  align-items: center;
  gap: 18px;
  padding: 8px 0;
}

.header.header--product .pm-product-sticky-store {
  display: inline-grid;
  width: 58px;
  height: 58px;
  min-width: 58px;
  place-items: center;
  overflow: hidden;
  border: 1px solid var(--pm-border);
  border-radius: 18px;
  background: #ffffff;
  color: var(--pm-blue) !important;
  font-size: 14px;
  font-weight: 900;
  text-decoration: none !important;
  box-shadow: 0 10px 22px rgba(2, 80, 110, 0.08);
}

.header.header--product .pm-product-sticky-store img {
  display: block;
  width: 100%;
  height: 100%;
  padding: 5px;
  object-fit: contain;
}

.header.header--product .pm-product-sticky-inline {
  display: grid;
  width: 100%;
  min-width: 0;
  height: 58px;
  align-items: center;
  grid-template-columns: 46px minmax(0, 1fr) auto auto;
  column-gap: 18px;
  margin: 0 !important;
  padding: 0 !important;
}

.header.header--product .pm-product-sticky-bar > .pm-product-sticky-inline:first-child {
  grid-column: 1 / -1;
}

.header.header--product .pm-product-sticky-thumb {
  display: inline-grid;
  width: 46px;
  height: 46px;
  place-items: center;
  overflow: hidden;
  border: 1px solid var(--pm-border);
  border-radius: 14px;
  background: #ffffff;
  align-self: center;
}

.header.header--product .pm-product-sticky-thumb img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.header.header--product .pm-product-sticky-title {
  display: block;
  overflow: hidden;
  min-width: 0;
  max-width: 560px;
  color: var(--pm-navy);
  font-size: 14px;
  font-weight: 800;
  line-height: 18px;
  text-overflow: ellipsis;
  white-space: nowrap;
  align-self: center;
}

.header.header--product .pm-product-sticky-price {
  display: inline-flex;
  height: 46px;
  align-items: center;
  color: var(--pm-navy);
  font-size: 16px;
  font-weight: 800;
  line-height: 1;
  white-space: nowrap;
  align-self: center;
}

.header.header--product .pm-product-sticky-price span,
.header.header--product .pm-product-sticky-price del {
  display: inline-block;
  margin: 0 !important;
  color: inherit !important;
  font-size: inherit !important;
  font-weight: inherit !important;
  line-height: 1 !important;
}

.header.header--product .pm-product-sticky-price del {
  margin-left: 8px !important;
  color: var(--pm-muted) !important;
  font-size: 12px !important;
  text-decoration: line-through;
}

.header.header--product .pm-product-sticky-button {
  display: inline-flex;
  min-width: 122px;
  min-height: 38px;
  align-items: center;
  justify-content: center;
  margin: 0 !important;
  padding: 10px 18px;
  line-height: 1;
  align-self: center;
}

.header.header--product .ps-product--header-sticky {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  width: 100%;
  min-width: 0;
  align-items: center;
  gap: 18px;
  margin: 0;
  padding: 0;
}

.header.header--product .ps-product--header-sticky .ps-product__thumbnail {
  width: 46px;
  height: 46px;
  overflow: hidden;
  flex: 0 0 46px;
  border: 1px solid var(--pm-border);
  border-radius: 14px;
  background: #ffffff;
}

.header.header--product .ps-product--header-sticky .ps-product__thumbnail img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.header.header--product .ps-product--header-sticky .ps-product__wrapper {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  width: 100%;
  align-items: center;
  gap: 28px;
  min-width: 0;
  margin: 0 !important;
  padding: 0 !important;
}

.header.header--product .ps-product--header-sticky .ps-product__content {
  display: flex;
  height: 46px;
  align-items: center;
  min-width: 0;
  margin: 0 !important;
  padding: 0 !important;
}

.header.header--product .ps-product--header-sticky .ps-product__title {
  display: block;
  overflow: hidden;
  max-width: 520px;
  color: var(--pm-navy);
  font-size: 14px;
  font-weight: 800;
  line-height: 1.2;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.header.header--product .ps-product--header-sticky .ps-product__shopping {
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  gap: 22px;
  height: 46px;
  margin: 0 !important;
  padding: 0 !important;
}

.header.header--product .ps-product--header-sticky .ps-product__price {
  display: inline-flex;
  height: 46px;
  align-items: center;
  color: var(--pm-navy);
  font-size: 16px;
  font-weight: 800;
  line-height: 1;
  margin: 0 !important;
}

.header.header--product .ps-product--header-sticky .ps-btn {
  display: inline-flex;
  min-height: 38px;
  align-items: center;
  justify-content: center;
  padding: 10px 16px;
  font-size: 13px;
  line-height: 1;
}

.header--mobile-product .navigation--mobile {
  min-height: 58px;
}

.header--mobile-product .header__back {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 40px;
  padding: 9px 14px;
  border: 1px solid var(--pm-border);
  border-radius: var(--pm-pill-radius);
  background: #ffffff;
  color: var(--pm-navy) !important;
  font-size: 13px;
  font-weight: 800;
}

.header--mobile-product .header__back i {
  color: var(--pm-blue) !important;
}

.store-identity-shell {
  background: linear-gradient(180deg, #f6fcff 0%, #ffffff 100%);
}

.store-identity-hero {
  padding: 14px 0 54px !important;
  background: transparent !important;
}

.store-identity-hero__content {
  max-width: 1320px;
  margin: 0 auto;
  padding: 0 24px;
}

.store-identity-hero__brand {
  color: var(--pm-navy) !important;
}

.store-identity-hero__logo {
  width: 58px !important;
  height: 58px !important;
  border: 2px solid #ffffff;
  border-radius: 18px !important;
  box-shadow: var(--pm-soft-shadow) !important;
}

.store-identity-hero__title {
  color: var(--pm-navy) !important;
  font-size: 18px !important;
  font-weight: 800 !important;
  line-height: 1.08;
}

.store-identity-hero__subtitle {
  color: var(--pm-muted) !important;
}

.store-identity-hero__cta {
  min-height: 40px;
  padding: 10px 16px !important;
  border: 1px solid var(--pm-border);
  border-radius: var(--pm-pill-radius);
  background: #ffffff;
  color: var(--pm-blue) !important;
  font-weight: 800 !important;
  white-space: nowrap;
}

.store-identity-hero__cta span {
  display: inline-block;
  white-space: nowrap;
}

.store-identity-hero__cta:hover {
  color: #ffffff !important;
  border-color: transparent !important;
  background: linear-gradient(90deg, var(--pm-blue), var(--pm-cyan)) !important;
}

.store-identity-nav {
  z-index: 54 !important;
  margin-top: -38px !important;
  padding: 0 !important;
  border-bottom: 1px solid rgba(219, 234, 254, 0.82) !important;
  background: rgba(255, 255, 255, 0.96) !important;
  box-shadow: 0 10px 30px rgba(2, 80, 110, 0.05) !important;
  backdrop-filter: blur(18px);
}

.store-identity-nav__wrap {
  max-width: 1320px;
  min-height: 72px;
  margin: 0 auto;
  padding: 10px 24px !important;
  grid-template-columns: minmax(0, 1fr) minmax(260px, 420px) auto !important;
  gap: 16px !important;
}

.store-identity-nav > .ck-container > .row {
  min-height: 64px;
  align-items: center !important;
}

.store-identity-nav > .ck-container > .row > [class*="col-"] {
  display: flex;
  min-height: 64px;
  align-items: center;
}

.store-identity-nav > .ck-container > .row > [class*="col-"]:last-child {
  flex: 0 0 auto;
  max-width: none;
  justify-content: flex-end;
}

.store-identity-nav > .ck-container > .row > [class*="col-"]:first-child {
  flex: 1 1 auto;
  max-width: none;
}

.store-identity-nav__search-column {
  display: none !important;
}

.store-identity-nav__default-menu {
  display: flex !important;
  flex-wrap: nowrap;
  align-items: center;
  gap: 14px !important;
  list-style: none;
}

.store-identity-nav__default-menu .menu_interno_causa {
  display: inline-flex;
  align-items: center;
  margin: 0 !important;
}

.store-identity-nav .menu_interno_causa a,
.store-identity-nav__sticky-menu .menu_interno_causa a {
  display: inline-flex;
  min-height: 34px;
  align-items: center;
  padding: 8px 0 !important;
  border-radius: var(--pm-pill-radius);
  color: #ffffff !important;
  font-size: 13px;
  font-weight: 800;
  line-height: 1;
  white-space: nowrap;
}

.store-identity-nav .menu_interno_causa a:hover,
.store-identity-nav__sticky-menu .menu_interno_causa a:hover {
  color: #ffffff !important;
  background: transparent !important;
  text-decoration: underline;
  text-underline-offset: 5px;
}

.store-identity-nav__sticky-logo,
.store-identity-nav__mobile-brand-logo img {
  border-radius: 14px !important;
}

.store-identity-nav__store-title,
.store-identity-nav__store-title-link,
.store-identity-nav__mobile-brand-name {
  color: var(--pm-navy) !important;
}

.store-identity-nav__store-meta,
.store-identity-nav__caption {
  color: var(--pm-muted) !important;
}

.store-identity-nav__search-form .form-group--nest {
  margin-top: 0 !important;
  border-color: var(--pm-border) !important;
  box-shadow: var(--pm-soft-shadow) !important;
}

.store-identity-nav__actions,
.store-identity-nav__utility {
  display: inline-flex !important;
  align-items: center !important;
  margin-top: 0 !important;
  gap: 8px !important;
}

.store-identity-nav__utility .ps-block__right {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
}

.store-identity-nav__cart {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  height: 44px !important;
}

.store-identity-nav__utility-link {
  min-height: 40px !important;
  padding: 9px 14px !important;
  border-color: var(--pm-border) !important;
  background: #ffffff !important;
  color: var(--pm-navy) !important;
  font-size: 14px !important;
  font-weight: 800 !important;
}

.store-identity-nav__utility-link:hover {
  color: var(--pm-blue) !important;
  border-color: var(--pm-blue) !important;
}

.store-identity-nav__cart .header__extra {
  display: inline-grid !important;
  position: relative !important;
  width: 44px !important;
  height: 44px !important;
  min-width: 44px !important;
  min-height: 44px !important;
  place-items: center !important;
  border: 1px solid var(--pm-border) !important;
  border-radius: 50% !important;
  background: #ffffff !important;
  color: var(--pm-navy) !important;
  line-height: 1 !important;
  box-sizing: border-box !important;
}

.store-identity-nav__cart .header__extra > i {
  display: block !important;
  margin: 0 !important;
  color: inherit !important;
  font-size: 19px !important;
  line-height: 1 !important;
}

.store-identity-nav__cart .header__extra span {
  right: -3px !important;
  bottom: -3px !important;
  width: 20px !important;
  height: 20px !important;
  background: linear-gradient(135deg, var(--pm-blue), var(--pm-cyan)) !important;
}

.store-identity-nav__cart .header__extra span i {
  font-size: 11px !important;
  font-weight: 800 !important;
  line-height: 1 !important;
}

.store-identity-nav__mobile-menu-trigger {
  border: 1px solid var(--pm-border) !important;
  border-radius: 50%;
  background: #ffffff !important;
  color: var(--pm-navy) !important;
}

@media (max-width: 1199px) {
  .header.header--1 {
    display: none;
  }

  .store-identity-nav__wrap {
    display: flex !important;
    min-height: 64px;
  }

  .store-identity-nav__mobile-brand {
    display: flex !important;
  }
}

@media (max-width: 991px) {
  .header.header--product .ps-product--header-sticky .ps-product__title {
    max-width: 360px;
  }
}

@media (max-width: 575px) {
  .header.header--product {
    display: none;
  }

  .store-identity-hero {
    padding-bottom: 42px !important;
  }

  .store-identity-hero__content,
  .store-identity-nav__wrap {
    padding-right: 14px !important;
    padding-left: 14px !important;
  }

  .store-identity-hero__cta {
    display: none !important;
  }
}

.pm-store-profile-header.store-identity-shell {
  position: fixed !important;
  top: 0 !important;
  right: 0 !important;
  left: 0 !important;
  z-index: 10020 !important;
  width: 100% !important;
  background: rgba(255, 255, 255, 0.96) !important;
  border-bottom: 1px solid rgba(219, 234, 254, 0.82) !important;
  box-shadow: none !important;
  backdrop-filter: blur(18px) !important;
}

.pm-store-profile-header .pm-store-header.store-identity-nav {
  position: relative !important;
  top: auto !important;
  z-index: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: rgba(255, 255, 255, 0.96) !important;
  box-shadow: none !important;
  backdrop-filter: blur(18px) !important;
}

.pm-store-header__top,
.pm-store-header__bottom,
.pm-store-header__mobile-search {
  width: 100% !important;
  max-width: 1320px !important;
  margin: 0 auto !important;
  padding-right: 20px !important;
  padding-left: 20px !important;
}

.pm-store-header__top {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  min-height: 92px !important;
  padding-top: 12px !important;
  padding-bottom: 8px !important;
}

.pm-store-header__menu,
.pm-store-header__account,
.pm-store-header__language {
  display: inline-grid !important;
  flex: 0 0 auto !important;
  place-items: center !important;
  width: 50px !important;
  height: 50px !important;
  border: 1px solid var(--pm-border) !important;
  border-radius: calc(infinity * 1px) !important;
  background: #ffffff !important;
  color: var(--pm-navy) !important;
  text-decoration: none !important;
}

.pm-store-header__menu i,
.pm-store-header__account i {
  color: currentColor !important;
  font-size: 24px !important;
  line-height: 1 !important;
}

.pm-store-header__language {
  width: 50px !important;
  height: 44px !important;
  font-size: 16px !important;
  font-weight: 800 !important;
}

.pm-store-header__brand {
  display: inline-flex !important;
  flex: 0 0 auto !important;
  align-items: center !important;
  min-width: 270px !important;
  max-width: 330px !important;
  gap: 14px !important;
  color: var(--pm-navy) !important;
  text-decoration: none !important;
}

.pm-store-header__logo {
  width: 72px !important;
  height: 72px !important;
  flex: 0 0 72px !important;
  border: 1px solid rgba(219, 234, 254, 0.90) !important;
  border-radius: 999px !important;
  object-fit: cover !important;
  background: #ffffff !important;
  box-shadow: 0 18px 36px rgba(2, 80, 110, 0.10) !important;
}

.pm-store-header__copy {
  display: flex !important;
  min-width: 0 !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  color: var(--pm-navy) !important;
  line-height: 1.08 !important;
}

.pm-store-header__copy strong {
  display: block !important;
  max-width: 100% !important;
  overflow: hidden !important;
  color: var(--pm-navy) !important;
  font-size: 20px !important;
  font-weight: 800 !important;
  line-height: 1.18 !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

.pm-store-header__copy small {
  display: block !important;
  margin-top: 4px !important;
  overflow: hidden !important;
  color: var(--pm-muted) !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  line-height: 1.2 !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

.pm-store-header__search.ps-form--search-mobile {
  display: block !important;
  flex: 1 1 auto !important;
  min-width: 220px !important;
  margin: 0 !important;
}

.pm-store-header__search .form-group--nest {
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  width: 100% !important;
  min-height: 58px !important;
  margin: 0 !important;
  padding: 0 12px 0 48px !important;
  border: 1px solid var(--pm-border) !important;
  border-radius: 999px !important;
  background: #ffffff !important;
  box-shadow: 0 18px 40px rgba(2, 80, 110, 0.08) !important;
  overflow: hidden !important;
}

.pm-store-header__search-icon {
  position: absolute !important;
  left: 18px !important;
  top: 50% !important;
  color: var(--pm-muted) !important;
  font-size: 20px !important;
  line-height: 1 !important;
  transform: translateY(-50%) !important;
}

.pm-store-header__search .form-control {
  width: 100% !important;
  height: 56px !important;
  min-height: 56px !important;
  padding: 0 14px 0 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: var(--pm-navy) !important;
  font-size: 16px !important;
  font-weight: 500 !important;
  line-height: 56px !important;
}

.pm-store-header__search .form-control::placeholder {
  color: rgba(47, 74, 107, 0.78) !important;
}

.pm-store-header__search button {
  position: static !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: auto !important;
  min-width: 96px !important;
  height: 46px !important;
  min-height: 46px !important;
  padding: 0 24px !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: #0b3454 !important;
  color: #ffffff !important;
  font-size: 16px !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  transform: none !important;
  box-shadow: none !important;
}

.pm-store-header__actions {
  display: inline-flex !important;
  flex: 0 0 auto !important;
  align-items: center !important;
  gap: 10px !important;
  margin-left: auto !important;
}

.pm-store-header__cart.store-identity-nav__cart {
  height: 44px !important;
}

.pm-store-header__cart .header__extra.pm-cart-pill {
  display: inline-grid !important;
  width: 86px !important;
  min-width: 86px !important;
  height: 44px !important;
  min-height: 44px !important;
  place-items: center !important;
  border: 1px solid var(--pm-border) !important;
  border-radius: 999px !important;
  background: #ffffff !important;
  color: var(--pm-navy) !important;
}

.pm-store-header__cart .pm-cart-pill__icon {
  width: 21px !important;
  height: 21px !important;
  color: currentColor !important;
}

.pm-store-header__cart .header__extra.pm-cart-pill span {
  right: 16px !important;
  bottom: 50% !important;
  display: inline-flex !important;
  width: 22px !important;
  height: 22px !important;
  align-items: center !important;
  justify-content: center !important;
  background: linear-gradient(135deg, var(--pm-blue), var(--pm-cyan)) !important;
  transform: translateY(50%) !important;
}

.pm-store-header__bottom {
  display: grid !important;
  grid-template-columns: 1fr auto 1fr !important;
  align-items: center !important;
  gap: 18px !important;
  min-height: 60px !important;
  padding-top: 0 !important;
  padding-bottom: 8px !important;
}

.pm-store-header__tabs {
  grid-column: 2 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 48px !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

.pm-store-header__tabs li {
  margin: 0 !important;
  padding: 0 !important;
}

.pm-store-header__tabs a {
  display: inline-flex !important;
  align-items: center !important;
  min-height: 42px !important;
  color: var(--pm-navy) !important;
  font-size: 20px !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  text-decoration: none !important;
  white-space: nowrap !important;
}

.pm-store-header__tabs a:hover {
  color: var(--pm-blue) !important;
}

.pm-store-header__join {
  grid-column: 3 !important;
  justify-self: end !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 102px !important;
  min-height: 48px !important;
  padding: 0 24px !important;
  border-radius: 999px !important;
  background: linear-gradient(90deg, var(--pm-blue), var(--pm-cyan)) !important;
  color: #ffffff !important;
  font-size: 16px !important;
  font-weight: 800 !important;
  text-decoration: none !important;
  box-shadow: 0 20px 34px rgba(18, 139, 190, 0.24) !important;
}

.pm-store-header__mobile-search {
  display: none !important;
  padding-bottom: 10px !important;
}

.pm-store-header-spacer {
  display: block !important;
  width: 100% !important;
  height: 153px !important;
}

@media (max-width: 1199px) {
  .pm-store-header__brand {
    min-width: 240px !important;
    max-width: 280px !important;
  }

  .pm-store-header__copy strong,
  .pm-store-header__tabs a {
    font-size: 17px !important;
  }

  .pm-store-header__tabs {
    gap: 28px !important;
  }
}

@media (max-width: 991px) {
  .pm-store-header__top {
    min-height: 76px !important;
    padding-top: 10px !important;
  }

  .pm-store-header__logo {
    width: 58px !important;
    height: 58px !important;
    flex-basis: 58px !important;
  }

  .pm-store-header__copy strong {
    font-size: 15px !important;
  }

  .pm-store-header__top > .pm-store-header__search {
    display: none !important;
  }

  .pm-store-header__mobile-search {
    display: block !important;
  }

  .pm-store-header-spacer {
    height: 190px !important;
  }

  .pm-store-header__bottom {
    grid-template-columns: minmax(0, 1fr) auto !important;
    overflow: hidden !important;
  }

  .pm-store-header__tabs {
    grid-column: 1 !important;
    justify-content: flex-start !important;
    gap: 26px !important;
    overflow-x: auto !important;
    scrollbar-width: none !important;
  }

  .pm-store-header__tabs::-webkit-scrollbar {
    display: none !important;
  }

  .pm-store-header__join {
    grid-column: 2 !important;
  }
}

@media (max-width: 575px) {
  .pm-store-header__top,
  .pm-store-header__bottom,
  .pm-store-header__mobile-search {
    padding-right: 14px !important;
    padding-left: 14px !important;
  }

  .pm-store-header__top {
    gap: 8px !important;
  }

  .pm-store-header__menu,
  .pm-store-header__account {
    width: 44px !important;
    height: 44px !important;
  }

  .pm-store-header__brand {
    min-width: 0 !important;
    max-width: none !important;
    flex: 1 1 auto !important;
    gap: 8px !important;
  }

  .pm-store-header__logo {
    width: 48px !important;
    height: 48px !important;
    flex-basis: 48px !important;
  }

  .pm-store-header__copy strong {
    font-size: 13px !important;
  }

  .pm-store-header__copy small {
    font-size: 11px !important;
  }

  .pm-store-header__language {
    display: none !important;
  }

  .pm-store-header__cart .header__extra.pm-cart-pill {
    width: 58px !important;
    min-width: 58px !important;
  }

  .pm-store-header__cart .header__extra.pm-cart-pill span {
    right: 8px !important;
  }

  .pm-store-header__search .form-group--nest {
    min-height: 52px !important;
  }

  .pm-store-header__search .form-control {
    height: 50px !important;
    min-height: 50px !important;
    font-size: 14px !important;
    line-height: 50px !important;
  }

  .pm-store-header__search button {
    min-width: 78px !important;
    height: 40px !important;
    min-height: 40px !important;
    padding: 0 16px !important;
    font-size: 13px !important;
  }

  .pm-store-header__bottom {
    min-height: 52px !important;
  }

  .pm-store-header__tabs {
    gap: 24px !important;
  }

  .pm-store-header__tabs a {
    min-height: 38px !important;
    font-size: 15px !important;
  }

  .pm-store-header__join {
    display: none !important;
  }

  .pm-store-header-spacer {
    height: 204px !important;
  }
}

html,
body {
  font-family: var(--pm-font-sans) !important;
  color: var(--pm-ink);
  background: linear-gradient(180deg, #f6fcff 0%, #ffffff 38%, #eef8fb 100%);
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

body,
button,
input,
select,
textarea {
  font-family: var(--pm-font-sans) !important;
}

a {
  color: inherit;
}

a:hover {
  color: var(--pm-blue);
}

h1,
h2,
h3,
h4,
h5,
h6,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6 {
  color: var(--pm-navy);
  font-family: var(--pm-font-sans) !important;
  font-weight: 800;
  letter-spacing: 0;
  line-height: 1.12;
}

h1,
.h1 {
  font-size: clamp(36px, 5vw, 64px);
}

h2,
.h2 {
  font-size: clamp(28px, 3vw, 42px);
}

h3,
.h3 {
  font-size: clamp(20px, 2vw, 28px);
}

p,
.ps-product__content p,
.ps-block__content p {
  color: var(--pm-muted);
  line-height: 1.65;
}

.pm-gradient-text,
.ps-section__header h3 strong,
.ps-section__header h2 strong {
  background: linear-gradient(90deg, var(--pm-blue), var(--pm-cyan));
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}

.ps-btn,
button.ps-btn,
.btn,
button.btn,
.ps-form--quick-search button,
.filter-btn,
.view_more,
.add-to-cart-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 42px;
  padding: 12px 20px;
  border: 1px solid transparent;
  border-radius: var(--pm-pill-radius) !important;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 0;
  line-height: 1;
  text-transform: none;
  white-space: nowrap;
  transition: transform 0.15s ease, box-shadow 0.15s ease, border-color 0.15s ease, background 0.15s ease, color 0.15s ease;
}

.ps-btn:hover,
button.ps-btn:hover,
.btn:hover,
button.btn:hover,
.ps-form--quick-search button:hover,
.filter-btn:hover,
.view_more:hover,
.add-to-cart-button:hover {
  transform: translateY(-1px);
}

.ps-btn,
button.ps-btn,
.btn-primary,
button.btn-primary,
.filter-btn--primary,
.ps-form--quick-search button,
.add-to-cart-button {
  color: #ffffff !important;
  background: linear-gradient(90deg, var(--pm-blue), var(--pm-cyan)) !important;
  box-shadow: 0 14px 30px rgba(5, 126, 162, 0.25);
}

.ps-btn--black,
button.ps-btn--black,
.btn-dark,
button.btn-dark {
  color: #ffffff !important;
  background: var(--pm-navy) !important;
  box-shadow: none;
}

.btn-outline-secondary,
.ps-btn--gray,
button.ps-btn--gray,
.filter-btn--secondary {
  color: var(--pm-blue) !important;
  background: #ffffff !important;
  border-color: var(--pm-border) !important;
  box-shadow: none;
}

.badge,
.pm-label {
  display: inline-flex;
  align-items: center;
  min-height: 24px;
  padding: 5px 10px;
  border-radius: var(--pm-pill-radius);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.04em;
  line-height: 1;
  text-transform: uppercase;
}

.badge.bg-secondary,
.badge.badge-secondary {
  background: #e9f8ff !important;
  color: var(--pm-blue) !important;
}

.form-control,
.form-select,
select.form-control,
input.form-control,
textarea.form-control {
  min-height: 44px;
  border-color: var(--pm-border);
  border-radius: 16px;
  color: var(--pm-ink);
  box-shadow: none;
}

.form-control:focus,
.form-select:focus {
  border-color: var(--pm-cyan);
  box-shadow: 0 0 0 3px rgba(69, 177, 225, 0.18);
}

.header.header--1,
.header--mobile,
.navigation,
.ps-main > .ps-main__wrapper > header,
.ps-main__wrapper {
  font-family: var(--pm-font-sans) !important;
}

.header.header--1 .header__top,
.header.header--1 .navigation,
.header--mobile,
.navigation--mobile {
  background: rgba(255, 255, 255, 0.94) !important;
  border-color: rgba(219, 234, 254, 0.8) !important;
  backdrop-filter: blur(18px);
}

.header.header--1 .menu > li > a,
.navigation__extra > li > a,
.ps-block--user-header a,
.menu--product-categories .menu__toggle span {
  color: var(--pm-navy) !important;
  font-size: 14px;
  font-weight: 700;
}

.header.header--1 .menu > li > a:hover,
.navigation__extra > li > a:hover,
.ps-block--user-header a:hover {
  color: var(--pm-blue) !important;
}

.ps-form--quick-search {
  overflow: hidden;
  border: 1px solid var(--pm-border) !important;
  border-radius: var(--pm-pill-radius) !important;
  background: #ffffff;
  box-shadow: var(--pm-soft-shadow);
}

.ps-form--quick-search .form-control,
.ps-form--quick-search input.form-control,
.ps-form--quick-search select.form-control {
  border: 0 !important;
  border-radius: 0 !important;
}

.ps-form--quick-search button {
  min-height: 38px;
  margin: 4px;
  padding: 10px 18px;
}

.ps-product,
.ps-product--inner,
.ps-block,
.ps-widget,
.ps-shopping-product .caja_store,
.ps-cart__items,
.ps-table--shopping-cart,
.table-responsive,
.card {
  border: 1px solid var(--pm-border);
  border-radius: var(--pm-card-radius) !important;
  background: rgba(255, 255, 255, 0.94);
  box-shadow: var(--pm-card-shadow);
}

.ps-product,
.ps-product--inner,
.ps-shopping-product .caja_store {
  overflow: hidden;
  transition: transform 0.15s ease, box-shadow 0.15s ease;
}

.ps-product:hover,
.ps-product--inner:hover,
.ps-shopping-product .caja_store:hover {
  transform: translateY(-2px);
  box-shadow: var(--pm-soft-shadow);
}

.ps-product .ps-product__title,
.ps-product--inner .ps-product__title,
.texto_store,
.link_caja_store {
  color: var(--pm-navy);
  font-size: 15px;
  font-weight: 800;
  line-height: 1.25;
}

.ps-product .ps-product__price,
.ps-product--inner .ps-product__price {
  color: var(--pm-blue);
  font-weight: 800;
}

.table {
  color: var(--pm-ink);
  border-collapse: separate;
  border-spacing: 0;
}

.table thead th {
  color: var(--pm-muted);
  background: #f6fcff;
  border-bottom: 1px solid var(--pm-border);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.table tbody td {
  border-color: #edf6fb;
  color: var(--pm-ink);
  font-size: 14px;
}

#vendor-dashboard {
  color: var(--pm-ink);
}

.ps-main {
  background: linear-gradient(180deg, #f6fcff 0%, #ffffff 42%, #eef8fb 100%);
}

.ps-main__sidebar,
.ps-sidebar {
  background: #ffffff !important;
  border-color: var(--pm-border) !important;
}

.ps-main__sidebar {
  box-shadow: 18px 0 50px rgba(2, 80, 110, 0.06);
}

.ps-sidebar .menu > li > a,
.ps-drawer--mobile .menu > li > a {
  display: flex;
  align-items: center;
  gap: 10px;
  min-height: 42px;
  margin: 3px 10px;
  padding: 10px 14px;
  border-radius: var(--pm-pill-radius);
  color: var(--pm-muted) !important;
  font-size: 14px;
  font-weight: 700;
  transition: background 0.15s ease, color 0.15s ease, transform 0.15s ease;
}

.ps-sidebar .menu > li > a:hover,
.ps-drawer--mobile .menu > li > a:hover {
  color: var(--pm-navy) !important;
  background: var(--pm-soft);
  transform: translateX(1px);
}

.ps-sidebar .menu > li > a.active,
.ps-drawer--mobile .menu > li > a.active,
.ps-sidebar .menu > li.current-menu-item > a {
  color: #ffffff !important;
  background: linear-gradient(90deg, var(--pm-blue), var(--pm-cyan));
  box-shadow: 0 14px 30px rgba(5, 126, 162, 0.18);
}

.ps-sidebar .menu-submenu {
  margin: 4px 12px 8px;
  padding: 6px;
  border: 1px solid var(--pm-border);
  border-radius: 18px;
  background: #f8fdff;
}

.ps-sidebar .menu-submenu a {
  min-height: 36px;
  margin: 2px 0;
  padding: 9px 12px;
  border-radius: var(--pm-pill-radius);
  color: var(--pm-muted) !important;
  font-size: 13px;
  font-weight: 700;
}

.ps-sidebar .menu-submenu a.active,
.ps-sidebar .menu-submenu a:hover {
  color: var(--pm-blue) !important;
  background: #e9f8ff;
}

#vendor-dashboard > header {
  margin-bottom: 24px !important;
}

#vendor-dashboard > header h3 {
  max-width: min(760px, 72vw);
  color: var(--pm-navy);
  font-size: clamp(24px, 3vw, 40px) !important;
  font-weight: 800;
  line-height: 1.08;
}

.ps-block--vendor-dashboard,
.ps-block--vendor-dashboard .ps-block__content,
#app > .card,
#app .card {
  border: 1px solid var(--pm-border);
  border-radius: var(--pm-card-radius);
  background: rgba(255, 255, 255, 0.94);
  box-shadow: var(--pm-card-shadow);
}

.ps-block--vendor-dashboard {
  padding: 24px;
}

.ps-block--vendor-dashboard .ps-block__header h3,
.ps-block--vendor-dashboard h3 {
  color: var(--pm-navy);
  font-size: clamp(20px, 2vw, 28px);
  font-weight: 800;
}

.avatar,
.avatar-lg,
.ps-block--user-wellcome img {
  border: 2px solid #ffffff;
  border-radius: 18px !important;
  box-shadow: var(--pm-soft-shadow);
}

@media (max-width: 767px) {
  h1,
  .h1 {
    font-size: 34px;
  }

  h2,
  .h2 {
    font-size: 28px;
  }

  h3,
  .h3 {
    font-size: 22px;
  }

  .ps-btn,
  button.ps-btn,
  .btn,
  button.btn,
  .ps-form--quick-search button,
  .filter-btn,
  .view_more,
  .add-to-cart-button {
    min-height: 40px;
    padding: 10px 16px;
    font-size: 13px;
  }

  .ps-block--vendor-dashboard {
    padding: 16px;
  }

  #vendor-dashboard > header {
    align-items: flex-start !important;
    flex-direction: column;
    gap: 14px;
  }

  #vendor-dashboard > header h3 {
    max-width: 100%;
    font-size: 28px !important;
  }
}

/* Store profile page: local equivalent for the Vercel /shop experience. */
.page-store {
  background: linear-gradient(180deg, #f6fcff 0%, #ffffff 34%, #eef8fb 100%);
}

.page-store .ps-store-list {
  padding-top: 0px;
}

.page-store .store-page--parish,
.page-store .store-page--cause {
  font-family: var(--pm-font-sans) !important;
}

.page-store .store-page--parish .store-page__intro,
.page-store .store-page--cause .store-page__intro {
  max-width: 1280px !important;
  margin: 28px auto 0 !important;
}

.page-store .store-page--parish .store-page__intro > .row,
.page-store .store-page--cause .store-page__intro > .row {
  overflow: hidden !important;
  padding: 22px !important;
  border: 1px solid var(--pm-border) !important;
  border-radius: 24px !important;
  background: rgba(255, 255, 255, 0.96) !important;
  box-shadow: var(--pm-card-shadow) !important;
}

.page-store .store-page--parish .store-page__intro .header_shop,
.page-store .store-page--cause .store-page__intro .header_shop {
  min-height: 100% !important;
  margin-top: 0 !important;
  padding: 22px !important;
  border: 0 !important;
  border-radius: 18px !important;
  background: transparent !important;
  box-shadow: none !important;
}

.page-store .store-page--parish .store-page__intro .header_shop.about,
.page-store .store-page--cause .store-page__intro .header_shop.about {
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
}

.page-store .store-page--parish .store-page__intro .header_shop.about > p,
.page-store .store-page--cause .store-page__intro .header_shop.about > p {
  max-width: 720px !important;
  margin: 0 !important;
  color: var(--pm-muted) !important;
  font-size: 15px !important;
  line-height: 1.62 !important;
}

.page-store .store-page--parish .store-page__intro .header_shop.about ul,
.page-store .store-page--cause .store-page__intro .header_shop.about ul {
  flex-wrap: wrap !important;
  gap: 12px !important;
  margin: 18px 0 0 !important;
}

.page-store .store-page--parish .store-page__intro .header_shop.about li,
.page-store .store-page--cause .store-page__intro .header_shop.about li {
  display: inline-flex !important;
  align-items: center !important;
  min-height: 36px !important;
  padding: 0 14px !important;
  border-radius: 999px !important;
  background: #e9f7fc !important;
  color: var(--pm-navy) !important;
  font-size: 13px !important;
  font-weight: 700 !important;
}

.page-store .store-page--parish .store-page__intro .header_shop.meet-founder,
.page-store .store-page--cause .store-page__intro .header_shop.meet-founder {
  margin-top: 18px !important;
  border: 1px solid var(--pm-border) !important;
  background: linear-gradient(145deg, #ffffff, #f5fbfe) !important;
}

.page-store .store-page--parish .store-page__intro .header_shop.meet-founder .title_mensaje,
.page-store .store-page--cause .store-page__intro .header_shop.meet-founder .title_mensaje {
  max-width: 100% !important;
  color: var(--pm-navy) !important;
  font-size: 28px !important;
  font-weight: 800 !important;
  line-height: 1.12 !important;
}

.page-store .store-page--parish .store-page__intro .col-lg-5 > img,
.page-store .store-page--cause .store-page__intro .col-lg-5 > img {
  display: block !important;
  width: 100% !important;
  min-height: 280px !important;
  max-height: 420px !important;
  margin: 0 !important;
  border: 1px solid var(--pm-border) !important;
  border-radius: 20px !important;
  object-fit: cover !important;
}

.page-store .store-page--parish > .row.ck-container.g-4,
.page-store .store-page--cause > .row.ck-container.g-4 {
  max-width: 1280px !important;
  padding-top: 32px !important;
  padding-bottom: 36px !important;
}

.page-store .ck-container {
  max-width: 1180px;
  margin-right: auto;
  margin-left: auto;
  padding-right: 24px;
  padding-left: 24px;
}

.page-store .tienda_1 > .row:first-child,
.page-store .tienda_2 > .row:first-child {
  position: relative !important;
  top: auto !important;
  z-index: 1 !important;
  max-width: 1180px;
  margin: 0 auto;
  padding: 0 24px;
}

.page-store .banner_store_header,
.page-store .banner_tienda_0 img {
  min-height: 300px;
  border: 1px solid var(--pm-border);
  border-radius: 28px !important;
  box-shadow: var(--pm-card-shadow);
}

.page-store .banner_store_header::after {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  background: linear-gradient(180deg, rgba(11, 52, 84, 0.04) 0%, rgba(11, 52, 84, 0.42) 100%);
  pointer-events: none;
}

.page-store .store-identity-hero {
  padding: 14px 0 !important;
}

.page-store .navigation.menu_interno_store {
  position: sticky;
  top: 0;
  z-index: 20;
  margin: -46px auto 0;
  padding: 0 24px;
  border: 0;
  background: transparent !important;
}

.page-store .navigation.menu_interno_store .ck-container {
  border: 1px solid rgba(219, 234, 254, 0.9);
  border-radius: 24px;
  background: rgba(255, 255, 255, 0.96);
  box-shadow: var(--pm-soft-shadow);
  backdrop-filter: blur(18px);
}

.page-store .navigation.menu_interno_store.sticky {
  top: 12px !important;
}

.page-store .logo_marketplace3,
.page-store .logo_header_marketplace {
  display: flex;
  align-items: center;
  justify-content: center;
}

.page-store .logo_header,
.page-store .logo_header_marketplace {
  width: 76px;
  height: 76px;
  object-fit: cover;
  border: 3px solid #ffffff;
  border-radius: 20px !important;
  background: #ffffff;
  box-shadow: var(--pm-soft-shadow);
}

.page-store .title_site,
.page-store .title_mensaje {
  color: var(--pm-navy);
  font-size: clamp(22px, 2.4vw, 34px) !important;
  font-weight: 800 !important;
  letter-spacing: 0;
  line-height: 1.1;
}

.page-store .caja_store .title_mensaje,
.store-page--parish .caja_store .title_mensaje,
.store-page--cause .caja_store .title_mensaje {
  display: flex !important;
  max-width: 100% !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 10px !important;
  color: #ffffff !important;
  font-size: 21px !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  white-space: nowrap !important;
}

.page-store .caja_store .title_mensaje img,
.store-page--parish .caja_store .title_mensaje img,
.store-page--cause .caja_store .title_mensaje img {
  flex: 0 0 auto !important;
  width: 30px !important;
  height: 30px !important;
  margin: 0 !important;
  object-fit: contain !important;
}

.page-store .store-section-cards {
  display: grid !important;
  max-width: 1280px !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 24px !important;
  margin-right: auto !important;
  margin-left: auto !important;
  padding-right: 15px !important;
  padding-left: 15px !important;
}

.page-store .store-section-cards > [class*="col-"] {
  width: auto !important;
  max-width: none !important;
  padding-right: 0 !important;
  padding-left: 0 !important;
}

.page-store .caja_store.caja_store--vercel,
.store-page--parish .caja_store.caja_store--vercel,
.store-page--cause .caja_store.caja_store--vercel {
  display: flex !important;
  height: 100% !important;
  min-height: 334px !important;
  flex-direction: column !important;
  overflow: hidden !important;
  border: 1px solid var(--pm-border) !important;
  border-radius: 24px !important;
  background: rgba(255, 255, 255, 0.96) !important;
  box-shadow: var(--pm-card-shadow) !important;
  color: var(--pm-navy) !important;
  text-decoration: none !important;
  transition: transform 0.16s ease, box-shadow 0.16s ease !important;
}

@media (max-width: 991px) {
  .page-store .store-section-cards {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 575px) {
  .page-store .store-section-cards {
    grid-template-columns: 1fr !important;
    padding-right: 14px !important;
    padding-left: 14px !important;
  }
}

.page-store .caja_store.caja_store--vercel:hover,
.store-page--parish .caja_store.caja_store--vercel:hover,
.store-page--cause .caja_store.caja_store--vercel:hover {
  transform: translateY(-2px) !important;
  box-shadow: var(--pm-soft-shadow) !important;
}

.page-store .caja_store--vercel .caja_store__media,
.store-page--parish .caja_store--vercel .caja_store__media,
.store-page--cause .caja_store--vercel .caja_store__media {
  display: block !important;
  width: 100% !important;
  min-height: 0 !important;
  aspect-ratio: 16 / 9 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
  background-size: cover !important;
}

.page-store .caja_store--vercel .caja_store__media::before,
.store-page--parish .caja_store--vercel .caja_store__media::before,
.store-page--cause .caja_store--vercel .caja_store__media::before,
.page-store .caja_store--vercel .caja_store__media::after,
.store-page--parish .caja_store--vercel .caja_store__media::after,
.store-page--cause .caja_store--vercel .caja_store__media::after {
  display: none !important;
  content: none !important;
}

.page-store .caja_store--vercel .caja_store__content,
.store-page--parish .caja_store--vercel .caja_store__content,
.store-page--cause .caja_store--vercel .caja_store__content {
  display: flex !important;
  flex: 1 1 auto !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  gap: 6px !important;
  padding: 22px 24px 24px !important;
  background: #ffffff !important;
  text-align: left !important;
}

.page-store .store-section-cards .caja_store--vercel .caja_store__content > * {
  align-self: stretch !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  text-align: left !important;
}

.page-store .caja_store--vercel .caja_store__label,
.store-page--parish .caja_store--vercel .caja_store__label,
.store-page--cause .caja_store--vercel .caja_store__label {
  color: var(--pm-blue) !important;
  font-size: 11px !important;
  font-weight: 800 !important;
  letter-spacing: 0.08em !important;
  line-height: 1 !important;
  text-align: left !important;
  text-transform: uppercase !important;
}

.page-store .store-section-cards .caja_store--vercel .caja_store__title,
.store-page--parish .store-section-cards .caja_store--vercel .caja_store__title,
.store-page--cause .store-section-cards .caja_store--vercel .caja_store__title {
  display: block !important;
  width: 100% !important;
  margin: 8px 0 2px !important;
  padding: 0 !important;
  color: var(--pm-navy) !important;
  font-size: 21px !important;
  font-weight: 800 !important;
  letter-spacing: -0.01em !important;
  line-height: 1.16 !important;
  text-align: left !important;
  white-space: normal !important;
}

.page-store .caja_store--vercel p,
.store-page--parish .caja_store--vercel p,
.store-page--cause .caja_store--vercel p {
  margin: 0 !important;
  color: var(--pm-muted) !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  line-height: 1.45 !important;
  text-align: left !important;
}

.page-store .store-section-cards .caja_store--vercel:hover .caja_store__title,
.store-page--parish .store-section-cards .caja_store--vercel:hover .caja_store__title,
.store-page--cause .store-section-cards .caja_store--vercel:hover .caja_store__title {
  color: var(--pm-blue) !important;
}

.page-store .menu_interno_causa a,
.page-store .contenedor_menu_interno a {
  display: inline-flex;
  align-items: center;
  min-height: 34px;
  padding: 8px 12px;
  border-radius: var(--pm-pill-radius);
  color: var(--pm-muted) !important;
  font-size: 13px;
  font-weight: 800;
  white-space: nowrap;
}

.page-store .menu_interno_causa a:hover,
.page-store .contenedor_menu_interno a:hover {
  color: var(--pm-navy) !important;
  background: var(--pm-soft);
}

.page-store .navigation.menu_interno_store.store-identity-nav {
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.14) !important;
  background: var(--store-nav-background, #006f99) !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
}

.page-store .navigation.menu_interno_store.store-identity-nav .ck-container {
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
}

.page-store .navigation.menu_interno_store.store-identity-nav > .ck-container > .row {
  min-height: 64px !important;
  align-items: center !important;
}

.page-store .navigation.menu_interno_store.store-identity-nav .menu_interno_causa a,
.page-store .navigation.menu_interno_store.store-identity-nav .contenedor_menu_interno a {
  color: #ffffff !important;
  background: transparent !important;
}

.page-store .navigation.menu_interno_store.store-identity-nav .menu_interno_causa a:hover,
.page-store .navigation.menu_interno_store.store-identity-nav .contenedor_menu_interno a:hover {
  color: #ffffff !important;
  text-decoration: underline;
  text-underline-offset: 5px;
}

.page-store .navigation.menu_interno_store.store-identity-nav .store-identity-hero__cta {
  min-height: 40px;
  padding: 10px 18px !important;
  border-color: rgba(255, 255, 255, 0.9) !important;
  background: #ffffff !important;
  color: var(--pm-blue) !important;
}

.page-store .pm-store-profile-header.store-identity-shell {
  background: rgba(255, 255, 255, 0.96) !important;
  border-bottom: 1px solid rgba(219, 234, 254, 0.82) !important;
  box-shadow: none !important;
  backdrop-filter: blur(18px) !important;
}

.page-store .pm-store-profile-header .navigation.menu_interno_store.store-identity-nav.pm-store-header {
  position: relative !important;
  top: auto !important;
  z-index: auto !important;
  background: rgba(255, 255, 255, 0.96) !important;
  border: 0 !important;
  box-shadow: none !important;
  backdrop-filter: blur(18px) !important;
}

.page-store .pm-store-profile-header .pm-store-header__tabs a {
  color: var(--pm-navy) !important;
  background: transparent !important;
  text-decoration: none !important;
}

.page-store .pm-store-profile-header .pm-store-header__tabs a:hover {
  color: var(--pm-blue) !important;
  background: transparent !important;
  text-decoration: none !important;
}

.page-store .ps-store-list {
  padding-top: 0px !important;
}

.page-store .header_shop {
  border: 1px solid var(--pm-border);
  border-radius: var(--pm-card-radius);
  background: rgba(255, 255, 255, 0.94);
  box-shadow: var(--pm-card-shadow);
}

.page-store .header_shop.about {
  padding: 26px;
}

.page-store .header_shop.meet-founder {
  padding: 26px;
  background:
    linear-gradient(135deg, rgba(233, 248, 255, 0.8), rgba(255, 255, 255, 0.96));
}

.page-store .header_shop.meet-founder .title_mensaje {
  max-width: 100% !important;
  color: var(--pm-navy) !important;
  font-size: 28px !important;
  font-weight: 800 !important;
  line-height: 1.12 !important;
}

.page-store .header_shop p,
.page-store .header_shop li {
  color: var(--pm-muted);
  font-size: 14px;
  line-height: 1.65;
}

.page-store .view_more,
.page-store .view_more2 {
  color: var(--pm-blue) !important;
  font-weight: 800;
}

.page-store .padding-seccion,
.page-store .padding-seccion2,
.page-store #explore {
  padding: 42px 0;
}

.page-store .bg-azul_claro,
.page-store #explore {
  background: transparent !important;
}

.page-store .ps-shopping {
  border: 1px solid var(--pm-border);
  border-radius: 28px;
  background: rgba(255, 255, 255, 0.92);
  box-shadow: var(--pm-card-shadow);
  padding: 20px;
}

.page-store .ps-shopping > h3,
.page-store .ps-shopping .title_site {
  margin-bottom: 18px;
}

.page-store .ps-shopping .filtro > div,
.page-store .bb-shop-sidebar,
.page-store .ps-layout__left {
  border: 1px solid var(--pm-border);
  border-radius: 22px;
  background: #ffffff;
  box-shadow: none;
}

@media (min-width: 992px) {
  .page-store .store-page__shop .pm-store-shop-grid {
    display: grid !important;
    grid-template-columns: 260px minmax(0, 1fr);
    gap: 24px;
    align-items: flex-start;
    margin: 0 !important;
    transition: grid-template-columns 0.24s ease;
  }

  .page-store .store-page__shop .pm-store-shop-grid.is-filter-collapsed {
    grid-template-columns: 48px minmax(0, 1fr);
  }

  .page-store .store-page__shop .pm-store-shop-grid > .filtro,
  .page-store .store-page__shop .pm-store-shop-grid > .contenedor_productos {
    width: auto !important;
    max-width: none !important;
    flex: none !important;
    padding-right: 0 !important;
    padding-left: 0 !important;
  }

  .page-store .store-page__shop .pm-store-shop-grid > .filtro {
    position: sticky;
    top: 96px;
    display: flex !important;
    min-height: min(520px, calc(100vh - 140px));
    align-items: stretch;
    padding: 0 !important;
    overflow: hidden;
    border: 1px solid var(--pm-border);
    border-radius: 24px;
    background: #ffffff;
    box-shadow: none;
    transition: border-radius 0.24s ease;
  }

  .page-store .store-page__shop .pm-store-shop-grid.is-filter-collapsed > .filtro {
    border-radius: 14px;
  }
}

.page-store .store-page__shop .pm-store-filter-rail {
  display: flex;
  width: 48px;
  min-width: 48px;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  gap: 9px;
  padding: 16px 0;
  border: 0;
  background: transparent;
  color: var(--pm-muted);
  cursor: pointer;
  transition: color 0.16s ease, background-color 0.16s ease;
}

.page-store .store-page__shop .pm-store-filter-rail:hover,
.page-store .store-page__shop .pm-store-filter-rail:focus {
  color: var(--pm-navy);
  background: rgba(238, 248, 251, 0.72);
  outline: none;
}

.page-store .store-page__shop .pm-store-filter-rail__chevron {
  font-size: 14px;
  transition: transform 0.2s ease;
}

.page-store .store-page__shop .pm-store-shop-grid.is-filter-collapsed .pm-store-filter-rail__chevron {
  transform: rotate(180deg);
}

.page-store .store-page__shop .pm-store-filter-rail span {
  display: inline-block;
  color: inherit;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.12em;
  line-height: 1;
  text-transform: uppercase;
  transform: rotate(180deg);
  writing-mode: vertical-rl;
}

.page-store .store-page__shop .pm-store-filter-rail__icon {
  font-size: 13px;
  line-height: 1;
}

.page-store .store-page__shop .pm-store-shop-grid > .filtro > .pm-store-filter-content {
  min-width: 0;
  flex: 1 1 auto;
  padding: 12px 12px 12px 0;
  overflow: hidden;
  opacity: 1;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  transition: opacity 0.16s ease;
}

.page-store .store-page__shop .pm-store-shop-grid.is-filter-collapsed .pm-store-filter-content {
  opacity: 0;
  pointer-events: none;
}

@media (max-width: 991px) {
  .page-store .store-page__shop .pm-store-shop-grid.is-filter-collapsed > .filtro {
    display: none !important;
  }

  .page-store .store-page__shop .pm-store-filter-rail {
    display: none !important;
  }

  .page-store .store-page__shop .pm-store-shop-grid > .filtro {
    position: static;
    padding: 0 !important;
  }

  .page-store .store-page__shop .pm-store-shop-grid > .filtro > .pm-store-filter-content {
    padding: 0;
    overflow: visible;
    opacity: 1;
    pointer-events: auto;
  }
}

.page-store .filtro_cate {
  display: inline-flex;
  align-items: center;
  margin: 0 8px 8px 0;
  border: 1px solid var(--pm-border);
  border-radius: var(--pm-pill-radius);
  background: #ffffff;
  color: var(--pm-ink) !important;
  overflow: hidden;
  transition: transform 0.15s ease, background 0.15s ease, color 0.15s ease, border-color 0.15s ease;
}

.page-store .filtro_cate:hover {
  transform: translateY(-1px);
}

.page-store .filtro_cate a {
  display: inline-flex;
  align-items: center;
  min-height: 36px;
  padding: 9px 14px;
  color: inherit !important;
  font-size: 13px;
  font-weight: 800;
  line-height: 1;
  white-space: nowrap;
}

.page-store .filtro_cate.active,
.page-store .filtro_cate[data-id="-1"] {
  color: #ffffff !important;
  border-color: transparent;
  background: linear-gradient(90deg, var(--pm-blue), var(--pm-cyan));
  box-shadow: 0 12px 26px rgba(5, 126, 162, 0.20);
}

.page-store .ps-shopping__header {
  padding: 0;
  border: 0;
  background: transparent;
}

.page-store .ps-shopping__view {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 12px;
  color: var(--pm-muted);
}

.page-store .ps-shopping__view p {
  margin: 0;
  font-size: 13px;
  color: var(--pm-muted);
}

.page-store .ps-shopping__view strong {
  color: var(--pm-navy);
  font-weight: 800;
}

.page-store .ps-tab-list {
  display: inline-flex;
  gap: 6px;
  padding: 4px;
  border: 1px solid var(--pm-border);
  border-radius: var(--pm-pill-radius);
  background: #ffffff;
}

.page-store .ps-tab-list li a {
  display: grid;
  width: 30px;
  height: 30px;
  place-items: center;
  border-radius: 50%;
  color: var(--pm-muted);
}

.page-store .ps-tab-list li.active a,
.page-store .ps-tab-list li a:hover {
  color: #ffffff;
  background: var(--pm-navy);
}

.page-store .ps-shopping-product > .row {
  margin-right: -8px;
  margin-left: -8px;
}

.page-store .ps-shopping-product > .row > [class*="col-"] {
  padding-right: 8px;
  padding-left: 8px;
  margin-bottom: 16px;
}

.page-store .ps-product {
  height: 100%;
  padding: 12px;
  border: 1px solid var(--pm-border);
  border-radius: var(--pm-card-radius) !important;
  background: #ffffff;
  box-shadow: none;
}

.page-store .ps-product__thumbnail {
  overflow: hidden;
  aspect-ratio: 4 / 3;
  border-radius: 18px;
  background: var(--pm-soft);
}

.page-store .ps-product__thumbnail img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  padding: 10px;
  background: #ffffff;
}

.page-store .ps-product__container {
  padding: 13px 4px 2px;
}

.page-store .ps-product__vendor {
  color: var(--pm-blue) !important;
  font-size: 11px;
  font-weight: 800;
  text-transform: none !important;
}

.page-store .ps-product__title {
  display: -webkit-box;
  min-height: 38px;
  overflow: hidden;
  color: var(--pm-navy) !important;
  font-size: 15px !important;
  font-weight: 800 !important;
  line-height: 1.25;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.page-store .ps-product__price {
  margin-top: 8px;
  color: var(--pm-blue) !important;
  font-size: 14px !important;
  font-weight: 800 !important;
}

.page-store .ps-product__actions {
  right: 12px;
  bottom: 12px;
}

.page-store .ps-product__actions li a {
  display: grid;
  width: 36px;
  height: 36px;
  min-height: 0;
  padding: 0;
  place-items: center;
  border: 1px solid var(--pm-border);
  border-radius: 50% !important;
  color: var(--pm-navy) !important;
  background: #ffffff !important;
  box-shadow: var(--pm-soft-shadow);
}

.page-store .ps-product__actions li a:hover {
  color: #ffffff !important;
  border-color: transparent;
  background: linear-gradient(90deg, var(--pm-blue), var(--pm-cyan)) !important;
}

.page-store .ps-product--wide {
  display: flex;
  gap: 18px;
  padding: 14px;
}

.page-store .ps-product--wide .ps-product__thumbnail {
  flex: 0 0 190px;
}

.page-store .ps-block--store-2,
.page-store .ps-block--store-2 .ps-block__content {
  overflow: hidden;
  border: 1px solid var(--pm-border);
  border-radius: var(--pm-card-radius) !important;
  background: #ffffff;
  box-shadow: var(--pm-card-shadow);
}

.page-store #causas {
  padding: 42px 0 !important;
  background: transparent !important;
}

.page-store #causas .ck-container {
  max-width: 1280px !important;
}

.page-store #causas .title_site {
  margin-bottom: 22px !important;
  color: var(--pm-navy) !important;
  font-family: var(--pm-font-sans) !important;
  font-size: 30px !important;
  font-weight: 800 !important;
  letter-spacing: -0.01em !important;
  line-height: 1.2 !important;
}

.page-store #causas .store-support-causes__grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 24px !important;
  margin-right: 0 !important;
  margin-left: 0 !important;
}

.page-store #causas .store-support-causes__grid > [class*="col-"] {
  width: auto !important;
  max-width: none !important;
  padding-right: 0 !important;
  padding-left: 0 !important;
}

.page-store #causas .store-support-cause-card {
  display: flex !important;
  height: 100% !important;
  min-height: 364px !important;
  flex-direction: column !important;
  overflow: hidden !important;
  border: 1px solid var(--pm-border) !important;
  border-radius: 24px !important;
  background: rgba(255, 255, 255, 0.96) !important;
  box-shadow: var(--pm-card-shadow) !important;
  transition: transform 0.16s ease, box-shadow 0.16s ease !important;
}

.page-store #causas .store-support-cause-card:hover {
  transform: translateY(-2px) !important;
  box-shadow: var(--pm-soft-shadow) !important;
}

.page-store #causas .store-support-cause-card__media {
  display: block !important;
  width: 100% !important;
  min-height: 260px !important;
  aspect-ratio: 16 / 9 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background-color: #e9f7fc !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
  background-size: cover !important;
}

.page-store #causas .store-support-cause-card__content {
  display: flex !important;
  flex: 1 1 auto !important;
  flex-direction: column !important;
  gap: 8px !important;
  padding: 18px 18px 20px !important;
  background: #ffffff !important;
  text-align: left !important;
}

.page-store #causas .store-support-cause-card__content h4 {
  margin: 0 !important;
  color: var(--pm-navy) !important;
  font-family: var(--pm-font-sans) !important;
  font-size: 16px !important;
  font-weight: 800 !important;
  line-height: 1.25 !important;
}

.page-store #causas .store-support-cause-card__content h4 a {
  color: inherit !important;
  text-decoration: none !important;
}

.page-store #causas .store-support-cause-card__content h4 a:hover {
  color: var(--pm-blue) !important;
}

.page-store #causas .store-support-cause-card__location {
  margin: 0 !important;
  color: var(--pm-muted) !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  line-height: 1.3 !important;
}

.page-store #causas .store-support-cause-card__description {
  margin: 4px 0 0 !important;
  color: var(--pm-muted) !important;
  font-size: 13px !important;
  font-weight: 400 !important;
  line-height: 1.45 !important;
}

.page-store #causas .store-support-cause-card__link {
  display: inline-flex !important;
  width: max-content !important;
  margin-top: auto !important;
  color: var(--pm-navy) !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  text-decoration: none !important;
}

.page-store #causas .store-support-cause-card__link:hover {
  color: var(--pm-blue) !important;
}

.page-store .pm-store-sponsors-section {
  padding: 42px 0 56px !important;
  background: transparent !important;
}

.page-store .pm-store-sponsors-section .ck-container {
  max-width: 1280px !important;
}

.page-store .pm-store-sponsors-card {
  overflow: hidden !important;
  padding: 34px 36px 38px !important;
  border: 1px solid var(--pm-border) !important;
  border-radius: 24px !important;
  background: rgba(255, 255, 255, 0.96) !important;
  box-shadow: var(--pm-card-shadow) !important;
}

.page-store .pm-store-sponsors-card .title_site {
  margin: 0 0 26px !important;
  color: var(--pm-navy) !important;
  font-family: var(--pm-font-sans) !important;
  font-size: 30px !important;
  font-weight: 800 !important;
  letter-spacing: -0.01em !important;
  line-height: 1.2 !important;
}

.page-store .pm-store-sponsors-card .row {
  row-gap: 18px !important;
}

.page-store .pm-store-sponsors-card .store-page__sponsor-card {
  display: grid !important;
  min-height: 150px !important;
  place-items: center !important;
  padding: 24px !important;
  border: 1px solid var(--pm-border) !important;
  border-radius: 18px !important;
  background: #ffffff !important;
  box-shadow: 0 14px 28px rgba(7, 32, 57, 0.06) !important;
  text-decoration: none !important;
  transition: transform 0.16s ease, box-shadow 0.16s ease, border-color 0.16s ease !important;
}

.page-store .pm-store-sponsors-card .store-page__sponsor-card:hover {
  transform: translateY(-2px) !important;
  border-color: rgba(0, 120, 166, 0.35) !important;
  box-shadow: var(--pm-soft-shadow) !important;
}

.page-store .pm-store-sponsors-card .store-page__sponsor-card img {
  display: block !important;
  width: auto !important;
  max-width: 100% !important;
  max-height: 96px !important;
  object-fit: contain !important;
}

@media (max-width: 991px) {
  .page-store #causas .store-support-causes__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 575px) {
  .page-store #causas .store-support-causes__grid {
    grid-template-columns: 1fr !important;
  }

  .page-store .pm-store-sponsors-card {
    padding: 24px 18px !important;
  }
}

.page-store .imagen_marketplace {
  border-radius: 18px 18px 0 0;
}

.page-store .texto_store {
  padding: 16px;
}

.page-store .texto_store h4 {
  color: var(--pm-navy);
  font-size: 16px;
  font-weight: 800;
}

.page-store .texto_store p {
  margin-bottom: 0;
  color: var(--pm-muted);
  font-size: 12px;
}

@media (max-width: 991px) {
  .page-store .navigation.menu_interno_store {
    margin-top: -34px;
  }

  .page-store .navigation.menu_interno_store .ck-container {
    padding-top: 12px;
    padding-bottom: 12px;
  }

  .page-store .contenedor_menu_interno {
    display: flex !important;
    overflow-x: auto;
    width: 100%;
    gap: 8px !important;
    padding: 10px 0 2px !important;
  }

  .page-store .ps-shopping__view {
    justify-content: flex-start;
    flex-wrap: wrap;
    margin-top: 10px;
  }
}

@media (max-width: 575px) {
  .page-store .ck-container,
  .page-store .tienda_1 > .row:first-child,
  .page-store .tienda_2 > .row:first-child,
  .page-store .navigation.menu_interno_store {
    padding-right: 14px;
    padding-left: 14px;
  }

  .page-store .banner_store_header,
  .page-store .banner_tienda_0 img {
    min-height: 220px;
    border-radius: 22px !important;
  }

  .page-store .header_shop.about,
  .page-store .header_shop.meet-founder,
  .page-store .ps-shopping {
    padding: 16px;
  }

  .page-store .ps-product--wide {
    display: block;
  }

  .page-store .ps-product--wide .ps-product__thumbnail {
    width: 100%;
  }
}

/* Product detail page: local equivalent for the Vercel /shop/product page. */
#product-page {
  background: linear-gradient(180deg, #f6fcff 0%, #ffffff 36%, #eef8fb 100%);
}

#product-page .ps-breadcrumb {
  padding: 18px 0 6px;
  background: transparent;
}

#product-page .ps-breadcrumb .ps-container,
#product-page .ps-page--product .ps-container {
  max-width: 1180px;
  padding-right: 24px;
  padding-left: 24px;
}

#product-page .breadcrumb-custom {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  color: var(--pm-muted);
  font-size: 13px;
  font-weight: 700;
}

#product-page .breadcrumb-custom a {
  color: var(--pm-blue) !important;
  font-weight: 800;
}

#product-page .ps-page--product {
  padding: 18px 0 54px;
}

#product-page .ps-page--product .ps-page__container {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 320px;
  gap: 24px;
  align-items: start;
}

#product-page .ps-page--product .ps-page__left,
#product-page .ps-page--product .ps-page__right {
  width: auto;
  max-width: none;
}

#product-page .ps-product--detail {
  border: 0;
  background: transparent;
}

#product-page .ps-product--detail .ps-product__header {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(360px, 0.95fr);
  gap: 28px;
  align-items: start;
  margin-bottom: 24px;
}

#product-page .ps-product--detail .ps-product__thumbnail.imagen_producto_interna,
#product-page .ps-product--detail .ps-product__info,
#product-page .ps-product--detail .ps-product__content,
#product-page .ps-page__right > *,
#product-page .cuadro_1,
#product-page .caja_donacion {
  border: 1px solid var(--pm-border);
  border-radius: 28px !important;
  background: rgba(255, 255, 255, 0.94);
  box-shadow: var(--pm-card-shadow);
}

#product-page .ps-product--detail .ps-product__thumbnail.imagen_producto_interna {
  overflow: hidden;
  padding: 16px;
}

#product-page .ps-product--detail .ps-product__thumbnail img,
#product-page .ps-product--detail .ps-product__gallery img {
  border-radius: 22px !important;
  background: #ffffff;
  object-fit: contain;
}

#product-page .ps-product--detail .ps-product__info {
  padding: 28px;
}

#product-page .ps-product--detail .ps-product__info h1 {
  margin-bottom: 12px;
  color: var(--pm-navy);
  font-size: clamp(32px, 3.4vw, 48px) !important;
  font-weight: 800;
  line-height: 1.08;
}

#product-page .sold_by {
  display: inline-flex;
  flex-wrap: wrap;
  gap: 4px;
  align-items: center;
  margin-bottom: 12px;
  padding: 7px 12px;
  border-radius: var(--pm-pill-radius);
  background: #e9f8ff;
  color: var(--pm-muted);
  font-size: 12px;
  font-weight: 700;
}

#product-page .sold_by a {
  color: var(--pm-blue) !important;
}

#product-page .ps-product__meta,
#product-page .rating_wrap {
  color: var(--pm-muted);
  font-size: 13px;
}

#product-page .rating_wrap svg polygon {
  fill: var(--pm-blue);
}

#product-page .ps-product--detail .ps-product__price,
#product-page #price_product {
  color: var(--pm-navy) !important;
  font-size: clamp(28px, 3vw, 40px) !important;
  font-weight: 800 !important;
  line-height: 1.1;
}

#product-page .pr_switch_wrap,
#product-page .product-option-form,
#product-page .ps-product__shopping {
  margin-top: 18px;
}

#product-page .pr_switch_wrap .attribute-swatch-item,
#product-page .pr_switch_wrap label,
#product-page .product-option-form label {
  border-radius: var(--pm-pill-radius) !important;
  font-weight: 800;
}

#product-page .pr_switch_wrap [data-slug="size"].attribute-swatches-wrapper {
  margin-top: 16px !important;
}

#product-page .pr_switch_wrap [data-slug="size"] .bb-product-attribute-swatch-title {
  margin: 0 0 8px !important;
  color: var(--pm-navy) !important;
  font-size: 0 !important;
  font-weight: 700 !important;
  line-height: 16px !important;
}

#product-page .pr_switch_wrap [data-slug="size"] .bb-product-attribute-swatch-title::after {
  content: "Size";
  font-family: var(--pm-font-sans) !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  line-height: 16px !important;
}

#product-page .pr_switch_wrap [data-slug="size"] .bb-product-attribute-swatch-list {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

#product-page .pr_switch_wrap [data-slug="size"] .bb-product-attribute-swatch-item {
  display: inline-flex !important;
  margin: 0 !important;
}

#product-page .pr_switch_wrap [data-slug="size"] .bb-product-attribute-swatch-item.disabled {
  display: none !important;
}

#product-page .pr_switch_wrap [data-slug="size"] .bb-product-attribute-swatch-item label {
  display: inline-flex !important;
  margin: 0 !important;
  cursor: pointer !important;
}

#product-page .pr_switch_wrap [data-slug="size"] .bb-product-attribute-text-display {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 44px !important;
  height: 38px !important;
  padding: 8px 14px !important;
  border: 1px solid var(--pm-border) !important;
  border-radius: var(--pm-pill-radius) !important;
  background: #ffffff !important;
  color: var(--pm-ink) !important;
  font-family: var(--pm-font-sans) !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  line-height: 19.5px !important;
  text-align: center !important;
  transition: border-color 0.2s ease, background 0.2s ease, color 0.2s ease !important;
}

#product-page .pr_switch_wrap [data-slug="size"] .bb-product-attribute-swatch-item label:hover .bb-product-attribute-text-display {
  border-color: transparent !important;
  background: linear-gradient(90deg, var(--pm-blue), var(--pm-cyan)) !important;
  color: #ffffff !important;
}

#product-page .pr_switch_wrap [data-slug="size"] .bb-product-attribute-swatch-item input[type=radio]:checked ~ .bb-product-attribute-text-display,
#product-page .pr_switch_wrap [data-slug="size"] .bb-product-attribute-swatch-item input[type=checkbox]:checked ~ .bb-product-attribute-text-display {
  border-color: transparent !important;
  background: linear-gradient(90deg, var(--pm-blue), var(--pm-cyan)) !important;
  color: #ffffff !important;
}

#product-page .pr_switch_wrap [data-slug="size"] .bb-product-attribute-text-display::before,
#product-page .pr_switch_wrap [data-slug="size"] .bb-product-attribute-text-display::after {
  display: none !important;
  content: none !important;
}

#product-page .ps-product__shopping {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
}

#product-page .ps-product__shopping .ps-btn,
#product-page .add-to-cart-form > .ps-btn,
#product-page .add-to-cart-form button.ps-btn {
  min-width: 160px;
  min-height: 48px;
}

#product-page .form-group--number,
#product-page .product__qty {
  overflow: hidden;
  border: 1px solid var(--pm-border);
  border-radius: var(--pm-pill-radius);
  background: #ffffff;
}

#product-page .form-group--number .form-control,
#product-page .product__qty .form-control {
  border: 0;
  text-align: center;
  font-weight: 800;
}

#product-page .form-group--number button,
#product-page .product__qty button {
  color: var(--pm-navy);
  background: #ffffff;
}

#product-page .ps-product__desc {
  margin-top: 22px;
  padding-top: 18px;
  border-top: 1px solid var(--pm-border);
}

#product-page .ps-product__desc,
#product-page .ps-product__desc p,
#product-page .ps-list--dot {
  color: var(--pm-muted);
  font-size: 14px;
  line-height: 1.7;
}

#product-page .ps-product__specification {
  margin-top: 18px;
  padding: 16px;
  border: 1px solid var(--pm-border);
  border-radius: 18px;
  background: #f8fdff;
}

#product-page .ps-product__specification p {
  margin-bottom: 8px;
  color: var(--pm-muted);
  font-size: 13px;
}

#product-page .ps-product__specification strong {
  color: var(--pm-navy);
}

#product-page .ps-product__sharing {
  margin-top: 18px;
}

#product-page .ps-product--detail > .ps-product__content {
  padding: 24px;
}

#product-page .ps-product--detail > .ps-product__content > .ps-tab-list {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 20px;
  padding: 0;
  border: 0;
  background: transparent;
}

#product-page .ps-product--detail > .ps-product__content > .ps-tab-list li a {
  display: inline-flex;
  align-items: center;
  min-height: 38px;
  padding: 10px 15px;
  border: 1px solid var(--pm-border);
  border-radius: var(--pm-pill-radius);
  color: var(--pm-muted) !important;
  background: #ffffff;
  font-size: 13px !important;
  font-weight: 800 !important;
  line-height: 1;
}

#product-page .ps-product--detail > .ps-product__content > .ps-tab-list li.active a,
#product-page .ps-product--detail > .ps-product__content > .ps-tab-list li a:hover {
  color: #ffffff !important;
  border-color: transparent;
  background: linear-gradient(90deg, var(--pm-blue), var(--pm-cyan));
}

#product-page .ps-document,
#product-page .ck-content,
#product-page .ps-tabs {
  color: var(--pm-muted);
  font-size: 14px;
  line-height: 1.7;
}

#product-page .ps-page__right {
  position: sticky;
  top: 24px;
}

#product-page .ps-page__right > *,
#product-page .cuadro_1,
#product-page .caja_donacion {
  overflow: hidden;
}

#product-page .ps-page__right .ps-product {
  padding: 12px !important;
  border: 0;
  box-shadow: none;
}

#product-page .ps-page__right .ps-product__thumbnail {
  border-radius: 20px !important;
  background: var(--pm-soft);
}

#product-page .btn_donation_goals,
#product-page .btn_donation_goals a {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 42px;
  border-radius: var(--pm-pill-radius);
  font-weight: 800;
}

#product-page .btn_donation_goals {
  margin: 14px;
  background: linear-gradient(90deg, var(--pm-blue), var(--pm-cyan));
  box-shadow: 0 14px 30px rgba(5, 126, 162, 0.20);
}

#product-page .btn_donation_goals a {
  width: 100%;
  color: #ffffff !important;
}

#product-page .ps-product__actions a {
  display: inline-grid;
  width: 42px;
  height: 42px;
  min-height: 0;
  padding: 0;
  place-items: center;
  border: 1px solid var(--pm-border);
  border-radius: 50% !important;
  color: var(--pm-navy) !important;
  background: #ffffff !important;
  box-shadow: none;
}

#product-page .ps-product__actions a:hover {
  color: #ffffff !important;
  border-color: transparent;
  background: var(--pm-navy) !important;
}

@media (max-width: 1199px) {
  #product-page .ps-page--product .ps-page__container {
    grid-template-columns: 1fr;
  }

  #product-page .ps-page__right {
    position: static;
  }
}

@media (max-width: 991px) {
  #product-page .ps-product--detail .ps-product__header {
    grid-template-columns: 1fr;
  }

  #product-page .ps-product--detail .ps-product__info {
    padding: 22px;
  }
}

@media (max-width: 575px) {
  #product-page .ps-breadcrumb .ps-container,
  #product-page .ps-page--product .ps-container {
    padding-right: 14px;
    padding-left: 14px;
  }

  #product-page .ps-product--detail .ps-product__thumbnail.imagen_producto_interna,
  #product-page .ps-product--detail .ps-product__info,
  #product-page .ps-product--detail .ps-product__content {
    border-radius: 22px !important;
  }

  #product-page .ps-product--detail .ps-product__info,
  #product-page .ps-product--detail > .ps-product__content {
    padding: 16px;
  }

  #product-page .ps-product__shopping .ps-btn,
  #product-page .add-to-cart-form > .ps-btn,
  #product-page .add-to-cart-form button.ps-btn {
    width: 100%;
  }
}

/* Product detail: closer to the Vercel /shop/product composition. */
#product-page .ps-breadcrumb .ps-container,
#product-page .ps-page--product .ps-container {
  max-width: 1280px !important;
}

#product-page .ps-page--product .ps-page__container {
  display: block !important;
}

#product-page .ps-page--product .ps-page__left,
#product-page .ps-page--product .ps-page__right {
  width: 100% !important;
}

#product-page .ps-product--detail .ps-product__header {
  display: grid !important;
  grid-template-columns: minmax(0, 1.05fr) minmax(380px, 0.95fr) !important;
  gap: 28px !important;
  align-items: start !important;
  margin-bottom: 24px !important;
}

#product-page .ps-product--detail .ps-product__thumbnail.imagen_producto_interna,
#product-page .ps-product--detail .ps-product__info,
#product-page .ps-product--detail > .ps-product__content {
  border-radius: 24px !important;
}

#product-page .ps-product--detail .ps-product__thumbnail.imagen_producto_interna {
  padding: 12px !important;
}

#product-page .bb-product-gallery-wrapper,
#product-page .bb-product-gallery,
#product-page .bb-product-gallery-images {
  min-width: 0 !important;
}

#product-page .bb-product-gallery-images {
  overflow: hidden !important;
  border-radius: 20px !important;
  background: #ffffff !important;
}

#product-page .bb-product-gallery-images a {
  display: grid !important;
  min-height: 520px !important;
  place-items: center !important;
  background: #ffffff !important;
}

#product-page .bb-product-gallery-images img {
  width: 100% !important;
  max-height: 500px !important;
  padding: 22px !important;
  object-fit: contain !important;
}

#product-page .bb-product-gallery-thumbnails {
  margin-top: 12px !important;
}

#product-page .bb-product-gallery-thumbnails .slick-slide > div,
#product-page .bb-product-gallery-thumbnails div {
  border-radius: 16px !important;
}

#product-page .bb-product-gallery-thumbnails img {
  border: 1px solid var(--pm-border) !important;
  border-radius: 16px !important;
  background: #ffffff !important;
  object-fit: contain !important;
}

#product-page .ps-product--detail .ps-product__info {
  padding: 28px !important;
}

#product-page .ps-product--detail .ps-product__info h1 {
  max-width: 720px !important;
  margin: 0 0 12px !important;
  font-size: clamp(30px, 3.1vw, 44px) !important;
  font-weight: 900 !important;
  letter-spacing: 0 !important;
}

#product-page .ps-product--detail .ps-product__price {
  margin: 16px 0 0 !important;
}

#product-page .ps-product--detail .ps-product__price,
#product-page #price_product {
  font-size: clamp(30px, 3vw, 42px) !important;
  font-weight: 600 !important;
}

#product-page .ps-product--detail .ps-product__price span,
#product-page #price_product span {
  font-weight: 600 !important;
}

#product-page .sold_by {
  margin-top: 4px !important;
}

#product-page .ps-product__meta {
  margin-top: 10px !important;
}

#product-page .ps-product__shopping {
  display: grid !important;
  grid-template-columns: minmax(128px, max-content) minmax(180px, 1fr) minmax(160px, 1fr) auto !important;
  gap: 12px !important;
  align-items: end !important;
}

#product-page .ps-product__shopping figure {
  margin: 0 !important;
}

#product-page .ps-product__shopping figure figcaption,
#product-page .product-option-form > label,
#product-page .pr_switch_wrap .attribute-name {
  margin-bottom: 8px !important;
  color: var(--pm-navy) !important;
  font-size: 12px !important;
  font-weight: 800 !important;
}

#product-page .ps-product__shopping .ps-btn,
#product-page .add-to-cart-form button.ps-btn {
  width: 100% !important;
  min-height: 48px !important;
  border: 0 !important;
  border-radius: var(--pm-pill-radius) !important;
  font-family: var(--pm-font-sans) !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  box-shadow: 0 14px 30px rgba(5, 126, 162, 0.22) !important;
}

#product-page .ps-product__shopping .ps-btn--black,
#product-page .add-to-cart-form button[name="add_to_cart"] {
  color: #ffffff !important;
  background: linear-gradient(90deg, var(--pm-blue), var(--pm-cyan)) !important;
}

#product-page .add-to-cart-form button[name="checkout"] {
  color: var(--pm-blue) !important;
  border: 1px solid var(--pm-border) !important;
  background: #ffffff !important;
  box-shadow: none !important;
}

#product-page .ps-product__shopping .ps-btn:hover,
#product-page .add-to-cart-form button.ps-btn:hover {
  transform: translateY(-1px);
  box-shadow: 0 18px 34px rgba(5, 126, 162, 0.28) !important;
}

#product-page .ps-product__desc {
  margin-top: 24px !important;
}

#product-page .ps-product--detail > .ps-product__content {
  margin-top: 8px !important;
}

#product-page .ps-page__right {
  position: static !important;
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)) !important;
  gap: 18px !important;
  margin-top: 24px !important;
}

#product-page .ps-page__right > *,
#product-page .cuadro_1,
#product-page .cuadro_2,
#product-page .cuadro_3,
#product-page .caja_donacion {
  min-width: 0 !important;
}

#product-page .cuadro_2,
#product-page .cuadro_3 {
  overflow: visible !important;
}

.cuadro_3,
.cuadro_2 {
  box-shadow: unset !important;
}

#product-page .cuadro_2 + .cuadro_3 {
  margin-top: 25px !important;
}

#product-page .product_causas {
  overflow: visible !important;
}

#product-page .imagen_circle_small {
  background-color: #ffffff !important;
  background-repeat: no-repeat !important;
  background-position: center center !important;
  background-size: contain !important;
}

#product-page .ps-customer-bought,
#product-page .ps-section--default {
  margin-top: 34px !important;
  background: transparent !important;
  box-shadow: none !important;
}

#product-page .ps-section--default,
#product-page .ps-section--default .ps-section__content,
#product-page .ps-section--default .owl-stage-outer,
#product-page .ps-section--default .owl-stage,
#product-page .ps-section--default .owl-item {
  background: transparent !important;
}

#product-page .ps-customer-bought .ps-section__header,
#product-page .ps-section--default .ps-section__header {
  margin-bottom: 16px !important;
  padding: 0 !important;
  border: 0 !important;
}

#product-page .ps-customer-bought .ps-section__header h3,
#product-page .ps-section--default .ps-section__header h3 {
  color: var(--pm-navy) !important;
  font-family: var(--pm-font-sans) !important;
  font-size: clamp(22px, 2vw, 30px) !important;
  font-weight: 800 !important;
  letter-spacing: 0 !important;
}

#product-page .ps-customer-bought .ps-section__content > .row {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 16px !important;
  margin: 0 !important;
}

#product-page .ps-customer-bought .ps-section__content > .row > [class*="col-"] {
  width: auto !important;
  max-width: none !important;
  padding: 0 !important;
}

#product-page .ps-customer-bought .ps-product {
  height: 100% !important;
}

@media (max-width: 1199px) {
  #product-page .ps-customer-bought .ps-section__content > .row {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 991px) {
  #product-page .ps-product--detail .ps-product__header {
    grid-template-columns: 1fr !important;
  }

  #product-page .bb-product-gallery-images a {
    min-height: 420px !important;
  }

  #product-page .ps-product__shopping {
    grid-template-columns: 1fr 1fr !important;
  }
}

@media (max-width: 767px) {
  #product-page .ps-customer-bought .ps-section__content > .row {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 575px) {
  #product-page .ps-product--detail .ps-product__info {
    padding: 18px !important;
  }

  #product-page .bb-product-gallery-images a {
    min-height: 320px !important;
  }

  #product-page .bb-product-gallery-images img {
    max-height: 300px !important;
    padding: 14px !important;
  }

  #product-page .ps-product__shopping {
    grid-template-columns: 1fr !important;
  }

  #product-page .ps-customer-bought .ps-section__content > .row {
    grid-template-columns: 1fr !important;
  }
}

/* Product detail final alignment: gallery left, buying card + cross sell right. */
#product-page .ps-product--detail .ps-product__header {
  grid-template-columns: minmax(0, 1.06fr) minmax(390px, 0.94fr) !important;
  grid-auto-flow: dense !important;
}

#product-page .ps-product--detail .ps-product__header > .ps-product__thumbnail.imagen_producto_interna,
#product-page .ps-product--detail .ps-product__header > .ps-product__info {
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  flex: none !important;
  margin: 0 !important;
}

#product-page .ps-product--detail .ps-product__thumbnail.imagen_producto_interna {
  grid-row: 1 / span 2 !important;
}

#product-page .ps-product--detail .ps-product__info {
  display: flex !important;
  flex-direction: column !important;
}

#product-page .sold_by {
  order: -2 !important;
  width: fit-content !important;
  margin: 4px 0 14px !important;
  padding: 7px 14px !important;
  text-transform: uppercase !important;
  letter-spacing: 0.08em !important;
}

#product-page .ps-product--detail .ps-product__info h1 {
  order: -1 !important;
  margin-bottom: 8px !important;
  font-size: clamp(34px, 3vw, 46px) !important;
  line-height: 1.08 !important;
}

#product-page .pm-product-short-description {
  order: 0 !important;
  margin: 0 0 12px !important;
  color: var(--pm-muted) !important;
  font-family: var(--pm-font-sans) !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  line-height: 20px !important;
}

#product-page .ps-product__meta {
  margin-top: 6px !important;
}

#product-page .ps-product__desc {
  order: 2 !important;
  margin-top: 14px !important;
  padding-top: 0 !important;
  border-top: 0 !important;
}

#product-page .ps-product__specification {
  display: none !important;
}

#product-page .ps-product__sharing {
  margin-top: 14px !important;
}

#product-page .ps-product__sharing > span {
  display: none !important;
}

#product-page .ps-product__sharing ul {
  display: flex !important;
  gap: 8px !important;
  margin: 0 !important;
  padding: 0 !important;
}

#product-page .ps-product__shopping {
  grid-template-columns: max-content max-content max-content auto !important;
  align-items: flex-end !important;
  margin-top: 22px !important;
}

#product-page .ps-product__shopping figure {
  display: grid !important;
  gap: 8px !important;
}

#product-page .ps-product__shopping figure figcaption {
  min-height: 16px !important;
  margin: 0 !important;
  line-height: 16px !important;
}

#product-page .ps-product__shopping .form-group--number,
#product-page .ps-product__shopping .product__qty {
  width: 144px !important;
  height: 48px !important;
  min-height: 48px !important;
  align-self: end !important;
  box-sizing: border-box !important;
  margin: 0 !important;
}

#product-page .ps-product__shopping .form-group--number .form-control,
#product-page .ps-product__shopping .product__qty .form-control {
  height: 48px !important;
  min-height: 48px !important;
  box-sizing: border-box !important;
  line-height: 1 !important;
}

#product-page .ps-product__shopping .ps-btn,
#product-page .add-to-cart-form button.ps-btn {
  display: inline-flex !important;
  width: auto !important;
  height: 48px !important;
  min-width: 84px !important;
  min-height: 48px !important;
  align-self: end !important;
  align-items: center !important;
  justify-content: center !important;
  box-sizing: border-box !important;
  margin: 0 !important;
  padding: 0 24px !important;
  line-height: 1 !important;
}

#product-page .ps-product__shopping > button.ps-btn {
  margin-top: 24px !important;
}

#product-page .add-to-cart-form button[name="checkout"] {
  min-width: 118px !important;
}

#product-page .ps-product__actions {
  display: flex !important;
  gap: 8px !important;
}

#product-page .pm-product-cross-sell {
  grid-column: 2 !important;
  min-width: 0 !important;
}

#product-page .pm-product-cross-sell .ps-customer-bought {
  margin: 0 !important;
  padding: 22px 24px !important;
  border: 1px solid var(--pm-border) !important;
  border-radius: 24px !important;
  background: rgba(255, 255, 255, 0.94) !important;
  box-shadow: var(--pm-card-shadow) !important;
}

#product-page .pm-product-cross-sell .ps-section__header h3 {
  font-size: 18px !important;
}

#product-page .pm-product-cross-sell .ps-section__content > .row {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 12px !important;
}

#product-page .pm-product-cross-sell .ps-product {
  border-radius: 16px !important;
}

#product-page .pm-product-cross-sell .ps-product > .ps-product__thumbnail {
  min-height: 142px !important;
}

#product-page .pm-product-cross-sell .ps-product > .ps-product__thumbnail img {
  max-height: 132px !important;
}

#product-page .pm-product-cross-sell .ps-product__container,
#product-page .pm-product-cross-sell .ps-product__content {
  padding: 10px !important;
}

#product-page .pm-product-cross-sell .ps-product__title {
  font-size: 12px !important;
  line-height: 16px !important;
}

#product-page .pm-product-cross-sell .ps-product__desc,
#product-page .pm-product-cross-sell .pm-product-card__view {
  display: none !important;
}

@media (min-width: 1200px) {
  #product-page .bb-product-gallery-images a {
    min-height: 620px !important;
  }

  #product-page .bb-product-gallery-images img {
    max-height: 590px !important;
  }
}

@media (max-width: 991px) {
  #product-page .ps-product--detail .ps-product__thumbnail.imagen_producto_interna,
  #product-page .pm-product-cross-sell {
    grid-column: auto !important;
    grid-row: auto !important;
  }

  #product-page .ps-product__shopping {
    grid-template-columns: 1fr 1fr !important;
  }
}

@media (max-width: 575px) {
  #product-page .ps-product--detail .ps-product__info h1 {
    font-size: 32px !important;
    line-height: 1.05 !important;
  }

  #product-page .ps-product__shopping {
    grid-template-columns: 1fr !important;
  }

  #product-page .ps-product__shopping .ps-btn,
  #product-page .add-to-cart-form button.ps-btn {
    width: 100% !important;
  }

  #product-page .pm-product-cross-sell .ps-section__content > .row {
    grid-template-columns: 1fr !important;
  }
}

/* Product detail: put description/reviews in a Vercel-like card under the gallery. */
#product-page .ps-product--detail.ps-product--fullwidth {
  display: grid !important;
  grid-template-columns: minmax(0, 1.06fr) minmax(390px, 0.94fr) !important;
  gap: 28px !important;
  align-items: start !important;
  overflow: visible !important;
}

#product-page .ps-product--detail.ps-product--fullwidth > .ps-product__header {
  display: contents !important;
}

#product-page .ps-product--detail .ps-product__thumbnail.imagen_producto_interna {
  grid-column: 1 !important;
  grid-row: 1 !important;
}

#product-page .ps-product--detail .ps-product__info {
  grid-column: 2 !important;
  grid-row: 1 !important;
}

#product-page .ps-product--detail > .ps-product__content {
  grid-column: 1 !important;
  grid-row: 2 !important;
  margin-top: 0 !important;
  padding: 24px !important;
  border: 1px solid var(--pm-border) !important;
  border-radius: 24px !important;
  background: rgba(255, 255, 255, 0.94) !important;
  box-shadow: var(--pm-card-shadow) !important;
}

#product-page .pm-product-cross-sell {
  grid-column: 2 !important;
  grid-row: 2 !important;
}

#product-page .ps-product--detail > .ps-product__content .ps-tab-list {
  display: none !important;
}

#product-page .ps-product--detail > .ps-product__content .ps-tabs {
  overflow: hidden !important;
  padding-top: 0 !important;
  border-top: 0 !important;
}

#product-page .ps-product--detail > .ps-product__content .ck-content,
#product-page .ps-product--detail > .ps-product__content .ps-document,
#product-page .ps-product--detail > .ps-product__content .ps-tab {
  color: var(--pm-muted) !important;
  font-family: var(--pm-font-sans) !important;
  font-size: 15px !important;
  line-height: 1.75 !important;
}

#product-page .ps-product--detail > .ps-product__content h1,
#product-page .ps-product--detail > .ps-product__content h2,
#product-page .ps-product--detail > .ps-product__content h3,
#product-page .ps-product--detail > .ps-product__content h4,
#product-page .ps-product--detail > .ps-product__content h5 {
  color: var(--pm-navy) !important;
  font-family: var(--pm-font-sans) !important;
  font-weight: 800 !important;
  letter-spacing: 0 !important;
}

#product-page .ps-product--detail > .ps-product__content ul,
#product-page .ps-product--detail > .ps-product__content ol {
  padding-left: 22px !important;
}

#product-page .ps-product--detail > .ps-product__content > .ps-product__sharing {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  margin: 22px 0 0 !important;
  padding-top: 18px !important;
  border-top: 1px solid var(--pm-border) !important;
}

#product-page .ps-product--detail > .ps-product__content > .ps-product__sharing > span {
  display: inline-flex !important;
  margin-right: 12px !important;
  color: var(--pm-navy) !important;
  font-size: 13px !important;
  font-weight: 800 !important;
}

#product-page .ps-product--detail > .ps-product__content > .ps-product__sharing ul,
#product-page .ps-product--detail > .ps-product__content > .ps-product__sharing .ps-list--social {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 10px !important;
  margin: 0 !important;
  padding: 0 !important;
}

#product-page .ps-product--detail > .ps-product__content > .ps-product__sharing a {
  display: grid !important;
  width: 38px !important;
  height: 38px !important;
  place-items: center !important;
  border: 1px solid var(--pm-border) !important;
  border-radius: 50% !important;
  color: var(--pm-blue) !important;
  background: #ffffff !important;
  text-decoration: none !important;
}

#product-page .ps-product--detail > .ps-product__content > .ps-product__sharing a:hover {
  color: #ffffff !important;
  border-color: transparent !important;
  background: linear-gradient(90deg, var(--pm-blue), var(--pm-cyan)) !important;
}

@media (max-width: 991px) {
  #product-page .ps-product--detail.ps-product--fullwidth {
    grid-template-columns: 1fr !important;
  }

  #product-page .ps-product--detail .ps-product__thumbnail.imagen_producto_interna,
  #product-page .ps-product--detail .ps-product__info,
  #product-page .ps-product--detail > .ps-product__content,
  #product-page .pm-product-cross-sell {
    grid-column: 1 !important;
    grid-row: auto !important;
  }
}

/* Product detail: keep the support/donation card in the right rail, not full-width below. */
#product-page .ps-page--product .ps-page__container {
  display: grid !important;
  grid-template-columns: minmax(0, 1.06fr) minmax(390px, 0.94fr) !important;
  gap: 28px !important;
  align-items: start !important;
}

#product-page .ps-page--product .ps-page__left,
#product-page .ps-product--detail.ps-product--fullwidth,
#product-page .ps-product--detail.ps-product--fullwidth > .ps-product__header {
  display: contents !important;
}

#product-page .ps-page__right {
  grid-column: 2 !important;
  grid-row: 2 !important;
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  position: static !important;
}

#product-page .ps-page__right > *,
#product-page .ps-page__right .cuadro_1,
#product-page .ps-page__right .caja_donacion {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
}

#product-page .ps-page__right .caja_donacion {
  padding: 12px !important;
  border: 1px solid var(--pm-border) !important;
  border-radius: 24px !important;
  background: rgba(255, 255, 255, 0.94) !important;
  box-shadow: var(--pm-card-shadow) !important;
}

#product-page .ps-page__right .caja_donacion .ps-product {
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
}

#product-page .ps-page__right .caja_donacion .ps-product__thumbnail {
  overflow: hidden !important;
  border-radius: 18px !important;
  background: #ffffff !important;
}

#product-page .ps-page__right .caja_donacion .ps-product__thumbnail a {
  display: grid !important;
  min-height: 220px !important;
  place-items: center !important;
}

#product-page .ps-page__right .caja_donacion .ps-product__thumbnail a img {
  width: 100% !important;
  height: 220px !important;
  max-height: 220px !important;
  object-fit: cover !important;
  border-radius: 18px !important;
}

#product-page .ps-page__right .caja_donacion .ps-product__thumbnail .logo_causa {
  width: 150px !important;
  height: 150px !important;
  max-height: 150px !important;
  min-height: 150px !important;
  object-fit: contain !important;
}

#product-page .ps-page__right .cuadro_1 {
  overflow: visible !important;
}

#product-page .ps-page__right .caja_donacion .pm-product-support-media {
  display: grid !important;
  min-height: 220px !important;
  place-items: center !important;
}

#product-page .ps-page__right .caja_donacion .pm-product-support-media > img {
  width: 100% !important;
  height: 220px !important;
  max-height: 220px !important;
  object-fit: cover !important;
  border-radius: 18px !important;
}

#product-page .ps-page__right .caja_donacion .pm-product-support-media > .logo_causa {
  width: 150px !important;
  height: 150px !important;
  max-height: 150px !important;
  min-height: 150px !important;
  object-fit: contain !important;
}

#product-page .ps-page__right .pm-product-support-card {
  display: grid !important;
  gap: 16px !important;
  width: 100% !important;
  margin: 22px 0 0 !important;
  padding: 24px !important;
  border: 1px solid var(--pm-border) !important;
  border-radius: 22px !important;
  background: #ffffff !important;
  box-shadow: var(--pm-card-shadow) !important;
}

#product-page .ps-page__right .cuadro_1 > .pm-product-support-card:first-child {
  margin-top: 0 !important;
}

#product-page .ps-page__right .pm-product-support-card__content {
  display: grid !important;
  gap: 8px !important;
}

#product-page .ps-page__right .pm-product-support-card h3 {
  margin: 0 !important;
  color: var(--pm-navy) !important;
  font-family: "Segoe UI", system-ui, -apple-system, BlinkMacSystemFont, sans-serif !important;
  font-size: 24px !important;
  font-weight: 900 !important;
  line-height: 1.18 !important;
}

#product-page .ps-page__right .pm-product-support-card__title-link {
  font: inherit !important;
  color: inherit !important;
  text-decoration: none !important;
}

#product-page .ps-page__right .pm-product-support-card__title-link:hover,
#product-page .ps-page__right .pm-product-support-card__title-link:focus {
  color: var(--pm-blue) !important;
  text-decoration: none !important;
}

#product-page .ps-page__right .pm-product-support-card p {
  margin: 0 !important;
  color: var(--pm-muted) !important;
  font-size: 14px !important;
  line-height: 1.45 !important;
}

#product-page .ps-page__right .pm-product-support-card__amounts {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(48px, 0.85fr)) minmax(112px, 1.6fr) !important;
  align-items: flex-start !important;
  gap: 6px !important;
}

#product-page .ps-page__right .pm-product-support-card__amount,
#product-page .ps-page__right .pm-product-support-card__custom {
  height: 40px !important;
  min-height: 40px !important;
  border: 1px solid var(--pm-border) !important;
  border-radius: 16px !important;
  background: #ffffff !important;
  color: #2c6076 !important;
  font-size: 15px !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  box-shadow: none !important;
  transition: border-color 0.18s ease, box-shadow 0.18s ease, background 0.18s ease, color 0.18s ease !important;
}

#product-page .ps-page__right .pm-product-support-card__custom-wrap {
  display: flex !important;
  min-width: 0 !important;
  width: 100% !important;
  flex-direction: column !important;
}

#product-page .ps-page__right .pm-product-support-card__amount {
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  padding: 0 8px !important;
}

#product-page .ps-page__right .pm-product-support-card__amount.is-active,
#product-page .ps-page__right .pm-product-support-card__amount:hover {
  border-color: transparent !important;
  background: linear-gradient(135deg, var(--pm-blue), var(--pm-cyan)) !important;
  color: #ffffff !important;
  box-shadow: 0 10px 22px rgba(0, 137, 178, 0.18) !important;
}

#product-page .ps-page__right .pm-product-support-card__custom {
  width: 100% !important;
  min-width: 0 !important;
  padding: 0 10px !important;
}

#product-page .ps-page__right .pm-product-support-card__custom:focus,
#product-page .ps-page__right .pm-product-support-card__custom.is-active {
  border-color: var(--pm-cyan) !important;
  outline: 0 !important;
  box-shadow: 0 0 0 3px rgba(0, 166, 204, 0.14) !important;
}

#product-page .ps-page__right .pm-product-support-card__custom-wrap.is-invalid .pm-product-support-card__custom {
  border-color: var(--pm-border) !important;
  background: #ffffff !important;
  box-shadow: none !important;
}

#product-page .ps-page__right .pm-product-support-card__custom-wrap .pm-donation-custom-error {
  display: block !important;
  margin-top: 6px !important;
  padding: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: #ff0000 !important;
  font-family: var(--pm-font-sans) !important;
  font-size: 12px !important;
  font-weight: 400 !important;
  line-height: 16px !important;
  text-align: left !important;
  text-transform: none !important;
}

#product-page .ps-page__right .pm-product-support-card__custom-wrap .pm-donation-custom-error[hidden] {
  display: none !important;
}

#product-page .ps-page__right .pm-product-support-card__submit {
  display: inline-grid !important;
  width: 100% !important;
  height: 40px !important;
  place-items: center !important;
  border: 0 !important;
  border-radius: 16px !important;
  background: linear-gradient(135deg, var(--pm-blue), var(--pm-cyan)) !important;
  color: #ffffff !important;
  font-size: 15px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  text-align: center !important;
  box-shadow: 0 14px 28px rgba(0, 137, 178, 0.22) !important;
}

#product-page .ps-page__right .pm-product-support-card__submit:hover {
  background: linear-gradient(135deg, var(--pm-navy), var(--pm-blue)) !important;
  color: #ffffff !important;
}

#product-page .ps-page__right .btn_donation_goals {
  margin: 12px 0 0 !important;
}

#product-page .product_causas__more {
  display: inline-grid;
  width: 50px;
  height: 50px;
  margin-right: 10px;
  margin-left: -25px;
  place-items: center;
  border: 1px solid var(--pm-blue);
  border-radius: 50%;
  background: linear-gradient(135deg, var(--pm-blue), var(--pm-cyan));
  color: #ffffff !important;
  font-size: 18px;
  font-weight: 900;
  line-height: 1;
  text-decoration: none !important;
  box-shadow: 0 10px 22px rgba(2, 80, 110, 0.18);
  vertical-align: top;
}

#product-page .product_causas__more i {
  color: inherit !important;
  font-size: 18px;
  line-height: 1;
}

#product-page .product_causas__more:hover {
  color: #ffffff !important;
  background: linear-gradient(135deg, var(--pm-navy), var(--pm-blue));
}

@media (max-width: 991px) {
  #product-page .ps-page--product .ps-page__container {
    grid-template-columns: 1fr !important;
  }

  #product-page .ps-page__right {
    grid-column: 1 !important;
    grid-row: auto !important;
  }
}

body#product-page {
  overflow-x: clip !important;
  overflow-y: visible !important;
}

/* Product detail: Vercel two-column composition with sticky purchase rail. */
#product-page .ps-page--product .ps-page__container {
  display: grid !important;
  grid-template-columns: minmax(0, 1.06fr) minmax(390px, 0.94fr) !important;
  gap: 28px !important;
  align-items: start !important;
}

#product-page .ps-page--product .ps-page__left,
#product-page .ps-product--detail.ps-product--fullwidth,
#product-page .ps-product--detail.ps-product--fullwidth > .ps-product__header {
  display: contents !important;
}

#product-page .ps-product--detail .ps-product__thumbnail.imagen_producto_interna {
  grid-column: 1 !important;
  grid-row: 1 !important;
}

#product-page .pm-product-right-rail {
  grid-column: 2 !important;
  grid-row: 1 / span 2 !important;
  position: sticky !important;
  top: var(--pm-product-rail-top, 96px) !important;
  z-index: 2;
  display: flex !important;
  flex-direction: column !important;
  align-self: start !important;
  gap: 28px !important;
  min-width: 0 !important;
  max-height: none !important;
  overflow: visible !important;
  overflow-y: visible !important;
  scrollbar-width: none;
}

#product-page .pm-product-right-rail::-webkit-scrollbar {
  display: none;
}

#product-page .pm-product-right-rail > .ps-product__info {
  grid-column: auto !important;
  grid-row: auto !important;
  position: static !important;
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  flex: 0 0 auto !important;
  margin: 0 !important;
}

#product-page .ps-product--detail > .ps-product__content {
  grid-column: 1 !important;
  grid-row: 2 !important;
}

#product-page .ps-page__right {
  grid-column: 2 !important;
  grid-row: 3 !important;
  position: static !important;
  display: block !important;
  width: 100% !important;
  margin: 0 !important;
}

#product-page .pm-product-related-rail {
  margin-top: 0 !important;
  padding: 24px !important;
  border: 1px solid var(--pm-border) !important;
  border-radius: 24px !important;
  background: rgba(255, 255, 255, 0.94) !important;
  box-shadow: var(--pm-card-shadow) !important;
  overflow: visible !important;
}

#product-page .pm-product-related-rail h3 {
  margin: 0 0 14px !important;
  color: var(--pm-navy) !important;
  font-family: var(--pm-font-sans) !important;
  font-size: 18px !important;
  font-weight: 900 !important;
  line-height: 1.2 !important;
  letter-spacing: 0 !important;
}

#product-page .pm-product-related-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 12px !important;
}

#product-page .pm-product-related-card {
  display: flex !important;
  min-width: 0 !important;
  flex-direction: column !important;
  gap: 10px !important;
}

#product-page .pm-product-related-card__image {
  display: grid !important;
  width: 100% !important;
  aspect-ratio: 1 / 1 !important;
  height: auto !important;
  place-items: center !important;
  overflow: hidden !important;
  border: 1px solid var(--pm-border) !important;
  border-radius: 10px !important;
  background: #ffffff !important;
}

#product-page .pm-product-related-card__image img {
  width: 100% !important;
  height: 100% !important;
  padding: 12px !important;
  object-fit: contain !important;
}

#product-page .pm-product-related-card__title {
  display: -webkit-box !important;
  overflow: hidden !important;
  color: var(--pm-navy) !important;
  font-family: var(--pm-font-sans) !important;
  font-size: 14px !important;
  font-weight: 900 !important;
  line-height: 1.18 !important;
  min-height: 50px !important;
  text-decoration: none !important;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}

#product-page .pm-product-related-card__title:hover {
  color: var(--pm-blue) !important;
}

#product-page .pm-product-related-card__footer {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 12px !important;
  margin-top: auto !important;
}

#product-page .pm-product-related-card__footer span {
  color: var(--pm-muted) !important;
  font-size: 13px !important;
  font-weight: 700 !important;
}

#product-page .pm-product-related-card__add {
  display: inline-flex !important;
  min-width: 68px !important;
  min-height: 44px !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 18px !important;
  border-radius: var(--pm-pill-radius) !important;
  color: #ffffff !important;
  background: linear-gradient(90deg, var(--pm-blue), var(--pm-cyan)) !important;
  font-size: 14px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  text-decoration: none !important;
  box-shadow: 0 14px 28px rgba(5, 126, 162, 0.2) !important;
}

#product-page .pm-product-related-card__add:hover {
  color: #ffffff !important;
  transform: translateY(-1px);
}

#product-page .ps-page__right .caja_donacion .ps-product__thumbnail a img {
  height: 306px !important;
  max-height: 306px !important;
}

#product-page .ps-page__right .btn_donation_goals,
#product-page .ps-page__right .btn_donation_goals a {
  min-height: 62px !important;
  font-size: 15px !important;
}

@media (max-width: 991px) {
  #product-page .ps-page--product .ps-page__container {
    grid-template-columns: 1fr !important;
  }

  #product-page .ps-product--detail .ps-product__thumbnail.imagen_producto_interna,
  #product-page .pm-product-right-rail,
  #product-page .ps-product--detail > .ps-product__content,
  #product-page .ps-page__right {
    grid-column: 1 !important;
    grid-row: auto !important;
  }

  #product-page .pm-product-right-rail {
    position: static !important;
  }
}

@media (max-width: 575px) {
  #product-page .pm-product-related-grid {
    grid-template-columns: 1fr !important;
  }

  #product-page .pm-product-related-card {
    gap: 10px !important;
  }

  #product-page .pm-product-related-card__image {
    width: 100% !important;
    aspect-ratio: 1 / 1 !important;
  }

  #product-page .ps-page__right .caja_donacion .ps-product__thumbnail a img {
    height: 220px !important;
    max-height: 220px !important;
  }
}

/* Product detail: make the product block itself the sticky container. */
#product-page .ps-page--product .ps-page__container {
  display: block !important;
}

#product-page .ps-page--product .ps-page__left {
  display: block !important;
  width: 100% !important;
}

#product-page .ps-product--detail.ps-product--fullwidth {
  display: grid !important;
  grid-template-columns: minmax(0, 1.06fr) minmax(390px, 0.94fr) !important;
  gap: 28px !important;
  align-items: start !important;
}

#product-page .ps-product--detail.ps-product--fullwidth > .ps-product__header {
  display: block !important;
  grid-column: 1 !important;
  grid-row: 1 !important;
  width: 100% !important;
  margin: 0 !important;
}

#product-page .ps-product--detail .ps-product__header > .ps-product__thumbnail.imagen_producto_interna {
  width: 100% !important;
  max-width: none !important;
}

#product-page .pm-product-right-rail {
  grid-column: 2 !important;
  grid-row: 1 / span 2 !important;
}

#product-page .ps-product--detail > .ps-product__content {
  grid-column: 1 !important;
  grid-row: 2 !important;
}

#product-page .ps-page--product .ps-page__right {
  width: calc((100% - 28px) * 0.47) !important;
  max-width: none !important;
  margin-top: 28px !important;
  margin-left: calc(((100% - 28px) * 0.53) + 28px) !important;
}

#product-page .pm-product-right-rail > .ps-page__right {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
}

@media (max-width: 991px) {
  #product-page .ps-product--detail.ps-product--fullwidth {
    grid-template-columns: 1fr !important;
  }

  #product-page .ps-product--detail.ps-product--fullwidth > .ps-product__header,
  #product-page .pm-product-right-rail,
  #product-page .ps-product--detail > .ps-product__content {
    grid-column: 1 !important;
    grid-row: auto !important;
  }

  #product-page .ps-page--product .ps-page__right {
    width: 100% !important;
    margin-left: 0 !important;
  }
}

/* Product detail: Vercel Product & cause details card. */
#product-page .pm-product-detail-card {
  padding: 24px 20px 22px !important;
}

#product-page .pm-product-detail-card__header {
  margin-bottom: 18px;
}

#product-page .pm-product-detail-card__header h2 {
  margin: 0 0 6px !important;
  color: var(--pm-navy) !important;
  font-family: var(--pm-font-sans) !important;
  font-size: 18px !important;
  font-weight: 900 !important;
  line-height: 1.2 !important;
  letter-spacing: 0 !important;
}

#product-page .pm-product-detail-card__header p {
  margin: 0 !important;
  color: var(--pm-muted) !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
}

#product-page .pm-product-detail-card__meta {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  margin-bottom: 22px;
}

#product-page .pm-product-detail-card__meta article {
  min-width: 0;
  padding: 16px;
  border: 1px solid var(--pm-border);
  border-radius: 16px;
  background: #ffffff;
}

#product-page .pm-product-detail-card__meta span,
#product-page .pm-product-detail-card__about-label {
  display: block;
  color: var(--pm-blue);
  font-size: 10px;
  font-weight: 900;
  line-height: 1.2;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

#product-page .pm-product-detail-card__meta h3 {
  margin: 8px 0 6px !important;
  color: var(--pm-navy) !important;
  font-family: var(--pm-font-sans) !important;
  font-size: 15px !important;
  font-weight: 900 !important;
  line-height: 1.25 !important;
}

#product-page .pm-product-detail-card__meta p {
  margin: 0 !important;
  color: var(--pm-muted) !important;
  font-size: 12px !important;
  line-height: 1.45 !important;
}

#product-page .pm-product-detail-card__about-label {
  margin: 0;
  padding-top: 22px;
  border-top: 1px solid var(--pm-border);
}

#product-page .pm-product-detail-card > .ps-tabs {
  margin-top: 14px !important;
}

#product-page .pm-product-detail-card > .ps-tabs .ps-document {
  padding-left: 18px !important;
  border-left: 2px solid #b8deee !important;
}

#product-page .pm-product-detail-card > .ps-tabs .ck-content,
#product-page .pm-product-detail-card > .ps-tabs .ck-content p,
#product-page .pm-product-detail-card > .ps-tabs .ck-content li {
  color: var(--pm-navy) !important;
  font-size: 14px !important;
  line-height: 1.7 !important;
}

#product-page .pm-product-detail-card > .ps-tabs .ck-content ul,
#product-page .pm-product-detail-card > .ps-tabs .ck-content ol {
  margin: 0 !important;
  padding-left: 18px !important;
}

#product-page .pm-product-detail-card > .ps-tabs .ck-content li {
  margin-bottom: 2px !important;
}

#product-page .pm-product-detail-card__pills {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 16px;
}

#product-page .pm-product-detail-card__pills span {
  display: inline-flex;
  min-height: 28px;
  align-items: center;
  padding: 6px 13px;
  border: 1px solid var(--pm-border);
  border-radius: 999px;
  color: var(--pm-navy);
  background: #ffffff;
  font-size: 12px;
  font-weight: 700;
  line-height: 1;
}

#product-page .pm-product-detail-card > .ps-product__sharing {
  margin-top: 22px !important;
}

#product-page .ps-product--detail .ps-product__thumbnail.imagen_producto_interna,
#product-page .pm-product-right-rail > .ps-product__info,
#product-page .pm-product-related-rail,
#product-page .pm-product-detail-card,
#product-page .ps-page__right .caja_donacion {
  box-shadow: none !important;
}

#product-page .pm-product-right-rail > .ps-product__info {
  height: auto !important;
  min-height: 0 !important;
  align-self: start !important;
  padding-bottom: 28px !important;
}

#product-page .pm-product-right-rail > .ps-product__info form,
#product-page .pm-product-right-rail > .ps-product__info .add-to-cart-form {
  margin-bottom: 0 !important;
}

#product-page .pm-product-right-rail .ps-product__shopping {
  grid-template-columns: max-content max-content max-content auto !important;
  gap: 12px !important;
  align-items: end !important;
  margin: 22px 0 0 !important;
}

#product-page .pm-product-right-rail .ps-product__shopping > button.ps-btn {
  margin-top: 24px !important;
}

#product-page .pm-product-right-rail .ps-product__shopping > button.ps-btn[name="add_to_cart"] {
  min-width: 72px !important;
  padding: 0 22px !important;
}

#product-page .pm-product-share-button {
  display: inline-flex !important;
  width: auto !important;
  height: 48px !important;
  min-width: 106px !important;
  min-height: 48px !important;
  align-self: end !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 10px !important;
  box-sizing: border-box !important;
  margin: 0 !important;
  padding: 0 20px !important;
  border: 1px solid var(--pm-border) !important;
  border-radius: 999px !important;
  background: #ffffff !important;
  color: var(--pm-blue) !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  text-decoration: none !important;
  box-shadow: none !important;
}

#product-page .pm-product-share-button svg {
  width: 18px !important;
  height: 18px !important;
  fill: none !important;
  stroke: currentColor !important;
  stroke-width: 2.2 !important;
  stroke-linecap: round !important;
  stroke-linejoin: round !important;
}

#product-page .pm-product-share-button:hover {
  border-color: var(--pm-blue) !important;
  background: #f6fcff !important;
  color: var(--pm-navy) !important;
}

/* Product detail gallery: Vercel-style main image card with thumbnails below. */
#product-page .ps-product--detail .ps-product__thumbnail.imagen_producto_interna {
  overflow: visible !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
}

#product-page .bb-product-gallery-wrapper,
#product-page .bb-product-gallery {
  width: 100% !important;
}

#product-page .bb-product-gallery-images {
  aspect-ratio: 1 / 1 !important;
  width: 100% !important;
  height: auto !important;
  overflow: hidden !important;
  border: 1px solid var(--pm-border) !important;
  border-radius: 24px !important;
  background: #ffffff !important;
}

#product-page .bb-product-gallery-images a {
  display: grid !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  place-items: center !important;
  background: #ffffff !important;
}

#product-page .bb-product-gallery-images img {
  width: 82% !important;
  height: 82% !important;
  max-width: 82% !important;
  max-height: 82% !important;
  padding: 0 !important;
  object-fit: contain !important;
}

#product-page .bb-product-gallery-thumbnails {
  margin-top: 18px !important;
}

#product-page .bb-product-gallery-thumbnails .slick-list,
#product-page .bb-product-gallery-thumbnails .slick-track {
  height: 148px !important;
}

#product-page .bb-product-gallery-thumbnails .slick-track {
  display: flex !important;
  gap: 12px !important;
  width: max-content !important;
  transform: none !important;
}

#product-page .bb-product-gallery-thumbnails .slick-slide {
  width: 148px !important;
  height: 148px !important;
  margin: 0 !important;
}

#product-page .bb-product-gallery-thumbnails img {
  width: 148px !important;
  height: 148px !important;
  padding: 10px !important;
  border: 1px solid var(--pm-border) !important;
  border-radius: 10px !important;
  background: #ffffff !important;
  object-fit: contain !important;
}

#product-page .bb-product-gallery-thumbnails .slick-current img,
#product-page .bb-product-gallery-thumbnails .slick-active.slick-current img {
  border: 2px solid var(--pm-blue) !important;
  padding: 9px !important;
}

/* Product detail breadcrumb, matching the Vercel product page. */
#product-page .ps-breadcrumb {
  display: block !important;
  padding: 24px 0 12px !important;
  border-top: 1px solid var(--pm-border);
  background: transparent !important;
}

#product-page .ps-breadcrumb .ps-container {
  max-width: 1280px !important;
  padding-right: 24px !important;
  padding-left: 24px !important;
}

#product-page .ps-breadcrumb .breadcrumb-custom {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  gap: 7px !important;
  padding: 0 !important;
  color: var(--pm-muted) !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  line-height: 18px !important;
}

.ps-breadcrumb .pm-product-breadcrumb {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  gap: 7px !important;
  padding: 0 !important;
  color: var(--pm-muted) !important;
  font-family: var(--pm-font-sans) !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  line-height: 18px !important;
}

#product-page .ps-breadcrumb .breadcrumb-custom a,
#product-page .ps-breadcrumb .breadcrumb-custom span,
.ps-breadcrumb .pm-product-breadcrumb a,
.ps-breadcrumb .pm-product-breadcrumb span {
  color: var(--pm-muted) !important;
  font-size: inherit !important;
  font-weight: inherit !important;
  text-decoration: none !important;
}

#product-page .ps-breadcrumb .breadcrumb-custom a:hover {
  color: var(--pm-blue) !important;
}

#product-page .ps-breadcrumb .breadcrumb-custom strong {
  color: var(--pm-navy) !important;
  font-size: inherit !important;
  font-weight: 900 !important;
}

.ps-breadcrumb .pm-product-breadcrumb strong {
  color: var(--pm-navy) !important;
  font-size: inherit !important;
  font-weight: 900 !important;
}

#product-page .ps-page--product {
  padding-top: 0 !important;
}

@media (max-width: 575px) {
  #product-page .pm-product-detail-card__meta {
    grid-template-columns: 1fr;
  }
}

/* Vercel-style global site header. Kept at the end to beat legacy Martfury/adverweb header rules. */
.pm-site-header.header.header--1 {
  position: sticky !important;
  top: 0;
  z-index: 90;
  min-height: 65px !important;
  border-bottom: 1px solid #d9ebf8 !important;
  background: rgba(255, 255, 255, 0.98) !important;
  box-shadow: none !important;
  backdrop-filter: blur(18px);
}

.pm-site-header .pm-site-header__inner.ps-container {
  box-sizing: border-box;
  display: flex !important;
  width: 100%;
  max-width: 1320px !important;
  min-height: 64px !important;
  align-items: center !important;
  gap: 12px;
  margin: 0 auto !important;
  padding: 0 24px !important;
}

.pm-site-header__menu,
.pm-site-header .header__extra,
.pm-site-header__icon {
  display: inline-grid !important;
  width: 40px !important;
  height: 40px !important;
  min-width: 40px !important;
  min-height: 40px !important;
  place-items: center;
  padding: 0 !important;
  border: 1px solid #dbeafe !important;
  border-radius: 999px !important;
  background: #ffffff !important;
  color: #0b3454 !important;
  line-height: 24px !important;
  text-decoration: none !important;
  box-shadow: none !important;
}

.pm-site-header .header__extra > i,
.pm-site-header__icon i {
  margin: 0 !important;
  color: #082843 !important;
  font-size: 17px !important;
  line-height: 1 !important;
}

.pm-site-header .pm-header-action-icon,
.pm-site-header__icon svg.pm-header-action-icon {
  display: block !important;
  width: 16px !important;
  height: 16px !important;
  margin: 0 !important;
  color: currentColor !important;
  fill: none !important;
  stroke: currentColor !important;
  stroke-width: 2 !important;
  stroke-linecap: round !important;
  stroke-linejoin: round !important;
}

.pm-header-menu-icon {
  display: block !important;
  width: 20px !important;
  height: 20px !important;
  color: currentColor !important;
  fill: none !important;
  stroke: currentColor !important;
  stroke-width: 2 !important;
  stroke-linecap: round !important;
  stroke-linejoin: round !important;
}

.pm-site-header__menu:hover,
.pm-site-header .header__extra:hover,
.pm-site-header__icon:hover {
  border-color: #057ea2 !important;
  color: #057ea2 !important;
  background: #ffffff !important;
}

.pm-site-header .header__extra:hover > i,
.pm-site-header__icon:hover i {
  color: #057ea2 !important;
}

.pm-site-header__logo {
  display: inline-flex !important;
  flex: 0 0 auto;
  align-items: center;
  margin: 0 !important;
  padding: 0 !important;
}

.pm-site-header__logo img,
.pm-site-header.header.header--1 .ps-logo img {
  display: block;
  width: auto !important;
  height: 40px !important;
  max-width: 214px !important;
  max-height: 40px !important;
  object-fit: contain;
}

.pm-site-header__nav {
  display: flex;
  flex: 0 1 auto;
  align-items: center;
  justify-content: flex-start;
  min-width: 0;
  margin-right: auto;
  margin-left: 24px;
}

.pm-site-header__menu-list,
.pm-site-header__nav > .menu {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start;
  gap: 4px !important;
  min-width: 0;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

.pm-site-header__menu-list > li,
.pm-site-header__nav > .menu > li {
  margin: 0 !important;
  padding: 0 !important;
}

.pm-site-header__menu-list > li > a,
.pm-site-header__nav > .menu > li > a {
  display: block !important;
  min-height: auto !important;
  padding: 6px 12px !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: transparent !important;
  color: #102a43 !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  line-height: 20px !important;
  text-decoration: none !important;
  white-space: nowrap;
  transition: background-color 0.15s ease, color 0.15s ease;
}

.pm-site-header.header.header--1 .pm-site-header__menu-list > li > a,
.pm-site-header.header.header--1 .pm-site-header__nav > .menu > li > a {
  color: #102a43 !important;
  font-family: var(--pm-font-sans) !important;
}

.pm-site-header__menu-list > li > a:hover,
.pm-site-header__menu-list > li.current-menu-item > a,
.pm-site-header__nav > .menu > li > a:hover,
.pm-site-header__nav > .menu > li.current-menu-item > a {
  background: #eef8fb !important;
  color: #0b3454 !important;
}

.pm-site-header.header.header--1 .pm-site-header__menu-list > li > a:hover,
.pm-site-header.header.header--1 .pm-site-header__menu-list > li.current-menu-item > a,
.pm-site-header.header.header--1 .pm-site-header__nav > .menu > li > a:hover,
.pm-site-header.header.header--1 .pm-site-header__nav > .menu > li.current-menu-item > a {
  background: #eef8fb !important;
  color: #0b3454 !important;
}

.pm-site-header__nav .sub-toggle {
  display: none !important;
}

.pm-site-header__nav .sub-menu,
.pm-site-header__nav .mega-menu {
  border: 1px solid #d7e9f8 !important;
  border-radius: 16px !important;
  box-shadow: 0 18px 40px rgba(2, 80, 110, 0.12) !important;
}

.pm-site-header__actions {
  display: inline-flex !important;
  flex: 0 0 auto;
  align-items: center !important;
  justify-content: flex-end;
  gap: 8px;
  margin-left: auto;
}

.pm-site-header__cart {
  display: inline-flex;
  position: relative;
}

.pm-site-header .header__extra span {
  top: auto !important;
  right: -5px !important;
  bottom: -5px !important;
  display: grid !important;
  min-width: 20px !important;
  height: 20px !important;
  place-items: center;
  border: 2px solid #ffffff !important;
  border-radius: 999px !important;
  background: #1fa6d8 !important;
  color: #ffffff !important;
}

.pm-site-header .header__extra span i {
  color: #ffffff !important;
  font-size: 10px !important;
  font-style: normal;
  font-weight: 800;
  line-height: 1 !important;
}

.pm-site-header__join {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 8px 16px !important;
  border: 1px solid transparent !important;
  border-radius: 999px !important;
  background: linear-gradient(90deg, var(--pm-blue), var(--pm-cyan)) !important;
  color: #ffffff !important;
  font-family: var(--pm-font-sans) !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  line-height: 20px !important;
  letter-spacing: normal !important;
  text-decoration: none !important;
  text-transform: none !important;
  box-shadow: 0 14px 30px rgba(5, 126, 162, 0.25);
  transition: transform 0.15s ease, box-shadow 0.15s ease, opacity 0.15s ease;
  white-space: nowrap;
  word-spacing: 0 !important;
}

.pm-site-header__join:hover {
  transform: translateY(-1px);
  background: linear-gradient(90deg, var(--pm-blue), var(--pm-cyan)) !important;
  color: #ffffff !important;
}

@media (max-width: 1199px) {
  .pm-site-header.header.header--1 {
    display: none !important;
  }
}

@media (max-width: 1320px) {
  .pm-site-header .pm-site-header__inner.ps-container {
    max-width: none !important;
    padding-right: 24px !important;
    padding-left: 24px !important;
  }

  .pm-site-header__menu-list,
  .pm-site-header__nav > .menu {
    gap: 4px !important;
  }

  .pm-site-header__nav {
    margin-left: 24px;
  }
}

.header--mobile {
  width: 100% !important;
  max-width: 100% !important;
  overflow: hidden;
  min-height: 65px !important;
  border-bottom: 1px solid #d9ebf8 !important;
  background: rgba(255, 255, 255, 0.98) !important;
  box-shadow: none !important;
}

.header--mobile .navigation--mobile {
  display: flex !important;
  position: relative;
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box;
  min-height: 64px !important;
  align-items: center !important;
  justify-content: space-between !important;
  padding: 0 16px !important;
  background: transparent !important;
}

.header--mobile .navigation__left {
  display: inline-flex !important;
  flex: 1 1 auto;
  align-items: center !important;
  gap: 12px;
  min-width: 0;
  padding-right: 54px;
}

.header--mobile .navigation__right {
  display: none !important;
  position: fixed;
  top: 12px;
  right: 16px;
  z-index: 95;
  flex: 0 0 auto;
  align-items: center !important;
  justify-content: flex-end;
}

.pm-mobile-header__cart {
  display: inline-grid !important;
  position: static;
  z-index: 96;
  width: 40px !important;
  height: 40px !important;
  min-width: 40px !important;
  min-height: 40px !important;
  place-items: center;
  padding: 0 !important;
  border: 1px solid #d7e9f8 !important;
  border-radius: 999px !important;
  background: #ffffff !important;
  color: #082843 !important;
  text-decoration: none !important;
}

.pm-mobile-header__join {
  display: inline-flex !important;
  position: static;
  z-index: 96;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px;
  padding: 8px 12px !important;
  border: 1px solid transparent !important;
  border-radius: 999px !important;
  background: linear-gradient(90deg, var(--pm-blue), var(--pm-cyan)) !important;
  color: #ffffff !important;
  font-family: var(--pm-font-sans) !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  line-height: 18.6667px !important;
  letter-spacing: normal !important;
  text-decoration: none !important;
  text-transform: none !important;
  white-space: nowrap !important;
  word-spacing: 0 !important;
  box-shadow: 0 14px 30px rgba(5, 126, 162, 0.25);
  transition: transform 0.15s ease, box-shadow 0.15s ease, opacity 0.15s ease;
}

.pm-mobile-header__join:hover {
  transform: translateY(-1px);
  background: linear-gradient(90deg, var(--pm-blue), var(--pm-cyan)) !important;
  color: #ffffff !important;
  text-decoration: none !important;
}

.pm-mobile-header__cart > i {
  color: #082843 !important;
  font-size: 17px !important;
  line-height: 1 !important;
}

.pm-mobile-header__cart > span {
  position: absolute;
  right: -5px;
  bottom: -5px;
  display: grid;
  min-width: 20px;
  height: 20px;
  place-items: center;
  border: 2px solid #ffffff;
  border-radius: 999px;
  background: #1fa6d8;
}

.pm-mobile-header__cart > span i {
  color: #ffffff !important;
  font-size: 10px;
  font-style: normal;
  font-weight: 800;
  line-height: 1;
}

.pm-mobile-header__menu,
.header--mobile .header__extra,
.header--mobile .ps-block--user-header .ps-block__left {
  display: inline-grid !important;
  width: 40px !important;
  height: 40px !important;
  min-width: 40px !important;
  min-height: 40px !important;
  place-items: center;
  padding: 0 !important;
  border: 1px solid #dbeafe !important;
  border-radius: 999px !important;
  background: #ffffff !important;
  color: #0b3454 !important;
  line-height: 24px !important;
  text-decoration: none !important;
}

.header--mobile .header__extra > i,
.header--mobile .ps-block--user-header i {
  margin: 0 !important;
  color: #082843 !important;
  font-size: 17px !important;
  line-height: 1 !important;
}

.header--mobile .ps-logo {
  display: inline-flex !important;
  align-items: center;
  min-width: 0;
  margin: 0 !important;
}

.header--mobile .ps-logo img {
  width: auto !important;
  height: auto !important;
  max-width: 149.167px !important;
  max-height: 40px !important;
  object-fit: contain;
}

@media (min-width: 768px) and (max-width: 1199px) {
  .header--mobile .ps-logo img {
    height: auto !important;
    max-width: 149.167px !important;
    max-height: 40px !important;
  }
}

.header--mobile .header__actions {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px;
}

.header--mobile .header__actions > * {
  margin: 0 !important;
}

.header--mobile .ps-cart--mini {
  display: inline-flex !important;
  position: static !important;
  width: 40px !important;
  height: 40px !important;
  overflow: visible !important;
}

.header--mobile .ps-cart--mini > .btn-shopping-cart {
  display: inline-grid !important;
  visibility: visible !important;
  opacity: 1 !important;
}

.header--mobile .ps-cart--mini .ps-cart--mobile {
  display: none !important;
}

/* Product section tabs: Vercel-style compact pills. */
.ps-product-list .ps-section__header {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 18px;
  border: 0 !important;
  background: transparent !important;
}

.ps-product-list .ps-section__header h3,
.ps-product-list .ps-section__header .title_site {
  margin: 0 !important;
  color: var(--pm-navy) !important;
  font-size: 26px !important;
  font-weight: 500 !important;
  letter-spacing: 0 !important;
  line-height: 1.2 !important;
}

.ps-product-list .ps-section__links {
  display: inline-flex !important;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-end;
  gap: 8px !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

.ps-product-list .ps-section__links li,
.ps-product-list .ps-section__links li.nav-item {
  margin: 0 !important;
  padding: 0 !important;
}

.ps-product-list .ps-section__links li a,
.ps-product-list .ps-section__links li.nav-item a {
  display: inline-flex !important;
  min-height: 44px !important;
  align-items: center;
  justify-content: center;
  margin: 0 !important;
  padding: 12px 22px !important;
  border: 1px solid transparent !important;
  border-radius: 999px !important;
  background: linear-gradient(90deg, #0588b8 0%, #35aee0 100%) !important;
  color: #ffffff !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  text-decoration: none !important;
  white-space: nowrap;
  box-shadow: 0 14px 30px rgba(5, 126, 162, 0.22) !important;
  transition: background 0.15s ease, border-color 0.15s ease, color 0.15s ease, transform 0.15s ease;
}

.ps-product-list .ps-section__links li a.active,
.ps-product-list .ps-section__links li.nav-item a.active,
.ps-product-list .ps-section__links li.active a,
.ps-product-list .ps-section__links li a:hover,
.ps-product-list .ps-section__links li.nav-item a:hover {
  border-color: transparent !important;
  background: linear-gradient(90deg, #057ea2 0%, #45b1e1 100%) !important;
  color: #ffffff !important;
  transform: translateY(-1px);
}

@media (max-width: 767px) {
  .ps-product-list .ps-section__header {
    align-items: flex-start !important;
    flex-direction: column !important;
  }

  .ps-product-list .ps-section__links {
    justify-content: flex-start !important;
  }
}

.pm-featured-products {
  max-width: 1280px;
  margin: 0 auto !important;
  padding: 40px 24px 48px !important;
}

.pm-featured-products .ps-container {
  max-width: none !important;
  padding: 0 !important;
}

.pm-featured-products__header {
  align-items: flex-end !important;
  margin-bottom: 0px !important;
  padding: 0 !important;
}

.pm-featured-products .pm-featured-products__header h3,
.pm-featured-products .pm-featured-products__header .title_site {
  margin: 0 !important;
  color: var(--pm-navy) !important;
  font-family: var(--pm-font-sans) !important;
  font-size: 30px !important;
  font-weight: 800 !important;
  letter-spacing: -0.01em !important;
  line-height: 36px !important;
}

.pm-featured-products__header p {
  margin: 4px 0 0 !important;
  color: var(--pm-muted) !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  line-height: 20px !important;
}

.pm-featured-products__view-all {
  display: block !important;
  min-height: 0 !important;
  margin-top: 0 !important;
  margin-right: 4px !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: #102a43 !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  line-height: 20px !important;
  text-decoration: none !important;
  white-space: nowrap;
}

.pm-featured-products__view-all:hover {
  color: var(--pm-blue) !important;
  transform: none !important;
}

.pm-featured-products__grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
}

.pm-featured-products__grid > .ps-product {
  min-width: 0;
}

.pm-featured-products .ps-product:not(.ps-product--wide):not(.ps-product--detail):not(.ps-product--cart):not(.ps-product--cart-mobile):not(.ps-product--search-result):not(.ps-product--header-sticky) {
  min-height: 464px;
}

.pm-featured-products .ps-product:not(.ps-product--wide):not(.ps-product--detail):not(.ps-product--cart):not(.ps-product--cart-mobile):not(.ps-product--search-result):not(.ps-product--header-sticky) .ps-product__title {
  color: var(--pm-navy) !important;
}

.pm-featured-products .ps-product:not(.ps-product--wide):not(.ps-product--detail):not(.ps-product--cart):not(.ps-product--cart-mobile):not(.ps-product--search-result):not(.ps-product--header-sticky) .ps-product__title:hover {
  color: var(--pm-blue) !important;
}

@media (max-width: 1199px) {
  .pm-featured-products__grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 767px) {
  .pm-featured-products {
    padding: 34px 16px 42px !important;
  }

  .pm-featured-products__header {
    gap: 10px !important;
  }

  .pm-featured-products__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 575px) {
  .pm-featured-products__grid {
    grid-template-columns: 1fr;
  }
}

.pm-give-section {
  max-width: 1280px;
  margin: 0 auto;
  padding: 40px 24px;
}

.pm-give-section__header {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 18px;
  margin-bottom: 24px;
}

.pm-give-section__header h2 {
  margin: 0 !important;
  color: var(--pm-navy) !important;
  font-family: var(--pm-font-sans) !important;
  font-size: 30px !important;
  font-weight: 800 !important;
  letter-spacing: -0.01em !important;
  line-height: 36px !important;
}

.pm-give-section__header p {
  max-width: 640px;
  margin: 4px 0 0 !important;
  color: var(--pm-muted) !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  line-height: 20px !important;
}

.pm-give-section__header > a {
  display: inline-flex;
  align-items: center;
  color: var(--pm-navy) !important;
  font-size: 14px;
  font-weight: 800;
  line-height: 20px;
  text-decoration: none !important;
  white-space: nowrap;
}

.pm-give-section__header > a:hover {
  color: var(--pm-blue) !important;
}

.pm-give-section__grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
  align-items: stretch;
}

.pm-give-card.pm-card {
  display: flex;
  min-height: 100%;
  flex-direction: column;
  overflow: hidden;
  padding: 12px;
  border: 1px solid var(--pm-border);
  border-radius: 24px;
  background: rgba(255, 255, 255, 0.94);
  box-shadow: var(--pm-card-shadow);
  transition: transform 0.15s ease, box-shadow 0.15s ease;
}

.pm-give-card:hover {
  transform: translateY(-2px);
  box-shadow: var(--pm-soft-shadow);
}

.pm-give-card__media {
  position: relative;
  display: block;
  flex: 0 0 auto;
  aspect-ratio: 4 / 3;
  overflow: hidden;
  border: 1px solid var(--pm-border);
  border-radius: 18px;
  background: #ffffff;
}

.pm-give-card__media::after {
  position: absolute;
  inset: 0;
  border-radius: 17px;
  background: linear-gradient(180deg, transparent 50%, rgba(8, 40, 67, 0.22));
  content: "";
  pointer-events: none;
}

.pm-give-card__media > img {
  display: block;
  width: 100%;
  height: 100%;
  border-radius: 17px;
  object-fit: cover;
  object-position: center;
}

.pm-give-section .pm-give-card.pm-card {
  height: 100%;
  min-height: 372px;
  padding: 0;
  background: #ffffff;
}

.pm-give-section .pm-give-card__media {
  height: 221px;
  aspect-ratio: auto;
  overflow: visible;
  border: 0;
  border-radius: 24px 24px 0 0;
  background: transparent;
}

.pm-give-section .pm-give-card__media::after {
  border-radius: 24px 24px 0 0;
}

.pm-give-section .pm-give-card__media > img {
  min-height: 100%;
  border-radius: 24px 24px 0 0;
}

.pm-give-section .pm-give-card__media > span {
  right: 12px;
  bottom: -22px;
  width: 80px;
  height: 80px;
  padding: 6px;
}

.pm-give-section .pm-give-card__body {
  padding: 34px 12px 14px;
}

.pm-give-card__media > span {
  position: absolute;
  right: 12px;
  bottom: 12px;
  z-index: 2;
  display: grid;
  width: 76px;
  height: 76px;
  place-items: center;
  padding: 7px;
  overflow: hidden;
  border: 2px solid #ffffff;
  border-radius: 16px;
  background: #ffffff;
  box-shadow: var(--pm-soft-shadow);
}

.pm-give-card__media > span img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.pm-give-card__body {
  display: flex;
  flex: 1;
  flex-direction: column;
  gap: 8px;
  padding: 18px 12px 12px;
}

.pm-give-card__body h3 {
  margin: 0 !important;
  color: var(--pm-navy) !important;
  font-family: var(--pm-font-sans) !important;
  font-size: 16px !important;
  font-weight: 800 !important;
  line-height: 20px !important;
}

.pm-give-card__body a:hover h3 {
  color: var(--pm-blue) !important;
}

.pm-give-card__location {
  margin: 0 !important;
  color: var(--pm-blue) !important;
  font-size: 11px !important;
  font-weight: 500 !important;
  line-height: 16px !important;
}

.pm-give-card__body > p:not(.pm-give-card__location) {
  margin: 0 !important;
  color: var(--pm-muted) !important;
  font-size: 12px !important;
  font-weight: 400 !important;
  line-height: 18px !important;
}

.pm-give-card__body > div {
  margin-top: auto;
  padding-top: 12px;
}

.pm-give-card__button {
  display: inline-flex !important;
  min-height: 32px;
  align-items: center;
  justify-content: center;
  padding: 7px 16px !important;
  border: 1px solid var(--pm-border) !important;
  border-radius: 999px !important;
  background: #ffffff !important;
  color: var(--pm-blue) !important;
  font-size: 12px !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  text-decoration: none !important;
}

.pm-give-card__button:hover {
  border-color: var(--pm-blue) !important;
  color: var(--pm-navy) !important;
}

.page-donations {
  max-width: 1280px !important;
  margin: 0 auto !important;
  padding: 28px 24px 48px !important;
}

.page-donations .ps-store-list,
.page-donations .ps-section__content {
  padding: 0 !important;
  background: transparent !important;
}

.page-donations .ps-section__header {
  display: flex !important;
  align-items: flex-end !important;
  justify-content: space-between !important;
  gap: 18px !important;
  margin: 0 0 24px !important;
  padding: 0 !important;
  border: 0 !important;
}

.page-donations .ps-section__header .title_site {
  margin: 0 !important;
  color: var(--pm-navy) !important;
  font-family: var(--pm-font-sans) !important;
  font-size: 30px !important;
  font-weight: 800 !important;
  letter-spacing: -0.01em !important;
  line-height: 36px !important;
}

.pm-donations-page__subtitle {
  max-width: 640px;
  margin: 4px 0 0 !important;
  color: var(--pm-muted) !important;
  font-family: var(--pm-font-sans) !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  line-height: 20px !important;
}

.page-donations .ps-section__search {
  margin: 0 0 26px !important;
}

.pm-donations-breadcrumb.ps-breadcrumb {
  max-width: 1280px !important;
  margin: 0 auto !important;
  padding: 18px 24px 0 !important;
  border: 0 !important;
  background: transparent !important;
}

.pm-stores-breadcrumb.ps-breadcrumb {
  margin-top: 65px !important;
}

body.show-admin-bar .pm-stores-breadcrumb.ps-breadcrumb {
  margin-top: 60px !important;
}

.pm-donations-breadcrumb .ps-container {
  max-width: none !important;
  padding: 0 !important;
}

.pm-donations-breadcrumb .breadcrumb-custom {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  min-height: 32px !important;
  padding: 0 !important;
  color: var(--pm-muted) !important;
  font-family: var(--pm-font-sans) !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  line-height: 1 !important;
}

.pm-donations-breadcrumb .breadcrumb-custom a {
  color: var(--pm-blue) !important;
  font-weight: 800 !important;
  text-decoration: none !important;
}

.pm-donations-breadcrumb .breadcrumb-custom span {
  color: var(--pm-muted) !important;
}

.pm-donations-toolbar {
  display: grid !important;
  grid-template-columns: minmax(300px, 386px) minmax(0, 1fr) !important;
  gap: 24px !important;
  align-items: center !important;
}

.pm-donations-toolbar__search,
.pm-donations-toolbar__controls {
  min-width: 0 !important;
}

.pm-donations-toolbar__controls {
  display: flex !important;
  justify-content: flex-end !important;
}

.page-donations .input-group {
  width: 100% !important;
  overflow: hidden !important;
  border: 1px solid var(--pm-border) !important;
  border-radius: var(--pm-pill-radius) !important;
  background: #ffffff !important;
  box-shadow: 0 10px 26px rgba(0, 54, 94, 0.08) !important;
}

.page-donations .input-group-text,
.page-donations .input-group .form-control {
  min-height: 44px !important;
  border: 0 !important;
  background: transparent !important;
  color: var(--pm-navy) !important;
  font-family: var(--pm-font-sans) !important;
  box-shadow: none !important;
}

.page-donations .input-group-text {
  padding-left: 16px !important;
  color: var(--pm-blue) !important;
}

.page-donations .input-group .form-control {
  padding-left: 8px !important;
  font-size: 14px !important;
  font-weight: 500 !important;
}

.page-donations .ps-shopping__header {
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
}

.page-donations .ps-shopping__view {
  display: flex !important;
  width: 100% !important;
  min-height: 44px !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 24px !important;
  color: var(--pm-muted) !important;
  font-family: var(--pm-font-sans) !important;
  font-size: 13px !important;
  font-weight: 700 !important;
}

.pm-donations-toolbar__count {
  min-width: 245px !important;
  color: #000000 !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  line-height: 1 !important;
  white-space: nowrap !important;
}

.pm-donations-toolbar__count strong {
  color: #000000 !important;
  font-weight: 800 !important;
}

.pm-donations-toolbar__sort {
  display: flex !important;
  align-items: center !important;
  min-width: 120px !important;
  margin: 0 !important;
}

.pm-donations-toolbar__per-page {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  margin: 0 !important;
  color: #000000 !important;
  font-family: var(--pm-font-sans) !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  line-height: 1 !important;
  white-space: nowrap !important;
}

.pm-donations-toolbar__per-page label {
  margin: 0 !important;
  color: #000000 !important;
  font: inherit !important;
}

.page-donations .donation-sort-select,
.page-donations .donation-per-page-select,
.page-donations .select2-container .select2-selection--single {
  min-width: 84px !important;
  min-height: 36px !important;
  border: 1px solid rgba(8, 40, 67, 0.32) !important;
  border-radius: var(--pm-pill-radius) !important;
  background: #ffffff !important;
  color: var(--pm-navy) !important;
  font-family: var(--pm-font-sans) !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  box-shadow: none !important;
}

.page-donations .donation-per-page-select {
  min-width: 76px !important;
}

.pm-donations-toolbar__view {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  margin: 0 !important;
}

.pm-donations-toolbar__view > span {
  color: #000000 !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  line-height: 1 !important;
}

.page-donations .products-layout {
  display: inline-flex !important;
  align-items: center !important;
  gap: 7px !important;
}

.page-donations .products-layout li {
  margin: 0 !important;
}

.page-donations .products-layout li a {
  display: grid !important;
  width: 22px !important;
  height: 22px !important;
  min-width: 22px !important;
  place-items: center !important;
  border: 0 !important;
  border-radius: 0 !important;
  color: var(--pm-muted) !important;
  background: transparent !important;
  box-shadow: none !important;
}

.page-donations .products-layout li.active a,
.page-donations .products-layout li a:hover {
  color: var(--pm-blue) !important;
  background: transparent !important;
}

.page-donations .products-layout li a i {
  color: inherit !important;
  font-size: 21px !important;
  line-height: 1 !important;
}

.pm-donations-grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 16px !important;
}

.pm-donations-list {
  display: grid !important;
  gap: 16px !important;
}

.pm-donations-grid .pm-give-card.pm-card,
.pm-donations-list .pm-give-card.pm-card {
  min-width: 0;
}

.page-donations .pm-donations-grid .pm-give-card.pm-card {
  height: 100%;
  min-height: 372px;
  padding: 0;
  overflow: hidden;
  background: #ffffff;
}

.page-donations .pm-donations-grid .pm-give-card__media {
  height: 221px;
  aspect-ratio: auto;
  overflow: visible;
  border: 0;
  border-radius: 24px 24px 0 0;
  background: transparent;
}

.page-donations .pm-donations-grid .pm-give-card__media::after {
  border-radius: 24px 24px 0 0;
}

.page-donations .pm-donations-grid .pm-give-card__media > img {
  min-height: 100%;
  border-radius: 24px 24px 0 0;
}

.page-donations .pm-donations-grid .pm-give-card__media > span {
  right: 12px;
  bottom: -22px;
  width: 76px;
  height: 76px;
}

.page-donations .pm-donations-grid .pm-give-card__body {
  padding: 34px 12px 14px;
}

.pm-give-card--list.pm-card {
  display: grid !important;
  grid-template-columns: minmax(240px, 340px) minmax(0, 1fr) !important;
  min-height: 0 !important;
  gap: 18px !important;
}

.pm-give-card--list .pm-give-card__media {
  height: 100%;
  min-height: 220px;
  aspect-ratio: auto;
}

.pm-give-card--list .pm-give-card__media > span {
  bottom: 14px;
}

.pm-give-card--list .pm-give-card__body {
  padding: 12px 12px 12px 0;
}

.pm-give-card--list .pm-give-card__body h3 {
  font-size: 20px !important;
  line-height: 26px !important;
}

.pm-give-card--list .pm-give-card__body > p:not(.pm-give-card__location) {
  max-width: 680px;
  font-size: 14px !important;
  line-height: 21px !important;
}

@media (max-width: 1199px) {
  .pm-give-section__grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .pm-donations-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 767px) {
  .pm-give-section {
    padding: 34px 16px;
  }

  .pm-give-section__header {
    align-items: flex-start;
    flex-direction: column;
    gap: 10px;
  }

  .pm-give-section__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .page-donations {
    padding: 24px 16px 42px !important;
  }

  .pm-donations-breadcrumb.ps-breadcrumb {
    padding: 14px 16px 0 !important;
  }

  .page-donations .ps-section__header {
    align-items: flex-start !important;
    flex-direction: column !important;
    gap: 10px !important;
  }

  .pm-donations-toolbar {
    grid-template-columns: 1fr !important;
    gap: 12px !important;
  }

  .page-donations .ps-shopping__view {
    justify-content: flex-start !important;
    gap: 14px !important;
    flex-wrap: wrap !important;
  }

  .pm-donations-toolbar__count {
    min-width: 0 !important;
  }

  .pm-donations-toolbar__per-page {
    width: 100% !important;
  }

  .page-donations .donation-per-page-select {
    width: 100% !important;
    max-width: 100% !important;
  }

  .pm-donations-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .pm-give-card--list.pm-card {
    grid-template-columns: 1fr !important;
  }

  .pm-give-card--list .pm-give-card__body {
    padding: 34px 12px 12px;
  }
}

@media (max-width: 575px) {
  .pm-give-section__grid {
    grid-template-columns: 1fr;
  }

  .pm-donations-grid {
    grid-template-columns: 1fr !important;
  }
}

.page-stores {
  max-width: 1280px !important;
  padding: 0 24px 56px !important;
}

.page-stores .ps-store-list,
.page-stores .ps-section__content {
  padding: 0 !important;
  background: transparent !important;
}

.page-stores .ps-section__header {
  display: flex !important;
  align-items: flex-end !important;
  justify-content: space-between !important;
  gap: 18px !important;
  margin: 0 0 24px !important;
  padding: 0 !important;
  border: 0 !important;
}

.page-stores .ps-section__header .title_site {
  margin: 0 !important;
  color: var(--pm-navy) !important;
  font-family: var(--pm-font-sans) !important;
  font-size: 30px !important;
  font-weight: 800 !important;
  letter-spacing: -0.01em !important;
  line-height: 36px !important;
}

.pm-stores-toolbar {
  display: grid !important;
  grid-template-columns: minmax(300px, 386px) minmax(0, 1fr) !important;
  gap: 24px !important;
  align-items: center !important;
  margin-bottom: 28px !important;
}

.pm-stores-toolbar__search,
.pm-stores-toolbar__controls {
  min-width: 0 !important;
}

.pm-stores-toolbar__filters {
  display: none !important;
}

.pm-stores-toolbar__controls {
  display: flex !important;
  justify-content: flex-end !important;
}

.page-stores .input-group {
  width: 100% !important;
  overflow: hidden !important;
  border: 1px solid var(--pm-border) !important;
  border-radius: var(--pm-pill-radius) !important;
  background: #ffffff !important;
  box-shadow: 0 10px 26px rgba(0, 54, 94, 0.08) !important;
}

.page-stores .input-group-text,
.page-stores .input-group .form-control {
  min-height: 44px !important;
  border: 0 !important;
  background: transparent !important;
  color: var(--pm-navy) !important;
  font-family: var(--pm-font-sans) !important;
  box-shadow: none !important;
}

.page-stores .input-group-text {
  padding-left: 16px !important;
  color: var(--pm-blue) !important;
}

.page-stores .input-group .form-control {
  padding-left: 8px !important;
  font-size: 14px !important;
  font-weight: 500 !important;
}

.page-stores .ps-shopping__header {
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
}

.page-stores .ps-shopping__view {
  display: flex !important;
  width: 100% !important;
  min-height: 44px !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 24px !important;
  color: var(--pm-muted) !important;
  font-family: var(--pm-font-sans) !important;
  font-size: 13px !important;
  font-weight: 700 !important;
}

.pm-stores-toolbar__count {
  min-width: 140px !important;
  color: #000000 !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  line-height: 1 !important;
  white-space: nowrap !important;
}

.pm-stores-toolbar__count strong {
  color: #000000 !important;
  font-weight: 800 !important;
}

.pm-stores-toolbar__sort {
  display: flex !important;
  align-items: center !important;
  min-width: 120px !important;
  margin: 0 !important;
}

.pm-stores-toolbar__per-page {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  margin: 0 !important;
  color: #000000 !important;
  font-family: var(--pm-font-sans) !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  line-height: 1 !important;
  white-space: nowrap !important;
}

.pm-stores-toolbar__per-page label {
  margin: 0 !important;
  color: #000000 !important;
  font: inherit !important;
}

.page-stores .store-sort-select,
.page-stores .store-per-page-select,
.page-stores .select2-container .select2-selection--single {
  min-width: 84px !important;
  min-height: 36px !important;
  border: 1px solid rgba(8, 40, 67, 0.32) !important;
  border-radius: var(--pm-pill-radius) !important;
  background: #ffffff !important;
  color: var(--pm-navy) !important;
  font-family: var(--pm-font-sans) !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  box-shadow: none !important;
}

.page-stores .store-per-page-select {
  min-width: 76px !important;
}

.pm-stores-toolbar__view {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  margin: 0 !important;
}

.pm-stores-toolbar__view > span {
  color: #000000 !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  line-height: 1 !important;
}

.page-stores .products-layout {
  display: inline-flex !important;
  gap: 6px !important;
  align-items: center !important;
  margin: 0 !important;
}

.page-stores .products-layout li {
  display: inline-flex !important;
}

.page-stores .products-layout li a {
  display: inline-grid !important;
  width: 24px !important;
  height: 24px !important;
  place-items: center !important;
  border: 0 !important;
  border-radius: 7px !important;
  color: var(--pm-muted) !important;
  background: transparent !important;
  font-size: 20px !important;
  line-height: 1 !important;
}

.page-stores .products-layout li.active a,
.page-stores .products-layout li a:hover {
  color: var(--pm-blue) !important;
  background: transparent !important;
}

.page-stores .products-layout li a i {
  color: inherit !important;
  font-size: 20px !important;
}

.page-stores .stores_contenedor {
  row-gap: 24px !important;
}

.page-stores .pm-store-card-col {
  display: flex !important;
}

.page-stores .pm-store-card.pm-store-card--community {
  display: flex !important;
  width: 100% !important;
  min-height: 430px !important;
  flex-direction: column !important;
  overflow: hidden !important;
  border: 1px solid var(--pm-border) !important;
  border-radius: 24px !important;
  background: rgba(255, 255, 255, 0.96) !important;
  box-shadow: var(--pm-card-shadow) !important;
  transition: transform 0.16s ease, box-shadow 0.16s ease !important;
}

.page-stores .pm-store-card.pm-store-card--community:hover {
  transform: translateY(-2px);
  box-shadow: var(--pm-soft-shadow) !important;
}

.page-stores .pm-store-card__media {
  position: relative !important;
  display: block !important;
  min-height: 202px !important;
  margin: 12px 12px 0 !important;
  overflow: visible !important;
  border: 1px solid var(--pm-border) !important;
  border-radius: 18px !important;
  background-color: #ffffff !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
  background-size: cover !important;
}

.page-stores .pm-store-card__media::after {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  background: linear-gradient(180deg, rgba(7, 32, 57, 0.02), rgba(7, 32, 57, 0.12));
  pointer-events: none;
}

.page-stores .pm-store-card__logo {
  position: absolute !important;
  right: 14px !important;
  bottom: -26px !important;
  z-index: 2 !important;
  display: grid !important;
  width: 76px !important;
  height: 76px !important;
  place-items: center !important;
  padding: 8px !important;
  overflow: hidden !important;
  border-radius: 18px !important;
  background: #ffffff !important;
  box-shadow: 0 16px 34px rgba(7, 32, 57, 0.12) !important;
  outline: 4px solid #ffffff !important;
}

.page-stores .pm-store-card__logo img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
}

.page-stores .pm-store-card__body {
  display: flex !important;
  flex: 1 1 auto !important;
  flex-direction: column !important;
  gap: 8px !important;
  padding: 38px 24px 22px !important;
}

.page-stores .pm-store-card__body .store-card__title {
  margin: 0 !important;
  color: var(--pm-navy) !important;
  font-family: var(--pm-font-sans) !important;
  font-size: 17px !important;
  font-weight: 800 !important;
  line-height: 1.22 !important;
}

.page-stores .pm-store-card__body .store-card__title a {
  color: inherit !important;
  text-decoration: none !important;
}

.page-stores .pm-store-card__body .store-card__title a:hover {
  color: var(--pm-blue) !important;
}

.page-stores .pm-store-card__location {
  margin: 0 !important;
  color: var(--pm-blue) !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  line-height: 1.3 !important;
}

.page-stores .pm-store-card__description {
  margin: 4px 0 0 !important;
  color: var(--pm-muted) !important;
  font-size: 13px !important;
  font-weight: 400 !important;
  line-height: 1.42 !important;
}

.page-stores .pm-store-card__action {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: max-content !important;
  min-height: 34px !important;
  margin-top: auto !important;
  padding: 0 18px !important;
  border: 1px solid var(--pm-border) !important;
  border-radius: 999px !important;
  background: #ffffff !important;
  color: var(--pm-blue) !important;
  font-size: 13px !important;
  font-weight: 800 !important;
  text-decoration: none !important;
  transition: background-color 0.16s ease, border-color 0.16s ease, color 0.16s ease !important;
}

.page-stores .pm-store-card__action:hover {
  border-color: var(--pm-blue) !important;
  background: var(--pm-blue) !important;
  color: #ffffff !important;
}

@media (max-width: 767px) {
  .page-stores {
    padding: 24px 16px 42px !important;
  }

  .page-stores .ps-section__header {
    align-items: flex-start !important;
    flex-direction: column !important;
    gap: 10px !important;
  }

  .pm-stores-toolbar {
    grid-template-columns: 1fr !important;
    gap: 12px !important;
  }

  .page-stores .ps-shopping__view {
    justify-content: flex-start !important;
    gap: 14px !important;
    flex-wrap: wrap !important;
  }

  .pm-stores-toolbar__count {
    min-width: 0 !important;
  }

  .pm-stores-toolbar__per-page {
    width: 100% !important;
  }

  .page-stores .store-per-page-select {
    width: 100% !important;
    max-width: 100% !important;
  }
}

/* Products page: cards should sit directly on the soft page background, like Vercel. */
.pm-shop-page {
  background:
    radial-gradient(circle at 8% 8%, rgba(69, 177, 225, 0.16), transparent 30%),
    linear-gradient(180deg, #f8fdff 0%, #ffffff 44%, #f8fdff 100%);
  color: var(--pm-ink);
  font-family: var(--pm-font-sans) !important;
  padding-top: 65px;
}

.pm-shop-page *,
.pm-shop-page *::before,
.pm-shop-page *::after {
  box-sizing: border-box;
}

.pm-shop-hero,
.pm-shop-steps,
.pm-shop-sponsor,
.pm-shop-sponsorships,
.pm-shop-impact {
  width: min(1280px, 100%);
  margin-right: auto;
  margin-left: auto;
  padding-right: 16px;
  padding-left: 16px;
}

.pm-shop-hero {
  padding-top: 24px;
  padding-bottom: 12px;
}

.pm-shop-hero__grid {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(360px, 1fr);
  gap: 16px;
  align-items: stretch;
}

.pm-shop-hero__card,
.pm-shop-hero__media,
.pm-shop-steps article,
.pm-shop-sponsorships__benefits article,
.pm-shop-explore,
.pm-shop-results .ps-products-listing {
  border: 1px solid var(--pm-border);
  border-radius: 24px;
  background: rgba(255, 255, 255, 0.94);
  box-shadow: var(--pm-card-shadow);
}

.pm-shop-hero__card {
  display: flex;
  min-height: 330px !important;
  flex-direction: column;
  justify-content: center;
  gap: 20px;
  padding: 18px 32px !important;
}

.pm-shop-hero__eyebrow {
  display: inline-flex;
  width: fit-content;
  align-items: center;
  border-radius: 999px;
  background: var(--pm-soft);
  color: var(--pm-blue);
  font-size: 11px;
  font-weight: 700;
  line-height: 1;
  padding: 8px 13px;
}

.pm-shop-hero h1 {
  margin: 0 !important;
  color: var(--pm-navy) !important;
  font-size: 36px !important;
  font-weight: 800 !important;
  letter-spacing: -0.03em !important;
  line-height: 1.12 !important;
}

.pm-shop-hero h1 span {
  background: linear-gradient(90deg, var(--pm-blue), var(--pm-cyan));
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}

.pm-shop-hero__card > p {
  max-width: 470px;
  margin: 0 !important;
  color: var(--pm-muted) !important;
  font-size: 14px !important;
  line-height: 1.6 !important;
}

.pm-shop-hero__search {
  position: relative;
  display: flex;
  min-height: 52px;
  align-items: center;
  gap: 10px;
  max-width: 640px;
  overflow: visible;
  padding: 6px 7px 6px 14px;
  border: 1px solid var(--pm-border);
  border-radius: 999px;
  background: #ffffff;
  box-shadow: var(--pm-soft-shadow);
}

.pm-shop-hero__search:focus-within {
  border-color: var(--pm-blue);
}

.pm-shop-hero__search i {
  color: var(--pm-muted);
  font-size: 17px;
}

.pm-shop-hero__search input {
  width: 100%;
  min-width: 0;
  height: 38px;
  border: 0;
  outline: 0;
  color: var(--pm-ink);
  background: transparent;
  font-size: 14px;
}

.pm-shop-hero__search input::placeholder {
  color: #94a3b8;
}

.pm-shop-hero__search button,
.pm-shop-sponsor__cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 0;
  border-radius: 999px;
  background: linear-gradient(90deg, var(--pm-blue), var(--pm-cyan));
  color: #ffffff;
  font-size: 13px;
  font-weight: 800;
  line-height: 1;
  padding: 13px 20px;
  white-space: nowrap;
  box-shadow: 0 14px 30px rgba(5, 126, 162, 0.24);
}

.pm-shop-hero__search button[type="submit"] {
  min-height: 40px;
  background: #0b3454;
  box-shadow: none;
}

.pm-shop-hero__search button[type="submit"]:hover {
  background: #082843;
  color: #ffffff;
}

.pm-shop-hero__search .spinner-icon {
  top: 50%;
  right: 104px;
  z-index: 4;
  width: 18px;
  height: 18px;
  margin-top: -9px;
  color: var(--pm-blue);
  font-size: 14px;
  line-height: 18px;
}

.pm-shop-hero__search .ps-panel--search-result.active {
  top: calc(100% + 10px) !important;
  width: 100% !important;
  max-height: min(64vh, 430px) !important;
  padding: 20px 24px 22px !important;
  border-color: #cfe4f5 !important;
  border-radius: 28px !important;
  box-shadow: 0 24px 58px rgba(0, 54, 94, 0.16) !important;
}

.pm-shop-hero__search .pm-search-results {
  gap: 18px !important;
}

.pm-shop-hero__search .pm-search-results__section {
  gap: 12px !important;
}

.pm-shop-hero__search .pm-search-results__label {
  padding: 0 !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  letter-spacing: 0 !important;
  line-height: 1 !important;
  text-align: center !important;
}

.pm-shop-hero__search .pm-search-result {
  grid-template-columns: 56px minmax(0, 1fr) auto !important;
  gap: 14px !important;
  min-height: 72px !important;
  padding: 8px 14px !important;
  border: 0 !important;
  border-radius: 18px !important;
  background: transparent !important;
  box-shadow: none !important;
}

.pm-shop-hero__search .pm-search-result:hover {
  background: #eef8fb !important;
  transform: none !important;
  box-shadow: none !important;
}

.pm-shop-hero__search .pm-search-result--store {
  grid-template-columns: 56px minmax(0, 1fr) !important;
}

.pm-shop-hero__search .pm-search-result__media {
  width: 56px !important;
  height: 56px !important;
  border-radius: 14px !important;
}

.pm-shop-hero__search .pm-search-result__title {
  font-size: 16px !important;
  font-weight: 850 !important;
  line-height: 1.25 !important;
  -webkit-line-clamp: 1 !important;
}

.pm-shop-hero__search .pm-search-result__price {
  min-width: 76px !important;
  font-size: 16px !important;
  font-weight: 900 !important;
}

.pm-shop-hero__search .pm-search-results__footer a {
  min-height: 38px !important;
}

.pm-shop-hero__media {
  position: relative;
  isolation: isolate;
  min-height: 330px;
  overflow: hidden;
  background: var(--pm-navy);
}

@media (min-width: 992px) {
  .pm-store-products-page .pm-shop-hero__grid,
  .pm-store-products-page .pm-shop-hero__card,
  .pm-store-products-page .pm-shop-hero__media {
    min-height: 335px !important;
    height: 335px !important;
    max-height: 335px !important;
  }

  .pm-store-products-page .pm-shop-hero__card {
    box-sizing: border-box;
    justify-content: center !important;
  }
}

.pm-shop-hero__media::after {
  position: absolute;
  inset: 0;
  z-index: 1;
  content: "";
  background: linear-gradient(180deg, rgba(0, 0, 0, 0.35), rgba(0, 0, 0, 0.12) 46%, rgba(0, 0, 0, 0.58));
}

.pm-shop-hero__media img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.pm-shop-hero__media-content {
  position: relative;
  z-index: 2;
  display: flex;
  height: 100%;
  min-height: inherit;
  flex-direction: column;
  justify-content: flex-end;
  gap: 12px;
  padding: 32px;
  color: #ffffff;
}

.pm-shop-hero__media-content span {
  display: inline-flex;
  width: fit-content;
  align-items: center;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.16);
  color: rgba(255, 255, 255, 0.86);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.05em;
  line-height: 1;
  padding: 8px 13px;
  text-transform: uppercase;
  backdrop-filter: blur(10px);
}

.pm-shop-hero__media-content h2 {
  max-width: 520px;
  margin: 0 !important;
  color: #ffffff !important;
  font-size: 30px !important;
  font-weight: 800 !important;
  line-height: 1.16 !important;
}

.pm-shop-hero__media-content p {
  max-width: 420px;
  margin: 0 !important;
  color: rgba(255, 255, 255, 0.86) !important;
  font-size: 14px !important;
  line-height: 1.5 !important;
}

.pm-shop-steps {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  padding-top: 12px;
  padding-bottom: 24px;
}

.pm-shop-steps article {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 16px;
}

.pm-shop-steps article > span,
.pm-shop-sponsor__icon {
  display: grid;
  width: 32px;
  height: 32px;
  flex: 0 0 32px;
  place-items: center;
  border-radius: 999px;
  background: var(--pm-blue);
  color: #ffffff;
  font-size: 14px;
  font-weight: 800;
}

.pm-shop-steps h3 {
  margin: 0 0 4px !important;
  color: var(--pm-navy) !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  line-height: 1.3 !important;
}

.pm-shop-steps p {
  margin: 0 !important;
  color: var(--pm-muted) !important;
  font-size: 12px !important;
  line-height: 1.45 !important;
}

.pm-shop-sponsor {
  padding-top: 12px;
  padding-bottom: 24px;
}

.pm-shop-sponsor a {
  display: flex;
  align-items: center;
  gap: 16px;
  min-height: 96px;
  padding: 20px 24px;
  border: 1px solid var(--pm-border);
  border-radius: 24px;
  background: linear-gradient(90deg, var(--pm-navy), var(--pm-blue), var(--pm-cyan));
  color: #ffffff !important;
  text-decoration: none !important;
  box-shadow: var(--pm-card-shadow);
  transition: transform 0.15s ease, box-shadow 0.15s ease;
}

.pm-shop-sponsor a:hover {
  transform: translateY(-1px);
  box-shadow: var(--pm-soft-shadow);
}

.pm-shop-sponsor__copy {
  display: grid;
  gap: 4px;
  min-width: 0;
}

.pm-shop-sponsor__copy strong {
  color: #ffffff;
  font-size: 16px;
  font-weight: 800;
  line-height: 1.3;
}

.pm-shop-sponsor__copy small {
  color: rgba(255, 255, 255, 0.78);
  font-size: 13px;
  line-height: 1.45;
}

.pm-shop-sponsor__cta {
  margin-left: auto;
  background: #ffffff;
  color: var(--pm-navy);
  box-shadow: none;
}

.pm-shop-sponsor--parish-cta .pm-shop-sponsor__icon {
  width: 44px;
  height: 44px;
  flex-basis: 44px;
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.14);
}

.pm-shop-sponsor--parish-cta .pm-shop-sponsor__copy {
  gap: 2px;
}

.pm-shop-sponsor--parish-cta .pm-shop-sponsor__copy small {
  color: #ffffff;
  font-size: 10px;
  font-weight: 400;
  letter-spacing: 0.02em;
  line-height: 1.2;
  text-transform: uppercase;
}

.pm-shop-sponsor--parish-cta .pm-shop-sponsor__copy strong {
  font-size: 16px;
  line-height: 1.3;
}

.pm-shop-sponsor--parish-cta .pm-shop-sponsor__cta {
  gap: 6px;
  padding: 10px 16px;
}

.pm-shop-sponsorships {
  padding-top: 8px;
  padding-bottom: 24px;
}

.pm-shop-sponsorships__grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 12px;
}

.pm-shop-sponsorships__feature {
  position: relative;
  isolation: isolate;
  display: flex;
  min-height: 260px;
  flex-direction: column;
  justify-content: flex-end;
  overflow: hidden;
  padding: 24px;
  border: 1px solid var(--pm-border);
  border-radius: 24px;
  color: #ffffff !important;
  text-decoration: none !important;
  box-shadow: var(--pm-card-shadow);
}

.pm-shop-sponsorships__feature::after {
  position: absolute;
  inset: 0;
  z-index: -1;
  content: "";
  background: linear-gradient(0deg, rgba(0, 0, 0, 0.80), rgba(0, 0, 0, 0.40) 52%, transparent);
}

.pm-shop-sponsorships__feature img {
  position: absolute;
  inset: 0;
  z-index: -2;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.2s ease;
}

.pm-shop-sponsorships__feature:hover img {
  transform: scale(1.025);
}

.pm-shop-sponsorships__feature-content {
  display: flex;
  max-width: 420px;
  flex-direction: column;
  align-items: flex-start;
}

.pm-shop-sponsorships__feature-content > span {
  display: inline-flex;
  width: fit-content;
  align-items: center;
  gap: 8px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.15);
  color: rgba(255, 255, 255, 0.86);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.05em;
  line-height: 1;
  padding: 8px 13px;
  text-transform: uppercase;
  backdrop-filter: blur(10px);
}

.pm-shop-sponsorships__feature-content h3 {
  margin: 10px 0 0 !important;
  color: #ffffff !important;
  font-size: 24px !important;
  font-weight: 800 !important;
  line-height: 1.18 !important;
}

.pm-shop-sponsorships__feature-content p {
  max-width: 390px;
  margin: 6px 0 0 !important;
  color: rgba(255, 255, 255, 0.86) !important;
  font-size: 12px !important;
  line-height: 1.55 !important;
}

.pm-shop-sponsorships__feature-content .pm-shop-sponsorships__offer {
  color: #ffffff !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  line-height: 1.2 !important;
}

.pm-shop-sponsorships__description {
  display: -webkit-box;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.pm-shop-sponsorships__feature-content strong {
  display: inline-flex;
  width: fit-content;
  align-items: center;
  gap: 6px;
  margin-top: 13px;
  padding: 9px 13px;
  border-radius: 999px;
  background: #ffffff;
  color: var(--pm-navy);
  font-size: 12px;
  font-weight: 800;
  line-height: 1;
  transition: transform 0.15s ease;
}

.pm-shop-sponsorships__feature:hover .pm-shop-sponsorships__feature-content strong {
  transform: translateX(2px);
}

.pm-shop-sponsorships__feature-content svg {
  width: 14px;
  height: 14px;
}

.pm-shop-sponsorships__benefits {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.pm-shop-sponsorships__benefits article {
  padding: 16px;
}

.pm-shop-sponsorships__benefits h4 {
  margin: 0 !important;
  color: var(--pm-navy) !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  line-height: 1.35 !important;
}

.pm-shop-sponsorships__benefits p {
  margin: 5px 0 0 !important;
  color: var(--pm-muted) !important;
  font-size: 12px !important;
  line-height: 1.5 !important;
}

.pm-shop-impact {
  padding-top: 32px;
  padding-bottom: 48px;
}

.pm-shop-impact__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

.pm-shop-impact__card.pm-card {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  min-width: 0;
  margin: 0;
  padding: 16px;
  border: 1px solid var(--pm-border);
  border-radius: 24px;
  background: rgba(255, 255, 255, 0.94);
  box-shadow: var(--pm-card-shadow);
}

.pm-shop-impact__icon {
  display: grid;
  width: 36px;
  height: 36px;
  flex: 0 0 36px;
  place-items: center;
  border-radius: 12px;
  background: var(--pm-soft);
  color: var(--pm-blue);
}

.pm-shop-impact__icon svg {
  width: 20px;
  height: 20px;
}

.pm-shop-impact__card h4 {
  margin: 0 !important;
  color: var(--pm-navy) !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  line-height: 1.35 !important;
}

.pm-shop-impact__card p {
  margin: 4px 0 0 !important;
  color: var(--pm-muted) !important;
  font-size: 12px !important;
  line-height: 1.45 !important;
}

.pm-shop-page .ps-shop-brand,
.pm-shop-page .ps-block--shop-features {
  display: none !important;
}

.ps-page--shop .ps-container {
  max-width: 1280px !important;
}

.pm-shop-page .ps-container {
  width: min(1280px, 100%) !important;
  padding-right: 16px !important;
  padding-left: 16px !important;
}

.ps-page--shop .ps-layout--shop,
.ps-page--shop .ps-layout__right,
.ps-page--shop .ps-layout__right.full-width,
.ps-page--shop .ps-shopping,
.ps-page--shop .ps-products-listing,
.ps-page--shop .bb-product-items-wrapper {
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

.ps-page--shop .ps-layout__right,
.ps-page--shop .ps-layout__right.full-width {
  padding: 0 !important;
}

.ps-page--shop .ps-shopping {
  padding: 18px 0 56px !important;
}

.pm-shop-page .ps-shopping {
  padding-top: 0 !important;
}

.ps-page--shop .ps-breadcrumb {
  margin-bottom: 16px !important;
  border: 0 !important;
  background: transparent !important;
}

.pm-shop-listing__grid {
  display: grid;
  grid-template-columns: 220px minmax(0, 1fr);
  gap: 24px;
  align-items: flex-start;
  transition: grid-template-columns 0.24s ease;
}

.pm-shop-listing__grid.is-filter-collapsed {
  grid-template-columns: 48px minmax(0, 1fr);
}

.pm-shop-explore {
  position: sticky;
  top: 96px;
  display: flex;
  min-height: 0;
  align-items: stretch;
  padding: 0;
  overflow: hidden;
  transition: border-radius 0.24s ease;
}

.pm-shop-listing__grid.is-filter-collapsed .pm-shop-explore {
  border-radius: 14px;
}

.pm-shop-filter-rail {
  display: flex;
  width: 48px;
  min-width: 48px;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  gap: 9px;
  padding: 16px 0;
  border: 0;
  background: transparent;
  color: var(--pm-muted);
  cursor: pointer;
  transition: color 0.16s ease, background-color 0.16s ease;
}

.pm-shop-filter-rail:hover,
.pm-shop-filter-rail:focus {
  color: var(--pm-navy);
  background: rgba(238, 248, 251, 0.72);
  outline: none;
}

.pm-shop-filter-rail__chevron {
  font-size: 14px;
  transition: transform 0.2s ease;
}

.pm-shop-listing__grid.is-filter-collapsed .pm-shop-filter-rail__chevron {
  transform: rotate(180deg);
}

.pm-shop-filter-rail span {
  display: inline-block;
  color: inherit;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.12em;
  line-height: 1;
  text-transform: uppercase;
  transform: rotate(180deg);
  writing-mode: vertical-rl;
}

.pm-shop-filter-rail__icon {
  font-size: 13px;
  line-height: 1;
}

.pm-shop-explore__content {
  min-width: 0;
  flex: 1 1 auto;
  padding: 12px 12px 12px 0;
  overflow: hidden;
  opacity: 1;
  transition: opacity 0.16s ease;
}

.pm-shop-listing__grid.is-filter-collapsed .pm-shop-explore__content {
  opacity: 0;
  pointer-events: none;
}

.pm-shop-explore p {
  margin: 0 !important;
  padding: 4px 12px 9px;
  color: var(--pm-muted) !important;
  font-size: 11px !important;
  font-weight: 800 !important;
  letter-spacing: 0.05em !important;
  line-height: 1 !important;
  text-transform: uppercase;
}

.pm-shop-explore ul {
  display: grid;
  gap: 4px;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

.pm-shop-explore li {
  margin: 0 !important;
  padding: 0 !important;
}

.pm-shop-explore a {
  display: block;
  width: 100%;
  padding: 10px 12px;
  border-radius: 12px;
  color: var(--pm-ink) !important;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.25;
  text-decoration: none !important;
  transition: background-color 0.15s ease, color 0.15s ease;
}

.pm-shop-explore a:hover,
.pm-shop-explore a.active,
.pm-shop-explore .filtro_cate.active a {
  background: var(--pm-soft);
  color: var(--pm-navy) !important;
  font-weight: 400 !important;
}

.pm-shop-results {
  min-width: 0;
}

.pm-shop-results__header {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 18px;
  margin-bottom: 12px;
}

.pm-shop-results__header h2 {
  margin: 0 !important;
  color: var(--pm-navy) !important;
  font-size: 30px !important;
  font-weight: 800 !important;
  letter-spacing: -0.02em !important;
  line-height: 1.2 !important;
}

.pm-shop-results__header p {
  margin: 3px 0 0 !important;
  color: var(--pm-muted) !important;
  font-size: 14px !important;
  line-height: 1.45 !important;
}

.pm-shop-results__actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 10px;
  flex-wrap: wrap;
}

.pm-shop-results__actions .select2-container {
  width: 195px !important;
  min-width: 195px !important;
}

.pm-shop-results__actions .ps-select-shop-sort,
.pm-shop-results__actions .select2-container .select2-selection--single {
  box-sizing: border-box !important;
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  width: 195px !important;
  min-width: 195px !important;
  min-height: 30px !important;
  height: 30px !important;
  padding: 6px 12px !important;
  border: 1px solid rgb(219, 234, 254) !important;
  border-radius: calc(infinity * 1px) !important;
  background: #ffffff !important;
  color: var(--pm-navy) !important;
  font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  letter-spacing: 0 !important;
  line-height: 16px !important;
}

.pm-shop-results__actions .select2-container--default .select2-selection--single .select2-selection__rendered {
  box-sizing: border-box !important;
  flex: 1 1 auto !important;
  color: var(--pm-navy) !important;
  height: 16px !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  letter-spacing: 0 !important;
  line-height: 16px !important;
  padding: 0 18px 0 0 !important;
}

.pm-shop-results__actions .select2-container--default .select2-selection--single .select2-selection__arrow {
  display: grid !important;
  place-items: center !important;
  width: 14px !important;
  height: 14px !important;
  right: 12px !important;
  top: 50% !important;
  bottom: auto !important;
  transform: translateY(-50%) !important;
}

.pm-shop-results__actions .select2-container--default .select2-selection--single .select2-selection__arrow b {
  display: none !important;
}

.pm-shop-results__actions .select2-container--default .select2-selection--single .select2-selection__arrow::before {
  content: "" !important;
  position: absolute !important;
  top: 50% !important;
  left: 50% !important;
  display: block !important;
  width: 6px !important;
  height: 6px !important;
  font-family: inherit !important;
  border: solid currentColor !important;
  border-width: 0 1.5px 1.5px 0 !important;
  transform: translate(-50%, -60%) rotate(45deg) !important;
}

/* Compact Products sort matching the reference dropdown. */
.pm-shop-results__actions.pm-product-sort .select2-container,
.pm-shop-results__actions.pm-product-sort .ps-select-shop-sort,
.pm-shop-results__actions.pm-product-sort .select2-container .select2-selection--single {
  width: 107px !important;
  min-width: 107px !important;
}

.pm-shop-results__actions.pm-product-sort .select2-selection__rendered::before {
  content: "Sort: ";
}

.pm-shop-results__actions.pm-product-sort .select2-container--open .select2-selection__arrow::before {
  transform: translate(-50%, -35%) rotate(225deg) !important;
}

.pm-product-sort-dropdown.select2-dropdown {
  width: 207px !important;
  overflow: hidden;
  border: 1px solid #dbeafe !important;
  border-radius: 14px !important;
  background: #ffffff !important;
  box-shadow: 0 10px 22px rgba(15, 47, 71, 0.16) !important;
}

.pm-product-sort-dropdown .select2-results__options {
  padding: 8px 0 !important;
}

.pm-product-sort-dropdown .select2-results__option {
  min-height: 34px;
  padding: 8px 16px !important;
  color: #062f4f !important;
  background: #ffffff !important;
  font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  line-height: 18px !important;
}

.pm-product-sort-dropdown .select2-results__option[aria-selected="true"] {
  font-weight: 700 !important;
}

.pm-product-sort-dropdown .select2-results__option--highlighted[aria-selected] {
  color: #062f4f !important;
  background: #f4f9ff !important;
}

body .pm-shop-page .pm-shop-results__actions .select2-container--default .select2-selection--single,
body .pm-shop-page .pm-shop-results__actions .select2-container--default .select2-selection--single .select2-selection__rendered {
  font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
}

html body .pm-shop-page .pm-shop-results__actions span.select2.select2-container.select2-container--default .select2-selection.select2-selection--single,
html body .pm-shop-page .pm-shop-results__actions span.select2.select2-container.select2-container--default .select2-selection.select2-selection--single .select2-selection__rendered {
  font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
}

.pm-shop-results__actions .ps-shopping__view {
  display: flex !important;
  align-items: center;
  gap: 12px;
}

.pm-shop-results__actions .totales_products {
  margin: 0 !important;
  white-space: nowrap;
}

.pm-shop-results__actions .products-layout-donations {
  display: flex;
  gap: 4px;
  list-style: none !important;
}

.pm-shop-results__actions .products-layout-donations a {
  display: grid;
  width: 36px;
  height: 36px;
  place-items: center;
  border: 1px solid var(--pm-border);
  border-radius: 999px;
  background: #ffffff;
  color: var(--pm-muted);
}

.pm-shop-results__actions .products-layout-donations li.active a,
.pm-shop-results__actions .products-layout-donations a:hover {
  border-color: var(--pm-blue);
  color: var(--pm-blue);
}

.pm-shop-chips {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  margin-bottom: 16px;
}

.pm-shop-chips a {
  display: inline-flex;
  min-height: 34px;
  align-items: center;
  justify-content: center;
  padding: 8px 13px;
  border: 1px solid var(--pm-border);
  border-radius: 999px;
  background: #ffffff;
  color: var(--pm-navy) !important;
  font-size: 12px;
  font-weight: 700;
  line-height: 1;
  text-decoration: none !important;
}

.pm-shop-chips a.active,
.pm-shop-chips a:hover {
  border-color: transparent;
  background: var(--pm-navy);
  color: #ffffff !important;
}

.pm-shop-results .ps-products-listing {
  padding: 0;
}

.pm-shop-page .pm-shop-product-card--hidden {
  display: none !important;
}

.pm-shop-page .ps-products-listing .ps-pagination {
  display: none !important;
}

.pm-shop-load-more {
  display: flex;
  justify-content: center;
  padding: 24px 0 8px;
}

.pm-shop-load-more__button {
  display: inline-flex;
  min-height: 42px;
  align-items: center;
  justify-content: center;
  padding: 12px 22px;
  border: 1px solid var(--pm-border);
  border-radius: 999px;
  background: #ffffff;
  color: var(--pm-navy);
  font-family: var(--pm-font-sans);
  font-size: 13px;
  font-weight: 800;
  line-height: 1;
  box-shadow: var(--pm-soft-shadow);
  transition: border-color 0.15s ease, color 0.15s ease, transform 0.15s ease, box-shadow 0.15s ease;
}

.pm-shop-load-more__button:hover,
.pm-shop-load-more__button:focus {
  border-color: var(--pm-blue);
  color: var(--pm-blue);
  transform: translateY(-1px);
  box-shadow: var(--pm-card-shadow);
}

.pm-shop-load-more__button:disabled {
  cursor: wait;
  opacity: 0.72;
  transform: none;
}

.pm-shop-product-card {
  display: flex;
  height: 100%;
  min-height: 0;
  flex-direction: column;
  overflow: hidden;
  border: 1px solid var(--pm-border);
  border-radius: 24px;
  background: #ffffff;
  box-shadow: var(--pm-card-shadow);
  transition: transform 0.15s ease, box-shadow 0.15s ease;
}

.pm-shop-product-card:hover {
  transform: translateY(-2px);
  box-shadow: var(--pm-soft-shadow);
}

.pm-shop-product-card__media {
  position: relative;
  aspect-ratio: 4 / 3;
  overflow: hidden;
  background: var(--pm-soft);
}

.pm-shop-product-card__image {
  position: absolute;
  inset: 0;
  overflow: hidden;
  border: 0;
  border-radius: 0;
  background: #ffffff;
}

.pm-shop-product-card__image img {
  display: block;
  width: 100%;
  height: 100%;
  padding: 0;
  object-fit: contain;
}

.pm-shop-product-card__media-link {
  position: absolute;
  inset: 0;
  z-index: 1;
  display: block;
}

.pm-shop-product-card__body {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  gap: 8px;
  padding: 16px;
}

.pm-shop-product-card__title-link {
  display: block;
  color: var(--pm-navy) !important;
  text-decoration: none !important;
}

.pm-shop-product-card__title-link h3 {
  display: -webkit-box;
  min-height: 35px;
  margin: 0 !important;
  overflow: hidden;
  color: var(--pm-navy) !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  line-height: 1.25 !important;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  transition: color 0.15s ease;
}

.pm-shop-product-card:hover .pm-shop-product-card__title-link h3 {
  color: var(--pm-blue) !important;
}

.pm-shop-product-card__body p {
  margin: 3px 0 0 !important;
  color: var(--pm-muted) !important;
  font-size: 11px !important;
  line-height: 1.35 !important;
}

.pm-shop-product-card__footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-top: auto;
  padding-top: 4px;
}

.pm-shop-product-card__footer span {
  color: var(--pm-navy);
  font-size: 14px;
  font-weight: 800;
  line-height: 1.2;
}

.pm-shop-product-card__add {
  display: inline-flex !important;
  min-height: 32px;
  align-items: center;
  justify-content: center;
  padding: 8px 16px !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: linear-gradient(90deg, var(--pm-blue), var(--pm-cyan)) !important;
  color: #ffffff !important;
  font-size: 12px !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  text-decoration: none !important;
  box-shadow: 0 12px 26px rgba(5, 126, 162, 0.22);
  transition: transform 0.15s ease, box-shadow 0.15s ease;
  white-space: nowrap;
}

.ps-layout--shop .ps-tabs .pm-shop-product-card__add.loading,
.ps-layout--shop .ps-tabs [data-bb-toggle="quick-shop"].pm-shop-product-card__add.loading {
  position: relative !important;
  inset: auto !important;
  top: auto !important;
  right: auto !important;
  bottom: auto !important;
  left: auto !important;
  z-index: auto !important;
  display: inline-flex !important;
  width: auto !important;
  height: auto !important;
  min-width: 56px !important;
  background: linear-gradient(90deg, var(--pm-blue), var(--pm-cyan)) !important;
  color: transparent !important;
  opacity: 0.72 !important;
  transform: none !important;
  pointer-events: none !important;
}

.pm-shop-product-card__add:hover,
.pm-shop-product-card__add:focus {
  color: #ffffff !important;
  transform: translateY(-1px);
  box-shadow: 0 14px 30px rgba(5, 126, 162, 0.28);
}

.ps-page--shop .ps-shopping__header {
  border: 0 !important;
  background: transparent !important;
}

.ps-page--shop .pm-shop-products-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.ps-page--shop .pm-shop-products-grid > .pm-shop-product-card {
  min-width: 0;
  width: auto !important;
  max-width: none !important;
  padding-right: 0 !important;
  padding-left: 0 !important;
  margin-bottom: 0 !important;
}

/* Product cards: mirror the Vercel product tile across listing surfaces. */
.ps-product:not(.ps-product--wide):not(.ps-product--detail):not(.ps-product--cart):not(.ps-product--cart-mobile):not(.ps-product--search-result):not(.ps-product--header-sticky) {
  display: flex !important;
  height: 100% !important;
  min-height: 460px;
  flex-direction: column !important;
  padding: 12px !important;
  overflow: hidden !important;
  border: 1px solid var(--pm-border) !important;
  border-radius: 24px !important;
  background: rgba(255, 255, 255, 0.94) !important;
  box-shadow: var(--pm-card-shadow) !important;
  transition: transform 0.15s ease, box-shadow 0.15s ease !important;
}

.ps-product:not(.ps-product--wide):not(.ps-product--detail):not(.ps-product--cart):not(.ps-product--cart-mobile):not(.ps-product--search-result):not(.ps-product--header-sticky):hover {
  transform: translateY(-2px);
  box-shadow: var(--pm-soft-shadow) !important;
}

.ps-product:not(.ps-product--wide):not(.ps-product--detail):not(.ps-product--cart):not(.ps-product--cart-mobile):not(.ps-product--search-result):not(.ps-product--header-sticky) > .ps-product__thumbnail {
  position: relative !important;
  display: block !important;
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 1 / 1;
  margin: 0 !important;
  overflow: hidden !important;
  border: 1px solid var(--pm-border);
  border-radius: 18px !important;
  background: #ffffff !important;
}

.ps-product:not(.ps-product--wide):not(.ps-product--detail):not(.ps-product--cart):not(.ps-product--cart-mobile):not(.ps-product--search-result):not(.ps-product--header-sticky) > .ps-product__thumbnail > a {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
}

.ps-product:not(.ps-product--wide):not(.ps-product--detail):not(.ps-product--cart):not(.ps-product--cart-mobile):not(.ps-product--search-result):not(.ps-product--header-sticky) > .ps-product__thumbnail img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-height: none !important;
  padding: 6px !important;
  object-fit: contain !important;
  object-position: center top !important;
  background: #ffffff !important;
  transform: none !important;
  transform-origin: center center;
}

.ps-product:not(.ps-product--wide):not(.ps-product--detail):not(.ps-product--cart):not(.ps-product--cart-mobile):not(.ps-product--search-result):not(.ps-product--header-sticky) .ps-product__badges {
  top: 10px !important;
  left: 10px !important;
}

.ps-product:not(.ps-product--wide):not(.ps-product--detail):not(.ps-product--cart):not(.ps-product--cart-mobile):not(.ps-product--search-result):not(.ps-product--header-sticky) .ps-product__badge {
  border-radius: 999px !important;
  font-size: 10px !important;
  font-weight: 800 !important;
  letter-spacing: 0.04em !important;
}

.ps-product:not(.ps-product--wide):not(.ps-product--detail):not(.ps-product--cart):not(.ps-product--cart-mobile):not(.ps-product--search-result):not(.ps-product--header-sticky) .pm-product-card__utility {
  top: 10px !important;
  right: 10px !important;
  bottom: auto !important;
  left: auto !important;
  display: flex !important;
  width: auto !important;
  max-width: none !important;
  flex-direction: column;
  gap: 6px;
  opacity: 0;
  visibility: hidden;
  transform: none !important;
  transition: opacity 0.15s ease, visibility 0.15s ease;
}

.ps-product:not(.ps-product--wide):not(.ps-product--detail):not(.ps-product--cart):not(.ps-product--cart-mobile):not(.ps-product--search-result):not(.ps-product--header-sticky):hover .pm-product-card__utility {
  opacity: 1;
  visibility: visible;
}

.ps-product:not(.ps-product--wide):not(.ps-product--detail):not(.ps-product--cart):not(.ps-product--cart-mobile):not(.ps-product--search-result):not(.ps-product--header-sticky) .pm-product-card__utility li {
  margin: 0 !important;
}

.ps-product:not(.ps-product--wide):not(.ps-product--detail):not(.ps-product--cart):not(.ps-product--cart-mobile):not(.ps-product--search-result):not(.ps-product--header-sticky) .pm-product-card__utility a {
  display: grid !important;
  width: 34px !important;
  height: auto !important;
  min-height: 0 !important;
  padding: 0 !important;
  place-items: center;
  border: 1px solid var(--pm-border) !important;
  border-radius: 999px !important;
  background: #ffffff !important;
  color: var(--pm-navy) !important;
  box-shadow: var(--pm-soft-shadow);
}

.ps-product:not(.ps-product--wide):not(.ps-product--detail):not(.ps-product--cart):not(.ps-product--cart-mobile):not(.ps-product--search-result):not(.ps-product--header-sticky) > .ps-product__container {
  display: flex !important;
  min-height: 0 !important;
  flex: 1 1 auto !important;
  flex-direction: column !important;
  gap: 11px;
  padding: 14px 13px 12px !important;
}

.ps-product:not(.ps-product--wide):not(.ps-product--detail):not(.ps-product--cart):not(.ps-product--cart-mobile):not(.ps-product--search-result):not(.ps-product--header-sticky) .ps-product__content {
  display: flex !important;
  min-height: 0 !important;
  flex: 1 1 auto !important;
  flex-direction: column !important;
  gap: 8px;
}

.pm-product-card__label {
  display: inline-flex;
  width: fit-content;
  align-items: center;
  border-radius: 999px;
  background: #e9f8ff;
  color: var(--pm-blue);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.04em;
  line-height: 1;
  padding: 7px 11px;
  text-transform: uppercase;
}

.ps-product:not(.ps-product--wide):not(.ps-product--detail):not(.ps-product--cart):not(.ps-product--cart-mobile):not(.ps-product--search-result):not(.ps-product--header-sticky) .ps-product__title {
  display: -webkit-box !important;
  min-height: 40px !important;
  margin: 0 !important;
  overflow: hidden !important;
  color: var(--pm-blue) !important;
  font-size: 16px !important;
  font-weight: 800 !important;
  line-height: 1.25 !important;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.ps-product:not(.ps-product--wide):not(.ps-product--detail):not(.ps-product--cart):not(.ps-product--cart-mobile):not(.ps-product--search-result):not(.ps-product--header-sticky) .ps-product__title:hover {
  color: var(--pm-navy) !important;
}

.ps-product:not(.ps-product--wide):not(.ps-product--detail):not(.ps-product--cart):not(.ps-product--cart-mobile):not(.ps-product--search-result):not(.ps-product--header-sticky) .ps-product__desc {
  display: -webkit-box !important;
  min-height: 38px;
  margin: 0 !important;
  overflow: hidden !important;
  color: var(--pm-muted) !important;
  font-size: 12px !important;
  font-weight: 400 !important;
  line-height: 1.55 !important;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.pm-product-card__footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-top: auto;
  padding-top: 3px;
}

.ps-product:not(.ps-product--wide):not(.ps-product--detail):not(.ps-product--cart):not(.ps-product--cart-mobile):not(.ps-product--search-result):not(.ps-product--header-sticky) .ps-product__price {
  margin: 0 !important;
  color: var(--pm-navy) !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  line-height: 1.2 !important;
}

.ps-product:not(.ps-product--wide):not(.ps-product--detail):not(.ps-product--cart):not(.ps-product--cart-mobile):not(.ps-product--search-result):not(.ps-product--header-sticky) .ps-product__price del {
  display: block;
  margin-top: 3px;
  color: var(--pm-muted);
  font-size: 11px;
  font-weight: 600;
}

.pm-product-card__add {
  display: inline-flex !important;
  min-width: 60px;
  min-height: 36px;
  align-items: center;
  justify-content: center;
  padding: 9px 18px !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: linear-gradient(90deg, var(--pm-blue), var(--pm-cyan)) !important;
  color: #ffffff !important;
  font-size: 13px !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  text-decoration: none !important;
  box-shadow: 0 14px 30px rgba(5, 126, 162, 0.24);
  white-space: nowrap;
}

.pm-product-card__add:hover {
  color: #ffffff !important;
  transform: translateY(-1px);
}

.pm-product-card__view {
  display: inline-flex !important;
  width: 100%;
  min-height: 36px;
  align-items: center;
  justify-content: center;
  padding: 9px 14px !important;
  border: 1px solid var(--pm-border) !important;
  border-radius: 999px !important;
  background: #ffffff !important;
  color: var(--pm-blue) !important;
  font-size: 13px !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  text-decoration: none !important;
}

.pm-product-card__view:hover {
  border-color: var(--pm-blue) !important;
  color: var(--pm-navy) !important;
}

.caja_donacion .ps-product {
  min-height: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  transform: none !important;
}

.caja_donacion .ps-product > .ps-product__thumbnail {
  aspect-ratio: auto !important;
  border: 0 !important;
  background: transparent !important;
}

@media (max-width: 575px) {
  .ps-product:not(.ps-product--wide):not(.ps-product--detail):not(.ps-product--cart):not(.ps-product--cart-mobile):not(.ps-product--search-result):not(.ps-product--header-sticky) {
    min-height: 430px;
  }
}

@media (min-width: 640px) {
  .pm-shop-hero,
  .pm-shop-steps,
  .pm-shop-sponsor,
  .pm-shop-sponsorships,
  .pm-shop-impact {
    padding-right: 24px;
    padding-left: 24px;
  }

  .pm-shop-page .ps-container {
    padding-right: 24px !important;
    padding-left: 24px !important;
  }
}

@media (max-width: 991px) {
  .pm-shop-hero__grid,
  .pm-shop-sponsorships__grid,
  .pm-shop-listing__grid {
    grid-template-columns: 1fr;
  }

  .ps-page--shop .pm-shop-products-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .pm-shop-hero__media {
    min-height: 320px;
  }

  .pm-shop-explore {
    position: static;
    display: block;
    min-height: 0;
    padding: 12px;
    overflow: visible;
  }

  .pm-shop-listing__grid.is-filter-collapsed {
    grid-template-columns: 1fr;
  }

  .pm-shop-filter-rail {
    display: none;
  }

  .pm-shop-explore__content {
    padding: 0;
    overflow: visible;
    opacity: 1;
    pointer-events: auto;
  }

  .pm-shop-explore ul {
    display: flex;
    overflow-x: auto;
    padding-bottom: 2px !important;
  }

  .pm-shop-explore a {
    white-space: nowrap;
  }
}

@media (max-width: 767px) {
  .pm-shop-hero {
    padding-top: 16px;
  }

  .ps-page--shop .pm-shop-listing__grid,
  .ps-page--shop .pm-shop-results,
  .ps-page--shop .pm-shop-results > .row.d-md-none,
  .ps-page--shop .pm-shop-results__header,
  .ps-page--shop .pm-shop-chips,
  .ps-page--shop .bb-product-items-wrapper,
  .ps-page--shop .ps-shopping-product,
  .ps-page--shop .pm-shop-products-grid,
  .ps-page--shop .pm-shop-load-more {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
  }

  .ps-page--shop .pm-shop-results > .row.d-md-none {
    margin-right: 0 !important;
    margin-bottom: 12px !important;
    margin-left: 0 !important;
  }

  .ps-page--shop .pm-shop-results > .row.d-md-none > [class*="col-"] {
    width: 100% !important;
    max-width: 100% !important;
    flex: 0 0 100% !important;
    padding-right: 0 !important;
    padding-left: 0 !important;
  }

  .ps-page--shop .pm-shop-results .header__filter,
  .ps-page--shop .pm-shop-results .header__filter button {
    width: 100% !important;
    max-width: 100% !important;
  }

  .ps-page--shop .pm-shop-products-grid {
    grid-template-columns: 1fr;
    gap: 12px;
  }

  .ps-page--shop .pm-shop-product-card {
    border-radius: 20px;
  }

  .ps-page--shop .pm-shop-product-card__body {
    padding: 14px;
  }

  .ps-page--shop .pm-shop-product-card__title-link h3 {
    min-height: 0;
  }

  .pm-shop-hero__card,
  .pm-shop-hero__media-content {
    padding: 22px;
  }

  .pm-shop-hero h1 {
    font-size: 31px !important;
  }

  .pm-shop-hero__search {
    align-items: stretch;
    flex-wrap: wrap;
    border-radius: 22px;
  }

  .pm-shop-hero__search i {
    padding-top: 11px;
  }

  .pm-shop-hero__search input {
    flex: 1 1 calc(100% - 32px);
  }

  .pm-shop-hero__search button {
    width: 100%;
  }

  .pm-shop-steps {
    grid-template-columns: 1fr;
  }

  .pm-shop-sponsorships__feature {
    min-height: 260px;
    padding: 20px;
  }

  .pm-shop-sponsorships__benefits {
    grid-template-columns: 1fr;
  }

  .pm-shop-impact__grid {
    grid-template-columns: 1fr;
  }

  .pm-shop-sponsor a,
  .pm-shop-results__header {
    align-items: flex-start;
    flex-direction: column;
  }

  .pm-shop-sponsor__cta {
    margin-left: 0;
  }

  .pm-shop-results__actions {
    width: 100%;
    justify-content: flex-start;
  }
}

/* Home ecosystem block replacing the old Explore ParishMart cards. */
.pm-ecosystem {
  max-width: 1280px;
  margin: 0 auto;
  padding: 40px 24px;
}

.pm-ecosystem__header {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 24px;
  margin-bottom: 24px;
}

.pm-ecosystem__header h2 {
  margin: 0 !important;
  color: var(--pm-navy) !important;
  font-family: var(--pm-font-sans) !important;
  font-size: 30px !important;
  font-weight: 800 !important;
  letter-spacing: -0.01em !important;
  line-height: 36px !important;
}

.pm-ecosystem__header p {
  max-width: 640px;
  margin: 4px 0 0 !important;
  color: var(--pm-muted) !important;
  font-family: var(--pm-font-sans) !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  line-height: 20px !important;
}

.pm-ecosystem__stack {
  display: grid;
  gap: 18px;
}

.pm-ecosystem__role.pm-card {
  position: relative;
  overflow: hidden;
  padding: 28px;
  border: 1px solid var(--pm-border);
  border-radius: 24px;
  background: rgba(255, 255, 255, 0.94);
  box-shadow: var(--pm-card-shadow);
}

.pm-ecosystem__role::after {
  position: absolute;
  right: -48px;
  bottom: -48px;
  width: 160px;
  height: 160px;
  border-radius: 999px;
  background: radial-gradient(circle, rgba(69, 177, 225, 0.20), transparent 68%);
  content: "";
  pointer-events: none;
}

.pm-ecosystem__role-grid {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(260px, 0.72fr) minmax(0, 1.28fr);
  gap: 28px;
  align-items: center;
}

.pm-ecosystem__kicker,
.pm-ecosystem__status {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: var(--pm-blue);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.06em;
  line-height: 1.2;
  text-transform: uppercase;
}

.pm-ecosystem__kicker span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 24px;
  min-width: 24px;
  height: 24px;
  border-radius: 999px;
  background: var(--pm-blue);
  color: #ffffff;
  font-size: 11px;
  line-height: 1;
  letter-spacing: 0;
  text-align: center;
}

.pm-ecosystem__role h3 {
  margin: 14px 0 0 !important;
  color: var(--pm-navy) !important;
  font-family: var(--pm-font-sans) !important;
  font-size: 26px !important;
  font-weight: 800 !important;
  letter-spacing: -0.01em !important;
  line-height: 31px !important;
}

.pm-ecosystem__role > .pm-ecosystem__role-grid > div > p,
.pm-ecosystem__showcase-head p,
.pm-ecosystem__store-body p,
.pm-ecosystem__option small {
  color: var(--pm-muted);
}

.pm-ecosystem__role > .pm-ecosystem__role-grid > div > p {
  max-width: 420px;
  margin: 10px 0 0;
  font-size: 14px;
  line-height: 1.6;
}

.pm-ecosystem__option-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.pm-ecosystem__option {
  display: flex;
  min-height: 190px;
  flex-direction: column;
  padding: 20px;
  border: 1px solid var(--pm-border);
  border-radius: 18px;
  background: rgba(255, 255, 255, 0.82);
  text-decoration: none !important;
  transition: transform 0.15s ease, box-shadow 0.15s ease, border-color 0.15s ease;
}

.pm-ecosystem__option:hover {
  transform: translateY(-2px);
  border-color: rgba(5, 126, 162, 0.26);
  box-shadow: var(--pm-soft-shadow);
}

.pm-ecosystem__icon {
  display: grid;
  width: 42px;
  height: 42px;
  place-items: center;
  border-radius: 12px;
  background: var(--pm-soft);
  color: var(--pm-blue);
}

.pm-ecosystem svg {
  width: 21px;
  height: 21px;
  fill: none;
  stroke: currentColor;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.pm-ecosystem__option strong {
  margin-top: 14px;
  color: var(--pm-navy) !important;
  font-family: var(--pm-font-sans) !important;
  font-size: 16px !important;
  font-weight: 800 !important;
  line-height: 20px !important;
}

.pm-ecosystem__option small {
  margin-top: 6px;
  font-size: 12px;
  line-height: 1.55;
}

.pm-ecosystem__option em,
.pm-ecosystem__more,
.pm-ecosystem__showcase-head > a,
.pm-ecosystem__sponsors > a {
  color: #000 !important;
  font-style: normal;
  font-size: 14px;
  font-weight: 800;
  text-decoration: none !important;
}

.pm-ecosystem__option em {
  margin-top: auto;
  padding-top: 14px;
}

.pm-ecosystem__showcase {
  position: relative;
  z-index: 1;
  margin-top: 28px;
  padding-top: 24px;
  border-top: 1px solid rgba(219, 234, 254, 0.72);
}

.pm-ecosystem__showcase-head {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  justify-content: space-between;
  gap: 14px;
  margin-bottom: 16px;
}

.pm-ecosystem__status {
  color: var(--pm-muted);
}

.pm-ecosystem__status i {
  width: 8px;
  height: 8px;
  border-radius: 999px;
  background: #10b981;
}

.pm-ecosystem__showcase h4 {
  margin: 6px 0 0;
  color: var(--pm-navy);
  font-size: 20px;
  font-weight: 800 !important;
}

.pm-ecosystem__showcase p {
  margin: 4px 0 0;
  font-size: 12px;
  line-height: 1.5;
}

.pm-ecosystem__cards {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.pm-ecosystem__store-card.pm-card,
.pm-ecosystem__business-card.pm-card {
  display: flex;
  min-height: 100%;
  flex-direction: column;
  overflow: hidden;
  padding: 12px;
  border: 1px solid var(--pm-border);
  border-radius: 22px;
  background: #ffffff;
  transition: transform 0.15s ease, box-shadow 0.15s ease;
}

.pm-ecosystem__store-card:hover,
.pm-ecosystem__business-card:hover {
  transform: translateY(-2px);
  box-shadow: var(--pm-soft-shadow);
}

.pm-ecosystem__media {
  position: relative;
  display: block;
  overflow: hidden;
  aspect-ratio: 4 / 3;
  border: 1px solid var(--pm-border);
  border-radius: 18px;
  background: #ffffff;
}

.pm-ecosystem__media--logo {
  overflow: visible;
}

.pm-ecosystem__media::after {
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent 50%, rgba(8, 40, 67, 0.22));
  content: "";
  pointer-events: none;
}

.pm-ecosystem__media > img {
  width: 100%;
  height: 100%;
  border-radius: 17px;
  object-fit: cover;
}

.pm-ecosystem__media--logo > span {
  position: absolute;
  right: 12px;
  bottom: -20px;
  z-index: 2;
  display: grid;
  width: 76px;
  height: 76px;
  place-items: center;
  padding: 7px;
  overflow: hidden;
  border-radius: 16px;
  background: #ffffff;
  border: 2px solid #ffffff;
  box-shadow: var(--pm-soft-shadow);
}

.pm-ecosystem__media--logo > span img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.pm-ecosystem__store-body {
  display: flex;
  flex: 1;
  flex-direction: column;
  gap: 7px;
  padding: 13px 12px 10px;
}

.pm-ecosystem__store-body--business {
  padding-top: 34px;
}

.pm-ecosystem__store-body h5 {
  margin: 0;
  color: var(--pm-navy);
  font-size: 16px;
  font-weight: 800;
  line-height: 1.25;
}

.pm-ecosystem__store-body a:hover h5 {
  color: var(--pm-blue);
}

.pm-ecosystem__place {
  margin: 0 !important;
  color: var(--pm-blue) !important;
  font-size: 11px !important;
  font-weight: 700;
}

.pm-ecosystem__store-body > p:not(.pm-ecosystem__place) {
  margin: 0;
  font-size: 12px;
  line-height: 1.5;
}

.pm-ecosystem__more {
  margin-top: auto;
  padding-top: 8px;
}

.pm-ecosystem__sponsors {
  position: relative !important;
  z-index: 1 !important;
  margin-top: 28px !important;
  padding-top: 24px !important;
  border-top: 1px solid rgba(219, 234, 254, 0.60) !important;
  text-align: start !important;
}

.pm-ecosystem__sponsors-head {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: flex-end !important;
  justify-content: space-between !important;
  gap: 12px !important;
  margin-bottom: 16px !important;
}

.pm-ecosystem__sponsors h4 {
  margin: 4px 0 0 !important;
  color: var(--pm-navy) !important;
  font-size: 18px !important;
  font-weight: 800 !important;
  line-height: 28px !important;
  letter-spacing: 0 !important;
}

.pm-ecosystem__sponsors p {
  margin: 0 !important;
  color: var(--pm-muted) !important;
  font-size: 12px !important;
  font-weight: 400 !important;
  line-height: 16px !important;
}

.pm-ecosystem__sponsors ul {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 24px 56px !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

.pm-ecosystem__sponsors li {
  display: list-item !important;
  min-width: 0 !important;
  min-height: 0 !important;
  color: rgba(100, 116, 139, 0.80) !important;
  font-size: 18px !important;
  font-weight: 700 !important;
  line-height: 28px !important;
  letter-spacing: -0.025em !important;
  filter: grayscale(1) !important;
  transition: color 0.15s ease, filter 0.15s ease !important;
}

.pm-ecosystem__sponsors li:hover {
  color: var(--pm-navy) !important;
  filter: grayscale(0) !important;
}

.pm-ecosystem__sponsors-head > a {
  color: var(--pm-ink) !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  line-height: 20px !important;
  text-decoration: none !important;
}

.pm-ecosystem__sponsors-head > a:hover {
  color: var(--pm-blue) !important;
  text-decoration: underline !important;
}

.pm-how-it-works {
  max-width: 1280px;
  margin: 0 auto;
  padding: 40px 24px;
}

.pm-how-it-works__panel {
  overflow: hidden;
  padding: 40px;
  border-radius: 28px;
  background:
    radial-gradient(700px 220px at 0% 0%, rgba(69, 177, 225, 0.25), transparent 60%),
    linear-gradient(135deg, var(--pm-navy) 0%, #0a4868 100%);
  color: #ffffff;
  box-shadow: none;
}

.pm-how-it-works__grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1.1fr);
  gap: 32px;
  align-items: center;
}

.pm-how-it-works h2 {
  margin: 0 !important;
  color: #ffffff !important;
  font-family: var(--pm-font-sans) !important;
  font-size: 30px !important;
  font-weight: 800 !important;
  letter-spacing: -0.01em !important;
  line-height: 37.5px !important;
}

.pm-how-it-works__panel > .pm-how-it-works__grid > div > p {
  margin: 8px 0 0 !important;
  color: rgba(255, 255, 255, 0.85) !important;
  font-size: 16px !important;
  line-height: 24px !important;
}

.pm-how-it-works__steps {
  display: grid;
  gap: 12px;
  margin-top: 24px;
}

.pm-how-it-works__step {
  padding: 16px;
  border: 1px solid rgba(255, 255, 255, 0.15);
  border-radius: 16px;
  background: rgba(255, 255, 255, 0.05);
}

.pm-how-it-works__step > div {
  display: flex;
  align-items: center;
  gap: 12px;
}

.pm-how-it-works__step span {
  display: grid;
  width: 28px;
  height: 28px;
  flex: 0 0 auto;
  place-items: center;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.15);
  color: #ffffff;
  font-size: 12px;
  font-weight: 800;
}

.pm-how-it-works__step strong {
  color: #ffffff !important;
  font-family: var(--pm-font-sans) !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  line-height: 20px !important;
}

.pm-how-it-works__step p {
  margin: 8px 0 0 !important;
  color: rgba(255, 255, 255, 0.75) !important;
  font-size: 12px !important;
  line-height: 16px !important;
}

.pm-how-it-works__video {
  overflow: hidden;
  aspect-ratio: 16 / 9;
  border: 1px solid rgba(255, 255, 255, 0.15);
  border-radius: 16px;
  background: #000000;
}

.pm-how-it-works__video iframe {
  display: block;
  width: 100%;
  height: 100%;
  border: 0;
}

@media (max-width: 991px) {
  .pm-ecosystem__role-grid,
  .pm-ecosystem__cards,
  .pm-how-it-works__grid {
    grid-template-columns: 1fr;
  }

  .pm-ecosystem__cards {
    gap: 16px;
  }
}

@media (max-width: 640px) {
  .pm-ecosystem {
    padding: 34px 16px;
  }

  .pm-how-it-works {
    padding: 34px 16px;
  }

  .pm-ecosystem__role.pm-card {
    padding: 22px;
  }

  .pm-how-it-works__panel {
    padding: 24px;
  }

  .pm-ecosystem__option-grid {
    grid-template-columns: 1fr;
  }
}

/* Vercel parity: ecosystem onboarding + featured stores section. */
.pm-ecosystem,
.pm-ecosystem * {
  font-family: var(--pm-font-sans) !important;
  letter-spacing: 0 !important;
}

.pm-ecosystem {
  max-width: 1280px !important;
  margin: 0 auto !important;
  padding: 32px 16px !important;
  color: var(--pm-ink) !important;
  font-size: 16px !important;
  line-height: 24px !important;
}

.pm-ecosystem__header {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  justify-content: flex-start !important;
  gap: 12px !important;
  width: 100% !important;
  margin-bottom: 20px !important;
  text-align: left !important;
}

.pm-ecosystem__header > div {
  width: auto !important;
  max-width: none !important;
  margin: 0 !important;
  text-align: left !important;
}

.pm-ecosystem__header h2 {
  margin: 0 !important;
  color: var(--pm-navy) !important;
  font-size: 24px !important;
  font-weight: 800 !important;
  line-height: 32px !important;
  letter-spacing: -0.025em !important;
}

.pm-ecosystem__header p {
  max-width: 672px !important;
  margin: 4px 0 0 !important;
  color: var(--pm-muted) !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  line-height: 20px !important;
}

.pm-ecosystem__stack {
  display: grid !important;
  gap: 16px !important;
}

.pm-ecosystem__role.pm-card {
  position: relative !important;
  overflow: hidden !important;
  padding: 24px !important;
  border: 1px solid var(--pm-border) !important;
  border-radius: 24px !important;
  background: rgba(255, 255, 255, 0.92) !important;
  box-shadow: var(--pm-card-shadow) !important;
}

.pm-ecosystem__role.pm-card::after {
  display: none !important;
}

.pm-ecosystem__role-grid {
  position: relative !important;
  z-index: 1 !important;
  display: grid !important;
  gap: 24px !important;
  align-items: center !important;
}

.pm-ecosystem__kicker,
.pm-ecosystem__status {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  color: var(--pm-blue) !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  line-height: 16px !important;
  letter-spacing: 0.05em !important;
  text-transform: uppercase !important;
}

.pm-ecosystem__status {
  color: var(--pm-muted) !important;
}

.pm-ecosystem__kicker span {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex: 0 0 24px !important;
  width: 24px !important;
  min-width: 24px !important;
  height: 24px !important;
  border-radius: 999px !important;
  background: var(--pm-blue) !important;
  color: #ffffff !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  letter-spacing: 0 !important;
  text-align: center !important;
}

.pm-ecosystem__role h3 {
  margin: 12px 0 0 !important;
  color: var(--pm-navy) !important;
  font-size: 24px !important;
  font-weight: 800 !important;
  line-height: 32px !important;
  letter-spacing: -0.025em !important;
}

.pm-ecosystem__kicker .pm-ecosystem__kicker-number b {
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  color: inherit !important;
  font: inherit !important;
  line-height: 1 !important;
  letter-spacing: 0 !important;
  transform: translateY(-1px);
}

.pm-ecosystem__role > .pm-ecosystem__role-grid > div > p {
  max-width: 448px !important;
  margin: 8px 0 0 !important;
  color: var(--pm-muted) !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  line-height: 20px !important;
}

.pm-ecosystem__option-grid {
  display: grid !important;
  gap: 12px !important;
}

.pm-ecosystem__option {
  display: flex !important;
  min-height: 0 !important;
  flex-direction: column !important;
  padding: 20px !important;
  border: 1px solid var(--pm-border) !important;
  border-radius: 16px !important;
  background: rgba(255, 255, 255, 0.80) !important;
  color: inherit !important;
  text-decoration: none !important;
  box-shadow: none !important;
  transition: transform 0.15s ease, box-shadow 0.15s ease !important;
}

.pm-ecosystem__option:hover {
  transform: translateY(-2px) !important;
  border-color: var(--pm-border) !important;
  box-shadow: var(--pm-soft-shadow) !important;
  text-decoration: none !important;
}

.pm-ecosystem__icon {
  display: grid !important;
  width: 40px !important;
  height: 40px !important;
  place-items: center !important;
  border-radius: 12px !important;
  background: var(--pm-soft) !important;
  color: var(--pm-blue) !important;
}

.pm-ecosystem svg {
  width: 20px !important;
  height: 20px !important;
  fill: none !important;
  stroke: currentColor !important;
  stroke-width: 2 !important;
  stroke-linecap: round !important;
  stroke-linejoin: round !important;
}

.pm-ecosystem__option strong {
  margin-top: 12px !important;
  color: var(--pm-navy) !important;
  font-size: 16px !important;
  font-weight: 800 !important;
  line-height: 24px !important;
}

.pm-ecosystem__option small {
  margin-top: 4px !important;
  color: var(--pm-muted) !important;
  font-size: 12px !important;
  font-weight: 400 !important;
  line-height: 16px !important;
}

.pm-ecosystem__option em,
.pm-ecosystem__more,
.pm-ecosystem__showcase-head > a,
.pm-ecosystem__sponsors > a {
  color: var(--pm-ink) !important;
  font-size: 14px !important;
  font-style: normal !important;
  font-weight: 700 !important;
  line-height: 20px !important;
  text-decoration: none !important;
}

.pm-ecosystem__option em {
  margin-top: 12px !important;
  padding-top: 0 !important;
}

.pm-ecosystem__showcase {
  position: relative !important;
  z-index: 1 !important;
  margin-top: 28px !important;
  padding-top: 24px !important;
  border-top: 1px solid rgba(219, 234, 254, 0.60) !important;
}

.pm-ecosystem__showcase-head {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: flex-end !important;
  justify-content: space-between !important;
  gap: 12px !important;
  margin-bottom: 16px !important;
}

.pm-ecosystem__status i {
  display: inline-block !important;
  width: 8px !important;
  height: 8px !important;
  border-radius: 999px !important;
  background: #10b981 !important;
}

.pm-ecosystem__showcase h4 {
  margin: 4px 0 0 !important;
  color: var(--pm-navy) !important;
  font-size: 18px !important;
  font-weight: 800 !important;
  line-height: 28px !important;
  letter-spacing: 0 !important;
}

.pm-ecosystem__showcase p {
  margin: 0 !important;
  color: var(--pm-muted) !important;
  font-size: 12px !important;
  font-weight: 400 !important;
  line-height: 16px !important;
}

.pm-ecosystem__showcase-head > a:hover {
  color: var(--pm-blue) !important;
  text-decoration: underline !important;
}

.pm-ecosystem__cards {
  display: grid !important;
  gap: 12px !important;
}

.pm-ecosystem__store-card.pm-card,
.pm-ecosystem__business-card.pm-card {
  display: flex !important;
  min-height: 100% !important;
  flex-direction: column !important;
  overflow: hidden !important;
  padding: 12px !important;
  border: 1px solid var(--pm-border) !important;
  border-radius: 24px !important;
  background: rgba(255, 255, 255, 0.92) !important;
  box-shadow: var(--pm-card-shadow) !important;
  transition: transform 0.15s ease, box-shadow 0.15s ease !important;
}

.pm-ecosystem__store-card:hover,
.pm-ecosystem__business-card:hover {
  transform: translateY(-2px) !important;
  box-shadow: var(--pm-soft-shadow) !important;
}

.pm-ecosystem__media {
  position: relative !important;
  display: block !important;
  overflow: hidden !important;
  aspect-ratio: 4 / 3 !important;
  border: 1px solid var(--pm-border) !important;
  border-radius: 16px !important;
  background: #ffffff !important;
}

.pm-ecosystem__media--logo {
  overflow: visible !important;
}

.pm-ecosystem__business-card .pm-ecosystem__media--logo > img {
  border-radius: 15px !important;
}

.pm-ecosystem__media > img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  border-radius: 0 !important;
  object-fit: cover !important;
}

.pm-ecosystem__media::after {
  border-radius: 15px !important;
  background: linear-gradient(to top, rgba(0, 0, 0, 0.25), transparent 58%) !important;
}

.pm-ecosystem__business-logo {
  position: absolute !important;
  right: 11px !important;
  bottom: -1px !important;
  z-index: 10 !important;
  display: grid !important;
  width: 80px !important;
  height: 80px !important;
  place-items: center !important;
  overflow: hidden !important;
  padding: 6px !important;
  border: 0 !important;
  border-radius: 16px !important;
  background: #ffffff !important;
  box-shadow: 0 0 0 2px #ffffff, var(--pm-soft-shadow) !important;
  transform: translateY(25%) !important;
}

.pm-ecosystem__media--logo > .pm-ecosystem__business-logo img,
.pm-ecosystem__business-logo img {
  display: block !important;
  width: 68px !important;
  height: 68px !important;
  object-fit: contain !important;
}

.pm-ecosystem__business-avatar {
  position: absolute !important;
  right: 11px !important;
  bottom: -1px !important;
  z-index: 10 !important;
  display: grid !important;
  width: 64px !important;
  height: 64px !important;
  place-items: center !important;
  border: 0 !important;
  border-radius: 16px !important;
  background: linear-gradient(135deg, var(--pm-blue), var(--pm-cyan)) !important;
  color: #ffffff !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  box-shadow: 0 0 0 2px #ffffff, var(--pm-soft-shadow) !important;
  transform: translateY(25%) !important;
}

.pm-ecosystem__store-body {
  display: flex !important;
  flex: 1 1 auto !important;
  flex-direction: column !important;
  gap: 8px !important;
  min-height: 185px !important;
  padding: 12px !important;
}

.pm-ecosystem__store-body--business {
  min-height: 205px !important;
  padding: 32px 12px 12px !important;
}

.pm-ecosystem .pm-label {
  display: inline-flex !important;
  width: fit-content !important;
  padding: 4px 10px !important;
  border-radius: 999px !important;
  background: #e9f8ff !important;
  color: var(--pm-blue) !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  line-height: 16px !important;
  letter-spacing: 0.04em !important;
  text-transform: uppercase !important;
}

.pm-ecosystem__store-body h5 {
  position: relative !important;
  top: 0.5px !important;
  margin: 0 !important;
  color: var(--pm-navy) !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  line-height: 24px !important;
}

.pm-ecosystem__store-card:hover h5,
.pm-ecosystem__business-card:hover h5,
.pm-ecosystem__store-body a:hover h5 {
  color: var(--pm-blue) !important;
}

.pm-ecosystem__place {
  margin: 0 !important;
  color: var(--pm-blue) !important;
  font-size: 11px !important;
  font-weight: 500 !important;
  line-height: 16.5px !important;
}

.pm-ecosystem__showcase .pm-ecosystem__store-body .pm-ecosystem__place {
  color: var(--pm-blue) !important;
  font-size: 11px !important;
  font-weight: 500 !important;
  line-height: 16.5px !important;
}

.pm-ecosystem__store-body > p:not(.pm-ecosystem__place) {
  display: -webkit-box !important;
  overflow: hidden !important;
  margin: 0 !important;
  color: var(--pm-muted) !important;
  font-size: 12px !important;
  font-weight: 400 !important;
  line-height: 16px !important;
  -webkit-box-orient: vertical !important;
  -webkit-line-clamp: 2 !important;
}

.pm-ecosystem__more {
  margin-top: auto !important;
  padding-top: 8px !important;
}

.pm-ecosystem__more:hover {
  color: var(--pm-navy) !important;
  text-decoration: none !important;
}

.pm-ecosystem__business-card .pm-ecosystem__media > img {
  transition: transform 0.2s ease !important;
}

.pm-ecosystem__business-card:hover .pm-ecosystem__media > img {
  transform: scale(1.015) !important;
}

@media (min-width: 640px) {
  .pm-ecosystem {
    padding: 40px 24px !important;
  }

  .pm-ecosystem__header {
    flex-direction: row !important;
    align-items: flex-end !important;
    justify-content: space-between !important;
    margin-bottom: 24px !important;
  }

  .pm-ecosystem__header h2 {
    font-size: 30px !important;
    line-height: 36px !important;
  }

  .pm-ecosystem__role.pm-card {
    padding: 32px !important;
  }

  .pm-ecosystem__option-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .pm-ecosystem__cards {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}

@media (min-width: 768px) {
  .pm-ecosystem__role-grid {
    grid-template-columns: 1fr 2fr !important;
  }

  .pm-ecosystem__role h3 {
    font-size: 26px !important;
    line-height: 34.6667px !important;
  }
}

.pm-ecosystem,
.pm-ecosystem * {
  font-family: var(--pm-font-sans) !important;
}

.pm-ecosystem__header > div {
  width: auto !important;
  max-width: none !important;
}

.pm-ecosystem__header h2 {
  letter-spacing: -0.025em !important;
}

.pm-ecosystem__role h3 {
  letter-spacing: -0.025em !important;
}

@media (min-width: 768px) {
  .pm-ecosystem__role h3 {
    line-height: 34.6667px !important;
  }
}

/* Footer: match the Vercel navy footer while preserving Botble widgets. */
.pm-site-footer.ps-footer {
  font-family: var(--pm-font-sans) !important;
  padding: 0 !important;
  border: 0 !important;
  background: #0b3454 !important;
  color: #ffffff !important;
}

.pm-site-footer.ps-footer *,
.pm-site-footer.ps-footer input,
.pm-site-footer.ps-footer button,
.pm-site-footer.ps-footer select,
.pm-site-footer.ps-footer textarea {
  font-family: var(--pm-font-sans) !important;
}

.pm-site-footer .ps-container {
  max-width: 1280px !important;
  margin: 0 auto !important;
  padding: 56px 24px 0 !important;
}



.pm-site-footer .ps-footer__widgets {
  display: grid !important;
  grid-template-columns: 268px repeat(3, 191.43px) 229.71px !important;
  gap: 40px !important;
  align-items: start !important;
  padding: 0 0 56px !important;
  border: 0 !important;
}

.pm-site-footer .panel,
.pm-site-footer .panel-default,
.pm-site-footer .panel-content,
.pm-site-footer .panel-content > div {
  display: block !important;
  width: 100% !important;
  max-width: 360px !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: rgba(255, 255, 255, 1) !important;
}

.pm-site-footer .ps-footer__widgets > .panel {
  min-width: 0 !important;
  justify-self: start !important;
}

.pm-site-footer .widget,
.pm-site-footer .widget_footer,
.pm-site-footer aside.widget.widget_footer {
  width: auto !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  color: rgba(255, 255, 255, 0.70) !important;
}

.pm-site-footer .widget-title,
.pm-site-footer .widget .widget-title,
.pm-site-footer h1,
.pm-site-footer h2,
.pm-site-footer h3,
.pm-site-footer h4,
.pm-site-footer h5,
.pm-site-footer h6 {
  margin: 0 0 12px !important;
  color: #ffffff !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  letter-spacing: 0.65px !important;
  line-height: 18.5714px !important;
  text-transform: uppercase !important;
}

.pm-site-footer p,
.pm-site-footer li,
.pm-site-footer span,
.pm-site-footer .rpw,
.pm-site-footer .widget_content,
.pm-site-footer .panel-content {
  color: rgba(255, 255, 255, 1) !important;
  font-size: 14px !important;
  line-height: 1.7 !important;
  text-align: left !important;
  overflow-wrap: normal !important;
  word-break: normal !important;
  white-space: normal !important;
}

.ps-footer .panel-content p {
  padding-right: 0px !important;
}

@media (min-width: 992px) {
  .page-store .pm-store-profile-header .pm-store-header__logo-shell {
    display: block !important;
    width: 64px !important;
    height: 64px !important;
    flex: 0 0 64px !important;
    padding: 2px !important;
    overflow: hidden !important;
    border: 0 !important;
    outline: 1px solid rgba(219, 234, 254, 0.90) !important;
    border-radius: calc(infinity * 1px) !important;
    background: #ffffff !important;
    box-shadow: 0 18px 36px rgba(2, 80, 110, 0.10) !important;
  }

  .page-store .pm-store-profile-header .pm-store-header__logo-shell .pm-store-header__logo {
    display: block !important;
    width: 60px !important;
    height: 60.4167px !important;
    max-width: 60px !important;
    max-height: 60.4167px !important;
    flex: 0 0 auto !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    object-fit: contain !important;
  }
}

/* Store mobile menu: match the Vercel parish drawer. */
.page-store .ps-panel--sidebar.pm-store-mobile-menu[id^="store-menu-mobile-"] {
  width: min(340px, 86vw) !important;
  max-width: 340px !important;
  border-right: 0 !important;
  background: #ffffff !important;
  box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25) !important;
}

.page-store .pm-store-mobile-menu .pm-store-mobile-menu__header {
  height: 94px !important;
  min-height: 94px !important;
  padding: 16px 20px !important;
  border-bottom: 1px solid #dbeafe !important;
}

.page-store .pm-store-mobile-menu__identity {
  display: flex !important;
  min-width: 0 !important;
  max-width: calc(100% - 48px) !important;
  align-items: center !important;
  gap: 12px !important;
  color: #0b3152 !important;
}

.page-store .pm-store-mobile-menu__identity-logo {
  width: 48px !important;
  height: 48px !important;
  flex: 0 0 48px !important;
  overflow: hidden !important;
  border-radius: 50% !important;
}

.page-store .pm-store-mobile-menu__identity-logo img {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
}

.page-store .pm-store-mobile-menu__identity-copy {
  display: flex !important;
  min-width: 0 !important;
  flex-direction: column !important;
}

.page-store .pm-store-mobile-menu__identity-copy strong {
  color: #0b3152 !important;
  font-family: var(--pm-font-sans) !important;
  font-size: 16px !important;
  font-weight: 800 !important;
  line-height: 1.45 !important;
}

.page-store .pm-store-mobile-menu__identity-copy small {
  margin-top: 2px !important;
  color: #64748b !important;
  font-size: 12px !important;
  line-height: 1.25 !important;
}

.page-store .pm-store-mobile-menu__close {
  width: 36px !important;
  height: 36px !important;
  min-width: 36px !important;
  min-height: 36px !important;
  border: 1px solid #dbeafe !important;
  color: #64748b !important;
}

.page-store .pm-store-mobile-menu__close svg {
  display: block !important;
  width: 20px !important;
  height: 20px !important;
  stroke: currentColor !important;
}

.page-store .pm-store-mobile-menu__content {
  padding: 24px 20px 170px !important;
}

.page-store .pm-store-mobile-menu .menu--mobile > li {
  min-height: 48px !important;
  margin-bottom: 0 !important;
}

.page-store .pm-store-mobile-menu .menu--mobile > li > a {
  display: flex !important;
  width: 100% !important;
  height: 48px !important;
  min-height: 48px !important;
  align-items: center !important;
  gap: 12px !important;
  padding: 12px 4px !important;
  border-radius: 16px !important;
  color: #102a43 !important;
  font-family: var(--pm-font-sans) !important;
  font-size: 16px !important;
  font-weight: 600 !important;
  line-height: 20px !important;
}

.page-store .pm-store-mobile-menu .menu--mobile > li > a::before,
.page-store .pm-store-mobile-menu__nav > li > a::before {
  display: none !important;
  content: none !important;
}

.page-store .pm-store-mobile-menu__icon {
  position: static !important;
  display: block !important;
  width: 20px !important;
  height: 20px !important;
  flex: 0 0 20px !important;
  color: #057ea2 !important;
  stroke: currentColor !important;
}

.page-store .pm-store-mobile-menu__extra {
  margin-top: 3px !important;
  padding-top: 17px !important;
  border-top: 1px solid #dbeafe !important;
}

.page-store .pm-store-mobile-menu .menu--mobile.pm-store-mobile-menu__extra {
  margin-top: 2px !important;
  padding-top: 18px !important;
  border-top: 1px solid #dbeafe !important;
}

.page-store .pm-store-mobile-menu .menu--mobile-extra > li > a {
  font-weight: 500 !important;
}

.page-store .pm-store-mobile-menu .menu--mobile-extra .pm-store-mobile-menu__icon {
  color: #64748b !important;
}

.page-store .pm-store-mobile-menu__footer {
  position: absolute !important;
  right: 0 !important;
  bottom: 0 !important;
  left: 0 !important;
  display: flex !important;
  min-height: 142px !important;
  align-items: center !important;
  gap: 8px !important;
  padding: 22px 16px !important;
  border-top: 1px solid #dbeafe !important;
  background: #f8fcff !important;
}

.page-store .pm-store-mobile-menu__back {
  display: flex !important;
  min-width: 0 !important;
  height: 52px !important;
  flex: 1 1 auto !important;
  align-items: center !important;
  gap: 8px !important;
  padding: 8px 14px !important;
  border: 1px solid #dbeafe !important;
  border-radius: 28px !important;
  background: #fff !important;
  color: #64748b !important;
  font-size: 14px !important;
  font-weight: 700 !important;
}

.page-store .pm-store-mobile-menu__back svg {
  width: 18px !important;
  height: 18px !important;
  flex: 0 0 18px !important;
  fill: none !important;
  stroke: currentColor !important;
  stroke-width: 2 !important;
}

.page-store .pm-store-mobile-menu__back img {
  width: 118px !important;
  max-width: calc(100% - 78px) !important;
  height: auto !important;
}

.page-store .pm-store-mobile-menu__language {
  flex: 0 0 auto !important;
}

.page-store .pm-store-mobile-menu__language-toggle {
  display: grid !important;
  width: 42px !important;
  height: 42px !important;
  place-items: center !important;
  border: 1px solid #dbeafe !important;
  border-radius: 50% !important;
  background: #fff !important;
  color: #0b3152 !important;
  font-size: 15px !important;
  font-weight: 800 !important;
}

/* Parish store responsive header: the mobile breakpoint has no desktop tab row. */
@media (max-width: 991px) {
  html body .page-store .pm-store-profile-header.store-identity-shell,
  html body .page-store .pm-store-profile-header .pm-store-header.store-identity-nav {
    height: 130px !important;
    min-height: 130px !important;
  }

  html body .page-store .pm-store-profile-header .pm-store-header__brand {
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
    flex: 1 1 auto !important;
  }

  html body .page-store .pm-store-profile-header .pm-store-header__copy {
    display: flex !important;
    min-width: 0 !important;
    flex: 1 1 auto !important;
  }

  html body .page-store .pm-store-profile-header .pm-store-header__copy strong {
    display: block !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
  }

  html body .page-store .pm-store-profile-header .pm-store-header__copy small,
  html body .page-store .pm-store-profile-header .pm-store-header__account,
  html body .page-store .pm-store-profile-header .pm-store-header__language-wrap {
    display: none !important;
  }

  html body .page-store .pm-store-profile-header .pm-store-header__bottom {
    display: none !important;
  }

  html body .page-store .pm-store-header-spacer {
    height: 130px !important;
    min-height: 130px !important;
  }

  html body .page-store .store-page--parish .pm-store-products-page .pm-shop-hero__search {
    position: relative !important;
    display: flex !important;
    width: 100% !important;
    max-width: 100% !important;
    align-items: center !important;
    flex-wrap: nowrap !important;
    overflow: hidden !important;
  }

  html body .page-store .store-page--parish .pm-store-products-page .pm-shop-hero__search input[type="search"] {
    width: auto !important;
    min-width: 0 !important;
    flex: 1 1 auto !important;
  }

  html body .page-store .store-page--parish .pm-store-products-page .pm-shop-hero__search button {
    position: static !important;
    inset: auto !important;
    margin: 0 !important;
    flex: 0 0 77.625px !important;
    transform: none !important;
  }
  html body .page-store .store-page--parish .pm-store-products-page .pm-shop-listing {
    padding-right: 15px !important;
    padding-left: 15px !important;
  }
}

/* EOF: no page-level horizontal scroll in any viewport. */
html,
body {
  width: 100% !important;
  max-width: 100% !important;
  overflow-x: hidden !important;
}

body > .ck-content,
.page-store,
.ps-page--product,
.ps-container,
.ck-container,
.pm-site-footer,
.pm-site-footer * {
  max-width: 100% !important;
}

.pm-mini-cart-drawer.ps-cart--mobile {
  right: 0 !important;
  left: auto !important;
  max-width: 100vw !important;
  transform: none !important;
}

body:not(.pm-mini-cart-open) .pm-mini-cart-drawer.ps-cart--mobile {
  pointer-events: none !important;
}

@media (max-width: 991px) {
  .pm-site-footer .ps-footer__copyright {
    width: 100% !important;
    margin-right: 0 !important;
    margin-left: 0 !important;
  }

  .pm-site-footer .pm-footer-legal-menu,
  .pm-site-footer .footer-legal-menu {
    max-width: 100% !important;
    flex-wrap: wrap !important;
  }
}

/* Last rule: /products mobile must match the Vercel shop listing. */
@media (max-width: 767px) {
  body#product-page .pm-shop-page {
    padding-top: 65px !important;
  }

  body#product-page .pm-shop-hero,
  body#product-page .pm-shop-steps,
  body#product-page .pm-shop-sponsor,
  body#product-page .pm-shop-explore,
  body#product-page .pm-shop-results > .row.d-md-none,
  body#product-page .pm-shop-results__header {
    display: none !important;
  }

  body#product-page .ps-container,
  body#product-page .ps-layout--shop,
  body#product-page .ps-layout__right,
  body#product-page .ps-shopping,
  body#product-page .pm-shop-listing__grid,
  body#product-page .pm-shop-results,
  body#product-page .bb-product-items-wrapper,
  body#product-page .ps-shopping-product,
  body#product-page .pm-shop-products-grid,
  body#product-page .pm-shop-load-more {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
  }

  body#product-page .ps-container {
    padding-right: 16px !important;
    padding-left: 16px !important;
  }

  body#product-page .ps-layout--shop,
  body#product-page .pm-shop-listing__grid {
    display: block !important;
  }

  body#product-page .ps-shopping {
    padding: 0 0 36px !important;
  }

  body#product-page .pm-shop-chips {
    display: flex !important;
    width: 100% !important;
    max-width: 100% !important;
    gap: 8px !important;
    flex-wrap: nowrap !important;
    justify-content: flex-start !important;
    overflow-x: auto !important;
    margin: 0 0 16px !important;
    padding: 0 0 2px !important;
    scrollbar-width: none;
  }

  body#product-page .pm-shop-chips::-webkit-scrollbar {
    display: none !important;
  }

  body#product-page .pm-shop-chips a {
    display: inline-flex !important;
    flex: 0 0 auto !important;
    min-height: 34px !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 8px 16px !important;
    border: 1px solid #dbeafe !important;
    border-radius: 999px !important;
    background: rgba(255, 255, 255, 0.92) !important;
    color: var(--pm-navy) !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    line-height: 1 !important;
    box-shadow: none !important;
  }

  body#product-page .pm-shop-chips a:nth-child(-n+3) {
    display: none !important;
  }

  body#product-page .pm-shop-products-grid {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 16px !important;
  }

  body#product-page .pm-shop-product-card.pm-card {
    width: 100% !important;
    min-height: 0 !important;
    overflow: hidden !important;
    border: 1px solid #dbeafe !important;
    border-radius: 20px !important;
    background: rgba(255, 255, 255, 0.94) !important;
    box-shadow: 0 18px 50px rgba(2, 80, 110, 0.08) !important;
  }

  body#product-page .pm-shop-product-card__media {
    height: 224px !important;
    min-height: 224px !important;
    max-height: 224px !important;
    aspect-ratio: auto !important;
    background: #ffffff !important;
  }

  body#product-page .pm-shop-product-card__image {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 10px 16px 8px !important;
    background: #ffffff !important;
  }

  body#product-page .pm-shop-product-card__image img {
    width: 100% !important;
    height: 100% !important;
    min-width: 0 !important;
    min-height: 0 !important;
    max-width: 100% !important;
    max-height: 100% !important;
    object-fit: contain !important;
    object-position: center center !important;
  }

  body#product-page .pm-shop-product-card__body {
    gap: 9px !important;
    padding: 0 16px 16px !important;
  }

  body#product-page .pm-shop-product-card__title-link h3 {
    min-height: 0 !important;
    color: var(--pm-navy) !important;
    font-size: 14px !important;
    font-weight: 800 !important;
    line-height: 17px !important;
  }

  body#product-page .pm-shop-product-card__body p {
    margin-top: 2px !important;
    color: var(--pm-muted) !important;
    font-size: 11px !important;
    line-height: 14px !important;
  }

  body#product-page .pm-shop-product-card__footer {
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;
    padding-top: 4px !important;
  }

  body#product-page .pm-shop-product-card__footer span {
    color: var(--pm-navy) !important;
    font-size: 14px !important;
    font-weight: 800 !important;
    line-height: 18px !important;
  }

  body#product-page .pm-shop-product-card__add {
    min-width: 60px !important;
    min-height: 34px !important;
    padding: 9px 15px !important;
    border-radius: 999px !important;
    font-size: 12px !important;
    font-weight: 800 !important;
  }
}

/* EOF /products mobile override: keep shop cards aligned with Vercel reference. */
@media (max-width: 767px) {
  body#product-page .pm-shop-page {
    padding-top: 65px !important;
  }

  body#product-page .pm-shop-hero,
  body#product-page .pm-shop-steps,
  body#product-page .pm-shop-sponsor,
  body#product-page .pm-shop-explore,
  body#product-page .pm-shop-results > .row.d-md-none,
  body#product-page .pm-shop-results__header {
    display: none !important;
  }

  body#product-page .ps-container,
  body#product-page .ps-layout--shop,
  body#product-page .ps-layout__right,
  body#product-page .ps-shopping,
  body#product-page .pm-shop-listing__grid,
  body#product-page .pm-shop-results,
  body#product-page .bb-product-items-wrapper,
  body#product-page .ps-shopping-product,
  body#product-page .pm-shop-products-grid,
  body#product-page .pm-shop-load-more {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
  }

  body#product-page .ps-container {
    padding-right: 16px !important;
    padding-left: 16px !important;
  }

  body#product-page .ps-layout--shop,
  body#product-page .pm-shop-listing__grid {
    display: block !important;
  }

  body#product-page .ps-shopping {
    padding: 0 0 36px !important;
  }

  body#product-page .pm-shop-chips {
    display: flex !important;
    width: 100% !important;
    max-width: 100% !important;
    gap: 8px !important;
    flex-wrap: nowrap !important;
    justify-content: flex-start !important;
    overflow-x: auto !important;
    margin: 0 0 16px !important;
    padding: 0 0 2px !important;
    scrollbar-width: none;
  }

  body#product-page .pm-shop-chips::-webkit-scrollbar {
    display: none !important;
  }

  body#product-page .pm-shop-chips a {
    display: inline-flex !important;
    flex: 0 0 auto !important;
    min-height: 34px !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 8px 16px !important;
    border: 1px solid #dbeafe !important;
    border-radius: 999px !important;
    background: rgba(255, 255, 255, 0.92) !important;
    color: var(--pm-navy) !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    line-height: 1 !important;
    box-shadow: none !important;
  }

  body#product-page .pm-shop-chips a:nth-child(-n+3) {
    display: none !important;
  }

  body#product-page .pm-shop-products-grid {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 16px !important;
  }

  body#product-page .pm-shop-product-card.pm-card {
    width: 100% !important;
    min-height: 0 !important;
    overflow: hidden !important;
    border: 1px solid #dbeafe !important;
    border-radius: 20px !important;
    background: rgba(255, 255, 255, 0.94) !important;
    box-shadow: 0 18px 50px rgba(2, 80, 110, 0.08) !important;
  }

  body#product-page .pm-shop-product-card__media {
    height: 224px !important;
    min-height: 224px !important;
    max-height: 224px !important;
    aspect-ratio: auto !important;
    background: #ffffff !important;
  }

  body#product-page .pm-shop-product-card__image {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 10px 16px 8px !important;
    background: #ffffff !important;
  }

  body#product-page .pm-shop-product-card__image img {
    width: 100% !important;
    height: 100% !important;
    min-width: 0 !important;
    min-height: 0 !important;
    max-width: 100% !important;
    max-height: 100% !important;
    object-fit: contain !important;
    object-position: center center !important;
  }

  body#product-page .pm-shop-product-card__body {
    gap: 9px !important;
    padding: 0 16px 16px !important;
  }

  body#product-page .pm-shop-product-card__title-link h3 {
    min-height: 0 !important;
    color: var(--pm-navy) !important;
    font-size: 14px !important;
    font-weight: 800 !important;
    line-height: 17px !important;
  }

  body#product-page .pm-shop-product-card__body p {
    margin-top: 2px !important;
    color: var(--pm-muted) !important;
    font-size: 11px !important;
    line-height: 14px !important;
  }

  body#product-page .pm-shop-product-card__footer {
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;
    padding-top: 4px !important;
  }

  body#product-page .pm-shop-product-card__footer span {
    color: var(--pm-navy) !important;
    font-size: 14px !important;
    font-weight: 800 !important;
    line-height: 18px !important;
  }

  body#product-page .pm-shop-product-card__add {
    min-width: 60px !important;
    min-height: 34px !important;
    padding: 9px 15px !important;
    border-radius: 999px !important;
    font-size: 12px !important;
    font-weight: 800 !important;
  }
}

/* Final /products mobile override: match the Vercel shop card flow. */
@media (max-width: 767px) {
  body#product-page .pm-shop-page {
    padding-top: 65px !important;
  }

  body#product-page .pm-shop-hero,
  body#product-page .pm-shop-steps,
  body#product-page .pm-shop-sponsor,
  body#product-page .pm-shop-explore,
  body#product-page .pm-shop-results > .row.d-md-none,
  body#product-page .pm-shop-results__header {
    display: none !important;
  }

  body#product-page .ps-container,
  body#product-page .ps-layout--shop,
  body#product-page .ps-layout__right,
  body#product-page .ps-shopping,
  body#product-page .pm-shop-listing__grid,
  body#product-page .pm-shop-results,
  body#product-page .bb-product-items-wrapper,
  body#product-page .ps-shopping-product,
  body#product-page .pm-shop-products-grid,
  body#product-page .pm-shop-load-more {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
  }

  body#product-page .ps-container {
    padding-right: 16px !important;
    padding-left: 16px !important;
  }

  body#product-page .ps-layout--shop,
  body#product-page .pm-shop-listing__grid {
    display: block !important;
  }

  body#product-page .ps-shopping {
    padding: 0 0 36px !important;
  }

  body#product-page .pm-shop-chips {
    display: flex !important;
    width: 100% !important;
    max-width: 100% !important;
    gap: 8px !important;
    flex-wrap: nowrap !important;
    justify-content: flex-start !important;
    overflow-x: auto !important;
    margin: 0 0 16px !important;
    padding: 0 0 2px !important;
    scrollbar-width: none;
  }

  body#product-page .pm-shop-chips::-webkit-scrollbar {
    display: none !important;
  }

  body#product-page .pm-shop-chips a {
    display: inline-flex !important;
    flex: 0 0 auto !important;
    min-height: 34px !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 8px 16px !important;
    border: 1px solid #dbeafe !important;
    border-radius: 999px !important;
    background: rgba(255, 255, 255, 0.92) !important;
    color: var(--pm-navy) !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    line-height: 1 !important;
    box-shadow: none !important;
  }

  body#product-page .pm-shop-chips a:nth-child(-n+3) {
    display: none !important;
  }

  body#product-page .pm-shop-products-grid {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 16px !important;
  }

  body#product-page .pm-shop-product-card.pm-card {
    width: 100% !important;
    min-height: 0 !important;
    overflow: hidden !important;
    border: 1px solid #dbeafe !important;
    border-radius: 20px !important;
    background: rgba(255, 255, 255, 0.94) !important;
    box-shadow: 0 18px 50px rgba(2, 80, 110, 0.08) !important;
  }

  body#product-page .pm-shop-product-card__media {
    height: 224px !important;
    min-height: 224px !important;
    max-height: 224px !important;
    aspect-ratio: auto !important;
    background: #ffffff !important;
  }

  body#product-page .pm-shop-product-card__image {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 10px 16px 8px !important;
    background: #ffffff !important;
  }

  body#product-page .pm-shop-product-card__image img {
    width: 100% !important;
    height: 100% !important;
    min-width: 0 !important;
    min-height: 0 !important;
    max-width: 100% !important;
    max-height: 100% !important;
    object-fit: contain !important;
    object-position: center center !important;
  }

  body#product-page .pm-shop-product-card__body {
    gap: 9px !important;
    padding: 0 16px 16px !important;
  }

  body#product-page .pm-shop-product-card__title-link h3 {
    min-height: 0 !important;
    color: var(--pm-navy) !important;
    font-size: 14px !important;
    font-weight: 800 !important;
    line-height: 17px !important;
  }

  body#product-page .pm-shop-product-card__body p {
    margin-top: 2px !important;
    color: var(--pm-muted) !important;
    font-size: 11px !important;
    line-height: 14px !important;
  }

  body#product-page .pm-shop-product-card__footer {
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;
    padding-top: 4px !important;
  }

  body#product-page .pm-shop-product-card__footer span {
    color: var(--pm-navy) !important;
    font-size: 14px !important;
    font-weight: 800 !important;
    line-height: 18px !important;
  }

  body#product-page .pm-shop-product-card__add {
    min-width: 60px !important;
    min-height: 34px !important;
    padding: 9px 15px !important;
    border-radius: 999px !important;
    font-size: 12px !important;
    font-weight: 800 !important;
  }
}

/* Mobile /products parity: compact Vercel-style product cards. */
@media (max-width: 767px) {
  .pm-shop-page .ps-layout--shop,
  .pm-shop-page .ps-layout__right,
  .pm-shop-page .ps-shopping,
  .pm-shop-page .pm-shop-listing__grid,
  .pm-shop-page .pm-shop-results,
  .pm-shop-page .bb-product-items-wrapper,
  .pm-shop-page .ps-shopping-product,
  .pm-shop-page .pm-shop-products-grid,
  .pm-shop-page .pm-shop-load-more {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
  }

  .pm-shop-page .pm-shop-listing__grid {
    display: block !important;
  }

  .pm-shop-page .pm-shop-results > .row.d-md-none,
  .pm-shop-page .pm-shop-results__header {
    display: none !important;
  }

  .pm-shop-page .pm-shop-chips {
    width: 100% !important;
    max-width: 100% !important;
    flex-wrap: nowrap !important;
    overflow-x: auto !important;
    margin-bottom: 16px !important;
    padding-bottom: 2px !important;
    scrollbar-width: none;
  }

  .pm-shop-page .pm-shop-chips::-webkit-scrollbar {
    display: none;
  }

  .pm-shop-page .pm-shop-chips a {
    flex: 0 0 auto;
    min-height: 34px;
  }

  .pm-shop-page .pm-shop-products-grid {
    grid-template-columns: 1fr !important;
    gap: 16px !important;
  }

  .pm-shop-page .pm-shop-product-card.pm-card {
    width: 100% !important;
    min-height: 0 !important;
    border-radius: 20px !important;
  }

  .pm-shop-page .pm-shop-product-card__media {
    height: 216px !important;
    min-height: 216px !important;
    max-height: 216px !important;
    aspect-ratio: auto !important;
    background: #ffffff !important;
  }

  .pm-shop-page .pm-shop-product-card__image {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 14px 16px !important;
  }

  .pm-shop-page .pm-shop-product-card__image img {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
    object-position: center center !important;
  }

  .pm-shop-page .pm-shop-product-card__body {
    gap: 9px !important;
    padding: 0 16px 16px !important;
  }

  .pm-shop-page .pm-shop-product-card__title-link h3 {
    min-height: 0 !important;
    font-size: 15px !important;
    line-height: 1.25 !important;
  }

  .pm-shop-page .pm-shop-product-card__body p {
    margin-top: 2px !important;
    font-size: 11px !important;
  }

  .pm-shop-page .pm-shop-product-card__footer {
    align-items: center !important;
    padding-top: 4px !important;
  }

  .pm-shop-page .pm-shop-product-card__footer span {
    font-size: 15px !important;
  }

  .pm-shop-page .pm-shop-product-card__add {
    min-height: 34px !important;
    padding: 9px 16px !important;
  }
}

@media (max-width: 360px) {
  .pm-shop-page .pm-shop-product-card__media {
    height: 206px !important;
    min-height: 206px !important;
    max-height: 206px !important;
  }
}

@media (min-width: 992px) {
  #product-page .pm-product-right-rail .ps-product__info h1 {
    font-family: var(--pm-font-sans) !important;
    font-size: 36px !important;
    font-weight: 800 !important;
    line-height: 40px !important;
    letter-spacing: 0 !important;
    color: rgb(11, 52, 84) !important;
  }
}

/* Final no-horizontal-scroll override. Keep page and off-canvas UI inside the viewport. */
html,
body {
  width: 100% !important;
  max-width: 100% !important;
  overflow-x: hidden !important;
}

body > .ck-content,
.page-store,
.ps-page--product,
.ps-container,
.ck-container,
.pm-site-footer,
.pm-site-footer * {
  max-width: 100% !important;
}

.pm-mini-cart-drawer.ps-cart--mobile {
  right: 0 !important;
  left: auto !important;
  max-width: 100vw !important;
  transform: none !important;
}

body:not(.pm-mini-cart-open) .pm-mini-cart-drawer.ps-cart--mobile {
  pointer-events: none !important;
}

@media (max-width: 991px) {
  .pm-site-footer .ps-footer__copyright {
    width: 100% !important;
    margin-right: 0 !important;
    margin-left: 0 !important;
  }

  .pm-site-footer .pm-footer-legal-menu,
  .pm-site-footer .footer-legal-menu {
    max-width: 100% !important;
    flex-wrap: wrap !important;
  }
}

/* Global guard: the site must never expose page-level horizontal scroll. */
html,
body {
  width: 100% !important;
  max-width: 100% !important;
  overflow-x: hidden !important;
}

body {
  position: relative;
}

body > .ck-content,
.page-store,
.ps-page--product,
.ps-container,
.ck-container {
  max-width: 100% !important;
}

.pm-mini-cart-drawer.ps-cart--mobile {
  right: 0 !important;
  left: auto !important;
  max-width: 100vw !important;
  transform: none !important;
}

body:not(.pm-mini-cart-open) .pm-mini-cart-drawer.ps-cart--mobile {
  pointer-events: none !important;
}

/* Final product gallery fix: keep the full product image visible inside Slick. */
#product-page .bb-product-gallery-images .slick-list,
#product-page .bb-product-gallery-images .slick-track,
#product-page .bb-product-gallery-images .slick-slide {
  width: 100% !important;
  height: 100% !important;
}

#product-page .bb-product-gallery-images a.slick-slide {
  display: grid !important;
  place-items: center !important;
}

#product-page .bb-product-gallery-images img {
  width: 90% !important;
  height: 90% !important;
  max-width: 90% !important;
  max-height: 90% !important;
  object-fit: contain !important;
  object-position: center !important;
}

@media (min-width: 992px) {
  #product-page .ps-breadcrumb {
    padding: 15px 0 24px !important;
    border-top: 0 !important;
  }

  #product-page .ps-breadcrumb .breadcrumb-custom,
  #product-page .ps-breadcrumb .pm-product-breadcrumb,
  #product-page .ps-breadcrumb .breadcrumb-custom a,
  #product-page .ps-breadcrumb .breadcrumb-custom span,
  #product-page .ps-breadcrumb .breadcrumb-custom strong,
  #product-page .ps-breadcrumb .pm-product-breadcrumb a,
  #product-page .ps-breadcrumb .pm-product-breadcrumb span,
  #product-page .ps-breadcrumb .pm-product-breadcrumb strong {
    line-height: 16px !important;
  }

  #product-page .ps-breadcrumb .breadcrumb-custom,
  #product-page .ps-breadcrumb .pm-product-breadcrumb,
  #product-page .ps-breadcrumb .breadcrumb-custom a,
  #product-page .ps-breadcrumb .breadcrumb-custom span,
  #product-page .ps-breadcrumb .pm-product-breadcrumb a,
  #product-page .ps-breadcrumb .pm-product-breadcrumb span {
    font-family: var(--pm-font-sans) !important;
    font-size: 12px !important;
    font-weight: 400 !important;
  }

  #product-page .ps-breadcrumb .breadcrumb-custom strong,
  #product-page .ps-breadcrumb .pm-product-breadcrumb strong {
    font-family: var(--pm-font-sans) !important;
    font-size: 12px !important;
    font-weight: 700 !important;
  }
}

@media (max-width: 1199px) {
  #product-page {
    padding-bottom: 0px !important;
  }
}

/* Final override: global mobile menu must match the Vercel drawer on every route. */
#menu-mobile.pm-mobile-menu.ps-panel--sidebar {
  width: min(340px, 86vw) !important;
  max-width: 340px !important;
  border-right: 0 !important;
}

#menu-mobile.pm-mobile-menu .pm-mobile-menu__header {
  height: 69px !important;
  min-height: 69px !important;
  padding: 16px 20px !important;
  border-bottom: 1px solid #dbeafe !important;
}

#menu-mobile.pm-mobile-menu .pm-mobile-menu__logo {
  width: 170.5px !important;
  max-width: calc(100% - 56px) !important;
}

#menu-mobile.pm-mobile-menu .pm-mobile-menu__logo img {
  display: block !important;
  width: 170.5px !important;
  height: 32px !important;
  max-width: 170.5px !important;
  object-fit: contain !important;
}

#menu-mobile.pm-mobile-menu .pm-mobile-menu__close {
  width: 36px !important;
  height: 36px !important;
  min-width: 36px !important;
  min-height: 36px !important;
}

#menu-mobile.pm-mobile-menu .pm-mobile-menu__content {
  padding: 16px 12px 28px !important;
}

#menu-mobile.pm-mobile-menu .menu--mobile > li {
  min-height: 48px !important;
}

#menu-mobile.pm-mobile-menu .menu--mobile > li > a {
  display: flex !important;
  width: 100% !important;
  height: 44px !important;
  min-height: 44px !important;
  align-items: center !important;
  gap: 12px !important;
  padding: 12px !important;
  border-radius: 16px !important;
  font-family: var(--pm-font-sans) !important;
  font-size: 14px !important;
  line-height: 20px !important;
}

#menu-mobile.pm-mobile-menu .pm-mobile-menu__nav > li > a {
  font-weight: 600 !important;
}

#menu-mobile.pm-mobile-menu .menu--mobile-extra > li > a {
  font-weight: 500 !important;
}

#menu-mobile.pm-mobile-menu .pm-mobile-menu__extra {
  margin-top: 12px !important;
  padding-top: 13px !important;
  border-top: 1px solid var(--pm-border) !important;
}

#menu-mobile.pm-mobile-menu .menu--mobile > li > a > span {
  font-family: inherit !important;
  font-size: inherit !important;
  font-weight: inherit !important;
  line-height: inherit !important;
  letter-spacing: inherit !important;
  color: inherit !important;
}

#menu-mobile.pm-mobile-menu .menu--mobile > li > a > i,
#menu-mobile.pm-mobile-menu .menu--mobile > li > a::before {
  position: static !important;
  top: auto !important;
  left: auto !important;
  display: grid !important;
  width: 20px !important;
  min-width: 20px !important;
  height: 20px !important;
  flex: 0 0 20px !important;
  place-items: center !important;
  color: var(--pm-blue) !important;
  font-size: 18px !important;
  text-align: center !important;
}

#menu-mobile.pm-mobile-menu .menu--mobile-extra > li > a::before {
  display: none !important;
}

#menu-mobile.pm-mobile-menu .menu--mobile > li > a.pm-mobile-menu__link::before {
  display: none !important;
  content: none !important;
}

#menu-mobile.pm-mobile-menu .pm-mobile-menu__icon {
  position: static !important;
  display: block !important;
  width: 20px !important;
  height: 20px !important;
  min-width: 20px !important;
  flex: 0 0 20px !important;
  color: var(--pm-blue) !important;
  stroke: currentColor !important;
}

#menu-mobile.pm-mobile-menu .menu--mobile-extra .pm-mobile-menu__icon {
  color: var(--pm-muted) !important;
}

/* Global mobile drawer parity with the Vercel menu. */
#menu-mobile.pm-mobile-menu.ps-panel--sidebar {
  width: min(340px, 86vw) !important;
  max-width: 340px !important;
  border-right: 0 !important;
}

#menu-mobile.pm-mobile-menu .pm-mobile-menu__header {
  height: 69px !important;
  min-height: 69px !important;
  padding: 16px 20px !important;
  border-bottom: 1px solid var(--pm-border) !important;
}

#menu-mobile.pm-mobile-menu .pm-mobile-menu__logo {
  width: 170.5px !important;
  max-width: calc(100% - 56px) !important;
}

#menu-mobile.pm-mobile-menu .pm-mobile-menu__logo img {
  display: block !important;
  width: 170.5px !important;
  height: 32px !important;
  max-width: 170.5px !important;
  object-fit: contain !important;
}

#menu-mobile.pm-mobile-menu .pm-mobile-menu__close {
  width: 36px !important;
  height: 36px !important;
  min-width: 36px !important;
  min-height: 36px !important;
}

#menu-mobile.pm-mobile-menu .pm-mobile-menu__content {
  padding: 16px 12px 28px !important;
}

#menu-mobile.pm-mobile-menu .menu--mobile > li {
  min-height: 48px !important;
}

#menu-mobile.pm-mobile-menu .menu--mobile > li > a {
  width: 100% !important;
  height: 44px !important;
  min-height: 44px !important;
  gap: 12px !important;
  padding: 12px !important;
  border-radius: 16px !important;
  font-family: var(--pm-font-sans) !important;
  font-size: 14px !important;
  line-height: 20px !important;
}

#menu-mobile.pm-mobile-menu .pm-mobile-menu__nav > li > a {
  font-weight: 600 !important;
}

#menu-mobile.pm-mobile-menu .menu--mobile-extra > li > a {
  font-weight: 500 !important;
}

#menu-mobile.pm-mobile-menu .pm-mobile-menu__extra {
  margin-top: 10px !important;
  padding-top: 10px !important;
  border-top: 1px solid var(--pm-border) !important;
}

#menu-mobile.pm-mobile-menu .menu--mobile > li > a > span {
  font-family: inherit !important;
  font-size: inherit !important;
  font-weight: inherit !important;
  line-height: inherit !important;
  letter-spacing: inherit !important;
  color: inherit !important;
}

#menu-mobile.pm-mobile-menu .menu--mobile > li > a > i,
#menu-mobile.pm-mobile-menu .menu--mobile > li > a::before {
  position: static !important;
  top: auto !important;
  left: auto !important;
  display: grid !important;
  width: 20px !important;
  min-width: 20px !important;
  height: 20px !important;
  flex: 0 0 20px !important;
  place-items: center !important;
  color: var(--pm-blue) !important;
  font-size: 18px !important;
  text-align: center !important;
}

#menu-mobile.pm-mobile-menu .menu--mobile-extra > li > a::before {
  display: none !important;
}

/* Mobile drawer typography: keep nested labels from falling back to global span rules. */
#menu-mobile.pm-mobile-menu .menu--mobile > li > a span,
.page-store .pm-store-mobile-menu .menu--mobile > li > a span {
  font-family: inherit !important;
  font-size: inherit !important;
  font-weight: inherit !important;
  line-height: inherit !important;
  letter-spacing: inherit !important;
  color: inherit !important;
}

#menu-mobile.pm-mobile-menu .pm-mobile-menu__nav > li > a,
.page-store .pm-store-mobile-menu__nav > li > a {
  font-weight: 600 !important;
}

#menu-mobile.pm-mobile-menu .menu--mobile-extra > li > a,
.page-store .pm-store-mobile-menu .menu--mobile-extra > li > a {
  font-weight: 500 !important;
}

@media (max-width: 991px) {
  body#product-page {
    padding-top: 0 !important;
  }

  body#product-page.show-admin-bar {
    padding-top: 0 !important;
  }

  body#product-page > .ck-content {
    padding-top: 65px !important;
  }

  body#product-page.show-admin-bar > .ck-content {
    padding-top: 65px !important;
  }

  body#product-page > .ps-breadcrumb {
    margin-top: 65px !important;
  }

  body#product-page.show-admin-bar > .ps-breadcrumb {
    margin-top: 65px !important;
  }
}

/* EOF mobile correction for /stores/skd header and hero identity. */
@media (max-width: 991px) {
  html body .page-store .pm-store-profile-header .pm-store-header__top.ck-container {
    position: relative !important;
    display: flex !important;
    height: 84px !important;
    min-height: 84px !important;
    align-items: center !important;
    gap: 12px !important;
    padding: 0 24px !important;
  }

  html body .page-store .pm-store-profile-header .pm-store-header__brand {
    flex: 0 0 244.2px !important;
    width: 244.2px !important;
    height: 64px !important;
    min-width: 244.2px !important;
    min-height: 64px !important;
    max-width: 244.2px !important;
    align-items: center !important;
  }

  html body .page-store .pm-store-profile-header .pm-store-header__logo-shell,
  html body .page-store .pm-store-profile-header .pm-store-header__logo {
    width: 64px !important;
    height: 64px !important;
    min-width: 64px !important;
    min-height: 64px !important;
  }

  html body .page-store .pm-store-profile-header .pm-store-header__logo img {
    width: 60px !important;
    height: 60.4167px !important;
    object-fit: contain !important;
  }

  html body .page-store .pm-store-profile-header img.pm-store-header__logo {
    box-sizing: border-box !important;
    width: 60px !important;
    height: 60.4167px !important;
    min-width: 60px !important;
    min-height: 60.4167px !important;
    max-width: 60px !important;
    max-height: none !important;
    aspect-ratio: auto !important;
    object-fit: contain !important;
  }

  html body .page-store .pm-store-profile-header .pm-store-header__actions {
    position: static !important;
    top: auto !important;
    right: auto !important;
    left: auto !important;
    display: flex !important;
    width: auto !important;
    height: 40px !important;
    min-width: 0 !important;
    flex: 0 0 auto !important;
    align-items: center !important;
    gap: 8px !important;
    margin: 0 0 0 auto !important;
  }

  html body .page-store .pm-store-profile-header .pm-store-header__account {
    position: static !important;
    display: grid !important;
    width: 40px !important;
    height: 40px !important;
    min-width: 40px !important;
    min-height: 40px !important;
    place-items: center !important;
    border: 1px solid #dbeafe !important;
    border-radius: 999px !important;
    background: #ffffff !important;
    color: #0b3454 !important;
    box-shadow: none !important;
  }

  html body .page-store .pm-store-profile-header .pm-store-header__cart.store-identity-nav__cart {
    position: static !important;
    display: flex !important;
    height: 40px !important;
    min-height: 40px !important;
    align-items: center !important;
  }

  html body .page-store .pm-store-profile-header .pm-store-header__cart .header__extra.pm-cart-pill,
  html body .page-store .pm-store-profile-header .pm-store-header__cart .header__extra.pm-cart-pill.pm-cart-pill--has-count {
    display: inline-flex !important;
    width: auto !important;
    min-width: 42px !important;
    height: 40px !important;
    min-height: 40px !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 12px !important;
  }

  html body .page-store .store-page.store-page--parish .store-profile-hero__identity p,
  html body .page-store .store-page.store-page--parish .store-profile-hero__identity small {
    display: block !important;
    height: auto !important;
    min-height: 0 !important;
    overflow: visible !important;
    white-space: normal !important;
    text-overflow: clip !important;
  }

  html body .page-store .store-page.store-page--parish .store-profile-hero__identity p {
    color: #0b3454 !important;
    font-size: 14px !important;
    font-weight: 800 !important;
    line-height: 18px !important;
  }
}

@media (max-width: 575px) {
  html body .page-store .pm-store-profile-header .pm-store-header__brand {
    flex: 0 0 64px !important;
    width: 64px !important;
    height: 64px !important;
    min-width: 64px !important;
    min-height: 64px !important;
    max-width: 64px !important;
  }

  html body .page-store .pm-store-profile-header .pm-store-header__copy {
    display: none !important;
  }
}

/* Absolute last mobile correction for /stores/skd header and hero identity. */
@media (max-width: 991px) {
  html body .page-store .pm-store-profile-header .pm-store-header__top {
    position: relative !important;
    display: flex !important;
    height: 84px !important;
    min-height: 84px !important;
    align-items: center !important;
    gap: 12px !important;
  }

  html body .page-store .pm-store-profile-header .pm-store-header__actions {
    position: static !important;
    top: auto !important;
    right: auto !important;
    left: auto !important;
    display: flex !important;
    width: auto !important;
    height: 40px !important;
    min-width: 0 !important;
    flex: 0 0 auto !important;
    align-items: center !important;
    gap: 8px !important;
    margin: 0 !important;
  }

  html body .page-store .pm-store-profile-header .pm-store-header__account {
    position: static !important;
    display: grid !important;
    width: 40px !important;
    height: 40px !important;
    min-width: 40px !important;
    min-height: 40px !important;
    place-items: center !important;
    border: 1px solid #dbeafe !important;
    border-radius: 999px !important;
    background: #ffffff !important;
    color: #0b3454 !important;
    box-shadow: none !important;
  }

  html body .page-store .pm-store-profile-header .pm-store-header__cart.store-identity-nav__cart {
    position: static !important;
    display: flex !important;
    height: 40px !important;
    min-height: 40px !important;
    align-items: center !important;
  }

  html body .page-store .pm-store-profile-header .pm-store-header__cart .header__extra.pm-cart-pill,
  html body .page-store .pm-store-profile-header .pm-store-header__cart .header__extra.pm-cart-pill.pm-cart-pill--has-count {
    display: inline-flex !important;
    width: auto !important;
    min-width: 42px !important;
    height: 40px !important;
    min-height: 40px !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 12px !important;
  }

  html body .page-store .store-page.store-page--parish .store-profile-hero__identity p,
  html body .page-store .store-page.store-page--parish .store-profile-hero__identity small {
    display: block !important;
    height: auto !important;
    min-height: 0 !important;
    overflow: visible !important;
    white-space: normal !important;
    text-overflow: clip !important;
  }

  html body .page-store .store-page.store-page--parish .store-profile-hero__identity p {
    color: #0b3454 !important;
    font-size: 14px !important;
    font-weight: 800 !important;
    line-height: 18px !important;
  }
}

@media (max-width: 575px) {
  html body .page-store .pm-store-profile-header .pm-store-header__brand {
    flex: 1 1 auto !important;
    min-width: 0 !important;
  }
}

/* Final mobile pass for the SKD parish profile: match Vercel responsive structure. */
@media (max-width: 991px) {
  html,
  body,
  .page-store,
  .page-store .store-page--parish {
    overflow-x: hidden !important;
  }

  .page-store .pm-store-profile-header.store-identity-shell {
    height: 175px !important;
    min-height: 175px !important;
    background: rgba(255, 255, 255, 0.98) !important;
  }

  .page-store .pm-store-profile-header .pm-store-header.store-identity-nav {
    height: 175px !important;
    min-height: 175px !important;
    overflow: visible !important;
    background: rgba(255, 255, 255, 0.98) !important;
  }

  .page-store .pm-store-profile-header .pm-store-header__top {
    display: flex !important;
    max-width: none !important;
    height: 84px !important;
    min-height: 84px !important;
    align-items: center !important;
    gap: 12px !important;
    padding: 0 24px !important;
  }

  .page-store .pm-store-profile-header .pm-store-header__menu {
    width: 40px !important;
    height: 40px !important;
    min-width: 40px !important;
    min-height: 40px !important;
    flex: 0 0 40px !important;
    border: 1px solid #dbeafe !important;
    border-radius: 999px !important;
    background: #ffffff !important;
    color: #0b3454 !important;
  }

  .page-store .pm-store-profile-header .pm-store-header__brand {
    display: flex !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
    height: 64px !important;
    flex: 1 1 auto !important;
    align-items: center !important;
    gap: 12px !important;
  }

  .page-store .pm-store-profile-header .pm-store-header__logo-shell {
    display: block !important;
    width: 64px !important;
    height: 64px !important;
    flex: 0 0 64px !important;
    padding: 2px !important;
    overflow: hidden !important;
    border: 0 !important;
    outline: 1px solid rgba(219, 234, 254, 0.90) !important;
    border-radius: 999px !important;
    background: #ffffff !important;
    box-shadow: 0 18px 36px rgba(2, 80, 110, 0.10) !important;
  }

  .page-store .pm-store-profile-header .pm-store-header__logo-shell .pm-store-header__logo {
    display: block !important;
    width: 60px !important;
    height: 60.4167px !important;
    max-width: 60px !important;
    max-height: 60.4167px !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    object-fit: contain !important;
  }

  .page-store .pm-store-profile-header .pm-store-header__copy {
    display: flex !important;
    min-width: 0 !important;
    flex-direction: column !important;
  }

  .page-store .pm-store-profile-header .pm-store-header__copy strong {
    color: #0b3454 !important;
    font-size: 16px !important;
    font-weight: 800 !important;
    line-height: 20px !important;
  }

  .page-store .pm-store-profile-header .pm-store-header__copy small {
    color: #64748b !important;
    font-size: 11px !important;
    line-height: 14px !important;
  }

  .page-store .pm-store-profile-header .pm-store-header__actions {
    position: static !important;
    display: flex !important;
    width: auto !important;
    height: 40px !important;
    min-width: 0 !important;
    flex: 0 0 auto !important;
    align-items: center !important;
    gap: 8px !important;
    margin: 0 !important;
  }

  .page-store .pm-store-profile-header .pm-store-header__account {
    display: grid !important;
    width: 40px !important;
    height: 40px !important;
    min-width: 40px !important;
    min-height: 40px !important;
    place-items: center !important;
    border: 1px solid #dbeafe !important;
    border-radius: 999px !important;
    background: #ffffff !important;
    color: #0b3454 !important;
  }

  .page-store .pm-store-profile-header .pm-store-header__cart.store-identity-nav__cart {
    display: flex !important;
    height: 40px !important;
    min-height: 40px !important;
    align-items: center !important;
  }

  .page-store .pm-store-profile-header .pm-store-header__cart .header__extra.pm-cart-pill,
  .page-store .pm-store-profile-header .pm-store-header__cart .header__extra.pm-cart-pill.pm-cart-pill--has-count {
    width: auto !important;
    min-width: 42px !important;
    height: 40px !important;
    min-height: 40px !important;
    padding: 0 12px !important;
    border: 1px solid #dbeafe !important;
    border-radius: 999px !important;
    background: #ffffff !important;
    color: #0b3454 !important;
  }

  .page-store .pm-store-profile-header .pm-store-header__mobile-search.ck-container {
    position: absolute !important;
    top: 84px !important;
    left: 0 !important;
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    height: 46px !important;
    min-height: 46px !important;
    padding: 0 24px !important;
  }

  .page-store .pm-store-profile-header .pm-store-header__mobile-search .pm-store-header__search {
    display: block !important;
    width: 100% !important;
    height: 44px !important;
  }

  .page-store .pm-store-profile-header .pm-store-header__mobile-search .form-group--nest {
    display: flex !important;
    width: 100% !important;
    height: 44px !important;
    min-height: 44px !important;
    align-items: center !important;
    padding: 4px 8px 4px 40px !important;
    border: 1px solid #dbeafe !important;
    border-radius: 999px !important;
    background: #ffffff !important;
  }

  .page-store .pm-store-profile-header .pm-store-header__mobile-search .form-control {
    display: block !important;
    height: 36px !important;
    min-height: 36px !important;
    font-size: 14px !important;
    line-height: 36px !important;
  }

  .page-store .pm-store-profile-header .pm-store-header__mobile-search button[type="submit"] {
    display: inline-flex !important;
    min-width: 78px !important;
    height: 34px !important;
    min-height: 34px !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 16px !important;
    border-radius: 999px !important;
    background: #0b3454 !important;
    color: #ffffff !important;
    font-size: 14px !important;
    font-weight: 800 !important;
  }

  .page-store .pm-store-profile-header .pm-store-header__bottom {
    position: absolute !important;
    top: 130px !important;
    left: 0 !important;
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    height: 45px !important;
    min-height: 45px !important;
    overflow: visible !important;
    padding: 0 24px !important;
    border-bottom: 1px solid #dbeafe !important;
  }

  .page-store .pm-store-profile-header .pm-store-header__tabs {
    display: flex !important;
    height: 45px !important;
    align-items: center !important;
    gap: 32px !important;
    overflow-x: auto !important;
    padding: 0 96px 0 0 !important;
    white-space: nowrap !important;
  }

  .page-store .pm-store-profile-header .pm-store-header__tabs a {
    display: inline-flex !important;
    height: 45px !important;
    align-items: center !important;
    color: #0b3454 !important;
    font-size: 16px !important;
    font-weight: 800 !important;
    line-height: 24px !important;
    text-decoration: none !important;
  }

  .page-store .pm-store-profile-header .pm-store-header__join {
    position: absolute !important;
    top: 5px !important;
    right: 24px !important;
    display: inline-flex !important;
    height: 36px !important;
    min-height: 36px !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 16px !important;
    border-radius: 999px !important;
    background: linear-gradient(90deg, #057ea2, #45b1e1) !important;
    color: #ffffff !important;
    font-size: 14px !important;
    font-weight: 800 !important;
  }

  .page-store .pm-store-header-spacer {
    height: 175px !important;
    min-height: 175px !important;
  }

  .page-store .store-page--parish .store-page__breadcrumb--overview {
    max-width: none !important;
    margin: 16px 0 0 !important;
    padding: 0 24px !important;
  }

  .page-store .store-page--parish .store-profile-hero {
    max-width: none !important;
    margin: 16px 0 0 !important;
    padding: 0 24px 32px !important;
  }

  .page-store .store-page--parish .store-profile-hero__card {
    display: flex !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    flex-direction: column !important;
    overflow: hidden !important;
    border-radius: 24px !important;
  }

  .page-store .store-page--parish .store-profile-hero__media {
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    aspect-ratio: 1.58 / 1 !important;
    border: 0 !important;
    border-radius: 0 !important;
  }

  .page-store .store-page--parish .store-profile-hero__content {
    display: flex !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    flex-direction: column !important;
    gap: 18px !important;
    padding: 32px 28px 28px !important;
    overflow: visible !important;
  }

  .page-store .store-page--parish .store-profile-hero__content h1 {
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    overflow-wrap: normal !important;
    color: #0b3454 !important;
    font-size: 30px !important;
    font-weight: 800 !important;
    line-height: 37.5px !important;
    letter-spacing: 0 !important;
  }

  .page-store .store-page--parish .store-profile-hero__quote {
    width: 100% !important;
    height: auto !important;
    margin: 0 !important;
    color: #64748b !important;
    font-size: 14px !important;
    line-height: 20px !important;
  }

  .page-store .store-page--parish .store-profile-hero__identity {
    width: 100% !important;
    height: auto !important;
    min-height: 76px !important;
    margin: 0 !important;
    padding: 12px !important;
    overflow: hidden !important;
  }

  .page-store .store-page--parish .store-profile-hero__identity > div {
    width: auto !important;
    height: auto !important;
    min-width: 0 !important;
    flex: 1 1 auto !important;
  }

  .page-store .store-page--parish .store-profile-hero__identity p {
    height: auto !important;
    font-size: 14px !important;
    line-height: 18px !important;
  }

  .page-store .store-page--parish .store-profile-hero__identity small {
    height: auto !important;
    font-size: 11px !important;
    line-height: 16px !important;
  }

  .page-store .store-page--parish .store-profile-hero__stats {
    width: 100% !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 8px !important;
  }

  .page-store .store-page--parish .store-profile-hero__stats > div {
    height: auto !important;
    min-height: 66px !important;
    padding: 12px !important;
  }

  .page-store .store-page--parish .store-profile-hero__actions {
    width: 100% !important;
    height: auto !important;
    flex-wrap: wrap !important;
    gap: 12px !important;
  }
}

@media (max-width: 575px) {
  .page-store .pm-store-profile-header .pm-store-header__top {
    padding: 0 16px !important;
  }

  .page-store .pm-store-profile-header .pm-store-header__copy {
    display: none !important;
  }

  .page-store .pm-store-profile-header .pm-store-header__brand {
    flex: 1 1 auto !important;
  }

  .page-store .pm-store-profile-header .pm-store-header__mobile-search.ck-container,
  .page-store .pm-store-profile-header .pm-store-header__bottom {
    padding-right: 16px !important;
    padding-left: 16px !important;
  }

  .page-store .pm-store-profile-header .pm-store-header__tabs {
    gap: 28px !important;
  }

  .page-store .pm-store-profile-header .pm-store-header__join {
    right: 16px !important;
  }

  .page-store .store-page--parish .store-page__breadcrumb--overview,
  .page-store .store-page--parish .store-profile-hero {
    padding-right: 16px !important;
    padding-left: 16px !important;
  }

  .page-store .store-page--parish .store-profile-hero__content {
    padding: 28px !important;
  }
}

.pm-site-footer a {
  color: rgba(255, 255, 255, 0.72) !important;
  text-decoration: none !important;
  transition: color 0.15s ease, opacity 0.15s ease;
}

.pm-site-footer a:hover {
  color: #ffffff !important;
}

.pm-site-footer ul {
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

.pm-site-footer li {
  margin-bottom: 8px !important;
}

.pm-site-footer .ps-footer__widgets > aside.widget_footer .ps-list--link li {
  margin: 0 0 8px !important;
  padding: 0 !important;
  line-height: 20px !important;
}

.pm-site-footer .ps-footer__widgets > aside.widget_footer .ps-list--link li:last-child {
  margin-bottom: 0 !important;
}

.pm-site-footer .ps-footer__widgets > aside.widget_footer .ps-list--link a,
.pm-site-footer .ps-footer__widgets > aside.widget_footer .ps-list--link .menu-title {
  display: inline-block !important;
  padding: 0 !important;
  line-height: 20px !important;
}

.pm-site-footer .ps-footer__widgets > .panel:last-child {
  justify-self: start !important;
}

.pm-site-footer .ps-footer__widgets > .panel:last-child .widget-title {
  display: none !important;
}

.pm-site-footer .ps-footer__widgets > .panel:last-child h3 {
  display: none !important;
}

.pm-site-footer .ps-footer__widgets > .panel:last-child .panel-content,
.pm-site-footer .ps-footer__widgets > .panel:last-child .widget_content {
  max-width: 300px !important;
}

.pm-site-footer .ps-footer__widgets > .panel:last-child p {
  margin: 0 0 16px !important;
  color: rgba(255, 255, 255, 0.70) !important;
  font-size: 14px !important;
  line-height: 19.25px !important;
}

.pm-site-footer .ps-footer__widgets > .panel:last-child p strong {
  color: #ffffff !important;
  font-weight: 700 !important;
}

.pm-site-footer .ps-footer__widgets > .panel:last-child a.pm-btn,
.pm-site-footer .ps-footer__widgets > .panel:last-child .panel-content > div > a {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 47px !important;
  width: fit-content !important;
  min-width: 176.58px !important;
  padding: 0 21px !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: linear-gradient(90deg, var(--pm-blue), var(--pm-cyan)) !important;
  color: #ffffff !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  text-decoration: none !important;
  box-shadow: 0 14px 28px rgba(18, 139, 190, 0.28) !important;
}

.pm-site-footer .ps-footer__widgets > .panel:last-child a.pm-btn:hover,
.pm-site-footer .ps-footer__widgets > .panel:last-child .panel-content > div > a:hover {
  background: #2a9fc9 !important;
  background: linear-gradient(90deg, #057ea2 0%, #45b1e1 100%) !important;
  color: #ffffff !important;
}

.pm-site-footer .widget_contact-us h3 {
  color: #ffffff !important;
  font-size: 20px !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

.pm-site-footer .panel-content img[alt*="ParishMart"] {
  display: block !important;
  width: auto !important;
  max-width: 255px !important;
  max-height: 80px !important;
  margin: 0px !important;
}

.pm-site-footer .rpw,
.pm-site-footer .rpw i {
  display: block !important;
  max-width: 260px !important;
  color: rgba(255, 255, 255, 0.70) !important;
  font-family: var(--pm-font-sans) !important;
  font-size: 14px !important;
  font-style: normal !important;
  font-weight: 400 !important;
  line-height: 20px !important;
  padding: 11px 0 3px;
}

.pm-site-footer .ps-list--social {
  display: flex !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
  gap: 12px !important;
  margin: 12px 0 0 !important;
  padding: 0 !important;
}

.pm-site-footer .ps-list--social li {
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
}

.pm-site-footer .ps-list--social a {
  display: grid !important;
  width: 36px !important;
  height: 36px !important;
  min-width: 36px !important;
  min-height: 36px !important;
  place-items: center !important;
  border: 0 !important;
  border-radius: 50% !important;
  background: rgba(255, 255, 255, 0.12) !important;
  color: #ffffff !important;
  line-height: 1 !important;
  opacity: 1 !important;
  transition: background-color 0.15s ease, transform 0.15s ease !important;
}

.pm-site-footer .ps-list--social a:hover {
  background: rgba(255, 255, 255, 0.18) !important;
  color: #ffffff !important;
  transform: translateY(-1px) !important;
}

.pm-site-footer .ps-list--social .social-icon,
.pm-site-footer .ps-list--social img,
.pm-site-footer .ps-list--social svg {
  display: none !important;
  width: 16px !important;
  height: 16px !important;
  max-width: 16px !important;
  max-height: 16px !important;
  object-fit: contain !important;
  color: #ffffff !important;
  fill: #ffffff !important;
}

.pm-site-footer .ps-list--social svg path {
  fill: #ffffff !important;
  stroke: none !important;
}

.pm-site-footer .ps-list--social a::before {
  content: "" !important;
  display: block !important;
  width: 20px !important;
  height: 20px !important;
  background: #ffffff !important;
}

.pm-site-footer .ps-list--social a[href*="instagram.com"]::before {
  -webkit-mask: url("data:image/svg+xml,%3Csvg viewBox='0 0 448 512' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M224.1 141c-63.6 0-114.9 51.3-114.9 114.9s51.3 114.9 114.9 114.9S339 319.5 339 255.9 287.7 141 224.1 141zm0 189.6c-41.1 0-74.7-33.5-74.7-74.7s33.5-74.7 74.7-74.7 74.7 33.5 74.7 74.7-33.6 74.7-74.7 74.7zm146.4-194.3c0 14.9-12 26.8-26.8 26.8-14.9 0-26.8-12-26.8-26.8s12-26.8 26.8-26.8 26.8 12 26.8 26.8zm76.1 27.2c-1.7-35.9-9.9-67.7-36.2-93.9-26.2-26.2-58-34.4-93.9-36.2-37-2.1-147.9-2.1-184.9 0-35.8 1.7-67.6 9.9-93.9 36.1S-.7 127.5-2.4 163.4c-2.1 37-2.1 147.9 0 184.9 1.7 35.9 9.9 67.7 36.2 93.9s58 34.4 93.9 36.2c37 2.1 147.9 2.1 184.9 0 35.9-1.7 67.7-9.9 93.9-36.2 26.2-26.2 34.4-58 36.2-93.9 2.1-37 2.1-147.8-.1-184.8zM398.8 388c-7.8 19.6-22.9 34.7-42.6 42.6-29.5 11.7-99.5 9-132.1 9s-102.7 2.6-132.1-9c-19.6-7.8-34.7-22.9-42.6-42.6-11.7-29.5-9-99.5-9-132.1s-2.6-102.7 9-132.1c7.8-19.6 22.9-34.7 42.6-42.6 29.5-11.7 99.5-9 132.1-9s102.7-2.6 132.1 9c19.6 7.8 34.7 22.9 42.6 42.6 11.7 29.5 9 99.5 9 132.1s2.7 102.7-9 132.1z'/%3E%3C/svg%3E") center / contain no-repeat !important;
  mask: url("data:image/svg+xml,%3Csvg viewBox='0 0 448 512' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M224.1 141c-63.6 0-114.9 51.3-114.9 114.9s51.3 114.9 114.9 114.9S339 319.5 339 255.9 287.7 141 224.1 141zm0 189.6c-41.1 0-74.7-33.5-74.7-74.7s33.5-74.7 74.7-74.7 74.7 33.5 74.7 74.7-33.6 74.7-74.7 74.7zm146.4-194.3c0 14.9-12 26.8-26.8 26.8-14.9 0-26.8-12-26.8-26.8s12-26.8 26.8-26.8 26.8 12 26.8 26.8zm76.1 27.2c-1.7-35.9-9.9-67.7-36.2-93.9-26.2-26.2-58-34.4-93.9-36.2-37-2.1-147.9-2.1-184.9 0-35.8 1.7-67.6 9.9-93.9 36.1S-.7 127.5-2.4 163.4c-2.1 37-2.1 147.9 0 184.9 1.7 35.9 9.9 67.7 36.2 93.9s58 34.4 93.9 36.2c37 2.1 147.9 2.1 184.9 0 35.9-1.7 67.7-9.9 93.9-36.2 26.2-26.2 34.4-58 36.2-93.9 2.1-37 2.1-147.8-.1-184.8zM398.8 388c-7.8 19.6-22.9 34.7-42.6 42.6-29.5 11.7-99.5 9-132.1 9s-102.7 2.6-132.1-9c-19.6-7.8-34.7-22.9-42.6-42.6-11.7-29.5-9-99.5-9-132.1s-2.6-102.7 9-132.1c7.8-19.6 22.9-34.7 42.6-42.6 29.5-11.7 99.5-9 132.1-9s102.7-2.6 132.1 9c19.6 7.8 34.7 22.9 42.6 42.6 11.7 29.5 9 99.5 9 132.1s2.7 102.7-9 132.1z'/%3E%3C/svg%3E") center / contain no-repeat !important;
}

.pm-site-footer .ps-list--social a[href*="facebook.com"]::before {
  -webkit-mask: url("data:image/svg+xml,%3Csvg viewBox='0 0 320 512' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M279.14 288l14.22-92.66h-88.91v-60.13c0-25.35 12.42-50.06 52.24-50.06H297V6.26S260.43 0 225.36 0C152.14 0 104.2 44.38 104.2 124.72v70.62H22.89V288h81.31v224h100.25V288z'/%3E%3C/svg%3E") center / contain no-repeat !important;
  mask: url("data:image/svg+xml,%3Csvg viewBox='0 0 320 512' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M279.14 288l14.22-92.66h-88.91v-60.13c0-25.35 12.42-50.06 52.24-50.06H297V6.26S260.43 0 225.36 0C152.14 0 104.2 44.38 104.2 124.72v70.62H22.89V288h81.31v224h100.25V288z'/%3E%3C/svg%3E") center / contain no-repeat !important;
}

.pm-site-footer .ps-list--social a[href*="linkedin.com"]::before {
  -webkit-mask: url("data:image/svg+xml,%3Csvg viewBox='0 0 448 512' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M100.28 448H7.4V148.9h92.88zM53.79 108.1C24.09 108.1 0 83.5 0 53.8a53.79 53.79 0 0 1 107.58 0c0 29.7-24.1 54.3-53.79 54.3zM447.9 448h-92.68V302.4c0-34.7-.7-79.2-48.29-79.2-48.29 0-55.69 37.7-55.69 76.7V448h-92.78V148.9h89.08v40.8h1.3c12.4-23.5 42.69-48.3 87.88-48.3 94 0 111.28 61.9 111.28 142.3V448z'/%3E%3C/svg%3E") center / contain no-repeat !important;
  mask: url("data:image/svg+xml,%3Csvg viewBox='0 0 448 512' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M100.28 448H7.4V148.9h92.88zM53.79 108.1C24.09 108.1 0 83.5 0 53.8a53.79 53.79 0 0 1 107.58 0c0 29.7-24.1 54.3-53.79 54.3zM447.9 448h-92.68V302.4c0-34.7-.7-79.2-48.29-79.2-48.29 0-55.69 37.7-55.69 76.7V448h-92.78V148.9h89.08v40.8h1.3c12.4-23.5 42.69-48.3 87.88-48.3 94 0 111.28 61.9 111.28 142.3V448z'/%3E%3C/svg%3E") center / contain no-repeat !important;
}

.pm-site-footer .ps-list--social a[href*="youtube.com"]::before,
.pm-site-footer .ps-list--social a[href*="youtu.be"]::before {
  -webkit-mask: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M21.58 7.19a2.5 2.5 0 0 0-1.76-1.77C18.25 5 12 5 12 5s-6.25 0-7.82.42A2.5 2.5 0 0 0 2.42 7.2 26 26 0 0 0 2 12a26 26 0 0 0 .42 4.81 2.5 2.5 0 0 0 1.76 1.77C5.75 19 12 19 12 19s6.25 0 7.82-.42a2.5 2.5 0 0 0 1.76-1.77A26 26 0 0 0 22 12a26 26 0 0 0-.42-4.81zM10 15.2V8.8l5.5 3.2z'/%3E%3C/svg%3E") center / contain no-repeat !important;
  mask: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M21.58 7.19a2.5 2.5 0 0 0-1.76-1.77C18.25 5 12 5 12 5s-6.25 0-7.82.42A2.5 2.5 0 0 0 2.42 7.2 26 26 0 0 0 2 12a26 26 0 0 0 .42 4.81 2.5 2.5 0 0 0 1.76 1.77C5.75 19 12 19 12 19s6.25 0 7.82-.42a2.5 2.5 0 0 0 1.76-1.77A26 26 0 0 0 22 12a26 26 0 0 0-.42-4.81zM10 15.2V8.8l5.5 3.2z'/%3E%3C/svg%3E") center / contain no-repeat !important;
}

.pm-site-footer .ps-list--social img.social-icon,
.pm-site-footer .ps-list--social img {
  filter: brightness(0) invert(1) !important;
}

.pm-site-footer .ps-footer__links {
  padding: 22px 0 !important;
  border-top: 1px solid rgba(255, 255, 255, 0.10) !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.10) !important;
}

.pm-site-footer .ps-footer__copyright {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 32px !important;
  flex-wrap: nowrap !important;
  max-width: none !important;
  width: 100vw !important;
  min-height: 57px !important;
  margin: 0 0 0 calc(-1 * ((100vw - 1280px) / 2 + 24px)) !important;
  padding: 0 calc((100vw - 1280px) / 2 + 24px) !important;
  border-top: 1px solid rgba(255, 255, 255, 0.10) !important;
  color: rgba(255, 255, 255, 0.60) !important;
}

.pm-site-footer .ps-footer__copyright p,
.pm-site-footer .site-copyright,
.pm-site-footer .payment-method-title {
  flex: 0 0 auto !important;
  margin: 0 !important;
  padding: 0 !important;
  color: rgba(255, 255, 255, 0.60) !important;
  font-size: 12px !important;
  line-height: 1.5 !important;
  white-space: nowrap !important;
}

.pm-site-footer .footer-legal-menu {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  flex: 0 0 auto !important;
  min-width: 0 !important;
  margin-left: auto !important;
}

.pm-site-footer .pm-footer-legal-menu {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  flex-wrap: nowrap !important;
  gap: 34px !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

.pm-site-footer .pm-footer-legal-menu li {
  margin: 0 !important;
  padding: 0 !important;
  line-height: 18px !important;
}

.pm-site-footer .pm-footer-legal-menu a,
.pm-site-footer .pm-footer-legal-menu .menu-title {
  color: rgba(255, 255, 255, 0.64) !important;
  font-size: 12px !important;
  font-weight: 400 !important;
  line-height: 18px !important;
  text-decoration: none !important;
  white-space: nowrap !important;
}

.pm-site-footer .pm-footer-legal-menu a:hover,
.pm-site-footer .pm-footer-legal-menu a:hover .menu-title {
  color: rgba(255, 255, 255, 0.90) !important;
}

.pm-site-footer .footer-payments img {
  max-height: 24px;
  filter: saturate(0.85);
}

@media (min-width: 1200px) {
  .pm-site-footer .ps-footer__widgets {
    grid-template-columns: 268px repeat(3, 191.43px) 229.71px !important;
  }

  .pm-site-footer .ps-footer__links {
    width: 100%;
  }
}

@media (min-width: 992px) and (max-width: 1199px) {
  .pm-site-footer .ps-footer__widgets {
    grid-template-columns: minmax(300px, 1.3fr) repeat(2, minmax(150px, 1fr)) !important;
  }
}

@media (max-width: 991px) {
  .pm-site-footer .ps-footer__widgets {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 575px) {
  .pm-site-footer .ps-container {
    padding: 34px 18px 0 !important;
  }

  .pm-site-footer .ps-footer__widgets {
    grid-template-columns: 1fr !important;
    gap: 26px !important;
    padding-bottom: 30px !important;
  }

  .pm-site-footer .ps-footer__copyright {
    display: flex !important;
    align-items: center !important;
    flex-direction: column !important;
    justify-content: center !important;
    gap: 14px !important;
    text-align: center !important;
    width: calc(100% + 36px) !important;
    min-height: 0 !important;
    margin-right: -18px !important;
    margin-left: -18px !important;
    padding: 18px 18px 18px !important;
  }

  .pm-site-footer .ps-footer__copyright p,
  .pm-site-footer .site-copyright,
  .pm-site-footer .payment-method-title {
    white-space: normal !important;
  }

  .pm-site-footer .footer-legal-menu {
    display: flex !important;
    width: 100% !important;
    justify-content: center !important;
    margin-left: 0 !important;
  }

  .pm-site-footer .pm-footer-legal-menu {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-wrap: wrap !important;
    gap: 10px 16px !important;
  }

  .pm-site-footer .pm-footer-legal-menu li {
    display: block !important;
    margin: 0 !important;
  }

  #back2top {
    display: none !important;
  }
}

.header--mobile .ps-block--user-header {
  display: none !important;
}

.header--mobile .ps-search--mobile {
  display: none !important;
}

/* Header mini cart: Vercel-style drawer. */
html.pm-mini-cart-open,
body.pm-mini-cart-open {
  overflow: hidden !important;
  overscroll-behavior: none;
}

.pm-mini-cart-backdrop {
  position: fixed;
  inset: 0;
  z-index: 100000;
  display: block;
  width: 100vw;
  height: 100vh;
  padding: 0;
  border: 0;
  background: rgba(8, 40, 67, 0.40);
  opacity: 0;
  visibility: hidden;
  backdrop-filter: blur(4px);
  transition: opacity 0.18s ease, visibility 0.18s ease;
  cursor: default;
}

.pm-mini-cart-drawer.ps-cart--mobile {
  position: fixed !important;
  top: 0 !important;
  right: 0 !important;
  z-index: 100001 !important;
  width: min(420px, 100vw) !important;
  height: 100vh !important;
  height: 100dvh !important;
  max-height: 100dvh !important;
  min-height: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  background: transparent !important;
  opacity: 0 !important;
  visibility: hidden !important;
  transform: translateX(16px) !important;
  transition: opacity 0.18s ease, transform 0.18s ease, visibility 0.18s ease !important;
}

.pm-mini-cart-drawer.ps-cart--mobile .ps-cart__content.pm-mini-cart {
  position: static !important;
  display: flex !important;
  width: 100% !important;
  min-width: 0 !important;
  height: 100% !important;
  max-height: 100% !important;
  min-height: 0 !important;
  overflow: hidden !important;
  flex-direction: column !important;
  padding: 0 !important;
  border: 1px solid var(--pm-border) !important;
  border-radius: 0 !important;
  background: #ffffff !important;
  box-shadow: 0 28px 70px rgba(8, 40, 67, 0.18) !important;
}

body.pm-mini-cart-open .pm-mini-cart-backdrop {
  opacity: 1;
  visibility: visible;
}

body.pm-mini-cart-open .pm-mini-cart-drawer.ps-cart--mobile {
  opacity: 1 !important;
  visibility: visible !important;
  transform: translateX(0) !important;
}

.pm-mini-cart__header {
  display: flex;
  flex: 0 0 auto;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  padding: 20px;
  border-bottom: 1px solid var(--pm-border);
}

.pm-mini-cart__header h3 {
  margin: 0 !important;
  color: var(--pm-navy) !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  line-height: 1.2 !important;
}

.pm-mini-cart__header span {
  display: block;
  margin-top: 2px;
  color: #64748b;
  font-size: 12px;
  font-weight: 500;
  line-height: 1.2;
}

.pm-mini-cart__close {
  display: grid !important;
  width: 36px;
  height: 36px;
  min-width: 36px;
  place-items: center;
  margin: -2px 0 0 !important;
  border: 1px solid var(--pm-border);
  border-radius: 50%;
  background: #ffffff;
  color: var(--pm-navy) !important;
}

.pm-mini-cart__close i {
  color: inherit !important;
  font-size: 15px !important;
  line-height: 1 !important;
}

.pm-mini-cart__items.ps-cart__items {
  flex: 1 1 auto;
  min-height: 0;
  margin: 0 !important;
  padding: 18px 20px 20px !important;
  overflow-y: hidden !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: #ffffff !important;
  box-shadow: none !important;
}

.pm-mini-cart-drawer.ps-cart--mobile,
.pm-mini-cart-drawer.ps-cart--mobile .ps-cart__content {
  min-height: 0 !important;
  padding: 0 !important;
}

.pm-mini-cart__items.ps-cart__items::before {
  display: none !important;
}

.pm-mini-cart__items h4 {
  margin: 0 0 10px !important;
  color: var(--pm-blue) !important;
  font-size: 12px !important;
  font-weight: 800 !important;
  letter-spacing: 0.08em !important;
  line-height: 1.2 !important;
  text-transform: uppercase !important;
}

.pm-mini-cart__product.ps-product--cart-mobile {
  margin: 0 0 14px !important;
  padding: 14px !important;
  border: 1px solid var(--pm-border);
  border-radius: 14px !important;
  background: #ffffff;
  box-shadow: none;
}

.pm-mini-cart__product-content.ps-product__content {
  position: static !important;
  padding: 0 !important;
}

.pm-mini-cart__product-main {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  align-items: start;
}

.pm-mini-cart__product-title {
  display: block !important;
  color: var(--pm-navy) !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  line-height: 1.35 !important;
  text-decoration: none !important;
}

.pm-mini-cart__product-title:hover {
  color: var(--pm-blue) !important;
}

.pm-mini-cart__product-price {
  color: var(--pm-navy);
  font-size: 14px;
  font-weight: 800;
  line-height: 1.35;
  white-space: nowrap;
}

.pm-mini-cart__meta,
.pm-mini-cart__support,
.pm-mini-cart__meta p,
.pm-mini-cart__meta small {
  margin: 4px 0 0 !important;
  color: var(--pm-blue) !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  line-height: 1.35 !important;
}

.pm-mini-cart__support {
  color: var(--pm-blue) !important;
}

.pm-mini-cart__support b {
  color: var(--pm-navy);
  font-weight: 800;
}

.pm-mini-cart__actions {
  display: inline-flex;
  align-items: center;
  gap: 0;
  margin-top: 12px;
  overflow: hidden;
  border: 1px solid var(--pm-border);
  border-radius: var(--pm-pill-radius);
  background: #ffffff;
}

.pm-mini-cart__qty {
  display: inline-flex;
  align-items: center;
  min-height: 32px;
  color: var(--pm-blue);
  font-size: 13px;
  font-weight: 800;
}

.pm-mini-cart__qty button,
.pm-mini-cart__qty b {
  border: 0;
  background: transparent;
  display: inline-grid;
  min-width: 34px;
  height: 32px;
  place-items: center;
  color: inherit;
  cursor: pointer;
  font: inherit;
  line-height: 1;
  padding: 0;
}

.pm-mini-cart__qty b {
  color: var(--pm-navy);
  cursor: default;
}

.pm-mini-cart__qty button:disabled {
  cursor: not-allowed;
  opacity: 0.45;
}

.pm-mini-cart__remove.ps-product__remove {
  position: static !important;
  display: inline-flex !important;
  width: auto !important;
  height: 32px !important;
  align-items: center;
  padding: 0 14px !important;
  border-left: 1px solid var(--pm-border);
  color: var(--pm-muted) !important;
  background: #ffffff !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  text-decoration: none !important;
}

.pm-mini-cart__remove:hover {
  color: var(--pm-blue) !important;
  background: var(--pm-soft) !important;
}

.pm-mini-cart__footer.ps-cart__footer {
  flex: 0 0 auto;
  margin: 0 !important;
  padding: 18px 20px 20px !important;
  border: 0 !important;
  border-top: 1px solid var(--pm-border) !important;
  background: #ffffff !important;
}

.pm-mini-cart__summary {
  margin-bottom: 14px;
}

.pm-mini-cart__summary p,
.pm-mini-cart__summary h3 {
  display: flex !important;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin: 0 0 9px !important;
  color: var(--pm-muted) !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  line-height: 1.25 !important;
}

.pm-mini-cart__summary h3 {
  margin-top: 12px !important;
  padding-top: 12px;
  border-top: 1px solid var(--pm-border);
  color: var(--pm-navy) !important;
  font-size: 16px !important;
  font-weight: 800 !important;
}

.pm-mini-cart__summary strong {
  color: inherit !important;
  font-weight: 800 !important;
  white-space: nowrap;
}

.pm-mini-cart__footer figure {
  display: flex !important;
  flex-direction: column !important;
  gap: 10px;
  margin: 0 !important;
}

.pm-mini-cart__footer .ps-btn {
  width: 100% !important;
  min-height: 46px !important;
  margin: 0 !important;
  padding: 13px 18px !important;
  border-radius: var(--pm-pill-radius) !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  line-height: 1 !important;
}

.pm-mini-cart__checkout {
  color: #ffffff !important;
  border: 1px solid transparent !important;
  background: linear-gradient(90deg, var(--pm-blue), var(--pm-cyan)) !important;
  box-shadow: 0 14px 30px rgba(5, 126, 162, 0.25) !important;
}

.pm-mini-cart__checkout:hover {
  color: #ffffff !important;
  box-shadow: 0 18px 34px rgba(5, 126, 162, 0.30) !important;
}

.pm-mini-cart__keep-shopping {
  color: var(--pm-blue) !important;
  border: 1px solid var(--pm-border) !important;
  background: #ffffff !important;
  box-shadow: none !important;
}

.pm-mini-cart__items.pm-mini-cart__items--empty {
  display: flex !important;
  align-items: center;
  justify-content: center;
  padding: 0 42px !important;
  overflow: hidden !important;
}

.pm-mini-cart__empty {
  display: flex;
  width: 100%;
  max-width: 260px;
  align-items: center;
  flex-direction: column;
  text-align: center;
}

.pm-mini-cart__empty-icon {
  display: grid;
  width: 48px;
  height: 48px;
  place-items: center;
  border-radius: 999px;
  background: #eef8fb;
  color: var(--pm-blue);
}

.pm-mini-cart__empty-icon svg {
  width: 24px;
  height: 24px;
}

.pm-mini-cart__empty strong {
  margin-top: 16px;
  color: var(--pm-navy) !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  line-height: 20px !important;
}

.pm-mini-cart__empty p {
  max-width: 244px;
  margin: 6px 0 0 !important;
  color: #405b86 !important;
  font-size: 12px !important;
  font-weight: 400 !important;
  line-height: 16px !important;
}

.pm-mini-cart__empty-button.ps-btn {
  display: inline-flex !important;
  width: auto !important;
  min-width: 142px !important;
  min-height: 47px !important;
  align-items: center;
  justify-content: center;
  margin-top: 18px !important;
  padding: 0 22px !important;
  border: 0 !important;
  border-radius: var(--pm-pill-radius) !important;
  background: linear-gradient(90deg, var(--pm-blue), var(--pm-cyan)) !important;
  box-shadow: 0 20px 42px rgba(5, 126, 162, 0.22) !important;
  color: #ffffff !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  text-decoration: none !important;
}

.pm-mini-cart__empty-button.ps-btn:hover {
  color: #ffffff !important;
  box-shadow: 0 22px 46px rgba(5, 126, 162, 0.28) !important;
}

@media (max-width: 575px) {
  .pm-mini-cart-drawer.ps-cart--mobile {
    right: 0 !important;
    left: auto !important;
    width: 100vw !important;
    height: 100vh !important;
    height: 100dvh !important;
    max-height: 100dvh !important;
    min-height: 0 !important;
  }
}

/* Quick shop modal: use the same Vercel skin as product detail. */
#quick-shop-modal {
  z-index: 10005;
  font-family: var(--pm-font-sans) !important;
}

#quick-shop-modal .modal-dialog {
  max-width: 520px !important;
  width: calc(100% - 32px) !important;
  margin: 24px auto !important;
}

#quick-shop-modal .modal-content {
  overflow: hidden;
  border: 1px solid var(--pm-border) !important;
  border-radius: 28px !important;
  background: rgba(255, 255, 255, 0.98) !important;
  box-shadow: var(--pm-card-shadow) !important;
}

#quick-shop-modal .modal-body {
  padding: 0 !important;
}

#quick-shop-modal .modal-close {
  top: 16px !important;
  right: 16px !important;
  width: 42px !important;
  height: 42px !important;
  border: 1px solid var(--pm-border) !important;
  border-radius: 50% !important;
  background: #ffffff !important;
  color: var(--pm-navy) !important;
  box-shadow: none !important;
}

#quick-shop-modal .modal-close:hover {
  border-color: var(--pm-blue) !important;
  background: var(--pm-soft) !important;
  color: var(--pm-blue) !important;
}

#quick-shop-modal .modal-close i {
  color: inherit !important;
  font-size: 18px !important;
}

#quick-shop-modal .ps-product--quickshop {
  margin: 0 !important;
  padding: 30px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

#quick-shop-modal .ps-product--quickshop:hover {
  transform: none !important;
  box-shadow: none !important;
}

#quick-shop-modal .ps-product__header {
  display: block !important;
  margin: 0 !important;
}

#quick-shop-modal .ps-product__info {
  max-width: 100% !important;
  padding: 0 !important;
}

#quick-shop-modal .ps-product__info h1 {
  max-width: calc(100% - 56px);
  margin: 0 0 10px !important;
  color: var(--pm-navy) !important;
  font-family: var(--pm-font-sans) !important;
  font-size: 24px !important;
  font-weight: 800 !important;
  letter-spacing: 0 !important;
  line-height: 1.18 !important;
}

#quick-shop-modal .ps-product__price,
#quick-shop-modal .ps-product__price span {
  margin: 0 0 18px !important;
  color: var(--pm-navy) !important;
  font-family: var(--pm-font-sans) !important;
  font-size: 28px !important;
  font-weight: 800 !important;
  line-height: 1.1 !important;
}

#quick-shop-modal .ps-product__price del {
  margin-left: 8px !important;
  color: var(--pm-muted) !important;
  font-size: 17px !important;
  font-weight: 700 !important;
}

#quick-shop-modal .pr_switch_wrap {
  margin: 0 0 14px !important;
}

#quick-shop-modal .pr_switch_wrap p,
#quick-shop-modal .pr_switch_wrap label,
#quick-shop-modal .product-option-form label,
#quick-shop-modal .ps-product__shopping figcaption,
#quick-shop-modal .bb-product-attribute-swatch-title {
  margin: 0 0 8px !important;
  color: var(--pm-navy) !important;
  font-family: var(--pm-font-sans) !important;
  font-size: 13px !important;
  font-weight: 800 !important;
  line-height: 1.35 !important;
}

#quick-shop-modal .pr_switch_wrap .attribute-name,
#quick-shop-modal .pr_switch_wrap .attribute-swatch-title {
  color: var(--pm-navy) !important;
  font-weight: 800 !important;
}

#quick-shop-modal .pr_switch_wrap .attribute-swatch-item,
#quick-shop-modal .pr_switch_wrap .attribute-swatch-item label,
#quick-shop-modal .pr_switch_wrap .attribute-swatch-item span,
#quick-shop-modal .bb-product-attribute-swatch-item,
#quick-shop-modal .bb-product-attribute-swatch-item label,
#quick-shop-modal .bb-product-attribute-swatch-display,
#quick-shop-modal .bb-product-attribute-text-display {
  border-radius: var(--pm-pill-radius) !important;
}

#quick-shop-modal .bb-product-attribute-swatch-list {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
  margin: 0 !important;
  padding: 0 !important;
}

#quick-shop-modal .bb-product-attribute-swatch-item {
  margin: 0 !important;
}

#quick-shop-modal .bb-product-attribute-swatch-item label {
  margin: 0 !important;
}

#quick-shop-modal .bb-product-attribute-text-display {
  display: inline-flex !important;
  min-height: 34px !important;
  align-items: center !important;
  padding: 8px 13px !important;
  border: 1px solid var(--pm-border) !important;
  background: #ffffff !important;
  color: var(--pm-navy) !important;
  font-size: 13px !important;
  font-weight: 800 !important;
  line-height: 1 !important;
}

#quick-shop-modal .bb-product-attribute-swatch-item input:checked + .bb-product-attribute-text-display {
  border-color: transparent !important;
  background: var(--pm-navy) !important;
  color: #ffffff !important;
}

#quick-shop-modal .bb-product-attribute-swatch-display {
  width: 30px !important;
  height: 30px !important;
  border: 2px solid #ffffff !important;
  box-shadow: 0 0 0 1px var(--pm-border) !important;
}

#quick-shop-modal .bb-product-attribute-swatch-item input:checked + .bb-product-attribute-swatch-display {
  box-shadow: 0 0 0 2px var(--pm-blue) !important;
}

#quick-shop-modal .number-items-available,
#quick-shop-modal .number-items-available span {
  margin: 4px 0 14px !important;
  color: #07865f !important;
  font-size: 13px !important;
  font-weight: 700 !important;
}

#quick-shop-modal .ps-product__shopping {
  display: flex !important;
  flex-direction: row !important;
  align-items: flex-end !important;
  flex-wrap: wrap !important;
  gap: 14px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
}

#quick-shop-modal .ps-product__shopping figure {
  flex: 0 0 auto !important;
  margin: 0 !important;
}

#quick-shop-modal .ps-product__shopping figcaption {
  display: block !important;
  margin: 0 0 8px !important;
}

#quick-shop-modal .form-group--number.product__qty {
  position: relative !important;
  display: inline-flex !important;
  width: 118px !important;
  max-width: 118px !important;
  height: 48px !important;
  overflow: hidden !important;
  align-items: center !important;
  border: 1px solid var(--pm-border) !important;
  border-radius: var(--pm-pill-radius) !important;
  background: #ffffff !important;
}

#quick-shop-modal .form-group--number.product__qty .form-control {
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  padding: 0 34px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: var(--pm-navy) !important;
  font-family: var(--pm-font-sans) !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  text-align: center !important;
  box-shadow: none !important;
}

#quick-shop-modal .form-group--number.product__qty button {
  position: absolute !important;
  top: 50% !important;
  display: grid !important;
  width: 34px !important;
  height: 34px !important;
  min-height: 0 !important;
  padding: 0 !important;
  place-items: center !important;
  border: 0 !important;
  border-radius: 50% !important;
  background: transparent !important;
  color: var(--pm-muted) !important;
  transform: translateY(-50%) !important;
}

#quick-shop-modal .form-group--number.product__qty button:hover {
  color: var(--pm-blue) !important;
  background: var(--pm-soft) !important;
}

#quick-shop-modal .form-group--number.product__qty button.down {
  left: 5px !important;
}

#quick-shop-modal .form-group--number.product__qty button.up {
  right: 5px !important;
}

#quick-shop-modal .form-group--number.product__qty button i {
  color: inherit !important;
  font-size: 13px !important;
  line-height: 1 !important;
}

#quick-shop-modal .ps-product__actions {
  display: flex !important;
  width: auto !important;
  flex: 0 1 auto !important;
  gap: 10px !important;
  margin: 0 !important;
}

#quick-shop-modal .ps-product__shopping .ps-btn,
#quick-shop-modal .ps-product__shopping button.ps-btn,
#quick-shop-modal .ps-product__shopping .add-to-cart-button {
  min-width: 170px !important;
  min-height: 48px !important;
  width: auto !important;
  margin: 0 !important;
  padding: 13px 22px !important;
  border: 1px solid transparent !important;
  border-radius: var(--pm-pill-radius) !important;
  color: #ffffff !important;
  background: linear-gradient(90deg, var(--pm-blue), var(--pm-cyan)) !important;
  box-shadow: 0 14px 30px rgba(5, 126, 162, 0.25) !important;
  font-family: var(--pm-font-sans) !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  letter-spacing: 0 !important;
  line-height: 1 !important;
  text-transform: none !important;
}

#quick-shop-modal .ps-product__shopping .ps-btn:hover,
#quick-shop-modal .ps-product__shopping button.ps-btn:hover,
#quick-shop-modal .ps-product__shopping .add-to-cart-button:hover {
  border-color: transparent !important;
  background: linear-gradient(90deg, var(--pm-blue), var(--pm-cyan)) !important;
  color: #ffffff !important;
  transform: translateY(-1px);
  box-shadow: 0 18px 34px rgba(5, 126, 162, 0.30) !important;
}

#quick-shop-modal .ps-product__specification {
  display: block !important;
  margin-top: 18px !important;
  padding: 14px !important;
  border: 1px solid var(--pm-border) !important;
  border-radius: 18px !important;
  background: #f8fdff !important;
}

#quick-shop-modal .ps-product__specification a {
  color: var(--pm-blue) !important;
  font-size: 13px !important;
  font-weight: 800 !important;
  text-decoration: none !important;
}

#quick-shop-modal .ps-product__specification a:hover {
  color: var(--pm-navy) !important;
}

#quick-shop-modal .ps-loading {
  min-height: 260px !important;
}

#quick-shop-modal .ps-loading__spinner {
  border-color: var(--pm-border) !important;
  border-top-color: var(--pm-blue) !important;
}

@media (max-width: 575px) {
  #quick-shop-modal .modal-dialog {
    width: calc(100% - 24px) !important;
    margin: 12px auto !important;
  }

  #quick-shop-modal .modal-content {
    border-radius: 22px !important;
  }

  #quick-shop-modal .ps-product--quickshop {
    padding: 22px !important;
  }

  #quick-shop-modal .ps-product__info h1 {
    font-size: 21px !important;
  }

  #quick-shop-modal .ps-product__price,
  #quick-shop-modal .ps-product__price span {
    font-size: 24px !important;
  }

  #quick-shop-modal .ps-product__actions,
  #quick-shop-modal .ps-product__shopping .ps-btn,
  #quick-shop-modal .ps-product__shopping button.ps-btn,
  #quick-shop-modal .ps-product__shopping .add-to-cart-button {
    width: 100% !important;
  }

  #quick-shop-modal .ps-product__shopping {
    flex-direction: column !important;
    align-items: stretch !important;
  }
}

body#product-page #quick-shop-modal .ps-product--detail.ps-product--fullwidth.ps-product--quickshop {
  display: block !important;
  grid-template-columns: none !important;
  gap: 0 !important;
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
}

body#product-page #quick-shop-modal .ps-product--quickshop > .modal-body,
body#product-page #quick-shop-modal .ps-product--quickshop .ps-product__header,
body#product-page #quick-shop-modal .ps-product--quickshop .ps-product__info {
  grid-column: auto !important;
  grid-row: auto !important;
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  margin: 0 !important;
}

body#product-page #quick-shop-modal .ps-product--quickshop > .modal-body {
  display: block !important;
  padding: 0 !important;
}

body#product-page #quick-shop-modal .ps-product--quickshop .ps-product__header {
  display: block !important;
  grid-template-columns: none !important;
  gap: 0 !important;
}

body#product-page #quick-shop-modal .ps-product--quickshop .ps-product__info {
  display: block !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  max-width: 100% !important;
}

body#product-page #quick-shop-modal .ps-product--quickshop .ps-product__info h1 {
  max-width: calc(100% - 56px) !important;
  margin: 0 0 10px !important;
  color: var(--pm-navy) !important;
  font-family: var(--pm-font-sans) !important;
  font-size: 24px !important;
  font-weight: 800 !important;
  letter-spacing: 0 !important;
  line-height: 1.18 !important;
}

body#product-page #quick-shop-modal .ps-product--quickshop .ps-product__price,
body#product-page #quick-shop-modal .ps-product--quickshop .ps-product__price * {
  margin: 0 0 18px !important;
  color: var(--pm-navy) !important;
  font-family: var(--pm-font-sans) !important;
  font-size: 28px !important;
  font-weight: 800 !important;
  letter-spacing: 0 !important;
  line-height: 1.1 !important;
}

body#product-page #quick-shop-modal .ps-product--quickshop .pr_switch_wrap,
body#product-page #quick-shop-modal .ps-product--quickshop .ps-product__shopping {
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
}

body#product-page #quick-shop-modal .ps-product--quickshop .bb-product-attribute-swatch-title,
body#product-page #quick-shop-modal .ps-product--quickshop .ps-product__shopping figcaption {
  margin: 0 0 8px !important;
  color: var(--pm-navy) !important;
  font-family: var(--pm-font-sans) !important;
  font-size: 13px !important;
  font-weight: 800 !important;
  line-height: 1.35 !important;
  letter-spacing: 0 !important;
}

body#product-page #quick-shop-modal .ps-product--quickshop .bb-product-attribute-swatch,
body#product-page #quick-shop-modal .ps-product--quickshop .attribute-swatches-wrapper,
body#product-page #quick-shop-modal .ps-product--quickshop .pr_switch_wrap [data-slug="size"].attribute-swatches-wrapper {
  display: block !important;
  margin: 0 0 16px !important;
  padding: 0 !important;
}

body#product-page #quick-shop-modal .ps-product--quickshop .bb-product-attribute-swatch-list,
body#product-page #quick-shop-modal .ps-product--quickshop .pr_switch_wrap [data-slug="size"] .bb-product-attribute-swatch-list {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
  margin: 0 !important;
  padding: 0 !important;
}

body#product-page #quick-shop-modal .ps-product--quickshop .bb-product-attribute-swatch-item,
body#product-page #quick-shop-modal .ps-product--quickshop .pr_switch_wrap [data-slug="size"] .bb-product-attribute-swatch-item {
  display: block !important;
  width: auto !important;
  height: auto !important;
  min-width: 0 !important;
  min-height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  font-weight: 400 !important;
}

body#product-page #quick-shop-modal .ps-product--quickshop .bb-product-attribute-swatch-item label,
body#product-page #quick-shop-modal .ps-product--quickshop .pr_switch_wrap [data-slug="size"] .bb-product-attribute-swatch-item label {
  display: inline-block !important;
  width: auto !important;
  height: auto !important;
  min-width: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}

body#product-page #quick-shop-modal .ps-product--quickshop .bb-product-attribute-text-display,
body#product-page #quick-shop-modal .ps-product--quickshop .pr_switch_wrap [data-slug="size"] .bb-product-attribute-text-display {
  display: inline-flex !important;
  min-width: 0 !important;
  min-height: 34px !important;
  width: auto !important;
  height: 34px !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 8px 13px !important;
  border: 1px solid var(--pm-border) !important;
  background: #ffffff !important;
  color: var(--pm-navy) !important;
  font-size: 13px !important;
  font-weight: 800 !important;
  line-height: 13px !important;
}

body#product-page #quick-shop-modal .ps-product--quickshop .bb-product-attribute-swatch-item input:checked + .bb-product-attribute-text-display,
body#product-page #quick-shop-modal .ps-product--quickshop .pr_switch_wrap [data-slug="size"] .bb-product-attribute-swatch-item input:checked + .bb-product-attribute-text-display,
body#product-page #quick-shop-modal .ps-product--quickshop .pr_switch_wrap [data-slug="size"] .bb-product-attribute-swatch-item input[type=radio]:checked ~ .bb-product-attribute-text-display {
  border-color: transparent !important;
  background: var(--pm-navy) !important;
  color: #ffffff !important;
}

body#product-page #quick-shop-modal .ps-product--quickshop .visual-swatch .bb-product-attribute-swatch-item {
  display: list-item !important;
  width: 30px !important;
  height: 30px !important;
  min-height: auto !important;
}

body#product-page #quick-shop-modal .ps-product--quickshop .visual-swatch .bb-product-attribute-swatch-item label {
  display: inline !important;
  width: auto !important;
  height: auto !important;
}

body#product-page #quick-shop-modal .ps-product--quickshop .visual-swatch .bb-product-attribute-swatch-display {
  width: 30px !important;
  height: 30px !important;
}

body#product-page #quick-shop-modal .ps-product--quickshop .ps-product__shopping {
  display: flex !important;
  flex-direction: row !important;
  align-items: flex-end !important;
  flex-wrap: wrap !important;
  gap: 14px !important;
  margin: 0 !important;
  padding: 0 !important;
}

body#product-page #quick-shop-modal .ps-product--quickshop .ps-product__shopping figure {
  display: block !important;
  flex: 0 0 auto !important;
  gap: 0 !important;
  margin: 0 !important;
}

body#product-page #quick-shop-modal .ps-product--quickshop .form-group--number.product__qty {
  width: 118px !important;
  max-width: 118px !important;
}

body#product-page #quick-shop-modal .ps-product--quickshop .ps-product__shopping .ps-btn,
body#product-page #quick-shop-modal .ps-product--quickshop .ps-product__shopping button.ps-btn,
body#product-page #quick-shop-modal .ps-product--quickshop .ps-product__shopping .add-to-cart-button {
  min-width: 170px !important;
  width: auto !important;
  padding: 13px 22px !important;
}

@media (max-width: 575px) {
  body#product-page #quick-shop-modal .ps-product--quickshop .ps-product__info h1 {
    font-size: 21px !important;
    line-height: 1.18 !important;
  }

  body#product-page #quick-shop-modal .ps-product--quickshop .ps-product__price,
  body#product-page #quick-shop-modal .ps-product--quickshop .ps-product__price * {
    font-size: 24px !important;
    line-height: 1.1 !important;
  }

  body#product-page #quick-shop-modal .ps-product--quickshop .ps-product__shopping {
    flex-direction: column !important;
    align-items: stretch !important;
  }

  body#product-page #quick-shop-modal .ps-product--quickshop .form-group--number.product__qty {
    margin-bottom: 20px !important;
  }

  body#product-page #quick-shop-modal .ps-product--quickshop .ps-product__actions,
  body#product-page #quick-shop-modal .ps-product--quickshop .ps-product__shopping .ps-btn,
  body#product-page #quick-shop-modal .ps-product--quickshop .ps-product__shopping button.ps-btn,
  body#product-page #quick-shop-modal .ps-product--quickshop .ps-product__shopping .add-to-cart-button {
    width: 100% !important;
    min-width: 0 !important;
  }
}

/* Search suggestions: compact, readable list instead of catalog cards. */
.ps-form--search-mobile,
.ps-form--primary-search,
.ps-form--quick-search {
  position: relative !important;
}

.ps-form--primary-search {
  overflow: visible !important;
  border: 1px solid var(--pm-border) !important;
  border-radius: var(--pm-pill-radius) !important;
  background: #ffffff !important;
  box-shadow: 0 18px 42px rgba(0, 54, 94, 0.14) !important;
}

.ps-form--search-mobile .form-group--nest,
.ps-form--primary-search .form-group--nest,
.ps-form--quick-search .form-group--nest {
  position: relative !important;
  overflow: visible !important;
  border: 1px solid var(--pm-border) !important;
  border-radius: var(--pm-pill-radius) !important;
  background: #ffffff !important;
  box-shadow: 0 10px 26px rgba(0, 54, 94, 0.10) !important;
}

.ps-form--search-mobile .input-search-product,
.ps-form--primary-search .input-search-product,
.ps-form--quick-search .input-search-product {
  height: 43px !important;
  min-height: 43px !important;
  padding: 0 56px 0 18px !important;
  border: 0 !important;
  border-radius: var(--pm-pill-radius) 0 0 var(--pm-pill-radius) !important;
  color: var(--pm-navy) !important;
  font-family: var(--pm-font-sans) !important;
  font-size: 15px !important;
  font-weight: 400 !important;
  box-shadow: none !important;
}

.ps-form--search-mobile .input-search-product::placeholder,
.ps-form--primary-search .input-search-product::placeholder,
.ps-form--quick-search .input-search-product::placeholder {
  color: var(--pm-muted) !important;
  opacity: 1 !important;
}

.ps-form--search-mobile .spinner-icon,
.ps-form--primary-search .spinner-icon,
.ps-form--quick-search .spinner-icon {
  position: absolute !important;
  top: 50% !important;
  right: 56px !important;
  z-index: 4 !important;
  width: 18px !important;
  height: 18px !important;
  margin-top: -9px !important;
  color: var(--pm-blue) !important;
  font-size: 14px !important;
  line-height: 18px !important;
}

.ps-form--search-mobile button[type="submit"],
.ps-form--primary-search button[type="submit"],
.ps-form--quick-search button[type="submit"],
.ps-form--primary-search > button {
  position: absolute !important;
  top: 0 !important;
  right: 0 !important;
  display: grid !important;
  width: 48px !important;
  height: 46px !important;
  min-height: 46px !important;
  margin: 0 !important;
  padding: 0 !important;
  place-items: center !important;
  border: 0 !important;
  border-radius: 0 var(--pm-pill-radius) var(--pm-pill-radius) 0 !important;
  color: #ffffff !important;
  background: linear-gradient(90deg, var(--pm-blue), var(--pm-cyan)) !important;
  box-shadow: none !important;
}

.ps-form--search-mobile button[type="submit"]:hover,
.ps-form--primary-search button[type="submit"]:hover,
.ps-form--quick-search button[type="submit"]:hover,
.ps-form--primary-search > button:hover {
  color: #ffffff !important;
  background: linear-gradient(90deg, var(--pm-blue), var(--pm-cyan)) !important;
  filter: brightness(1.04);
}

.pm-store-profile-header .pm-store-header__search button[type="submit"],
.pm-store-profile-header .pm-store-header__search button[type="submit"]:hover {
  background: #0b3454 !important;
  color: #ffffff !important;
  filter: none !important;
}

.ps-panel--search-result {
  display: none;
}

.ps-panel--search-result.active {
  position: absolute !important;
  top: calc(100% + 10px) !important;
  left: 0 !important;
  right: 0 !important;
  z-index: 10030 !important;
  display: block !important;
  width: 100% !important;
  max-height: min(68vh, 520px) !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
  padding: 12px !important;
  border: 1px solid var(--pm-border) !important;
  border-radius: 20px !important;
  background: #ffffff !important;
  box-shadow: 0 22px 50px rgba(0, 54, 94, 0.18) !important;
}

#search-sidebar .ps-panel__header {
  padding: 14px 10px 10px !important;
  border-bottom: 0 !important;
  background: transparent !important;
}

#search-sidebar .ps-form--search-mobile .form-group--nest {
  box-sizing: border-box !important;
  height: 43px !important;
  min-height: 43px !important;
  overflow: visible !important;
  border: 1px solid var(--pm-border) !important;
  box-shadow: none !important;
}

#search-sidebar .ps-form--search-mobile .input-search-product {
  height: 41px !important;
  min-height: 41px !important;
  line-height: 41px !important;
}

#search-sidebar .ps-form--search-mobile button[type="submit"] {
  top: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  width: 48px !important;
  height: auto !important;
  min-height: 0 !important;
  border-radius: 0 var(--pm-pill-radius) var(--pm-pill-radius) 0 !important;
  clip-path: inset(0 round 0 var(--pm-pill-radius) var(--pm-pill-radius) 0) !important;
}

#search-sidebar .ps-panel--search-result {
  text-align: left !important;
}

#search-sidebar .ps-panel--search-result.active {
  max-height: calc(100vh - 98px) !important;
  border-radius: 18px !important;
  box-shadow: 0 18px 42px rgba(0, 54, 94, 0.14) !important;
}

.pm-search-results {
  display: grid !important;
  gap: 12px !important;
}

.pm-search-results__section {
  display: grid !important;
  gap: 8px !important;
}

.pm-search-results__label {
  display: block !important;
  padding: 0 4px !important;
  color: var(--pm-blue) !important;
  font-size: 11px !important;
  font-weight: 900 !important;
  letter-spacing: 0 !important;
  line-height: 1.2 !important;
  text-transform: uppercase !important;
}

.pm-search-result {
  display: grid !important;
  grid-template-columns: 52px minmax(0, 1fr) auto !important;
  gap: 10px !important;
  min-height: 72px !important;
  align-items: center !important;
  padding: 9px 10px !important;
  border: 1px solid var(--pm-border) !important;
  border-radius: 16px !important;
  background: #ffffff !important;
  color: var(--pm-navy) !important;
  text-decoration: none !important;
  box-shadow: 0 8px 18px rgba(0, 54, 94, 0.06) !important;
  transition: border-color 180ms ease, background-color 180ms ease, box-shadow 180ms ease, transform 180ms ease !important;
}

.pm-search-result:hover {
  border-color: rgba(0, 119, 182, 0.34) !important;
  background: #f7fcff !important;
  color: var(--pm-navy) !important;
  text-decoration: none !important;
  transform: translateY(-1px);
  box-shadow: 0 12px 24px rgba(0, 54, 94, 0.10) !important;
}

.pm-search-result--store {
  grid-template-columns: 52px minmax(0, 1fr) !important;
}

.pm-search-result__media {
  display: grid !important;
  width: 52px !important;
  height: 52px !important;
  overflow: hidden !important;
  place-items: center !important;
  border: 1px solid var(--pm-border) !important;
  border-radius: 14px !important;
  background: #f8fdff !important;
}

.pm-search-result__media img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  padding: 5px !important;
}

.pm-search-result__content {
  display: grid !important;
  min-width: 0 !important;
  gap: 4px !important;
}

.pm-search-result__title {
  display: -webkit-box !important;
  overflow: hidden !important;
  color: var(--pm-navy) !important;
  font-size: 13px !important;
  font-weight: 850 !important;
  line-height: 1.25 !important;
  text-overflow: ellipsis !important;
  -webkit-box-orient: vertical !important;
  -webkit-line-clamp: 2 !important;
}

.pm-search-result__meta {
  overflow: hidden !important;
  color: var(--pm-blue) !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

.pm-search-result__price {
  display: grid !important;
  min-width: 72px !important;
  justify-items: end !important;
  color: var(--pm-navy) !important;
  font-size: 13px !important;
  font-weight: 900 !important;
  line-height: 1.2 !important;
  white-space: nowrap !important;
}

.pm-search-result__price del {
  margin-top: 3px !important;
  color: var(--pm-muted) !important;
  font-size: 11px !important;
  font-weight: 700 !important;
}

.pm-search-results__footer {
  margin-top: 10px !important;
}

.pm-search-results__footer a {
  display: flex !important;
  min-height: 42px !important;
  align-items: center !important;
  justify-content: center !important;
  border: 1px solid var(--pm-border) !important;
  border-radius: var(--pm-pill-radius) !important;
  color: var(--pm-blue) !important;
  background: #f8fdff !important;
  font-size: 13px !important;
  font-weight: 850 !important;
  text-decoration: none !important;
}

.pm-search-results__footer a:hover {
  border-color: rgba(0, 119, 182, 0.34) !important;
  color: #ffffff !important;
  background: linear-gradient(90deg, var(--pm-blue), var(--pm-cyan)) !important;
}

.pm-search-results__empty {
  display: grid !important;
  gap: 4px !important;
  padding: 18px !important;
  border: 1px solid var(--pm-border) !important;
  border-radius: 16px !important;
  background: #f8fdff !important;
  color: var(--pm-muted) !important;
  text-align: center !important;
}

.pm-search-results__empty strong {
  color: var(--pm-navy) !important;
  font-size: 14px !important;
}

.pm-search-results__empty span {
  font-size: 12px !important;
  font-weight: 600 !important;
}

@media (max-width: 575px) {
  .ps-panel--search-result.active {
    max-height: min(66vh, 460px) !important;
    padding: 10px !important;
    border-radius: 18px !important;
  }

  .pm-search-result {
    grid-template-columns: 48px minmax(0, 1fr) !important;
    align-items: start !important;
  }

  .pm-search-result__media {
    width: 48px !important;
    height: 48px !important;
  }

  .pm-search-result__price {
    grid-column: 2 !important;
    justify-items: start !important;
    min-width: 0 !important;
  }

  .pm-home-hero .pm-search-results--home .pm-search-result {
    grid-template-columns: 42px minmax(0, 1fr) !important;
  }

  .pm-home-hero .pm-search-results--home .pm-search-result__media {
    width: 40px !important;
    height: 40px !important;
  }

  .pm-home-hero .pm-search-results--home .pm-search-result__side,
  .pm-home-hero .pm-search-results--home .pm-search-result__price {
    grid-column: 2 !important;
    justify-self: start !important;
    min-width: 0 !important;
    text-align: left !important;
  }
}

/* Mobile menu drawer: Vercel-style navigation with the cart overlay treatment. */

/* Header cart pill: matches the Vercel cart control instead of the circular legacy icon. */
.pm-site-header__cart > .pm-cart-pill.header__extra,
.store-identity-nav__cart > .pm-cart-pill.header__extra,
.pm-mobile-header__cart.pm-cart-pill,
.header--mobile .ps-cart--mini > .pm-cart-pill.btn-shopping-cart {
  display: inline-flex !important;
  width: auto !important;
  min-width: 0 !important;
  height: 40px !important;
  min-height: 40px !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  padding: 8px 12px !important;
  border: 1px solid var(--pm-border) !important;
  border-radius: 999px !important;
  background: #ffffff !important;
  color: var(--pm-navy) !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  text-decoration: none !important;
  box-shadow: none !important;
}

.pm-site-header__cart > .pm-cart-pill.header__extra:hover,
.store-identity-nav__cart > .pm-cart-pill.header__extra:hover,
.pm-mobile-header__cart.pm-cart-pill:hover,
.header--mobile .ps-cart--mini > .pm-cart-pill.btn-shopping-cart:hover {
  border-color: var(--pm-blue) !important;
  color: var(--pm-blue) !important;
  background: #ffffff !important;
}

.pm-cart-pill .pm-cart-pill__icon {
  display: block !important;
  flex: 0 0 16px !important;
  width: 16px !important;
  height: 16px !important;
  margin: 0 !important;
  color: currentColor !important;
  fill: none !important;
  stroke: currentColor !important;
  stroke-width: 2 !important;
  stroke-linecap: round !important;
  stroke-linejoin: round !important;
}

.pm-site-header .pm-cart-pill .pm-cart-pill__count,
.store-identity-nav__cart .pm-cart-pill .pm-cart-pill__count,
.pm-mobile-header__cart.pm-cart-pill > .pm-cart-pill__count,
.header--mobile .pm-cart-pill .pm-cart-pill__count {
  position: static !important;
  inset: auto !important;
  display: grid !important;
  width: auto !important;
  min-width: 20px !important;
  height: 20px !important;
  place-items: center !important;
  padding: 0 6px !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: linear-gradient(135deg, var(--pm-blue), var(--pm-cyan)) !important;
  color: #ffffff !important;
}

.pm-cart-pill .pm-cart-pill__count.pm-cart-pill__count--empty {
  display: none !important;
}

.pm-site-header .pm-cart-pill .pm-cart-pill__count i,
.store-identity-nav__cart .pm-cart-pill .pm-cart-pill__count i,
.pm-mobile-header__cart.pm-cart-pill > .pm-cart-pill__count i,
.header--mobile .pm-cart-pill .pm-cart-pill__count i {
  color: #ffffff !important;
  font-size: 10px !important;
  font-style: normal !important;
  font-weight: 800 !important;
  line-height: 1 !important;
}
body.pm-menu-open {
  overflow: hidden !important;
}

body.pm-menu-open .ps-site-overlay.active {
  z-index: 100000 !important;
  background: rgba(8, 40, 67, 0.40) !important;
  opacity: 1 !important;
  visibility: visible !important;
  backdrop-filter: blur(4px);
}

#menu-mobile.pm-mobile-menu.ps-panel--sidebar {
  z-index: 100001 !important;
  display: flex !important;
  width: min(360px, 88vw) !important;
  max-width: 360px !important;
  height: 100vh !important;
  overflow: hidden !important;
  flex-direction: column !important;
  border-right: 1px solid var(--pm-border) !important;
  background: #ffffff !important;
  box-shadow: 0 28px 70px rgba(8, 40, 67, 0.18) !important;
  transition: opacity 0.18s ease, transform 0.18s ease, visibility 0.18s ease !important;
}

#menu-mobile.pm-mobile-menu .pm-mobile-menu__header {
  display: flex !important;
  min-height: 66px !important;
  align-items: center !important;
  justify-content: space-between !important;
  padding: 14px 14px 14px 16px !important;
  border-bottom: 1px solid var(--pm-border) !important;
  background: #ffffff !important;
  text-align: left !important;
}

.pm-mobile-menu__logo {
  display: inline-flex !important;
  align-items: center !important;
  width: 176px !important;
  max-width: calc(100% - 58px) !important;
}

.pm-mobile-menu__logo img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
}

.pm-mobile-menu__close {
  display: grid !important;
  width: 38px !important;
  height: 38px !important;
  min-width: 38px !important;
  place-items: center !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 1px solid var(--pm-border) !important;
  border-radius: 50% !important;
  background: #ffffff !important;
  color: var(--pm-navy) !important;
  box-shadow: none !important;
}

.pm-mobile-menu__close:hover {
  border-color: var(--pm-blue) !important;
  background: var(--pm-soft) !important;
  color: var(--pm-blue) !important;
}

.pm-mobile-menu__close i {
  color: inherit !important;
  font-size: 15px !important;
  line-height: 1 !important;
}

#menu-mobile.pm-mobile-menu .pm-mobile-menu__content {
  flex: 1 1 auto !important;
  min-height: 0 !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
  padding: 18px 6px 24px !important;
  background: #ffffff !important;
}

#menu-mobile.pm-mobile-menu .menu--mobile,
#menu-mobile.pm-mobile-menu .menu--mobile ul {
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

#menu-mobile.pm-mobile-menu .menu--mobile > li {
  position: relative !important;
  margin: 0 !important;
  border: 0 !important;
}

#menu-mobile.pm-mobile-menu .menu--mobile > li > a {
  position: relative !important;
  display: flex !important;
  min-height: 48px !important;
  align-items: center !important;
  gap: 14px !important;
  padding: 12px 14px 12px 44px !important;
  border: 0 !important;
  border-radius: 14px !important;
  color: var(--pm-navy) !important;
  background: transparent !important;
  font-family: var(--pm-font-sans) !important;
  font-size: 14px !important;
  font-weight: 750 !important;
  letter-spacing: 0 !important;
  line-height: 1.25 !important;
  text-decoration: none !important;
}

#menu-mobile.pm-mobile-menu .menu--mobile > li > a:hover,
#menu-mobile.pm-mobile-menu .menu--mobile > li.current-menu-item > a,
#menu-mobile.pm-mobile-menu .menu--mobile > li.current_page_item > a {
  color: var(--pm-blue) !important;
  background: #f4fbff !important;
}

#menu-mobile.pm-mobile-menu .menu--mobile > li > a > i,
#menu-mobile.pm-mobile-menu .menu--mobile > li > a::before {
  position: absolute !important;
  top: 50% !important;
  left: 14px !important;
  display: grid !important;
  width: 20px !important;
  height: 20px !important;
  place-items: center !important;
  color: var(--pm-blue) !important;
  font-family: Linearicons !important;
  font-size: 19px !important;
  font-style: normal !important;
  font-weight: 400 !important;
  line-height: 1 !important;
  transform: translateY(-50%) !important;
}

#menu-mobile.pm-mobile-menu .menu--mobile > li > a > i {
  font-family: Linearicons !important;
}

#menu-mobile.pm-mobile-menu .pm-mobile-menu__nav > li > a::before {
  content: "\e74c";
}

#menu-mobile.pm-mobile-menu .pm-mobile-menu__nav > li:nth-child(1) > a::before {
  content: "\e74c";
}

#menu-mobile.pm-mobile-menu .pm-mobile-menu__nav > li:nth-child(2) > a::before {
  content: "\e744";
}

#menu-mobile.pm-mobile-menu .pm-mobile-menu__nav > li:nth-child(3) > a::before {
  content: "\e7ff";
}

#menu-mobile.pm-mobile-menu .pm-mobile-menu__nav > li:nth-child(4) > a::before {
  content: "\e957";
}

#menu-mobile.pm-mobile-menu .pm-mobile-menu__nav > li:nth-child(5) > a::before {
  content: "\e696";
}

#menu-mobile.pm-mobile-menu .pm-mobile-menu__nav a[href*="home"]::before {
  content: "\e600" !important;
}

#menu-mobile.pm-mobile-menu .pm-mobile-menu__nav a[href*="marketplace"]::before,
#menu-mobile.pm-mobile-menu .pm-mobile-menu__nav a[href*="shop"]::before {
  content: "\e74c" !important;
}

#menu-mobile.pm-mobile-menu .pm-mobile-menu__nav a[href*="store"]::before,
#menu-mobile.pm-mobile-menu .pm-mobile-menu__nav a[href*="business"]::before {
  content: "\e744" !important;
}

#menu-mobile.pm-mobile-menu .pm-mobile-menu__nav a[href*="giving"]::before,
#menu-mobile.pm-mobile-menu .pm-mobile-menu__nav a[href*="give"]::before {
  content: "\e7ff" !important;
}

#menu-mobile.pm-mobile-menu .pm-mobile-menu__nav a[href*="faq"]::before {
  content: "\e957" !important;
}

#menu-mobile.pm-mobile-menu .pm-mobile-menu__nav a[href*="contact"]::before {
  content: "\e696" !important;
}

#menu-mobile.pm-mobile-menu .pm-mobile-menu__nav a[href*="community"]::before,
#menu-mobile.pm-mobile-menu .pm-mobile-menu__nav a[href*="communities"]::before {
  content: "\e722" !important;
}

#menu-mobile.pm-mobile-menu .pm-mobile-menu__nav a[href*="sponsor"]::before {
  content: "\e8ae" !important;
}

#menu-mobile.pm-mobile-menu .pm-mobile-menu__extra {
  margin-top: 18px !important;
  padding-top: 18px !important;
  border-top: 1px solid var(--pm-border) !important;
}

#menu-mobile.pm-mobile-menu .menu--mobile-extra > li > a > i {
  color: var(--pm-muted) !important;
  font-size: 18px !important;
}

#menu-mobile.pm-mobile-menu .menu--mobile-extra > li > a::before {
  display: none !important;
}

#menu-mobile.pm-mobile-menu .menu--mobile > li > a .menu-icon-image {
  position: absolute !important;
  top: 50% !important;
  left: 14px !important;
  display: block !important;
  width: 20px !important;
  height: 20px !important;
  margin: 0 !important;
  object-fit: contain !important;
  transform: translateY(-50%) !important;
}

#menu-mobile.pm-mobile-menu .menu--mobile-extra > li > a span {
  display: inline-block !important;
}

#menu-mobile.pm-mobile-menu .menu-item-has-children > .sub-toggle {
  position: absolute !important;
  top: 8px !important;
  right: 10px !important;
  display: grid !important;
  width: 32px !important;
  height: 32px !important;
  place-items: center !important;
  border-radius: 50% !important;
  color: var(--pm-muted) !important;
}

#menu-mobile.pm-mobile-menu .menu-item-has-children > .sub-toggle::before {
  color: inherit !important;
  font-size: 12px !important;
}

#menu-mobile.pm-mobile-menu .menu--mobile .sub-menu {
  display: none;
  margin: 2px 0 8px 44px !important;
  padding: 4px 0 4px 10px !important;
  border-left: 1px solid var(--pm-border) !important;
}

#menu-mobile.pm-mobile-menu .menu--mobile .sub-menu a {
  display: flex !important;
  min-height: 34px !important;
  align-items: center !important;
  padding: 8px 10px !important;
  border-radius: 10px !important;
  color: var(--pm-muted) !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  text-decoration: none !important;
}

#menu-mobile.pm-mobile-menu .menu--mobile .sub-menu a:hover {
  color: var(--pm-blue) !important;
  background: #f4fbff !important;
}

.pm-mobile-menu__footer {
  flex: 0 0 auto !important;
  padding: 16px !important;
  border-top: 1px solid var(--pm-border) !important;
  background: #f8fdff !important;
}

.pm-mobile-menu__footer-join {
  display: flex !important;
  width: 100% !important;
  min-height: 48px !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 12px 20px !important;
  border: 0 !important;
  border-radius: 999px !important;
  color: #ffffff !important;
  background: linear-gradient(90deg, #0088aa 0%, #47b9e8 100%) !important;
  font-family: var(--pm-font-sans) !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  text-align: center !important;
  text-decoration: none !important;
  box-shadow: 0 10px 24px rgba(0, 136, 170, 0.18) !important;
}

.pm-mobile-menu__footer-join:hover,
.pm-mobile-menu__footer-join:focus-visible {
  color: #ffffff !important;
  background: linear-gradient(90deg, #007995 0%, #2faedc 100%) !important;
}

.pm-mobile-menu__language {
  position: relative !important;
  display: flex !important;
  justify-content: flex-end !important;
}

.pm-mobile-menu__language-toggle {
  display: inline-flex !important;
  min-width: 42px !important;
  height: 42px !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 10px !important;
  border: 1px solid var(--pm-border) !important;
  border-radius: 50% !important;
  color: var(--pm-navy) !important;
  background: #ffffff !important;
  font-size: 13px !important;
  font-weight: 850 !important;
  line-height: 1 !important;
  box-shadow: none !important;
}

.pm-mobile-menu__language-toggle:hover,
.pm-mobile-menu__language.is-open .pm-mobile-menu__language-toggle {
  border-color: var(--pm-blue) !important;
  color: var(--pm-blue) !important;
  background: #ffffff !important;
}

.pm-mobile-menu__language-list {
  position: absolute !important;
  right: 0 !important;
  bottom: calc(100% + 10px) !important;
  z-index: 2 !important;
  display: grid !important;
  min-width: 170px !important;
  gap: 4px !important;
  padding: 8px !important;
  border: 1px solid var(--pm-border) !important;
  border-radius: 16px !important;
  background: #ffffff !important;
  box-shadow: 0 18px 42px rgba(0, 54, 94, 0.14) !important;
  opacity: 0 !important;
  visibility: hidden !important;
  transform: translateY(6px) !important;
  transition: opacity 0.16s ease, transform 0.16s ease, visibility 0.16s ease !important;
}

.pm-mobile-menu__language.is-open .pm-mobile-menu__language-list {
  opacity: 1 !important;
  visibility: visible !important;
  transform: translateY(0) !important;
}

.pm-mobile-menu__language-list a {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 12px !important;
  padding: 9px 10px !important;
  border-radius: 11px !important;
  color: var(--pm-navy) !important;
  font-size: 13px !important;
  font-weight: 800 !important;
  line-height: 1.1 !important;
  text-decoration: none !important;
}

.pm-mobile-menu__language-list a:hover,
.pm-mobile-menu__language-list a.active {
  color: var(--pm-blue) !important;
  background: #f4fbff !important;
}

.pm-mobile-menu__language-list small {
  color: var(--pm-muted) !important;
  font-size: 11px !important;
  font-weight: 700 !important;
}

@media (max-width: 575px) {
  #menu-mobile.pm-mobile-menu.ps-panel--sidebar {
    width: min(328px, 88vw) !important;
    max-width: 328px !important;
  }

  .pm-mobile-menu__logo {
    width: 168px !important;
  }
}

/* Site feature strip: align footer benefit icons and copy with the home typography. */
.ps-site-features {
  background: #f8fdff !important;
}

#homepage-1 .ps-site-features,
.ps-site-features {
  padding: 52px 0 !important;
}

.ps-block--site-features {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(230px, 1fr)) !important;
  gap: 0 !important;
  align-items: stretch !important;
  width: 100% !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
}

.ps-block--site-features .ps-block__item {
  display: grid !important;
  grid-template-columns: 54px minmax(0, 1fr) !important;
  gap: 18px !important;
  align-items: center !important;
  width: 100% !important;
  max-width: none !important;
  min-height: 96px !important;
  padding: 12px 44px !important;
  border: 0 !important;
  border-right: 1px solid var(--pm-border) !important;
}

.ps-block--site-features .ps-block__item:first-child {
  padding-left: 28px !important;
}

.ps-block--site-features .ps-block__item:last-child {
  padding-right: 28px !important;
  border-right: 0 !important;
}

.ps-block--site-features .ps-block__left {
  display: grid !important;
  width: 54px !important;
  height: 54px !important;
  place-items: center !important;
}

.ps-block--site-features .ps-block__left i,
.ps-block--site-features .ps-block__left svg {
  width: 40px !important;
  height: 40px !important;
  margin: 0 !important;
  color: var(--pm-blue) !important;
  fill: none;
  font-size: 40px !important;
  line-height: 1 !important;
}

.ps-block--site-features .ps-block__left svg path,
.ps-block--site-features .ps-block__left svg circle,
.ps-block--site-features .ps-block__left svg rect,
.ps-block--site-features .ps-block__left svg line,
.ps-block--site-features .ps-block__left svg polyline {
  stroke: currentColor !important;
}

.ps-block--site-features .ps-block__right {
  display: grid !important;
  min-width: 0 !important;
  gap: 4px !important;
  padding: 0 !important;
}

.ps-block--site-features .ps-block__right h4,
.ps-block--site-features .ps-block__right p {
  font-family: var(--pm-font-sans) !important;
  letter-spacing: 0 !important;
}

.ps-block--site-features .ps-block__right h4 {
  max-width: 190px !important;
  margin: 0 !important;
  color: var(--pm-navy) !important;
  font-size: 18px !important;
  font-weight: 750 !important;
  line-height: 1.18 !important;
}

.ps-block--site-features .ps-block__right p {
  max-width: 180px !important;
  margin: 0 !important;
  color: var(--pm-muted) !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  line-height: 1.5 !important;
}

@media (max-width: 1199px) {
  .ps-block--site-features {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .ps-block--site-features .ps-block__item:nth-child(2n) {
    border-right: 0 !important;
  }
}

@media (max-width: 767px) {
  #homepage-1 .ps-site-features,
  .ps-site-features {
    padding: 30px 0 !important;
  }

  .ps-block--site-features {
    grid-template-columns: 1fr !important;
  }

  .ps-block--site-features .ps-block__item,
  .ps-block--site-features .ps-block__item:first-child,
  .ps-block--site-features .ps-block__item:last-child {
    min-height: 0 !important;
    padding: 16px 10px !important;
    border-right: 0 !important;
    border-bottom: 1px solid var(--pm-border) !important;
  }

  .ps-block--site-features .ps-block__item:last-child {
    border-bottom: 0 !important;
  }

  .ps-block--site-features .ps-block__right h4,
  .ps-block--site-features .ps-block__right p {
    max-width: none !important;
  }
}

/* Newsletter strip: homologated with the home footer strip. */
.ps-newsletter,
.ps-newsletter *,
.ps-form--newsletter,
.ps-form--newsletter * {
  font-family: var(--pm-font-sans) !important;
  letter-spacing: 0 !important;
}

.ps-newsletter {
  margin: 0 !important;
  padding: 44px 0 !important;
  background: var(--pm-navy-deep) !important;
}

.ps-newsletter .ps-container,
.ps-newsletter .newsletter-form {
  max-width: 1280px !important;
}

.ps-form--newsletter {
  margin: 0 !important;
}

.ps-form--newsletter .row {
  min-height: 92px !important;
  align-items: center !important;
}

.ps-form--newsletter .ps-form__left {
  padding: 0 !important;
}

.ps-form--newsletter .ps-form__left h3,
.ps-form--newsletter h3 {
  margin: 0 0 6px !important;
  color: #ffffff !important;
  font-size: 26px !important;
  font-weight: 500 !important;
  line-height: 32px !important;
}

.ps-form--newsletter .ps-form__left p,
.ps-form--newsletter p {
  margin: 0 !important;
  color: #ffffff !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  line-height: 20px !important;
}

.ps-form--newsletter .ps-form__right {
  padding: 0 !important;
}

.ps-form--newsletter .form-group--nest {
  display: flex !important;
  min-height: 52px !important;
  overflow: hidden !important;
  border: 1px solid var(--pm-border) !important;
  border-radius: var(--pm-pill-radius) !important;
  background: #ffffff !important;
  box-shadow: none !important;
}

.ps-form--newsletter .form-control {
  min-height: 52px !important;
  border: 0 !important;
  background: transparent !important;
  color: var(--pm-navy) !important;
  font-family: var(--pm-font-sans) !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  box-shadow: none !important;
}

.ps-form--newsletter .ps-btn,
.ps-form--newsletter button {
  min-width: 156px !important;
  min-height: 52px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: linear-gradient(90deg, var(--pm-blue), var(--pm-cyan)) !important;
  color: #ffffff !important;
  font-family: var(--pm-font-sans) !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  box-shadow: none !important;
}

@media (max-width: 767px) {
  .ps-newsletter {
    padding: 32px 0 !important;
  }

  .ps-form--newsletter .row {
    gap: 18px !important;
  }

  .ps-form--newsletter .form-group--nest {
    flex-direction: column !important;
    overflow: visible !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    gap: 10px !important;
  }

  .ps-form--newsletter .form-control,
  .ps-form--newsletter .ps-btn,
  .ps-form--newsletter button {
    width: 100% !important;
    border-radius: var(--pm-pill-radius) !important;
  }
}

/* Back to top: blue control with white arrow. */
#back2top {
  display: flex !important;
  width: 44px !important;
  height: 44px !important;
  align-items: center !important;
  justify-content: center !important;
  border: 1px solid transparent !important;
  border-radius: 50% !important;
  background: linear-gradient(90deg, var(--pm-blue), var(--pm-cyan)) !important;
  box-shadow: 0 14px 30px rgba(5, 126, 162, 0.28) !important;
}

#back2top i,
#back2top .icon,
#back2top svg {
  color: #ffffff !important;
  fill: #ffffff !important;
  font-size: 18px !important;
  line-height: 1 !important;
}

#back2top:hover {
  border-color: transparent !important;
  background: linear-gradient(90deg, var(--pm-blue), var(--pm-cyan)) !important;
  box-shadow: 0 18px 34px rgba(5, 126, 162, 0.34) !important;
  transform: translateY(-2px);
}

@media (max-width: 575px) {
  #back2top {
    display: none !important;
  }
}

/* Parish reviews shortcode: Vercel-style testimonials below Give with Love. */
.pm-reviews-section {
  max-width: 1280px !important;
  margin: 0 auto !important;
  padding: 40px 24px !important;
}

.pm-reviews-section__inner {
  width: 100% !important;
}

.pm-reviews-section__header {
  margin-bottom: 24px !important;
}

.pm-reviews-section__header h2 {
  margin: 0 !important;
  color: var(--pm-navy) !important;
  font-size: 30px !important;
  font-weight: 800 !important;
  line-height: 36px !important;
  letter-spacing: -0.025em !important;
}

.pm-reviews-section__header p {
  margin: 4px 0 0 !important;
  color: var(--pm-muted) !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  line-height: 20px !important;
}

.pm-reviews-section__grid {
  display: grid !important;
  gap: 16px !important;
}

.pm-review-card {
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
  min-height: 150px !important;
  padding: 20px !important;
  border: 1px solid var(--pm-border) !important;
  border-radius: 24px !important;
  background: rgba(255, 255, 255, 0.92) !important;
  box-shadow: var(--pm-card-shadow) !important;
  transition: transform 0.15s ease, box-shadow 0.15s ease, border-color 0.15s ease !important;
}

.pm-review-card:hover {
  border-color: #bfe2ff !important;
  box-shadow: var(--pm-soft-shadow) !important;
  transform: translateY(-2px) !important;
}

.pm-review-card__message {
  margin: 0 !important;
  color: var(--pm-ink) !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  line-height: 20px !important;
}

.pm-review-card__person {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  margin-top: auto !important;
  padding-top: 12px !important;
}

.pm-review-card__avatar {
  display: grid !important;
  width: 36px !important;
  height: 36px !important;
  flex: 0 0 36px !important;
  place-items: center !important;
  border-radius: 12px !important;
  background: linear-gradient(135deg, var(--pm-blue), var(--pm-cyan)) !important;
  color: #ffffff !important;
  font-size: 13px !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  box-shadow: 0 10px 22px rgba(13, 145, 184, 0.22) !important;
}

.pm-review-card__person strong,
.pm-review-card__person small {
  display: block !important;
}

.pm-review-card__person strong {
  color: var(--pm-navy) !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  line-height: 16px !important;
}

.pm-review-card__person small {
  color: var(--pm-muted) !important;
  font-size: 11px !important;
  font-weight: 400 !important;
  line-height: 16.5px !important;
}

@media (min-width: 768px) {
  .pm-reviews-section__grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 767px) {
  .pm-reviews-section {
    padding: 28px 16px 38px !important;
  }

  .pm-reviews-section__header h2 {
    font-size: 26px !important;
    line-height: 32px !important;
  }
}

/* Home rhythm refinements: spacing, type and section separation. */
.pm-home-hero,
.pm-ecosystem,
.pm-featured-products,
.pm-give-section,
.pm-how-it-works,
.pm-reviews-section {
  box-sizing: border-box !important;
}

.pm-home-hero h1,
.pm-ecosystem__header h2,
.pm-ecosystem__role h3,
.pm-featured-products .pm-featured-products__header h3,
.pm-featured-products .pm-featured-products__header .title_site,
.pm-give-section__header h2,
.pm-how-it-works h2,
.pm-reviews-section__header h2 {
  letter-spacing: 0 !important;
}

.pm-home-hero h1 {
  letter-spacing: -0.025em !important;
}

.pm-ecosystem__header h2,
.pm-ecosystem__role h3 {
  font-family: var(--pm-font-sans) !important;
  letter-spacing: -0.025em !important;
}

.pm-ecosystem__header p,
.pm-ecosystem__role-grid p,
.pm-ecosystem__option,
.pm-ecosystem__option *,
.pm-ecosystem__showcase,
.pm-ecosystem__showcase *,
.pm-ecosystem__store-card,
.pm-ecosystem__store-card * {
  font-family: var(--pm-font-sans) !important;
}

.pm-ecosystem__option strong {
  font-family: var(--pm-font-sans) !important;
  font-size: 16px !important;
  font-weight: 800 !important;
  line-height: 24px !important;
  letter-spacing: normal !important;
}

.pm-ecosystem__role .pm-ecosystem__option > strong {
  font-family: var(--pm-font-sans) !important;
  font-size: 16px !important;
  font-weight: 800 !important;
  line-height: 24px !important;
  letter-spacing: normal !important;
}

.pm-how-it-works,
.pm-how-it-works h2,
.pm-how-it-works p,
.pm-how-it-works span,
.pm-how-it-works strong,
.pm-how-it-works div {
  font-family: var(--pm-font-sans) !important;
}

.pm-featured-products,
.pm-featured-products h3,
.pm-featured-products p,
.pm-featured-products span,
.pm-featured-products a,
.pm-featured-products div {
  font-family: var(--pm-font-sans) !important;
}

.pm-featured-products .pm-featured-products__header h3,
.pm-featured-products .pm-featured-products__header .title_site,
.pm-featured-products .ps-product__title {
  font-family: var(--pm-font-sans) !important;
}

.pm-give-section,
.pm-give-section h2,
.pm-give-section h3,
.pm-give-section p,
.pm-give-section span,
.pm-give-section a,
.pm-give-section div,
.pm-reviews-section,
.pm-reviews-section h2,
.pm-reviews-section p,
.pm-reviews-section span,
.pm-reviews-section strong,
.pm-reviews-section small,
.pm-reviews-section article,
.pm-reviews-section div {
  font-family: var(--pm-font-sans) !important;
}

.pm-home-hero h1 .pm-gradient-text {
  display: inline !important;
  font-family: inherit !important;
  letter-spacing: inherit !important;
  position: relative !important;
}

.pm-home-hero h1 .pm-gradient-text:first-of-type {
  top: 0.75px !important;
}

.pm-home-hero h1 .pm-gradient-text:nth-of-type(2) {
  top: -0.75px !important;
}

.pm-home-hero,
.pm-home-hero .pm-kicker,
.pm-home-hero h1,
.pm-home-hero h1 .pm-gradient-text,
.pm-home-hero p,
.pm-home-hero input,
.pm-home-hero button,
.pm-home-hero a,
.pm-home-hero h3,
.pm-home-hero strong,
.pm-home-hero .pm-label,
.pm-home-hero .pm-btn,
.pm-home-hero .pm-input,
.pm-home-hero .text-\[10px\],
.pm-home-hero .text-base {
  font-family: var(--pm-font-sans) !important;
}

.pm-home-hero > .mt-8 .pm-card {
  min-height: 60px !important;
  padding: 12px 16px !important;
  border-radius: 24px !important;
}

.pm-home-hero > .mt-8 .pm-card p {
  font-size: 14px !important;
  line-height: 20px !important;
}

@media (min-width: 768px) {
  .pm-home-hero {
    padding-top: 48px !important;
    padding-bottom: 48px !important;
  }

  .pm-ecosystem,
  .pm-featured-products,
  .pm-give-section,
  .pm-how-it-works {
    padding-top: 40px !important;
    padding-bottom: 40px !important;
  }

  .pm-reviews-section {
    padding-top: 40px !important;
  }
}

/* Home product row: compact Vercel card treatment. */
.pm-featured-products {
  max-width: 1280px !important;
  padding: 40px 24px !important;
}

.pm-featured-products .pm-featured-products__header {
  display: flex !important;
  align-items: flex-end !important;
  justify-content: space-between !important;
  margin-bottom: 24px !important;
}

.pm-featured-products .pm-featured-products__header h3,
.pm-featured-products .pm-featured-products__header .title_site {
  font-size: 30px !important;
  line-height: 36px !important;
  letter-spacing: -0.025em !important;
}

.pm-featured-products .ps-section__content {
  margin: 0 !important;
  padding: 0 !important;
}

.pm-featured-products__grid {
  gap: 16px !important;
}

.pm-featured-products__grid > .ps-product {
  height: auto !important;
  margin-bottom: 0 !important;
}

.pm-featured-products .ps-product:not(.ps-product--wide):not(.ps-product--detail):not(.ps-product--cart):not(.ps-product--cart-mobile):not(.ps-product--search-result):not(.ps-product--header-sticky) {
  height: 369px !important;
  min-height: 369px !important;
  padding: 0 !important;
  border-color: #dbeafe !important;
  border-radius: 24px !important;
  background: rgba(255, 255, 255, 0.92) !important;
  box-shadow: 0 18px 50px rgba(2, 80, 110, 0.08) !important;
}

.pm-featured-products .ps-product:not(.ps-product--wide):not(.ps-product--detail):not(.ps-product--cart):not(.ps-product--cart-mobile):not(.ps-product--search-result):not(.ps-product--header-sticky):hover {
  transform: translateY(-1px);
  box-shadow: 0 20px 52px rgba(2, 80, 110, 0.12) !important;
}

.pm-featured-products .ps-product:not(.ps-product--wide):not(.ps-product--detail):not(.ps-product--cart):not(.ps-product--cart-mobile):not(.ps-product--search-result):not(.ps-product--header-sticky) > .ps-product__thumbnail {
  height: auto !important;
  aspect-ratio: 4 / 3 !important;
  border: 0 !important;
  border-radius: 24px 24px 0 0 !important;
  background: #ffffff !important;
}

.pm-featured-products .ps-product:not(.ps-product--wide):not(.ps-product--detail):not(.ps-product--cart):not(.ps-product--cart-mobile):not(.ps-product--search-result):not(.ps-product--header-sticky) > .ps-product__thumbnail > a {
  display: grid !important;
  box-sizing: border-box !important;
  width: 100% !important;
  height: 100% !important;
  place-items: center !important;
  padding: 0 !important;
}

.pm-featured-products .ps-product:not(.ps-product--wide):not(.ps-product--detail):not(.ps-product--cart):not(.ps-product--cart-mobile):not(.ps-product--search-result):not(.ps-product--header-sticky) > .ps-product__thumbnail img {
  display: block !important;
  box-sizing: border-box !important;
  width: 100% !important;
  height: 100% !important;
  min-width: 0 !important;
  min-height: 0 !important;
  max-width: none !important;
  max-height: none !important;
  padding: 0 !important;
  object-fit: contain !important;
  object-position: center center !important;
}

.pm-featured-products .ps-product:not(.ps-product--wide):not(.ps-product--detail):not(.ps-product--cart):not(.ps-product--cart-mobile):not(.ps-product--search-result):not(.ps-product--header-sticky) > .ps-product__container {
  gap: 0 !important;
  padding: 16px !important;
}

.pm-featured-products .ps-product:not(.ps-product--wide):not(.ps-product--detail):not(.ps-product--cart):not(.ps-product--cart-mobile):not(.ps-product--search-result):not(.ps-product--header-sticky) .ps-product__content {
  gap: 2px !important;
}

.pm-featured-products .pm-product-card__label,
.pm-featured-products .pm-product-card__view {
  display: none !important;
}

.pm-featured-products .ps-product:not(.ps-product--wide):not(.ps-product--detail):not(.ps-product--cart):not(.ps-product--cart-mobile):not(.ps-product--search-result):not(.ps-product--header-sticky) .ps-product__title {
  min-height: 35px !important;
  color: var(--pm-navy) !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  line-height: 17.5px !important;
}

.pm-featured-products .ps-product:not(.ps-product--wide):not(.ps-product--detail):not(.ps-product--cart):not(.ps-product--cart-mobile):not(.ps-product--search-result):not(.ps-product--header-sticky) .ps-product__title:hover {
  color: var(--pm-blue) !important;
}

.pm-featured-products .ps-product:not(.ps-product--wide):not(.ps-product--detail):not(.ps-product--cart):not(.ps-product--cart-mobile):not(.ps-product--search-result):not(.ps-product--header-sticky) .ps-product__desc {
  min-height: 33px !important;
  font-size: 11px !important;
  line-height: 16.5px !important;
}

.pm-featured-products .pm-product-card__footer {
  gap: 10px !important;
  padding-top: 0 !important;
}

.pm-featured-products .ps-product:not(.ps-product--wide):not(.ps-product--detail):not(.ps-product--cart):not(.ps-product--cart-mobile):not(.ps-product--search-result):not(.ps-product--header-sticky) .ps-product__price {
  font-size: 14px !important;
  line-height: 20px !important;
}

.pm-featured-products .pm-product-card__add {
  min-width: 61.19px !important;
  min-height: 32.67px !important;
  padding: 6px 16px !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  line-height: 18.67px !important;
}

@media (max-width: 767px) {
  .pm-featured-products {
    padding: 24px 14px 28px !important;
  }

  .pm-featured-products__header {
    align-items: flex-start !important;
  }

  .pm-featured-products .pm-featured-products__header h3,
  .pm-featured-products .pm-featured-products__header .title_site {
    font-size: 23px !important;
    line-height: 28px !important;
  }

  .pm-featured-products__header p {
    font-size: 13px !important;
    line-height: 19px !important;
  }

  .pm-featured-products__view-all {
    font-size: 13px !important;
    line-height: 18px !important;
  }
}

/* Home Give with Love: donation cards matching the Vercel reference. */
.pm-give-section {
  max-width: 1280px !important;
  padding: 40px 24px !important;
}

.pm-give-section__header {
  align-items: flex-end !important;
  margin-bottom: 24px !important;
}

.pm-give-section__header h2 {
  color: var(--pm-navy) !important;
  font-size: 30px !important;
  font-weight: 800 !important;
  letter-spacing: -0.025em !important;
  line-height: 36px !important;
}

.pm-give-section__header p {
  margin-top: 4px !important;
  color: var(--pm-muted) !important;
  font-size: 14px !important;
  line-height: 20px !important;
}

.pm-give-section__header > a {
  display: block !important;
  margin-right: 4px !important;
  color: #102a43 !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  line-height: 20px !important;
}

.pm-give-section__grid {
  gap: 16px !important;
}

.pm-give-section .pm-give-card.pm-card {
  min-height: 371.16px !important;
  padding: 0 !important;
  overflow: hidden !important;
  border: 1px solid #dbeafe !important;
  border-radius: 24px !important;
  background: rgba(255, 255, 255, 0.92) !important;
  box-shadow: 0 18px 50px rgba(2, 80, 110, 0.08) !important;
}

.pm-give-section .pm-give-card:hover {
  transform: translateY(-1px);
  box-shadow: 0 20px 52px rgba(2, 80, 110, 0.12) !important;
}

.pm-give-section .pm-give-card__media {
  display: block !important;
  position: relative !important;
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 4 / 3 !important;
  overflow: visible !important;
  border: 0 !important;
  border-radius: 24px 24px 0 0 !important;
  background: #ffffff !important;
}

.pm-give-section .pm-give-card__media::after {
  display: none !important;
}

.pm-give-section .pm-give-card__media > img {
  position: absolute !important;
  inset: 0 !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  border-radius: 24px 24px 0 0 !important;
  object-fit: cover !important;
  object-position: center center !important;
}

.pm-give-section .pm-give-card__media > span {
  position: absolute !important;
  z-index: 2 !important;
  right: 12px !important;
  bottom: 0 !important;
  width: 80px !important;
  height: 80px !important;
  padding: 6px !important;
  border: 0 !important;
  border-radius: 16px !important;
  background: #ffffff !important;
  box-shadow: 0 18px 35px rgba(8, 40, 67, 0.12) !important;
  outline: 2px solid #ffffff !important;
  transform: translateY(25%) !important;
}

.pm-give-section .pm-give-card__media > span img {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
}

.pm-give-section .pm-give-card__body {
  gap: 8px !important;
  padding: 32px 12px 12px !important;
}

.pm-give-section .pm-give-card__body h3 {
  color: var(--pm-navy) !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  line-height: 17.5px !important;
}

.pm-give-section .pm-give-card__location {
  color: var(--pm-muted) !important;
  font-size: 11px !important;
  font-weight: 400 !important;
  line-height: 16.5px !important;
}

.pm-give-section .pm-give-card__body > p:not(.pm-give-card__location) {
  display: block !important;
  min-height: 16px !important;
  overflow: hidden !important;
  color: var(--pm-muted) !important;
  font-size: 12px !important;
  line-height: 16px !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

.pm-give-section .pm-give-card__body > div {
  margin-top: auto !important;
  padding-top: 0 !important;
}

.pm-give-section .pm-give-card__button {
  min-height: 32.67px !important;
  padding: 6px 16px !important;
  border: 1px solid #dbeafe !important;
  border-radius: 999px !important;
  background: #ffffff !important;
  color: var(--pm-blue) !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  line-height: 18.67px !important;
  box-shadow: none !important;
}

.pm-give-section .pm-give-card__button:hover {
  border-color: var(--pm-blue) !important;
  background: #ffffff !important;
  color: var(--pm-navy) !important;
}

.pm-give-section__header h2,
.pm-reviews-section__header h2 {
  letter-spacing: -0.025em !important;
}

@media (max-width: 767px) {
  .pm-give-section {
    padding: 24px 14px 30px !important;
  }

  .pm-give-section__header {
    align-items: flex-start !important;
  }

  .pm-give-section__header h2 {
    font-size: 23px !important;
    line-height: 28px !important;
  }

  .pm-give-section__header p {
    font-size: 13px !important;
    line-height: 19px !important;
  }

  .pm-give-section__header > a {
    font-size: 13px !important;
    line-height: 18px !important;
  }
}

/* Keep the ParishMart header pinned while scrolling. */
.pm-giveback-topbar {
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  z-index: 1001;
  min-height: 30px;
  color: #fff;
  background: linear-gradient(135deg, #1c6aa8 0%, #134a76 50%, #0a2b47 100%);
}

.pm-giveback-topbar__inner {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  width: 100%;
  max-width: 1320px;
  min-height: 30px;
  margin: 0 auto;
  padding: 6px 24px;
}

.pm-giveback-topbar__message {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  color: rgba(255, 255, 255, .8);
  font-size: 12.5px;
  line-height: 18px;
  text-align: center;
}

.pm-giveback-topbar__message svg {
  flex: 0 0 auto;
  width: 16px;
  height: 16px;
  fill: currentColor;
  color: #fff;
}

.pm-giveback-topbar__message strong {
  color: #fff;
  font-weight: 700;
}

.pm-giveback-topbar__content,
.pm-giveback-topbar__content p {
  display: inline;
  margin: 0;
  color: inherit;
  font: inherit;
}

.pm-giveback-topbar__content a {
  color: #fff;
  text-decoration: underline;
  text-underline-offset: 2px;
}

.pm-giveback-topbar__spacer {
  height: 30px;
}

.pm-giveback-topbar ~ .pm-site-header.header.header--1,
.pm-giveback-topbar ~ .pm-site-header.header.header--1.header--sticky,
.pm-giveback-topbar ~ .header--mobile,
.pm-giveback-topbar ~ .header--mobile.header--sticky {
  top: 30px !important;
}

body.show-admin-bar .pm-giveback-topbar {
  top: 40px;
}

body.show-admin-bar .pm-giveback-topbar ~ .pm-site-header.header.header--1,
body.show-admin-bar .pm-giveback-topbar ~ .pm-site-header.header.header--1.header--sticky,
body.show-admin-bar .pm-giveback-topbar ~ .header--mobile,
body.show-admin-bar .pm-giveback-topbar ~ .header--mobile.header--sticky {
  top: 70px !important;
}

@media (max-width: 639px) {
  .pm-giveback-topbar__inner { padding-right: 16px; padding-left: 16px; }
  .pm-giveback-topbar__message { font-size: 11px; }
  .pm-giveback-topbar__desktop { display: none; }
}

.pm-site-header.header.header--1,
.pm-site-header.header.header--1.header--sticky,
.header--mobile,
.header--mobile.header--sticky {
  position: fixed !important;
  top: 0 !important;
  right: 0 !important;
  left: 0 !important;
  z-index: 1000 !important;
  transform: none !important;
}

.pm-site-header.header.header--1.header--sticky,
.header--mobile.header--sticky {
  opacity: 1 !important;
  visibility: visible !important;
}

body.show-admin-bar .pm-site-header.header.header--1,
body.show-admin-bar .pm-site-header.header.header--1.header--sticky,
body.show-admin-bar .header--mobile,
body.show-admin-bar .header--mobile.header--sticky {
  top: 40px !important;
}

@media (min-width: 992px) {
  body#product-page > .ck-content {
    padding-top: 65px !important;
  }

  body#product-page.show-admin-bar > .ck-content {
    padding-top: 65px !important;
  }
}

#homepage-1 {
  padding-top: 65px !important;
}

@media (max-width: 767px) {
  .pm-home-hero {
    width: 100vw !important;
    max-width: 100vw !important;
    margin-right: 0 !important;
    margin-left: 0 !important;
    padding-right: 16px !important;
    padding-left: 16px !important;
  }

  .pm-home-hero .max-w-xl,
  .pm-home-hero p {
    max-width: 100% !important;
  }

  .header--mobile,
  .header--mobile .navigation--mobile {
    width: 100vw !important;
    max-width: 100vw !important;
  }

  .header--mobile .navigation--mobile {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 58px auto !important;
    gap: 8px !important;
    justify-content: stretch !important;
    padding-right: 16px !important;
    padding-left: 16px !important;
  }

  .header--mobile .navigation__left {
    padding-right: 0 !important;
  }

  .header--mobile .ps-logo img {
    height: auto !important;
    max-width: 149.167px !important;
    max-height: 40px !important;
  }

  .pm-mobile-header__cart.pm-cart-pill {
    position: static !important;
    width: 58px !important;
    min-width: 58px !important;
    padding-right: 10px !important;
    padding-left: 10px !important;
  }

  .pm-mobile-header__join {
    position: static !important;
    width: auto !important;
    min-width: 0 !important;
    padding-right: 12px !important;
    padding-left: 12px !important;
    font-size: 14px !important;
    line-height: 18.6667px !important;
  }

  .pm-home-hero h1 {
    font-size: 36px !important;
    font-weight: 800 !important;
    line-height: 36.8px !important;
    max-width: 100% !important;
  }

  .pm-home-hero h1 .pm-gradient-text {
    font-weight: 800 !important;
  }

  .pm-home-hero h1 .pm-gradient-text:first-of-type {
    top: 0.5px !important;
  }

  .pm-home-hero h1 .pm-gradient-text:nth-of-type(2) {
    top: -0.5px !important;
  }

  .pm-home-hero form[role="search"] {
    display: grid !important;
    grid-template-columns: 16px minmax(0, 1fr) auto auto !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    width: 100% !important;
    max-width: calc(100vw - 32px) !important;
    min-height: 46px !important;
    padding: 4px 12px !important;
    border-radius: 999px !important;
    overflow: visible !important;
  }

  .pm-home-hero form[role="search"] svg {
    flex: 0 0 16px !important;
    width: 16px !important;
    height: 16px !important;
    margin-left: 0 !important;
  }

  .pm-home-hero form[role="search"] .pm-input {
    flex: 1 1 auto !important;
    min-width: 0 !important;
    height: 36px !important;
    padding-right: 2px !important;
  }

  .pm-home-hero form[role="search"] .pm-btn {
    flex: none !important;
    width: auto !important;
    min-width: 0 !important;
    min-height: 34px !important;
    padding-top: 6px !important;
    padding-right: 12px !important;
    padding-bottom: 6px !important;
    padding-left: 12px !important;
  }

  .pm-home-hero > .grid > .pm-card {
    padding: 12px !important;
  }

  .pm-home-hero .space-y-3 {
    padding: 16px !important;
  }

  .pm-home-hero .space-y-3 > * + * {
    margin-top: 12px !important;
  }

  .pm-home-hero h3 {
    font-size: 24px !important;
    line-height: 32px !important;
  }

  .pm-home-hero .grid-cols-3 > .rounded-2xl {
    min-width: 0 !important;
    padding: 12px !important;
    border-radius: 16px !important;
  }

  .pm-home-hero .grid-cols-3 .text-\[10px\] {
    font-size: 10px !important;
    line-height: 15px !important;
  }

  .pm-home-hero .grid-cols-3 .text-base {
    font-size: 16px !important;
    line-height: 24px !important;
  }
}

@media (max-width: 380px) {
  .header--mobile,
  .header--mobile .navigation--mobile,
  .pm-home-hero {
    width: 375px !important;
    max-width: 100vw !important;
  }

  .pm-home-hero > .grid > div:first-child .max-w-xl,
  .pm-home-hero > .grid > div:first-child p,
  .pm-home-hero form[role="search"] {
    width: 343px !important;
    max-width: calc(100vw - 32px) !important;
  }

  .header--mobile .navigation--mobile {
    grid-template-columns: minmax(0, 1fr) 40px auto !important;
    gap: 8px !important;
    padding-right: 16px !important;
    padding-left: 16px !important;
  }

  .header--mobile .navigation__left {
    gap: 10px !important;
    padding-right: 0 !important;
  }

  .header--mobile .ps-logo img {
    height: auto !important;
    max-width: 149.167px !important;
    max-height: 40px !important;
  }

  .pm-mobile-header__cart.pm-cart-pill {
    width: 40px !important;
    min-width: 40px !important;
    padding-right: 0 !important;
    padding-left: 0 !important;
    margin-left: 0 !important;
  }

  .pm-mobile-header__join {
    width: auto !important;
    min-width: 0 !important;
    font-size: 14px !important;
    line-height: 18.6667px !important;
  }

  .pm-home-hero h1 {
    font-size: 32px !important;
  }
}

/* Store profile header: final alignment against the Vercel header markup. */
.page-store .pm-store-profile-header.store-identity-shell {
  background: rgba(255, 255, 255, 0.95) !important;
  border-bottom: 1px solid rgba(219, 234, 254, 0.70) !important;
  box-shadow: none !important;
  opacity: 1 !important;
  filter: none !important;
}

.page-store .pm-store-profile-header.store-identity-shell *,
.page-store .pm-store-profile-header .pm-store-header.store-identity-nav.is-stuck * {
  opacity: 1 !important;
  filter: none !important;
}

.page-store .pm-store-header__top.ck-container,
.page-store .pm-store-header__bottom.ck-container,
.page-store .pm-store-header__mobile-search.ck-container {
  max-width: 1320px !important;
  padding-right: 24px !important;
  padding-left: 24px !important;
}

.page-store .pm-store-header__top {
  min-height: 84px !important;
  gap: 12px !important;
  padding-top: 10px !important;
  padding-bottom: 10px !important;
}

.page-store .pm-store-header__menu,
.page-store .pm-store-header__account {
  width: 40px !important;
  height: 40px !important;
  min-width: 40px !important;
  min-height: 40px !important;
}

.page-store .pm-store-header__menu i,
.page-store .pm-store-header__account i {
  font-size: 20px !important;
}

.page-store .pm-store-header__brand {
  min-width: 250px !important;
  max-width: 300px !important;
  gap: 12px !important;
}

.page-store .pm-store-header__logo {
  width: 64px !important;
  height: 64px !important;
  flex: 0 0 64px !important;
  padding: 2px !important;
  box-shadow: 0 14px 30px rgba(2, 80, 110, 0.10) !important;
}

.page-store .pm-store-header__copy {
  line-height: 1.1 !important;
}

.page-store .pm-store-header__copy strong {
  font-size: 16px !important;
  font-weight: 800 !important;
  line-height: 1.1 !important;
}

.page-store .pm-store-header__copy small {
  margin-top: 2px !important;
  font-size: 11px !important;
  line-height: 1.2 !important;
}

.page-store .pm-store-header__search.ps-form--search-mobile {
  margin-left: 12px !important;
}

.page-store .pm-store-header__search .form-group--nest {
  min-height: 46px !important;
  height: 46px !important;
  padding: 4px 6px 4px 38px !important;
  gap: 8px !important;
  border-color: var(--pm-border) !important;
  box-shadow: 0 14px 30px rgba(2, 80, 110, 0.08) !important;
}

.page-store .pm-store-header__search-icon {
  left: 14px !important;
  font-size: 16px !important;
}

.page-store .pm-store-header__search .form-control {
  height: 36px !important;
  min-height: 36px !important;
  padding: 0 4px !important;
  font-size: 14px !important;
  line-height: 36px !important;
}

.page-store .pm-store-profile-header .pm-store-header__search button[type="submit"],
.page-store .pm-store-profile-header .pm-store-header__search button[type="submit"]:hover {
  position: static !important;
  top: auto !important;
  right: auto !important;
  display: inline-flex !important;
  width: auto !important;
  min-width: 78px !important;
  height: 34px !important;
  min-height: 34px !important;
  align-items: center !important;
  justify-content: center !important;
  margin: 0 !important;
  padding: 0 16px !important;
  border-radius: 999px !important;
  background: #0b3454 !important;
  color: #ffffff !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  filter: none !important;
}

.page-store .pm-store-header__actions {
  gap: 8px !important;
}

.page-store .pm-store-header__language-wrap {
  position: relative !important;
  display: inline-flex !important;
  align-items: center !important;
  flex: 0 0 auto !important;
}

.page-store .pm-store-header__language {
  display: inline-flex !important;
  width: auto !important;
  height: 34px !important;
  min-width: 45px !important;
  align-items: center !important;
  justify-content: center !important;
  margin: 0 !important;
  padding: 0 10px !important;
  border: 1px solid var(--pm-border) !important;
  border-radius: 999px !important;
  background: #ffffff !important;
  color: var(--pm-navy) !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  box-shadow: none !important;
  cursor: pointer !important;
}

.page-store .pm-store-header__language-menu {
  position: absolute !important;
  top: 100% !important;
  left: 50% !important;
  z-index: 100080 !important;
  display: block !important;
  min-width: 58px !important;
  padding: 8px 6px 6px !important;
  border: 1px solid var(--pm-border) !important;
  border-radius: 12px !important;
  background: #ffffff !important;
  box-shadow: 0 18px 44px rgba(8, 40, 67, 0.16) !important;
  opacity: 0 !important;
  pointer-events: none !important;
  transform: translate(-50%, -4px) !important;
  visibility: hidden !important;
  transition: opacity 0.16s ease, transform 0.16s ease, visibility 0.16s ease !important;
}

.page-store .pm-store-header__language-wrap.is-open .pm-store-header__language-menu,
.page-store .pm-store-header__language-wrap:hover .pm-store-header__language-menu,
.page-store .pm-store-header__language-wrap:focus-within .pm-store-header__language-menu {
  opacity: 1 !important;
  pointer-events: auto !important;
  transform: translate(-50%, 0) !important;
  visibility: visible !important;
}

.page-store .pm-store-header__language-menu a {
  display: flex !important;
  min-height: 36px !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 10px !important;
  border-radius: 8px !important;
  color: var(--pm-navy) !important;
  font-size: 13px !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  text-decoration: none !important;
  white-space: nowrap !important;
}

.page-store .pm-store-header__language-menu a:hover,
.page-store .pm-store-header__language-menu a:focus {
  background: var(--pm-soft) !important;
  color: var(--pm-blue) !important;
}

.page-store .pm-store-header__cart.store-identity-nav__cart {
  height: 40px !important;
}

.page-store .pm-store-header__cart .header__extra.pm-cart-pill {
  display: inline-flex !important;
  width: auto !important;
  min-width: 66px !important;
  height: 40px !important;
  min-height: 40px !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  padding: 0 12px !important;
  border-radius: 999px !important;
}

.page-store .pm-store-header__cart .pm-cart-pill__icon {
  width: 16px !important;
  height: 16px !important;
  flex: 0 0 16px !important;
}

.page-store .pm-store-header__cart .header__extra.pm-cart-pill span {
  position: static !important;
  display: grid !important;
  width: auto !important;
  min-width: 20px !important;
  height: 20px !important;
  padding: 0 6px !important;
  place-items: center !important;
  transform: none !important;
}

.page-store .pm-store-header__cart .header__extra.pm-cart-pill span i {
  font-size: 10px !important;
  font-weight: 800 !important;
}

.page-store .pm-store-header__bottom {
  position: relative !important;
  display: flex !important;
  min-height: 40px !important;
  align-items: center !important;
  justify-content: center !important;
  padding-top: 0 !important;
  padding-right: 112px !important;
  padding-bottom: 12px !important;
  padding-left: 24px !important;
}

.page-store .pm-store-header__tabs {
  display: flex !important;
  flex: 1 1 auto !important;
  justify-content: center !important;
  gap: 40px !important;
  overflow-x: auto !important;
  scrollbar-width: none !important;
}

.page-store .pm-store-header__tabs::-webkit-scrollbar {
  display: none !important;
}

.page-store .pm-store-header__tabs a {
  min-height: 28px !important;
  color: var(--pm-navy) !important;
  font-family: var(--pm-font-sans) !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  line-height: 24px !important;
}

.page-store .pm-store-header__join {
  position: absolute !important;
  right: 24px !important;
  top: 50% !important;
  display: inline-flex !important;
  min-width: auto !important;
  min-height: 40px !important;
  padding: 0 16px !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  transform: translateY(calc(-50% - 6px)) !important;
}

.page-store .pm-store-header-spacer {
  height: 125px !important;
}

@media (max-width: 991px) {
  .page-store .pm-store-header__top {
    min-height: 68px !important;
  }

  .page-store .pm-store-header__top > .pm-store-header__search {
    display: none !important;
  }

  .page-store .pm-store-header__mobile-search {
    display: block !important;
    padding-bottom: 8px !important;
  }

  .page-store .pm-store-header-spacer {
    height: 172px !important;
  }
}

@media (max-width: 575px) {
  .page-store .pm-store-header__top.ck-container,
  .page-store .pm-store-header__bottom.ck-container,
  .page-store .pm-store-header__mobile-search.ck-container {
    padding-right: 14px !important;
    padding-left: 14px !important;
  }

  .page-store .pm-store-header__brand {
    min-width: 0 !important;
    gap: 8px !important;
  }

  .page-store .pm-store-header__logo {
    width: 48px !important;
    height: 48px !important;
    flex-basis: 48px !important;
  }

  .page-store .pm-store-header__copy strong {
    font-size: 13px !important;
  }

  .page-store .pm-store-header__cart .header__extra.pm-cart-pill {
    min-width: 58px !important;
    padding: 0 8px !important;
  }

  .page-store .pm-store-header__account {
    width: 44px !important;
    height: 44px !important;
  }

  .page-store .pm-store-header__bottom {
    justify-content: flex-start !important;
    padding-right: 14px !important;
    padding-bottom: 10px !important;
  }

  .page-store .pm-store-header__join {
    display: none !important;
  }

  .page-store .pm-store-header__tabs {
    justify-content: flex-start !important;
    gap: 26px !important;
  }

  .page-store .pm-store-header__tabs a {
    font-size: 16px !important;
  }

  .page-store .pm-store-header-spacer {
    height: 194px !important;
  }
}

/* Store profile mobile drawers must sit above the fixed profile header. */
.page-store .ps-panel--sidebar[id^="store-menu-mobile-"],
.page-store .ps-panel--sidebar[id^="store-user-mobile-"],
.page-store .ps-panel--sidebar[id^="store-search-mobile-"] {
  top: 0 !important;
  bottom: 0 !important;
  z-index: 100060 !important;
  width: min(400px, 100vw) !important;
  max-width: min(400px, 100vw) !important;
  height: 100vh !important;
  max-height: 100vh !important;
  background: #ffffff !important;
}

.page-store .ps-panel--sidebar[id^="store-menu-mobile-"].active,
.page-store .ps-panel--sidebar[id^="store-user-mobile-"].active,
.page-store .ps-panel--sidebar[id^="store-search-mobile-"].active {
  transform: translateX(0) !important;
  visibility: visible !important;
  opacity: 1 !important;
}

.page-store .ps-panel--sidebar[id^="store-menu-mobile-"] .ps-panel__header,
.page-store .ps-panel--sidebar[id^="store-user-mobile-"] .ps-panel__header,
.page-store .ps-panel--sidebar[id^="store-search-mobile-"] .ps-panel__header {
  position: relative !important;
  z-index: 1 !important;
}

body.pm-store-mobile-panel-open .ps-site-overlay.active {
  z-index: 100040 !important;
  opacity: 1 !important;
  visibility: visible !important;
}

.page-store .ps-panel--sidebar.pm-store-mobile-menu[id^="store-menu-mobile-"] {
  display: flex !important;
  width: min(328px, 88vw) !important;
  max-width: 328px !important;
  overflow: hidden !important;
  flex-direction: column !important;
  border-right: 1px solid var(--pm-border) !important;
  background: #ffffff !important;
  box-shadow: 0 28px 70px rgba(8, 40, 67, 0.18) !important;
}

.page-store .pm-store-mobile-menu .pm-store-mobile-menu__header {
  display: flex !important;
  min-height: 66px !important;
  align-items: center !important;
  justify-content: space-between !important;
  padding: 14px 14px 14px 16px !important;
  border-bottom: 1px solid var(--pm-border) !important;
  background: #ffffff !important;
  text-align: left !important;
}

.page-store .pm-store-mobile-menu__logo {
  display: inline-flex !important;
  width: 168px !important;
  max-width: calc(100% - 58px) !important;
  align-items: center !important;
}

.page-store .pm-store-mobile-menu__logo img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
}

.page-store .pm-store-mobile-menu__close {
  display: grid !important;
  width: 38px !important;
  height: 38px !important;
  min-width: 38px !important;
  place-items: center !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 1px solid var(--pm-border) !important;
  border-radius: 50% !important;
  background: #ffffff !important;
  color: var(--pm-navy) !important;
  box-shadow: none !important;
}

.page-store .pm-store-mobile-menu__close i {
  color: inherit !important;
  font-size: 15px !important;
  line-height: 1 !important;
}

.page-store .pm-store-mobile-menu__content {
  flex: 1 1 auto !important;
  min-height: 0 !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
  padding: 18px 6px 24px !important;
  background: #ffffff !important;
}

.page-store .pm-store-mobile-menu .menu--mobile,
.page-store .pm-store-mobile-menu .menu--mobile ul {
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

.page-store .pm-store-mobile-menu .menu--mobile > li {
  position: relative !important;
  margin: 0 !important;
  border: 0 !important;
}

.page-store .pm-store-mobile-menu .menu--mobile > li > a {
  position: relative !important;
  display: flex !important;
  min-height: 48px !important;
  align-items: center !important;
  gap: 14px !important;
  padding: 12px 14px 12px 44px !important;
  border: 0 !important;
  border-radius: 14px !important;
  background: transparent !important;
  color: var(--pm-navy) !important;
  font-family: var(--pm-font-sans) !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  letter-spacing: 0 !important;
  line-height: 1.25 !important;
  text-decoration: none !important;
}

.page-store .pm-store-mobile-menu .menu--mobile > li > a:hover,
.page-store .pm-store-mobile-menu .menu--mobile > li > a:focus {
  background: #f4fbff !important;
  color: var(--pm-blue) !important;
}

.page-store .pm-store-mobile-menu__nav > li > a::before,
.page-store .pm-store-mobile-menu .menu--mobile-extra > li > a > i {
  position: absolute !important;
  top: 50% !important;
  left: 14px !important;
  display: grid !important;
  width: 20px !important;
  height: 20px !important;
  place-items: center !important;
  color: var(--pm-blue) !important;
  font-family: Linearicons !important;
  font-size: 19px !important;
  font-style: normal !important;
  font-weight: 400 !important;
  line-height: 1 !important;
  transform: translateY(-50%) !important;
}

.page-store .pm-store-mobile-menu__nav > li > a::before {
  content: "\e600";
}

.page-store .pm-store-mobile-menu__nav > li:nth-child(1) > a::before {
  content: "\e600";
}

.page-store .pm-store-mobile-menu__nav > li:nth-child(2) > a::before {
  content: "\e74c";
}

.page-store .pm-store-mobile-menu__nav > li:nth-child(3) > a::before {
  content: "\e9bf";
}

.page-store .pm-store-mobile-menu__nav > li:nth-child(4) > a::before {
  content: "\e722";
}

.page-store .pm-store-mobile-menu__nav > li:nth-child(5) > a::before {
  content: "\e744";
}

.page-store .pm-store-mobile-menu__nav > li:nth-child(6) > a::before {
  content: "\e8ae";
}

.page-store .pm-store-mobile-menu__extra {
  margin-top: 18px !important;
  padding-top: 18px !important;
  border-top: 1px solid var(--pm-border) !important;
}

.page-store .pm-store-mobile-menu .menu--mobile-extra > li > a > i {
  color: var(--pm-muted) !important;
  font-size: 18px !important;
}

.page-store .pm-store-mobile-menu .menu--mobile-extra > li > a span {
  display: inline-block !important;
}

.page-store .pm-store-mobile-menu__footer {
  flex: 0 0 auto !important;
  padding: 18px 12px !important;
  border-top: 1px solid var(--pm-border) !important;
  background: #f8fdff !important;
}

.page-store .pm-store-mobile-menu__language {
  display: flex !important;
  justify-content: flex-end !important;
}

.page-store .pm-store-mobile-menu__language-toggle {
  display: inline-flex !important;
  min-width: 42px !important;
  height: 42px !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 10px !important;
  border: 1px solid var(--pm-border) !important;
  border-radius: 50% !important;
  background: #ffffff !important;
  color: var(--pm-navy) !important;
  font-size: 13px !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  text-decoration: none !important;
  box-shadow: none !important;
}

/* Parish profile overview section aligned with the Vercel parish storefront. */
.page-store .store-page__breadcrumb--overview {
  max-width: 1280px !important;
  margin: 18px auto 0 !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

.page-store .store-page__breadcrumb--overview .breadcrumb {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
  align-items: center !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
}

.page-store .store-page__breadcrumb--overview .breadcrumb li {
  display: inline-flex !important;
  align-items: center !important;
  color: var(--pm-muted) !important;
  font-family: var(--pm-font-sans) !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  line-height: 20px !important;
}

.page-store .store-page__breadcrumb--overview .breadcrumb li + li::before {
  content: "/" !important;
  margin-right: 8px !important;
  color: var(--pm-muted) !important;
}

.page-store .store-page__breadcrumb--overview .breadcrumb a,
.page-store .store-page__breadcrumb--overview .breadcrumb span {
  color: inherit !important;
  font: inherit !important;
  text-decoration: none !important;
}

.page-store .store-page__breadcrumb--overview .breadcrumb li[aria-current="page"] span {
  color: var(--pm-navy) !important;
  font-weight: 800 !important;
}

.page-store .store-profile-hero,
.page-store .store-profile-about {
  max-width: 1280px !important;
  margin-right: auto !important;
  margin-left: auto !important;
}

.page-store .store-profile-hero {
  padding-top: 18px !important;
  padding-bottom: 10px !important;
}

.page-store .store-profile-hero__card {
  display: grid !important;
  grid-template-columns: minmax(0, 1.4fr) minmax(420px, 1fr) !important;
  overflow: hidden !important;
  border: 1px solid var(--pm-border) !important;
  border-radius: 24px !important;
  background: rgba(255, 255, 255, 0.96) !important;
  box-shadow: var(--pm-card-shadow) !important;
}

.page-store .store-profile-hero__media {
  position: relative !important;
  min-height: 460px !important;
  overflow: hidden !important;
  border-radius: 0 0 24px 24px !important;
}

.page-store .store-profile-hero__media img,
.page-store .store-profile-about__media img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}

.page-store .store-profile-hero__media span {
  position: absolute !important;
  inset: 0 !important;
  background: linear-gradient(to top, rgba(0, 0, 0, 0.25), transparent 45%, transparent) !important;
  pointer-events: none !important;
}

.page-store .store-profile-hero__content {
  display: flex !important;
  flex-direction: column !important;
  gap: 16px !important;
  justify-content: center !important;
  padding: 28px !important;
}

.page-store .store-profile-hero__content h1 {
  margin: 0 !important;
  color: var(--pm-navy) !important;
  font-family: var(--pm-font-sans) !important;
  font-size: 35px !important;
  font-weight: 800 !important;
  letter-spacing: 0 !important;
  line-height: 1.25 !important;
}

.page-store .store-profile-hero__content h1 span {
  color: var(--pm-blue) !important;
  font-family: inherit !important;
  font-size: inherit !important;
  font-weight: 800 !important;
  line-height: inherit !important;
}

.page-store .store-profile-hero__quote {
  margin: 0 !important;
  color: var(--pm-muted) !important;
  font-size: 13px !important;
  line-height: 20px !important;
}

.page-store .store-profile-hero__identity {
  display: flex !important;
  gap: 14px !important;
  align-items: flex-start !important;
  padding: 14px !important;
  border: 1px solid var(--pm-border) !important;
  border-radius: 18px !important;
  background: #ffffff !important;
}

.page-store .store-profile-hero__identity > div {
  display: flex !important;
  flex-direction: column !important;
  gap: 0 !important;
  min-width: 0 !important;
}

.page-store .store-profile-hero__logo {
  display: grid !important;
  width: 48px !important;
  height: 48px !important;
  flex: 0 0 48px !important;
  place-items: center !important;
  overflow: hidden !important;
  padding: 2px !important;
  border-radius: 50% !important;
  background: #ffffff !important;
  box-shadow: 0 0 0 1px var(--pm-border), var(--pm-soft-shadow) !important;
}

.page-store .store-profile-hero__logo img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
}

.page-store .store-profile-hero__identity p {
  margin: 0 !important;
  color: var(--pm-navy) !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  line-height: 16px !important;
}

.page-store .store-profile-hero__identity small {
  display: block !important;
  color: var(--pm-muted) !important;
  font-size: 10px !important;
  font-weight: 400 !important;
  line-height: 14px !important;
}

.page-store .store-profile-hero__stats {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 10px !important;
}

.page-store .store-profile-hero__stats > div {
  min-height: 80px !important;
  padding: 16px !important;
  border: 1px solid var(--pm-border) !important;
  border-radius: 16px !important;
  background: #ffffff !important;
}

.page-store .store-profile-hero__stats p {
  margin: 0 0 8px !important;
  color: var(--pm-blue) !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  letter-spacing: 0.04em !important;
  line-height: 15px !important;
  text-transform: uppercase !important;
}

.page-store .store-profile-hero__stats strong {
  display: block !important;
  color: var(--pm-navy) !important;
  font-size: 16px !important;
  font-weight: 800 !important;
  line-height: 24px !important;
}

.page-store .store-profile-hero__actions {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 14px !important;
}

.page-store .store-profile-hero__actions .pm-btn {
  display: inline-flex !important;
  min-height: 47px !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 12px 20px !important;
  border-radius: 999px !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  line-height: 21px !important;
  text-decoration: none !important;
}

.page-store .store-profile-hero__actions .pm-btn-primary {
  border: 1px solid var(--pm-blue) !important;
  background: linear-gradient(135deg, #0793b4, #38aee0) !important;
  color: #ffffff !important;
  box-shadow: 0 18px 34px rgba(2, 132, 169, 0.18) !important;
}

.page-store .store-profile-hero__actions .pm-btn-secondary {
  border: 1px solid var(--pm-border) !important;
  background: #ffffff !important;
  color: var(--pm-blue) !important;
}

.page-store .store-profile-about {
  padding-top: 36px !important;
  padding-bottom: 42px !important;
}

.page-store .store-profile-about__card {
  display: grid !important;
  grid-template-columns: minmax(0, 1.2fr) minmax(360px, 0.92fr) !important;
  gap: 64px !important;
  align-items: start !important;
  padding: 28px 42px !important;
  border: 1px solid var(--pm-border) !important;
  border-radius: 24px !important;
  background: rgba(255, 255, 255, 0.96) !important;
  box-shadow: var(--pm-card-shadow) !important;
}

.page-store .store-profile-about__copy > p {
  margin: 0 !important;
  color: var(--pm-muted) !important;
  font-size: 16px !important;
  line-height: 1.55 !important;
}

.page-store .store-profile-about a {
  display: inline-flex !important;
  color: var(--pm-blue) !important;
  font-size: 15px !important;
  font-weight: 800 !important;
  line-height: 1.35 !important;
  text-decoration: none !important;
}

.page-store .store-profile-about__chips {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 12px !important;
  margin-top: 24px !important;
}

.page-store .store-profile-about__chips span {
  display: inline-flex !important;
  min-height: 36px !important;
  align-items: center !important;
  gap: 10px !important;
  padding: 0 16px !important;
  border-radius: 999px !important;
  background: #e9f7fc !important;
  color: var(--pm-navy) !important;
  font-size: 14px !important;
  font-weight: 800 !important;
}

.page-store .store-profile-about__chips i {
  color: var(--pm-blue) !important;
  font-size: 18px !important;
  line-height: 1 !important;
}

.page-store .store-profile-about__message {
  margin-top: 18px !important;
  padding: 24px !important;
  border: 1px solid var(--pm-border) !important;
  border-radius: 18px !important;
  background: linear-gradient(145deg, #ffffff, #f5fbfe) !important;
}

.page-store .store-profile-about__message h2 {
  margin: 0 0 12px !important;
  color: var(--pm-navy) !important;
  font-size: 28px !important;
  font-weight: 800 !important;
  line-height: 1.14 !important;
}

.page-store .store-profile-about__message p {
  margin: 0 !important;
  color: var(--pm-muted) !important;
  font-size: 15px !important;
  line-height: 1.45 !important;
}

.page-store .store-profile-about__media {
  overflow: hidden !important;
  min-height: 306px !important;
  border-radius: 18px !important;
}

@media (max-width: 1199px) {
  .page-store .store-profile-hero__card,
  .page-store .store-profile-about__card {
    grid-template-columns: 1fr !important;
  }

  .page-store .store-profile-hero__media {
    min-height: 360px !important;
  }

  .page-store .store-profile-about__card {
    gap: 28px !important;
  }
}

@media (max-width: 575px) {
  .page-store .store-page__breadcrumb--overview {
    margin-top: 14px !important;
  }

  .page-store .store-profile-hero {
    padding-top: 18px !important;
  }

  .page-store .store-profile-hero__card,
  .page-store .store-profile-about__card {
    border-radius: 18px !important;
  }

  .page-store .store-profile-hero__media {
    min-height: 260px !important;
  }

  .page-store .store-profile-hero__content {
    padding: 24px 18px !important;
  }

  .page-store .store-profile-hero__content h1 {
    font-size: 30px !important;
    line-height: 1.2 !important;
  }

  .page-store .store-profile-hero__stats {
    grid-template-columns: 1fr !important;
  }

  .page-store .store-profile-hero__actions .pm-btn {
    width: 100% !important;
  }

  .page-store .store-profile-about {
    padding-top: 24px !important;
    padding-bottom: 30px !important;
  }

  .page-store .store-profile-about__card {
    padding: 22px 18px !important;
  }

  .page-store .store-profile-about__message h2 {
    font-size: 24px !important;
  }
}

/* Parish store overview polish: keep /stores/skd close to the home visual system. */
.page-store .store-page--parish {
  background:
    linear-gradient(180deg, rgba(246, 252, 255, 0.96) 0%, rgba(255, 255, 255, 0.98) 42%, rgba(238, 248, 251, 0.88) 100%) !important;
}

.page-store .store-page--parish .store-page__breadcrumb--overview {
  margin-top: 24px !important;
}

.page-store .store-page--parish .store-profile-hero {
  padding-top: 20px !important;
  padding-bottom: 18px !important;
}

.page-store .store-page--parish .store-profile-hero__card {
  grid-template-columns: minmax(0, 1.32fr) minmax(410px, 0.92fr) !important;
  border-radius: 28px !important;
  background: rgba(255, 255, 255, 0.98) !important;
  box-shadow: 0 24px 70px rgba(2, 80, 110, 0.10) !important;
}

.page-store .store-page--parish .store-profile-hero__media {
  min-height: 460px !important;
  border-radius: 0 !important;
  background: #e9f7fc !important;
}

.page-store .store-page--parish .store-profile-hero__media img {
  filter: saturate(1.02) contrast(1.02) !important;
}

.page-store .store-page--parish .store-profile-hero__media span {
  background:
    linear-gradient(180deg, rgba(8, 40, 67, 0.04) 0%, rgba(8, 40, 67, 0.08) 100%) !important;
}

.page-store .store-page--parish .store-profile-hero__content {
  gap: 14px !important;
  padding: 34px 38px !important;
}

.page-store .store-page--parish .store-profile-hero__content h1 {
  max-width: 560px !important;
  font-family: var(--pm-font-sans) !important;
  font-size: 38px !important;
  font-weight: 800 !important;
  line-height: 1.12 !important;
}

.page-store .store-page--parish .store-profile-hero__quote {
  max-width: 560px !important;
  color: var(--pm-muted) !important;
  font-size: 15px !important;
  line-height: 1.55 !important;
}

.page-store .store-page--parish .store-profile-hero__identity,
.page-store .store-page--parish .store-profile-hero__stats > div {
  border-color: rgba(219, 234, 254, 0.95) !important;
  box-shadow: 0 10px 28px rgba(5, 126, 162, 0.05) !important;
}

.page-store .store-page--parish .store-profile-hero__identity {
  align-items: center !important;
  padding: 14px !important;
  border-radius: 22px !important;
}

.page-store .store-page--parish .store-profile-hero__logo {
  width: 54px !important;
  height: 54px !important;
  flex-basis: 54px !important;
  border-radius: 18px !important;
}

.page-store .store-page--parish .store-profile-hero__identity p {
  font-size: 14px !important;
  font-weight: 800 !important;
  line-height: 1.2 !important;
}

.page-store .store-page--parish .store-profile-hero__identity small {
  margin-top: 2px !important;
  font-size: 11px !important;
  line-height: 1.35 !important;
}

.page-store .store-page--parish .store-profile-hero__stats {
  gap: 12px !important;
}

.page-store .store-page--parish .store-profile-hero__stats > div {
  min-height: 80px !important;
  padding: 15px 16px !important;
  border-radius: 20px !important;
}

.page-store .store-page--parish .store-profile-hero__stats p {
  font-size: 11px !important;
  font-weight: 800 !important;
  letter-spacing: 0.04em !important;
}

.page-store .store-page--parish .store-profile-hero__stats strong {
  font-size: 19px !important;
  line-height: 1.2 !important;
}

.page-store .store-page--parish .store-profile-hero__actions {
  gap: 12px !important;
  padding-top: 2px !important;
}

.page-store .store-page--parish .store-profile-hero__actions .pm-btn {
  min-height: 46px !important;
  padding: 12px 21px !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  transition: transform 0.16s ease, box-shadow 0.16s ease, border-color 0.16s ease, background 0.16s ease !important;
}

.page-store .store-page--parish .store-profile-hero__actions .pm-btn:hover {
  transform: translateY(-1px) !important;
}

.page-store .store-page--parish .store-profile-hero__actions .pm-btn-primary {
  border-color: transparent !important;
  background: linear-gradient(90deg, var(--pm-blue), var(--pm-cyan)) !important;
  box-shadow: 0 16px 32px rgba(5, 126, 162, 0.22) !important;
}

.page-store .store-page--parish .store-profile-hero__actions .pm-btn-secondary {
  color: var(--pm-navy) !important;
}

.page-store .store-page--parish .store-profile-hero__actions .pm-btn-secondary:hover {
  border-color: var(--pm-blue) !important;
  color: var(--pm-blue) !important;
  box-shadow: var(--pm-soft-shadow) !important;
}

.page-store .store-page--parish .store-profile-about {
  padding-top: 34px !important;
  padding-bottom: 48px !important;
}

.page-store .store-page--parish .store-profile-about__card {
  grid-template-columns: minmax(0, 1.05fr) minmax(340px, 0.9fr) !important;
  gap: 42px !important;
  padding: 36px 42px !important;
  border-radius: 28px !important;
  background: rgba(255, 255, 255, 0.98) !important;
  box-shadow: 0 22px 64px rgba(2, 80, 110, 0.08) !important;
}

.page-store .store-page--parish .store-profile-about__copy {
  align-self: center !important;
}

.page-store .store-page--parish .store-profile-about__copy > p {
  max-width: 720px !important;
  color: var(--pm-muted) !important;
  font-size: 16px !important;
  line-height: 1.65 !important;
}

.page-store .store-page--parish .store-profile-about__chips span {
  min-height: 40px !important;
  background: #eef8fb !important;
  color: var(--pm-navy) !important;
}

.page-store .store-page--parish .store-profile-about__message {
  margin-top: 22px !important;
  padding: 26px !important;
  border-radius: 22px !important;
  background: linear-gradient(145deg, #f9fdff 0%, #ffffff 100%) !important;
  box-shadow: 0 10px 28px rgba(5, 126, 162, 0.05) !important;
}

.page-store .store-page--parish .store-profile-about__message h2 {
  font-family: var(--pm-font-sans) !important;
  font-size: 29px !important;
  letter-spacing: 0 !important;
}

.page-store .store-page--parish .store-profile-about__media {
  min-height: 330px !important;
  border: 1px solid var(--pm-border) !important;
  border-radius: 22px !important;
  box-shadow: var(--pm-soft-shadow) !important;
}

.page-store .store-page--parish #causas {
  padding-top: 50px !important;
  padding-bottom: 58px !important;
}

.page-store .store-page--parish #causas .title_site,
.page-store .store-page--parish .pm-store-sponsors-card .title_site {
  font-size: 32px !important;
  line-height: 1.15 !important;
}

.page-store .store-page--parish .store-support-cause-card,
.page-store .store-page--parish .pm-store-sponsors-card,
.page-store .store-page--parish .store-page__sponsor-card {
  border-color: rgba(219, 234, 254, 0.95) !important;
  background: rgba(255, 255, 255, 0.98) !important;
  box-shadow: 0 18px 50px rgba(2, 80, 110, 0.08) !important;
}

.page-store .store-page--parish .store-page__sponsor-card {
  border: 1px solid var(--pm-border) !important;
  border-radius: 22px !important;
}

@media (max-width: 1199px) {
  .page-store .store-page--parish .store-profile-hero__card,
  .page-store .store-page--parish .store-profile-about__card {
    grid-template-columns: 1fr !important;
  }

  .page-store .store-page--parish .store-profile-hero__media {
    min-height: 360px !important;
  }

  .page-store .store-page--parish .store-profile-hero__content {
    padding: 30px !important;
  }
}

@media (max-width: 767px) {
  .page-store .store-page--parish .store-profile-hero,
  .page-store .store-page--parish .store-profile-about,
  .page-store .store-page--parish .store-page__breadcrumb--overview {
    padding-right: 14px !important;
    padding-left: 14px !important;
  }

  .page-store .store-page--parish .store-profile-hero__content h1 {
    font-size: 32px !important;
    line-height: 1.12 !important;
  }

  .page-store .store-page--parish .store-profile-hero__quote {
    font-size: 14px !important;
  }

  .page-store .store-page--parish .store-profile-about__card {
    padding: 24px !important;
  }
}

@media (max-width: 575px) {
  .page-store .store-page--parish .store-page__breadcrumb--overview {
    margin-top: 18px !important;
  }

  .page-store .store-page--parish .store-profile-hero {
    padding-top: 16px !important;
    padding-bottom: 12px !important;
  }

  .page-store .store-page--parish .store-profile-hero__card,
  .page-store .store-page--parish .store-profile-about__card {
    border-radius: 24px !important;
  }

  .page-store .store-page--parish .store-profile-hero__media {
    min-height: 260px !important;
  }

  .page-store .store-page--parish .store-profile-hero__content {
    gap: 14px !important;
    padding: 24px 18px !important;
  }

  .page-store .store-page--parish .store-profile-hero__content h1 {
    font-size: 31px !important;
  }

  .page-store .store-page--parish .store-profile-hero__identity {
    align-items: flex-start !important;
    padding: 14px !important;
  }

  .page-store .store-page--parish .store-profile-hero__logo {
    width: 50px !important;
    height: 50px !important;
    flex-basis: 50px !important;
  }

  .page-store .store-page--parish .store-profile-hero__stats {
    grid-template-columns: 1fr !important;
  }

  .page-store .store-page--parish .store-profile-hero__stats > div {
    min-height: 76px !important;
  }

  .page-store .store-page--parish .store-profile-about {
    padding-top: 24px !important;
    padding-bottom: 38px !important;
  }

  .page-store .store-page--parish .store-profile-about__card {
    gap: 22px !important;
    padding: 22px 18px !important;
  }

  .page-store .store-page--parish .store-profile-about__media {
    min-height: 230px !important;
  }
}

/* Store header pixel pass: desktop geometry matches the home header. */
@media (min-width: 992px) {
  .page-store .pm-store-profile-header .pm-store-header__top .pm-store-header__search.ps-form--search-mobile button[type="submit"] {
    display: none !important;
    visibility: hidden !important;
    pointer-events: none !important;
  }

  .pm-store-profile-header.store-identity-shell {
    height: 65px !important;
    min-height: 65px !important;
    background: rgba(255, 255, 255, 0.98) !important;
    border-bottom: 1px solid rgba(219, 234, 254, 0.82) !important;
    box-shadow: none !important;
  }

  .pm-store-profile-header .pm-store-header.store-identity-nav {
    position: relative !important;
    height: 64px !important;
    min-height: 64px !important;
    overflow: visible !important;
    background: rgba(255, 255, 255, 0.98) !important;
  }

  .pm-store-profile-header .pm-store-header__top {
    position: relative !important;
    z-index: 2 !important;
    max-width: 1320px !important;
    height: 64px !important;
    min-height: 64px !important;
    padding: 0 24px !important;
    gap: 12px !important;
  }

  .pm-store-profile-header .pm-store-header__menu,
  .pm-store-profile-header .pm-store-header__account {
    width: 40px !important;
    height: 40px !important;
    min-width: 40px !important;
    min-height: 40px !important;
    border-color: var(--pm-border) !important;
    background: #ffffff !important;
    color: var(--pm-navy) !important;
    box-shadow: none !important;
  }

  .pm-store-profile-header .pm-store-header__menu i,
  .pm-store-profile-header .pm-store-header__account i {
    font-size: 20px !important;
    line-height: 1 !important;
  }

  .pm-store-profile-header .pm-store-header__brand {
    width: 213px !important;
    min-width: 213px !important;
    max-width: 213px !important;
    height: 40px !important;
    gap: 10px !important;
  }

  .pm-store-profile-header .pm-store-header__logo {
    width: 40px !important;
    height: 40px !important;
    flex: 0 0 40px !important;
    padding: 1px !important;
    border-radius: 999px !important;
    box-shadow: none !important;
  }

  .pm-store-profile-header .pm-store-header__copy strong {
    font-size: 16px !important;
    line-height: 16px !important;
  }

  .pm-store-profile-header .pm-store-header__copy small {
    margin-top: 2px !important;
    font-size: 11px !important;
    line-height: 12px !important;
  }

  .pm-store-profile-header .pm-store-header__search.ps-form--search-mobile {
    display: block !important;
    flex: 0 0 40px !important;
    width: 40px !important;
    min-width: 40px !important;
    position: absolute !important;
    top: 12px !important;
    left: calc(50% - 660px + 1069px) !important;
    margin-left: 0 !important;
  }

  .pm-store-profile-header .pm-store-header__search .form-group--nest {
    display: grid !important;
    width: 40px !important;
    min-width: 40px !important;
    height: 40px !important;
    min-height: 40px !important;
    place-items: center !important;
    padding: 0 !important;
    border-color: var(--pm-border) !important;
    border-radius: 999px !important;
    box-shadow: none !important;
  }

  .page-store .pm-store-profile-header .pm-store-header__search-icon {
    position: static !important;
    display: block !important;
    color: var(--pm-navy) !important;
    font-size: 16px !important;
    transform: none !important;
  }

  .page-store .pm-store-profile-header .pm-store-header__search .form-control,
  .page-store .pm-store-profile-header .pm-store-header__search button,
  .page-store .pm-store-profile-header .pm-store-header__language-wrap {
    display: none !important;
  }

  .pm-store-profile-header .pm-store-header__actions {
    position: absolute !important;
    top: 12px !important;
    left: calc(50% - 660px + 1117px) !important;
    height: 40px !important;
    gap: 8px !important;
    margin-left: 0 !important;
  }

  .pm-store-profile-header .pm-store-header__cart.store-identity-nav__cart,
  .pm-store-profile-header .pm-store-header__cart .header__extra.pm-cart-pill {
    height: auto !important;
    min-height: 0 !important;
  }

  .pm-store-profile-header .pm-store-header__cart .header__extra.pm-cart-pill {
    display: inline-flex !important;
    width: auto !important;
    min-width: 0 !important;
    justify-content: flex-start !important;
    padding: 8px 12px !important;
    border-color: var(--pm-border) !important;
    box-shadow: none !important;
  }

  .pm-store-profile-header .pm-store-header__cart .pm-cart-pill__icon {
    width: 18px !important;
    height: 18px !important;
  }

  .pm-store-profile-header .pm-store-header__cart .header__extra.pm-cart-pill span {
    display: none !important;
  }

  .pm-store-profile-header .pm-store-header__cart .header__extra.pm-cart-pill span i {
    font-size: 10px !important;
    line-height: 1 !important;
  }

  .page-store .pm-store-profile-header .pm-store-header__bottom {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    z-index: 3 !important;
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    height: 64px !important;
    min-height: 64px !important;
    padding: 0 !important;
    transform: none !important;
    pointer-events: none !important;
  }

  .page-store .pm-store-profile-header .pm-store-header__tabs {
    position: absolute !important;
    top: 16px !important;
    left: calc(50% - 660px + 325px) !important;
    display: flex !important;
    width: auto !important;
    height: 32px !important;
    align-items: center !important;
    gap: 28px !important;
    pointer-events: auto !important;
  }

  .page-store .pm-store-profile-header .pm-store-header__tabs a {
    min-height: 32px !important;
    padding: 0 !important;
    color: var(--pm-navy) !important;
    font-size: 14px !important;
    font-weight: 800 !important;
    line-height: 32px !important;
  }

  .page-store .pm-store-profile-header .pm-store-header__join {
    position: absolute !important;
    top: 13px !important;
    right: auto !important;
    left: calc(50% - 660px + 1215px) !important;
    display: inline-flex !important;
    min-width: 81px !important;
    width: 81px !important;
    min-height: 38px !important;
    height: 38px !important;
    padding: 8px 16px !important;
    border: 1px solid transparent !important;
    border-radius: 999px !important;
    background: linear-gradient(90deg, var(--pm-blue), var(--pm-cyan)) !important;
    color: #ffffff !important;
    font-size: 14px !important;
    font-weight: 800 !important;
    line-height: 20px !important;
    box-shadow: none !important;
    transform: none !important;
    white-space: nowrap !important;
    pointer-events: auto !important;
  }

  .pm-store-profile-header .pm-store-header__mobile-search {
    display: none !important;
  }

  .page-store .pm-store-header-spacer {
    height: 65px !important;
  }
}

/* Store header Vercel reference pass: exact desktop structure from parishmart-nine. */
@media (min-width: 992px) {
  .page-store .pm-store-profile-header.store-identity-shell {
    height: 125px !important;
    min-height: 125px !important;
    background: rgba(255, 255, 255, 0.95) !important;
    border-bottom: 1px solid rgba(219, 234, 254, 0.70) !important;
    box-shadow: none !important;
    backdrop-filter: blur(24px) !important;
  }

  .page-store .pm-store-profile-header .pm-store-header.store-identity-nav {
    height: 124px !important;
    min-height: 124px !important;
    overflow: visible !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
  }

  .page-store .pm-store-profile-header .pm-store-header__top.ck-container {
    position: relative !important;
    z-index: 2 !important;
    max-width: 1320px !important;
    height: 84px !important;
    min-height: 84px !important;
    padding: 10px 24px !important;
    gap: 12px !important;
  }

  .page-store .pm-store-profile-header .pm-store-header__menu {
    width: 40px !important;
    height: 40px !important;
    min-width: 40px !important;
    min-height: 40px !important;
    border: 1px solid var(--pm-border) !important;
    border-radius: 999px !important;
    background: #ffffff !important;
    color: var(--pm-navy) !important;
    box-shadow: none !important;
  }

  .page-store .pm-store-profile-header .pm-store-header__brand {
    flex: 0 0 244px !important;
    width: 244px !important;
    min-width: 244px !important;
    max-width: 244px !important;
    height: 64px !important;
    gap: 12px !important;
  }

  .page-store .pm-store-profile-header .pm-store-header__logo {
    width: 64px !important;
    height: 64px !important;
    flex: 0 0 64px !important;
    padding: 2px !important;
    border: 1px solid rgba(219, 234, 254, 0.90) !important;
    border-radius: 999px !important;
    background: #ffffff !important;
    box-shadow: 0 18px 36px rgba(2, 80, 110, 0.10) !important;
    object-fit: contain !important;
  }

  .page-store .pm-store-profile-header .pm-store-header__copy strong {
    max-width: 168px !important;
    color: var(--pm-navy) !important;
    font-size: 16px !important;
    font-weight: 800 !important;
    line-height: 24px !important;
    white-space: nowrap !important;
  }

  .page-store .pm-store-profile-header .pm-store-header__copy small {
    margin-top: 0 !important;
    color: var(--pm-muted) !important;
    font-size: 12px !important;
    line-height: 16px !important;
    white-space: nowrap !important;
  }

  .page-store .pm-store-profile-header .pm-store-header__search.ps-form--search-mobile {
    position: static !important;
    display: block !important;
    flex: 0 0 801px !important;
    width: 801px !important;
    min-width: 0 !important;
    height: 46px !important;
    margin-left: 12px !important;
  }

  .page-store .pm-store-profile-header .pm-store-header__search .form-group--nest {
    display: flex !important;
    width: 100% !important;
    min-width: 0 !important;
    height: 46px !important;
    min-height: 46px !important;
    align-items: center !important;
    gap: 8px !important;
    padding: 4px 12px !important;
    border: 1px solid var(--pm-border) !important;
    border-radius: 999px !important;
    background: #ffffff !important;
    box-shadow: var(--pm-soft-shadow) !important;
  }

  .page-store .pm-store-profile-header .pm-store-header__search-icon {
    position: static !important;
    display: block !important;
    flex: 0 0 auto !important;
    width: 17px !important;
    height: 17px !important;
    color: var(--pm-muted) !important;
    font-size: 17px !important;
    line-height: 17px !important;
    transform: none !important;
  }

  .page-store .pm-store-profile-header .pm-store-header__search .form-control {
    display: block !important;
    width: 100% !important;
    height: 36px !important;
    min-height: 36px !important;
    padding: 0 4px !important;
    border: 0 !important;
    background: transparent !important;
    color: var(--pm-muted) !important;
    font-size: 15px !important;
    line-height: 21.4286px !important;
    box-shadow: none !important;
  }

  .page-store .pm-store-profile-header .pm-store-header__search .form-control::placeholder {
    color: rgba(47, 74, 107, 0.78) !important;
  }

  .page-store .pm-store-profile-header .pm-store-header__top .pm-store-header__search.ps-form--search-mobile button[type="submit"],
  .page-store .pm-store-profile-header .pm-store-header__search button[type="submit"] {
    position: static !important;
    display: inline-flex !important;
    visibility: visible !important;
    width: auto !important;
    min-width: 78px !important;
    height: 34px !important;
    min-height: 34px !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 6px 16px !important;
    border: 0 !important;
    border-radius: 999px !important;
    background: #0b3454 !important;
    color: #ffffff !important;
    font-size: 14px !important;
    font-weight: 800 !important;
    line-height: 20px !important;
    white-space: nowrap !important;
    transform: none !important;
    pointer-events: auto !important;
  }

  .page-store .pm-store-profile-header .pm-store-header__actions {
    position: static !important;
    display: inline-flex !important;
    flex: 0 0 139px !important;
    width: 139px !important;
    height: 40px !important;
    align-items: center !important;
    gap: 8px !important;
    margin-left: 0 !important;
  }

  .page-store .pm-store-profile-header .pm-store-header__language-wrap {
    display: block !important;
    flex: 0 0 auto !important;
  }

  .page-store .pm-store-profile-header .pm-store-header__language {
    display: inline-flex !important;
    width: auto !important;
    min-width: 41px !important;
    height: 34px !important;
    min-height: 34px !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 6px 10px !important;
    border: 1px solid var(--pm-border) !important;
    border-radius: 999px !important;
    background: #ffffff !important;
    color: var(--pm-navy) !important;
    font-size: 14px !important;
    font-weight: 800 !important;
    line-height: 20px !important;
  }

  .page-store .pm-store-profile-header .pm-store-header__cart.store-identity-nav__cart {
    width: auto !important;
    height: auto !important;
    min-height: 0 !important;
  }

  .page-store .pm-store-profile-header .pm-store-header__cart .header__extra.pm-cart-pill {
    display: flex !important;
    width: auto !important;
    min-width: 0 !important;
    height: auto !important;
    min-height: 0 !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    padding: 8px 12px !important;
    border: 1px solid var(--pm-border) !important;
    border-radius: 999px !important;
    background: #ffffff !important;
    color: var(--pm-navy) !important;
    box-shadow: none !important;
  }

  .page-store .pm-store-profile-header .pm-store-header__cart .pm-cart-pill__icon {
    width: 18px !important;
    height: 18px !important;
  }

  .page-store .pm-store-profile-header .pm-store-header__cart .header__extra.pm-cart-pill span {
    display: none !important;
  }

  .page-store .pm-store-profile-header .pm-store-header__account {
    display: grid !important;
    width: 40px !important;
    height: 40px !important;
    min-width: 40px !important;
    min-height: 40px !important;
    place-items: center !important;
    border: 1px solid var(--pm-border) !important;
    border-radius: 999px !important;
    background: #ffffff !important;
    color: var(--pm-navy) !important;
    box-shadow: none !important;
  }

  .page-store .pm-store-profile-header .pm-store-header__bottom.ck-container {
    position: relative !important;
    inset: auto !important;
    display: flex !important;
    max-width: 1320px !important;
    width: 100% !important;
    height: 40px !important;
    min-height: 40px !important;
    align-items: center !important;
    margin: 0 auto !important;
    padding: 4px 112px 12px 0 !important;
    pointer-events: auto !important;
  }

  .page-store .pm-store-profile-header .pm-store-header__tabs {
    position: static !important;
    display: flex !important;
    width: auto !important;
    height: 24px !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 40px !important;
    margin-left: 308px !important;
    overflow: visible !important;
  }

  .page-store .pm-store-profile-header .pm-store-header__tabs a {
    display: block !important;
    min-height: 24px !important;
    padding: 0 !important;
    color: var(--pm-navy) !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    line-height: 24px !important;
    white-space: nowrap !important;
  }

  .page-store .pm-store-profile-header .pm-store-header__join {
    position: absolute !important;
    top: -3px !important;
    right: 24px !important;
    left: auto !important;
    display: inline-flex !important;
    width: 81px !important;
    min-width: 81px !important;
    height: 38px !important;
    min-height: 38px !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 8px 16px !important;
    border-radius: 999px !important;
    background: linear-gradient(90deg, var(--pm-blue), var(--pm-cyan)) !important;
    color: #ffffff !important;
    font-size: 14px !important;
    font-weight: 800 !important;
    line-height: 20px !important;
    text-decoration: none !important;
    white-space: nowrap !important;
    box-shadow: 0 20px 34px rgba(18, 139, 190, 0.24) !important;
    transform: none !important;
  }

  .page-store .pm-store-profile-header .pm-store-header__mobile-search {
    display: none !important;
  }

  .page-store .pm-store-header-spacer {
    height: 125px !important;
  }
}

/* Store header pixel pass: mobile geometry matches the home mobile header. */
@media (max-width: 991px) {
  .page-store .pm-store-profile-header.store-identity-shell {
    height: 65px !important;
    min-height: 65px !important;
    background: rgba(255, 255, 255, 0.98) !important;
    border-bottom: 1px solid rgba(219, 234, 254, 0.82) !important;
    box-shadow: none !important;
  }

  .page-store .pm-store-profile-header .pm-store-header.store-identity-nav {
    height: 64px !important;
    min-height: 64px !important;
    overflow: hidden !important;
    background: rgba(255, 255, 255, 0.98) !important;
  }

  .page-store .pm-store-profile-header .pm-store-header__top.ck-container {
    height: 64px !important;
    min-height: 64px !important;
    padding: 0 16px !important;
    gap: 12px !important;
  }

  .page-store .pm-store-profile-header .pm-store-header__menu,
  .page-store .pm-store-profile-header .pm-store-header__account {
    width: 40px !important;
    height: 40px !important;
    min-width: 40px !important;
    min-height: 40px !important;
    border-color: var(--pm-border) !important;
    background: #ffffff !important;
    box-shadow: none !important;
  }

  .page-store .pm-store-profile-header .pm-store-header__brand {
    flex: 0 0 213px !important;
    width: 213px !important;
    min-width: 213px !important;
    max-width: 213px !important;
    height: 40px !important;
    gap: 8px !important;
  }

  .page-store .pm-store-profile-header .pm-store-header__logo {
    width: 40px !important;
    height: 40px !important;
    flex: 0 0 40px !important;
    padding: 1px !important;
    box-shadow: none !important;
  }

  .page-store .pm-store-profile-header .pm-store-header__copy strong {
    font-size: 13px !important;
    line-height: 14px !important;
  }

  .page-store .pm-store-profile-header .pm-store-header__copy small {
    margin-top: 1px !important;
    font-size: 11px !important;
    line-height: 12px !important;
  }

  .page-store .pm-store-profile-header .pm-store-header__actions {
    position: absolute !important;
    top: 12px !important;
    right: 97px !important;
    z-index: 4 !important;
    width: 58px !important;
    height: 40px !important;
    gap: 8px !important;
    margin-left: 0 !important;
  }

  .page-store .pm-store-profile-header .pm-store-header__language-wrap,
  .page-store .pm-store-profile-header .pm-store-header__mobile-search,
  .page-store .pm-store-profile-header .pm-store-header__tabs,
  .page-store .pm-store-profile-header .pm-store-header__account {
    display: none !important;
  }

  .page-store .pm-store-profile-header .pm-store-header__bottom {
    position: absolute !important;
    inset: 0 !important;
    display: block !important;
    width: 100vw !important;
    height: 64px !important;
    min-height: 64px !important;
    padding: 0 !important;
    pointer-events: none !important;
  }

  .page-store .pm-store-profile-header .pm-store-header__cart.store-identity-nav__cart,
  .page-store .pm-store-profile-header .pm-store-header__cart .header__extra.pm-cart-pill {
    height: auto !important;
    min-height: 0 !important;
  }

  .page-store .pm-store-profile-header .pm-store-header__cart .header__extra.pm-cart-pill {
    width: auto !important;
    min-width: 0 !important;
    padding: 8px 12px !important;
    box-shadow: none !important;
  }

  .page-store .pm-store-profile-header .pm-store-header__cart .header__extra.pm-cart-pill span {
    display: none !important;
  }

  .page-store .pm-store-profile-header .pm-store-header__join {
    position: absolute !important;
    top: 14px !important;
    right: 16px !important;
    left: auto !important;
    display: inline-flex !important;
    width: 73px !important;
    min-width: 73px !important;
    height: 37px !important;
    min-height: 37px !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 8px 12px !important;
    border-radius: 999px !important;
    background: linear-gradient(90deg, var(--pm-blue), var(--pm-cyan)) !important;
    color: #ffffff !important;
    font-size: 14px !important;
    font-weight: 800 !important;
    line-height: 18.6667px !important;
    white-space: nowrap !important;
    text-decoration: none !important;
    transform: none !important;
    pointer-events: auto !important;
  }

  .page-store .pm-store-header-spacer {
    height: 65px !important;
  }
}

/* Store header font and icon parity with Vercel after webfont load. */
.page-store .pm-store-profile-header,
.page-store .pm-store-profile-header * {
  font-family: var(--pm-font-sans) !important;
}

.page-store .pm-store-profile-header .pm-store-header__menu svg {
  display: block !important;
  width: 20px !important;
  height: 20px !important;
  stroke: currentColor !important;
  stroke-width: 2 !important;
  stroke-linecap: round !important;
  stroke-linejoin: round !important;
}

.page-store .pm-store-profile-header .pm-store-header__search-icon {
  display: block !important;
  width: 16px !important;
  height: 16px !important;
  flex: 0 0 16px !important;
  stroke: currentColor !important;
  stroke-width: 2 !important;
  stroke-linecap: round !important;
  stroke-linejoin: round !important;
  font-size: 16px !important;
  line-height: 16px !important;
}

.page-store .pm-store-profile-header .pm-store-header__cart .pm-cart-pill__icon,
.page-store .pm-store-profile-header .pm-store-header__account svg {
  display: block !important;
  width: 16px !important;
  height: 16px !important;
  stroke: currentColor !important;
  stroke-width: 2 !important;
  stroke-linecap: round !important;
  stroke-linejoin: round !important;
}

@media (min-width: 992px) {
  .page-store .store-page--parish .pm-store-profile-header .pm-store-header__bottom.ck-container {
    padding-right: 112px !important;
    padding-left: 112px !important;
  }

  .page-store .store-page--parish .pm-store-profile-header .pm-store-header__tabs {
    width: 100% !important;
    flex: 1 1 auto !important;
    justify-content: center !important;
    margin-left: 0 !important;
  }

  .page-store .pm-store-profile-header .pm-store-header.store-identity-nav {
    font-size: 16px !important;
    line-height: 24px !important;
  }

  .page-store .pm-store-profile-header .pm-store-header__copy strong {
    display: block !important;
    width: 168px !important;
    max-width: 168px !important;
    height: 24px !important;
    overflow: visible !important;
    color: var(--pm-navy) !important;
    font-size: 16px !important;
    font-weight: 800 !important;
    line-height: 24px !important;
    letter-spacing: -0.4px !important;
    text-overflow: clip !important;
  }

  .page-store .pm-store-profile-header .pm-store-header__copy small {
    display: block !important;
    width: 168px !important;
    max-width: 168px !important;
    height: 12px !important;
    margin-top: 2px !important;
    color: var(--pm-muted) !important;
    font-size: 11px !important;
    font-weight: 400 !important;
    line-height: 12.1px !important;
  }

  .page-store .pm-store-profile-header .pm-store-header__tabs,
  .page-store .pm-store-profile-header .pm-store-header__tabs *,
  .page-store .pm-store-profile-header .pm-store-header__tabs a {
    font-family: var(--pm-font-sans) !important;
  }

  .page-store .pm-store-profile-header .pm-store-header__search .form-control {
    color: var(--pm-ink) !important;
    font-size: 15px !important;
    font-weight: 400 !important;
    line-height: 21.4286px !important;
  }

  .page-store .pm-store-profile-header .pm-store-header__top .pm-store-header__search.ps-form--search-mobile button[type="submit"],
  .page-store .pm-store-profile-header .pm-store-header__search button[type="submit"],
  .page-store .pm-store-profile-header .pm-store-header__language,
  .page-store .pm-store-profile-header .pm-store-header__join {
    font-weight: 700 !important;
  }
}

/* Parish overview hero: match Vercel /parishes/skd section geometry and late font behavior. */
.page-store .store-page--parish {
  background:
    radial-gradient(1200px 600px at 80% -10%, #d6f0fb 0%, transparent 60%),
    linear-gradient(180deg, #f6fcff 0%, #ffffff 35%, #eef8fb 100%) !important;
}

.page-store .store-page--parish .store-page__breadcrumb--overview,
.page-store .store-page--parish .store-page__breadcrumb--overview *,
.page-store .store-page--parish .store-profile-hero,
.page-store .store-page--parish .store-profile-hero * {
  font-family: var(--pm-font-sans) !important;
}

.page-store .store-page--parish .store-page__breadcrumb--overview {
  width: 100% !important;
  max-width: 1232px !important;
  height: 16px !important;
  margin: 16px auto 0 !important;
  padding: 0 !important;
  color: var(--pm-ink) !important;
  font-size: 16px !important;
  line-height: 24px !important;
  overflow-x: auto !important;
}

.page-store .store-page--parish .store-page__breadcrumb--overview .breadcrumb {
  display: flex !important;
  height: 16px !important;
  align-items: center !important;
  gap: 6px !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  color: #64748b !important;
  font-size: 12px !important;
  line-height: 16px !important;
  white-space: nowrap !important;
}

.page-store .store-page--parish .store-page__breadcrumb--overview .breadcrumb li {
  display: inline-flex !important;
  height: 16px !important;
  align-items: center !important;
  gap: 6px !important;
  color: #64748b !important;
  font-size: 12px !important;
  font-weight: 400 !important;
  line-height: 16px !important;
}

.page-store .store-page--parish .store-page__breadcrumb--overview .breadcrumb li + li::before {
  content: "/" !important;
  margin-right: 0 !important;
  color: #64748b !important;
  font-size: 12px !important;
  font-weight: 400 !important;
  line-height: 16px !important;
}

.page-store .store-page--parish .store-page__breadcrumb--overview .breadcrumb a,
.page-store .store-page--parish .store-page__breadcrumb--overview .breadcrumb span {
  color: inherit !important;
  font-size: 12px !important;
  font-weight: 400 !important;
  line-height: 16px !important;
  text-decoration: none !important;
}

.page-store .store-page--parish .store-page__breadcrumb--overview .breadcrumb li[aria-current="page"] span {
  color: var(--pm-navy) !important;
  font-weight: 700 !important;
}

.page-store .store-page--parish .store-profile-hero {
  width: 100% !important;
  max-width: 1280px !important;
  margin: 16px auto 0 !important;
  padding: 8px 24px 8px !important;
}

.page-store .store-page--parish .store-profile-hero__card {
  display: grid !important;
  width: 100% !important;
  height: 462px !important;
  min-height: 462px !important;
  grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr) !important;
  gap: 0 !important;
  overflow: hidden !important;
  border: 1px solid var(--pm-border) !important;
  border-radius: 24px !important;
  background: rgba(255, 255, 255, 0.92) !important;
  box-shadow: var(--pm-card-shadow) !important;
}

.page-store .store-page--parish .store-profile-hero__media {
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  overflow: hidden !important;
  border: 1px solid var(--pm-border) !important;
  border-radius: 0 0 24px 24px !important;
  background: transparent !important;
}

.page-store .store-page--parish .store-profile-hero__media img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center !important;
  filter: none !important;
}

.page-store .store-page--parish .store-profile-hero__media span {
  display: none !important;
}

.page-store .store-page--parish .store-profile-hero__content {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  padding: 28px !important;
  color: var(--pm-ink) !important;
  font-size: 16px !important;
  line-height: 24px !important;
}

.page-store .store-page--parish .store-profile-hero__content h1 {
  width: 100% !important;
  max-width: none !important;
  height: 90px !important;
  margin: 0 0 16px !important;
  color: var(--pm-navy) !important;
  font-family: var(--pm-font-sans) !important;
  font-size: 36px !important;
  font-weight: 800 !important;
  line-height: 45px !important;
  letter-spacing: -0.9px !important;
}

.page-store .store-page--parish .store-profile-hero__content h1 span {
  background: linear-gradient(90deg, var(--pm-blue), var(--pm-cyan)) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  color: transparent !important;
  font: inherit !important;
  letter-spacing: inherit !important;
}

.page-store .store-page--parish .store-profile-hero__quote {
  width: 100% !important;
  height: auto !important;
  margin: 0 0 16px !important;
  color: var(--pm-muted) !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  line-height: 20px !important;
}

.page-store .store-page--parish .store-profile-hero__details-toggle {
  display: block !important;
  margin: 10px 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  color: var(--pm-blue) !important;
  font: inherit !important;
  font-weight: 700 !important;
  line-height: inherit !important;
  cursor: pointer !important;
}

.page-store .store-page--parish .store-profile-hero__details-toggle:hover,
.page-store .store-page--parish .store-profile-hero__details-toggle:focus-visible {
  color: var(--pm-cyan) !important;
  text-decoration: underline !important;
}

.page-store .store-page--parish .store-profile-info[hidden] {
  display: none !important;
}

.page-store .store-page--parish .store-profile-hero__identity {
  display: flex !important;
  width: 100% !important;
  height: 79px !important;
  align-items: flex-start !important;
  gap: 12px !important;
  margin: 0 0 16px !important;
  padding: 12px !important;
  border: 1px solid var(--pm-border) !important;
  border-radius: 16px !important;
  background: #ffffff !important;
  box-shadow: none !important;
}

.page-store .store-page--parish .store-profile-hero__logo {
  display: grid !important;
  width: 44px !important;
  height: 44px !important;
  flex: 0 0 44px !important;
  place-items: center !important;
  padding: 2px !important;
  border: 0 !important;
  outline: 1px solid rgba(219, 234, 254, 0.95) !important;
  border-radius: 999px !important;
  background: #ffffff !important;
  box-shadow: none !important;
}

.page-store .store-page--parish .store-profile-hero__logo img {
  display: block !important;
  width: 40px !important;
  height: 40.2833px !important;
  max-width: 40px !important;
  max-height: 40.2833px !important;
  object-fit: contain !important;
}

.page-store .store-page--parish .store-profile-hero__identity > div {
  width: 248px !important;
  min-width: 0 !important;
  height: 53px !important;
}

.page-store .store-page--parish .store-profile-hero__identity p {
  height: 20px !important;
  margin: 0 !important;
  color: var(--pm-navy) !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  line-height: 20px !important;
  white-space: nowrap !important;
}

.page-store .store-page--parish .store-profile-hero__identity small {
  display: block !important;
  height: 17px !important;
  margin: 0 !important;
  color: var(--pm-muted) !important;
  font-size: 11px !important;
  font-weight: 400 !important;
  line-height: 16.5px !important;
  white-space: nowrap !important;
}

.page-store .store-page--parish .store-profile-hero__stats {
  display: grid !important;
  width: 100% !important;
  height: 65px !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 8px !important;
  margin: 0 0 16px !important;
}

.page-store .store-page--parish .store-profile-hero__stats > div {
  height: 65px !important;
  min-height: 0 !important;
  padding: 12px !important;
  border: 1px solid var(--pm-border) !important;
  border-radius: 16px !important;
  background: #ffffff !important;
  box-shadow: none !important;
}

.page-store .store-page--parish .store-profile-hero__stats p {
  margin: 0 !important;
  color: var(--pm-blue) !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  line-height: 15px !important;
  letter-spacing: 0.04em !important;
  text-transform: uppercase !important;
}

.page-store .store-page--parish .store-profile-hero__stats strong {
  display: block !important;
  margin: 0 !important;
  color: var(--pm-navy) !important;
  font-size: 16px !important;
  font-weight: 800 !important;
  line-height: 24px !important;
}

.page-store .store-page--parish .store-profile-hero__actions {
  display: flex !important;
  height: 47px !important;
  align-items: stretch !important;
  gap: 12px !important;
  margin: 0 !important;
  padding: 0 !important;
}

.page-store .store-page--parish .store-profile-hero__actions .pm-btn {
  min-height: 47px !important;
  height: 47px !important;
  padding: 12px 20px !important;
  gap: 8px !important;
  border-radius: 999px !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  line-height: 21px !important;
  transform: none !important;
}

.page-store .store-page--parish .store-profile-hero__actions .pm-btn-primary {
  min-width: 166px !important;
  background: linear-gradient(90deg, var(--pm-blue), var(--pm-cyan)) !important;
  color: #ffffff !important;
  box-shadow: 0 14px 30px rgba(5, 126, 162, 0.25) !important;
}

.page-store .store-page--parish .store-profile-hero__actions .pm-btn-secondary {
  min-width: 138px !important;
  border-color: var(--pm-border) !important;
  background: #ffffff !important;
  color: var(--pm-blue) !important;
  box-shadow: none !important;
}

/* Parish overview info cards: match Vercel #about block below the hero. */
.page-store .store-page--parish .store-profile-info,
.page-store .store-page--parish .store-profile-info * {
  box-sizing: border-box !important;
  font-family: var(--pm-font-sans) !important;
}

.page-store .store-page--parish .store-profile-info {
  width: 100% !important;
  max-width: 1280px !important;
  margin: 0 auto !important;
  padding: 40px 24px !important;
  color: var(--pm-ink) !important;
}

.page-store .store-page--parish .store-profile-info__grid {
  display: grid !important;
  width: 100% !important;
  grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr) minmax(0, 1fr) !important;
  gap: 16px !important;
  align-items: stretch !important;
  margin: 0 !important;
  padding: 0 !important;
}

.page-store .store-page--parish .store-profile-info__card {
  min-height: 0 !important;
  margin: 0 !important;
  padding: 24px !important;
  border: 1px solid var(--pm-border) !important;
  border-radius: 24px !important;
  background: rgba(255, 255, 255, 0.92) !important;
  box-shadow: var(--pm-card-shadow) !important;
}

.page-store .store-page--parish .store-profile-info__kicker {
  height: 15px !important;
  margin: 0 !important;
  color: var(--pm-blue) !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  line-height: 15px !important;
  letter-spacing: 0.04em !important;
  text-transform: uppercase !important;
}

.page-store .store-page--parish .store-profile-info__card h3 {
  margin: 8px 0 0 !important;
  color: var(--pm-navy) !important;
  font-size: 18px !important;
  font-weight: 700 !important;
  line-height: 28px !important;
  letter-spacing: 0 !important;
}

.page-store .store-page--parish .store-profile-info__copy {
  margin: 8px 0 0 !important;
  color: var(--pm-muted) !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  line-height: 20px !important;
}

.page-store .store-page--parish .store-profile-info__links {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
  margin: 16px 0 0 !important;
  padding: 0 !important;
  font-size: 13px !important;
  line-height: 17.3333px !important;
}

.page-store .store-page--parish .store-profile-info__links a {
  display: flex !important;
  min-height: 35.33px !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 8px 14px !important;
  border: 1px solid var(--pm-border) !important;
  border-radius: 999px !important;
  background: #ffffff !important;
  color: var(--pm-ink) !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  line-height: 17.3333px !important;
  text-decoration: none !important;
  transition: background 0.16s ease, border-color 0.16s ease, color 0.16s ease, transform 0.16s ease, box-shadow 0.16s ease !important;
}

.page-store .store-page--parish .store-profile-info__links a:hover,
.page-store .store-page--parish .store-profile-info__links a:focus-visible {
  border-color: transparent !important;
  background: linear-gradient(90deg, var(--pm-blue), var(--pm-cyan)) !important;
  color: #ffffff !important;
  text-decoration: none !important;
  transform: translateY(-1px) !important;
  box-shadow: 0 12px 24px rgba(5, 126, 162, 0.22) !important;
  outline: none !important;
}

.page-store .store-page--parish .store-profile-info__schedule {
  display: block !important;
  margin: 12px 0 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

.page-store .store-page--parish .store-profile-info__schedule li {
  display: flex !important;
  min-height: 38px !important;
  align-items: flex-start !important;
  justify-content: space-between !important;
  gap: 12px !important;
  margin: 0 0 8px !important;
  padding: 10px !important;
  border: 1px solid var(--pm-border) !important;
  border-radius: 16px !important;
  background: #ffffff !important;
  color: var(--pm-ink) !important;
  font-size: 12px !important;
  line-height: 16px !important;
}

.page-store .store-page--parish .store-profile-info__schedule li:last-child {
  margin-bottom: 0 !important;
}

.page-store .store-page--parish .store-profile-info__schedule span:first-child {
  flex: 0 0 auto !important;
  color: var(--pm-navy) !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  line-height: 16px !important;
}

.page-store .store-page--parish .store-profile-info__schedule span:last-child {
  color: var(--pm-muted) !important;
  font-size: 12px !important;
  font-weight: 400 !important;
  line-height: 16px !important;
  text-align: right !important;
  white-space: nowrap !important;
}

.page-store .store-page--parish .store-profile-info__labels {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
  margin: 12px 0 0 !important;
  padding: 0 !important;
}

.page-store .store-page--parish .store-profile-info__labels span,
.page-store .store-page--parish .store-profile-info__labels a {
  display: block !important;
  min-height: 24.5px !important;
  padding: 4px 10px !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: #e9f8ff !important;
  color: var(--pm-blue) !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  line-height: 16.5px !important;
  letter-spacing: 0.04em !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
}

.page-store .store-page--parish .store-profile-info__labels a:hover {
  background: #d8f2ff !important;
  color: var(--pm-navy) !important;
}

.page-store .store-page--parish .store-profile-info__ministries-link {
  display: inline-block !important;
  margin: 14px 0 0 !important;
  color: var(--pm-navy) !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  line-height: 16px !important;
  text-decoration: none !important;
}

.page-store .store-page--parish .store-profile-info__ministries-link:hover {
  color: var(--pm-blue) !important;
}

.page-store .store-page--parish .store-profile-info__source {
  margin: 12px 0 0 !important;
  color: var(--pm-muted) !important;
  font-size: 12px !important;
  font-weight: 400 !important;
  line-height: 16px !important;
}

.page-store .store-page--parish .store-profile-info__source a {
  color: inherit !important;
  text-decoration: none !important;
}

.page-store .store-page--parish .store-profile-info__source a:hover {
  color: var(--pm-navy) !important;
}

.page-store .store-page--parish .store-profile-info__read-more {
  display: inline !important;
  margin: 0 0 0 3px !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  color: var(--pm-blue) !important;
  font: inherit !important;
  font-weight: 800 !important;
  line-height: inherit !important;
  cursor: pointer !important;
}

.page-store .store-page--parish .store-profile-info__read-more:hover {
  color: var(--pm-navy) !important;
  text-decoration: underline !important;
}

.parish-long-description-modal {
  z-index: 10050 !important;
  font-family: var(--pm-font-sans) !important;
}

.parish-long-description-modal .modal-dialog {
  width: calc(100% - 32px) !important;
  max-width: 672px !important;
  margin: 30px auto !important;
}

.parish-long-description-modal .modal-content {
  position: relative !important;
  max-height: calc(100vh - 60px) !important;
  max-height: calc(100dvh - 60px) !important;
  overflow: hidden !important;
  border: 0 !important;
  border-radius: 24px !important;
  background: #fff !important;
  box-shadow: 0 24px 70px rgba(4, 38, 63, 0.24) !important;
}

.parish-long-description-modal .btn-close {
  position: absolute !important;
  z-index: 2 !important;
  top: 16px !important;
  right: 16px !important;
  width: 34px !important;
  height: 34px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 1px solid var(--pm-border) !important;
  border-radius: 50% !important;
  background-color: #fff !important;
  background-size: 10px !important;
  opacity: 1 !important;
}

.parish-long-description-modal .modal-body {
  overflow-y: auto !important;
  padding: 36px 52px 32px 32px !important;
  color: var(--pm-navy) !important;
  font-size: 16px !important;
  font-weight: 400 !important;
  line-height: 1.5 !important;
}

.parish-long-description-modal .modal-body > :first-child {
  margin-top: 0 !important;
}

.parish-long-description-modal .modal-body > :last-child {
  margin-bottom: 0 !important;
}

@media (max-width: 575px) {
  .parish-long-description-modal .modal-dialog {
    width: calc(100% - 24px) !important;
    margin: 12px auto !important;
  }

  .parish-long-description-modal .modal-content {
    max-height: calc(100vh - 24px) !important;
    max-height: calc(100dvh - 24px) !important;
    border-radius: 18px !important;
  }

  .parish-long-description-modal .modal-body {
    padding: 54px 22px 24px !important;
    font-size: 15px !important;
  }
}

/* Parish overview support paths: Vercel card trio under the info cards. */
.page-store .store-page--parish .store-profile-support,
.page-store .store-page--parish .store-profile-support * {
  box-sizing: border-box !important;
  font-family: var(--pm-font-sans) !important;
}

.page-store .store-page--parish .store-profile-support {
  width: 100% !important;
  max-width: 1280px !important;
  margin: 0 auto !important;
  padding: 40px 24px !important;
  color: var(--pm-ink) !important;
}

.page-store .store-page--parish .store-profile-support__header {
  width: 672px !important;
  max-width: 100% !important;
  margin: 0 0 24px !important;
  padding: 0 !important;
}

.page-store .store-page--parish .store-profile-support__header h2 {
  height: 36px !important;
  margin: 0 !important;
  color: var(--pm-navy) !important;
  font-size: 30px !important;
  font-weight: 800 !important;
  line-height: 36px !important;
  letter-spacing: -0.025em !important;
}

.page-store .store-page--parish .store-profile-support__header p {
  width: 672px !important;
  max-width: 100% !important;
  min-height: 40px !important;
  margin: 4px 0 0 !important;
  color: var(--pm-muted) !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  line-height: 20px !important;
}

.page-store .store-page--parish .store-profile-support__grid {
  display: grid !important;
  width: 100% !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 16px !important;
  margin: 0 !important;
  padding: 0 !important;
}

.page-store .store-page--parish .store-profile-support__card {
  display: block !important;
  width: 100% !important;
  min-height: 354.39px !important;
  overflow: hidden !important;
  padding: 0 !important;
  border: 1px solid var(--pm-border) !important;
  border-radius: 24px !important;
  background: rgba(255, 255, 255, 0.92) !important;
  color: var(--pm-ink) !important;
  text-decoration: none !important;
  box-shadow: var(--pm-card-shadow) !important;
  transform: none !important;
  transition: transform 0.2s ease, box-shadow 0.2s ease !important;
}

.page-store .store-page--parish .store-profile-support__card:hover {
  color: var(--pm-ink) !important;
  transform: translateY(-2px) !important;
  box-shadow: var(--pm-soft-shadow) !important;
}

.page-store .store-page--parish .store-profile-support__media {
  position: relative !important;
  display: block !important;
  width: 100% !important;
  aspect-ratio: 16 / 9 !important;
  overflow: hidden !important;
  border: 1px solid var(--pm-border) !important;
  border-radius: 24px 24px 0 0 !important;
  background: transparent !important;
}

.page-store .store-page--parish .store-profile-support__media img {
  position: absolute !important;
  inset: 0 !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center !important;
}

.page-store .store-page--parish .store-profile-support__media::after {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  pointer-events: none !important;
  background: linear-gradient(to top, rgba(0, 0, 0, 0.25), transparent, transparent) !important;
}

.page-store .store-page--parish .store-profile-support__body {
  display: block !important;
  min-height: 128.5px !important;
  margin: 0 !important;
  padding: 24px !important;
}

.page-store .store-page--parish .store-profile-support__kicker {
  display: block !important;
  height: 16.5px !important;
  margin: 0 0 8px !important;
  color: var(--pm-blue) !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  line-height: 16.5px !important;
  letter-spacing: 0.04em !important;
  text-transform: uppercase !important;
}

.page-store .store-page--parish .store-profile-support__title {
  display: block !important;
  height: 28px !important;
  margin: 0 0 8px !important;
  color: var(--pm-navy) !important;
  font-size: 20px !important;
  font-weight: 800 !important;
  line-height: 28px !important;
  letter-spacing: 0 !important;
}

.page-store .store-page--parish .store-profile-support__card:hover .store-profile-support__title {
  color: var(--pm-blue) !important;
}

.page-store .store-page--parish .store-profile-support__copy {
  display: block !important;
  margin: 0 !important;
  color: var(--pm-muted) !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  line-height: 20px !important;
}

/* Parish overview Shop with Purpose: dynamic store products with Vercel card geometry. */
.page-store .store-page--parish .store-profile-shop,
.page-store .store-page--parish .store-profile-shop * {
  box-sizing: border-box !important;
  font-family: var(--pm-font-sans) !important;
}

.page-store .store-page--parish .store-profile-shop {
  width: 100% !important;
  max-width: 1280px !important;
  margin: 0 auto !important;
  padding: 40px 24px !important;
  color: var(--pm-ink) !important;
}

.page-store .store-page--parish .store-profile-shop__header {
  display: flex !important;
  width: 100% !important;
  align-items: flex-end !important;
  justify-content: space-between !important;
  gap: 16px !important;
  margin: 0 0 24px !important;
  padding: 0 !important;
}

.page-store .store-page--parish .store-profile-shop__header > div:first-child {
  width: 672px !important;
  max-width: 100% !important;
}

.page-store .store-page--parish .store-profile-shop__header h2 {
  height: 36px !important;
  margin: 0 !important;
  color: var(--pm-navy) !important;
  font-size: 30px !important;
  font-weight: 800 !important;
  line-height: 36px !important;
  letter-spacing: -0.025em !important;
}

.page-store .store-page--parish .store-profile-shop__header p {
  min-height: 20px !important;
  margin: 4px 0 0 !important;
  color: var(--pm-muted) !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  line-height: 20px !important;
}

.page-store .store-page--parish .store-profile-shop__links {
  display: flex !important;
  height: 20px !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 16px !important;
  margin: 0 !important;
  padding: 0 !important;
  white-space: nowrap !important;
}

.page-store .store-page--parish .store-profile-shop__links a {
  color: var(--pm-muted) !important;
  font-family: var(--pm-font-sans) !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  line-height: 20px !important;
  text-decoration: none !important;
}

.page-store .store-page--parish .store-profile-shop__links a:first-child {
  color: var(--pm-navy) !important;
  font-weight: 700 !important;
}

.page-store .store-page--parish .store-profile-shop__grid {
  display: grid !important;
  width: 100% !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 16px !important;
  align-items: stretch !important;
  margin: 0 !important;
  padding: 0 !important;
}

.page-store .store-page--parish .store-profile-shop__product {
  display: flex !important;
  min-width: 0 !important;
  height: 376.5px !important;
  min-height: 376.5px !important;
  flex-direction: column !important;
  overflow: hidden !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 1px solid var(--pm-border) !important;
  border-radius: 24px !important;
  background: rgba(255, 255, 255, 0.92) !important;
  color: var(--pm-ink) !important;
  box-shadow: var(--pm-card-shadow) !important;
  transition: transform 0.2s ease, box-shadow 0.2s ease !important;
}

.page-store .store-page--parish .store-profile-shop__product:hover {
  transform: translateY(-2px) !important;
  box-shadow: var(--pm-soft-shadow) !important;
}

.page-store .store-page--parish .store-profile-shop__media {
  position: relative !important;
  display: block !important;
  width: 100% !important;
  aspect-ratio: 4 / 3 !important;
  overflow: hidden !important;
  border-radius: 24px 24px 0 0 !important;
  background: #ffffff !important;
  text-decoration: none !important;
}

.page-store .store-page--parish .store-profile-shop__media img {
  position: absolute !important;
  inset: 0 !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  object-position: center !important;
}

.page-store .store-page--parish .store-profile-shop__body {
  display: flex !important;
  height: 155px !important;
  min-height: 155px !important;
  flex: 1 1 auto !important;
  flex-direction: column !important;
  margin: 0 !important;
  padding: 16px !important;
}

.page-store .store-page--parish .store-profile-shop__title {
  display: -webkit-box !important;
  height: 35px !important;
  margin: 0 0 4px !important;
  overflow: hidden !important;
  -webkit-box-orient: vertical !important;
  -webkit-line-clamp: 2 !important;
  color: var(--pm-navy) !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  line-height: 17.5px !important;
  text-decoration: none !important;
}

.page-store .store-page--parish .store-profile-shop__title:hover {
  color: var(--pm-blue) !important;
}

.page-store .store-page--parish .store-profile-shop__description {
  display: -webkit-box !important;
  height: 33px !important;
  min-height: 33px !important;
  margin: 0 !important;
  overflow: hidden !important;
  -webkit-box-orient: vertical !important;
  -webkit-line-clamp: 2 !important;
  color: var(--pm-muted) !important;
  font-size: 11px !important;
  font-weight: 400 !important;
  line-height: 16.5px !important;
}

.page-store .store-page--parish .store-profile-shop__footer {
  display: flex !important;
  min-height: 32px !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 12px !important;
  margin: auto 0 0 !important;
  padding: 14px 0 0 !important;
}

.page-store .store-page--parish .store-profile-shop__price {
  color: var(--pm-navy) !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  line-height: 20px !important;
}

.page-store .store-page--parish .store-profile-shop__price del {
  margin-left: 4px !important;
  color: var(--pm-muted) !important;
  font-size: 12px !important;
  font-weight: 400 !important;
}

.page-store .store-page--parish .store-profile-shop__add {
  display: inline-flex !important;
  min-width: 55px !important;
  min-height: 32px !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 7px 16px !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: linear-gradient(90deg, var(--pm-blue), var(--pm-cyan)) !important;
  color: #ffffff !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  line-height: 18px !important;
  text-decoration: none !important;
  box-shadow: none !important;
}

.page-store .store-page--parish .store-profile-shop__add:hover {
  color: #ffffff !important;
  box-shadow: var(--pm-soft-shadow) !important;
}

.page-store .store-page--parish .store-profile-shop__load {
  display: flex !important;
  justify-content: center !important;
  margin: 24px 0 0 !important;
  padding: 0 !important;
}

.page-store .store-page--parish .store-profile-shop__load-button {
  display: inline-flex !important;
  min-height: 47px !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 12px 20px !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: linear-gradient(90deg, var(--pm-blue), var(--pm-cyan)) !important;
  color: #ffffff !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  line-height: 21px !important;
  box-shadow: 0 14px 30px rgba(5, 126, 162, 0.25) !important;
}

.page-store .store-page--parish .store-profile-shop__load-button[disabled] {
  cursor: wait !important;
  opacity: 0.68 !important;
}

@media (max-width: 991px) {
  .page-store .store-page--parish .store-profile-info__grid,
  .page-store .store-page--parish .store-profile-support__grid,
  .page-store .store-page--parish .store-profile-shop__grid {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 767px) {
  .page-store .store-page--parish .store-profile-info,
  .page-store .store-page--parish .store-profile-support,
  .page-store .store-page--parish .store-profile-shop {
    padding: 32px 14px !important;
  }

  .page-store .store-page--parish .store-profile-shop__header {
    align-items: flex-start !important;
    flex-direction: column !important;
  }

  .page-store .store-page--parish .store-profile-support__header h2 {
    height: auto !important;
    font-size: 26px !important;
    line-height: 32px !important;
  }
}

/* Parish overview Give with Love: dynamic donation campaigns. */
.page-store .store-page--parish .store-profile-give,
.page-store .store-page--parish .store-profile-give * {
  box-sizing: border-box !important;
  font-family: var(--pm-font-sans) !important;
}

.page-store .store-page--parish .store-profile-give {
  width: 100% !important;
  max-width: 1280px !important;
  margin: 0 auto !important;
  padding: 40px 24px !important;
  color: var(--pm-ink) !important;
}

.page-store .store-page--parish .store-profile-give__header {
  display: flex !important;
  width: 100% !important;
  align-items: flex-end !important;
  justify-content: space-between !important;
  gap: 16px !important;
  margin: 0 0 24px !important;
  padding: 0 !important;
}

.page-store .store-page--parish .store-profile-give__header h2 {
  height: 36px !important;
  margin: 0 !important;
  color: var(--pm-navy) !important;
  font-size: 30px !important;
  font-weight: 800 !important;
  line-height: 36px !important;
  letter-spacing: 0 !important;
}

.page-store .store-page--parish .store-profile-give__header p {
  min-height: 20px !important;
  margin: 4px 0 0 !important;
  color: var(--pm-muted) !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  line-height: 20px !important;
}

.page-store .store-page--parish .store-profile-give__links {
  display: flex !important;
  height: 20px !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 16px !important;
  margin: 0 !important;
  padding: 0 !important;
  white-space: nowrap !important;
}

.page-store .store-page--parish .store-profile-give__links a {
  color: var(--pm-muted) !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  line-height: 20px !important;
  text-decoration: none !important;
}

.page-store .store-page--parish .store-profile-give__links a:first-child {
  color: var(--pm-navy) !important;
  font-weight: 700 !important;
}

.page-store .store-page--parish .store-profile-give__grid {
  display: grid !important;
  width: 100% !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 16px !important;
  align-items: stretch !important;
  margin: 0 !important;
  padding: 0 !important;
}

.page-store .store-page--parish .store-profile-give__card {
  display: flex !important;
  min-width: 0 !important;
  height: 405px !important;
  min-height: 405px !important;
  flex-direction: column !important;
  overflow: hidden !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 1px solid var(--pm-border) !important;
  border-radius: 24px !important;
  background: rgba(255, 255, 255, 0.92) !important;
  color: var(--pm-ink) !important;
  box-shadow: var(--pm-card-shadow) !important;
  transition: transform 0.2s ease, box-shadow 0.2s ease !important;
}

.page-store .store-page--parish .store-profile-give__card:hover {
  transform: translateY(-2px) !important;
  box-shadow: var(--pm-soft-shadow) !important;
}

.page-store .store-page--parish .store-profile-give__media {
  position: relative !important;
  display: block !important;
  width: 100% !important;
  height: 258px !important;
  min-height: 258px !important;
  overflow: visible !important;
  border-radius: 24px 24px 0 0 !important;
  background: #ffffff !important;
  text-decoration: none !important;
}

.page-store .store-page--parish .store-profile-give__media > img {
  position: absolute !important;
  inset: 0 !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  border-radius: 24px 24px 0 0 !important;
  object-fit: cover !important;
  object-position: center !important;
}

.page-store .store-page--parish .store-profile-give__media > span {
  position: absolute !important;
  z-index: 2 !important;
  right: 12px !important;
  bottom: 0 !important;
  width: 64px !important;
  height: 64px !important;
  padding: 6px !important;
  border-radius: 16px !important;
  background: #ffffff !important;
  box-shadow: 0 18px 35px rgba(8, 40, 67, 0.12) !important;
  outline: 2px solid #ffffff !important;
  transform: translateY(25%) !important;
}

.page-store .store-page--parish .store-profile-give__media > span img {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
}

.page-store .store-page--parish .store-profile-give__body {
  display: flex !important;
  height: 147px !important;
  min-height: 147px !important;
  flex: 1 1 auto !important;
  flex-direction: column !important;
  margin: 0 !important;
  padding: 32px 12px 12px !important;
}

.page-store .store-page--parish .store-profile-give__title {
  display: -webkit-box !important;
  height: 18px !important;
  margin: 0 0 2px !important;
  overflow: hidden !important;
  -webkit-box-orient: vertical !important;
  -webkit-line-clamp: 1 !important;
  color: var(--pm-navy) !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  line-height: 17.5px !important;
  text-decoration: none !important;
}

.page-store .store-page--parish .store-profile-give__location {
  height: 16.5px !important;
  margin: 0 0 8px !important;
  overflow: hidden !important;
  color: var(--pm-muted) !important;
  font-size: 11px !important;
  font-weight: 400 !important;
  line-height: 16.5px !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

.page-store .store-page--parish .store-profile-give__description {
  display: block !important;
  height: 16px !important;
  margin: 0 !important;
  overflow: hidden !important;
  color: var(--pm-muted) !important;
  font-size: 12px !important;
  font-weight: 400 !important;
  line-height: 16px !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

.page-store .store-page--parish .store-profile-give__footer {
  display: flex !important;
  min-height: 33px !important;
  align-items: flex-end !important;
  margin: auto 0 0 !important;
  padding: 0 !important;
}

.page-store .store-page--parish .store-profile-give__button {
  display: inline-flex !important;
  min-height: 32.67px !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 6px 16px !important;
  border: 1px solid var(--pm-border) !important;
  border-radius: 999px !important;
  background: #ffffff !important;
  color: var(--pm-blue) !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  line-height: 18.67px !important;
  text-decoration: none !important;
  box-shadow: none !important;
}

.page-store .store-page--parish .store-profile-give__load {
  display: flex !important;
  justify-content: center !important;
  margin: 24px 0 0 !important;
  padding: 0 !important;
}

.page-store .store-page--parish .store-profile-give__load-button {
  display: inline-flex !important;
  min-height: 47px !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 12px 20px !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: linear-gradient(90deg, var(--pm-blue), var(--pm-cyan)) !important;
  color: #ffffff !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  line-height: 21px !important;
  box-shadow: 0 14px 30px rgba(5, 126, 162, 0.25) !important;
}

.page-store .store-page--parish .store-profile-give__load-button[disabled] {
  cursor: wait !important;
  opacity: 0.68 !important;
}

@media (max-width: 991px) {
  .page-store .store-page--parish .store-profile-give__grid {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 767px) {
  .page-store .store-page--parish .store-profile-give {
    padding: 32px 14px !important;
  }

  .page-store .store-page--parish .store-profile-give__header {
    align-items: flex-start !important;
    flex-direction: column !important;
  }
}

/* Parish overview Ministries & Causes: limited dynamic cause list. */
.page-store .store-page--parish .store-profile-ministries,
.page-store .store-page--parish .store-profile-ministries * {
  box-sizing: border-box !important;
  font-family: var(--pm-font-sans) !important;
}

.page-store .store-page--parish .store-profile-ministries {
  width: 100% !important;
  max-width: 1280px !important;
  margin: 0 auto !important;
  padding: 40px 24px !important;
  color: var(--pm-ink) !important;
}

.page-store .store-page--parish .store-profile-ministries__header {
  display: flex !important;
  width: 100% !important;
  align-items: flex-end !important;
  justify-content: space-between !important;
  gap: 16px !important;
  margin: 0 0 24px !important;
  padding: 0 !important;
}

.page-store .store-page--parish .store-profile-ministries__header h2 {
  height: 36px !important;
  margin: 0 !important;
  color: var(--pm-navy) !important;
  font-size: 30px !important;
  font-weight: 800 !important;
  line-height: 36px !important;
  letter-spacing: 0 !important;
}

.page-store .store-page--parish .store-profile-ministries__header p {
  min-height: 20px !important;
  margin: 4px 0 0 !important;
  color: var(--pm-muted) !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  line-height: 20px !important;
}

.page-store .store-page--parish .store-profile-ministries__links {
  display: flex !important;
  height: 20px !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 4px !important;
  margin: 0 !important;
  padding: 0 !important;
  color: var(--pm-navy) !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  line-height: 20px !important;
  white-space: nowrap !important;
}

.page-store .store-page--parish .store-profile-ministries__links a {
  color: var(--pm-navy) !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  line-height: 20px !important;
  text-decoration: none !important;
}

.page-store .store-page--parish .store-profile-ministries__links a + a::before {
  content: "·" !important;
  display: inline-block !important;
  margin: 0 4px 0 0 !important;
}

.page-store .store-page--parish .store-profile-ministries__links--causes {
  gap: 8px !important;
}

.page-store .store-page--parish .store-profile-ministries__links--causes a {
  font-size: 13px !important;
}

.page-store .store-page--parish .store-profile-ministries__links--causes a + a {
  font-weight: 400 !important;
}

.page-store .store-page--parish .store-profile-ministries__links--causes a + a::before {
  margin-right: 8px !important;
  color: var(--pm-muted) !important;
  font-weight: 400 !important;
}

.page-store .store-page--parish .store-profile-business-supporters__links {
  gap: 16px !important;
}

.page-store .store-profile-business-supporters__links {
  gap: 16px !important;
}

.page-store .store-page--parish .store-profile-business-supporters__links a {
  color: var(--pm-muted) !important;
  font-weight: 400 !important;
}

.page-store .store-profile-business-supporters__links a {
  color: var(--pm-muted) !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  line-height: 20px !important;
  text-decoration: none !important;
}

.page-store .store-page--parish .store-profile-business-supporters__links a:first-child {
  color: var(--pm-navy) !important;
  font-weight: 700 !important;
}

.page-store .store-profile-business-supporters__links a:first-child {
  color: var(--pm-navy) !important;
  font-weight: 700 !important;
}

.page-store .store-page--parish .store-profile-business-supporters__links a + a::before {
  content: none !important;
  display: none !important;
  margin: 0 !important;
}

.page-store .store-profile-business-supporters__links a + a::before {
  content: none !important;
  display: none !important;
  margin: 0 !important;
}

.page-store .store-page--parish .store-profile-ministries__grid {
  display: grid !important;
  width: 100% !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 16px !important;
  align-items: stretch !important;
  margin: 0 !important;
  padding: 0 !important;
}

.page-store .store-page--parish .store-profile-ministries__card {
  display: flex !important;
  min-width: 0 !important;
  height: 364px !important;
  min-height: 364px !important;
  flex-direction: column !important;
  overflow: hidden !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 1px solid var(--pm-border) !important;
  border-radius: 24px !important;
  background: rgba(255, 255, 255, 0.92) !important;
  color: var(--pm-ink) !important;
  box-shadow: var(--pm-card-shadow) !important;
  transition: transform 0.2s ease, box-shadow 0.2s ease !important;
}

.page-store .store-page--parish .store-profile-ministries__card:hover {
  transform: translateY(-2px) !important;
  box-shadow: var(--pm-soft-shadow) !important;
}

.page-store .store-page--parish .store-profile-ministries__media {
  position: relative !important;
  display: block !important;
  width: 100% !important;
  height: 220px !important;
  min-height: 220px !important;
  overflow: hidden !important;
  border-radius: 24px 24px 0 0 !important;
  background: #ffffff !important;
  text-decoration: none !important;
}

.page-store .store-page--parish .store-profile-ministries__media img {
  position: absolute !important;
  inset: 0 !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center !important;
}

.page-store .store-page--parish .store-profile-ministries__body {
  display: flex !important;
  height: 144px !important;
  min-height: 144px !important;
  flex: 1 1 auto !important;
  flex-direction: column !important;
  margin: 0 !important;
  padding: 16px !important;
}

.page-store .store-page--parish .store-profile-ministries__title {
  display: -webkit-box !important;
  height: 18px !important;
  margin: 0 0 2px !important;
  overflow: hidden !important;
  -webkit-box-orient: vertical !important;
  -webkit-line-clamp: 1 !important;
  color: var(--pm-navy) !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  line-height: 17.5px !important;
  text-decoration: none !important;
}

.page-store .store-page--parish .store-profile-ministries__location {
  height: 16.5px !important;
  margin: 0 0 8px !important;
  overflow: hidden !important;
  color: var(--pm-muted) !important;
  font-size: 11px !important;
  font-weight: 400 !important;
  line-height: 16.5px !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

.page-store .store-page--parish .store-profile-ministries__description {
  display: -webkit-box !important;
  height: 34px !important;
  margin: 0 !important;
  overflow: hidden !important;
  -webkit-box-orient: vertical !important;
  -webkit-line-clamp: 2 !important;
  color: var(--pm-muted) !important;
  font-size: 12px !important;
  font-weight: 400 !important;
  line-height: 17px !important;
}

.page-store .store-page--parish .store-profile-ministries__action {
  display: inline-flex !important;
  width: max-content !important;
  margin: auto 0 0 !important;
  color: var(--pm-navy) !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  line-height: 20px !important;
  text-decoration: none !important;
}

@media (max-width: 991px) {
  .page-store .store-page--parish .store-profile-ministries__grid {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 767px) {
  .page-store .store-page--parish .store-profile-ministries {
    padding: 32px 14px !important;
  }

  .page-store .store-page--parish .store-profile-ministries__header {
    align-items: flex-start !important;
    flex-direction: column !important;
  }
}

html body .page-store .store-page.store-page--parish section#causas.store-profile-ministries.ck-container {
  padding: 40px 24px !important;
}

@media (max-width: 767px) {
  html body .page-store .store-page.store-page--parish section#causas.store-profile-ministries.ck-container {
    padding: 32px 14px !important;
  }
}

/* Parish overview Business Supporters: dynamic local business grid. */
.page-store .store-profile-business,
.page-store .store-profile-business * {
  box-sizing: border-box !important;
  font-family: var(--pm-font-sans) !important;
}

.page-store .store-profile-business {
  width: 100% !important;
  max-width: 1280px !important;
  margin: 0 auto !important;
  padding: 40px 24px !important;
  scroll-margin-top: 170px !important;
  color: var(--pm-ink) !important;
}

html body .page-store section#business-supporters.store-profile-business.ck-container {
  padding: 40px 24px !important;
}

.page-store .store-profile-business__header {
  display: flex !important;
  width: 100% !important;
  align-items: flex-end !important;
  justify-content: space-between !important;
  gap: 16px !important;
  margin: 0 0 24px !important;
  padding: 0 !important;
}

.page-store .store-profile-business__header h2 {
  height: 36px !important;
  margin: 0 !important;
  color: var(--pm-navy) !important;
  font-size: 30px !important;
  font-weight: 800 !important;
  line-height: 36px !important;
  letter-spacing: 0 !important;
}

.page-store .store-profile-business__header p {
  min-height: 20px !important;
  margin: 4px 0 0 !important;
  color: var(--pm-muted) !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  line-height: 20px !important;
}

.page-store .store-profile-business__links {
  display: flex !important;
  height: 20px !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 16px !important;
  margin: 0 !important;
  padding: 0 !important;
  white-space: nowrap !important;
}

.page-store .store-profile-business__links a {
  color: var(--pm-muted) !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  line-height: 20px !important;
  text-decoration: none !important;
}

.page-store .store-profile-business__links a:first-child {
  color: var(--pm-navy) !important;
  font-weight: 700 !important;
}

.page-store .store-profile-business__grid {
  display: grid !important;
  width: 100% !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 16px !important;
  align-items: stretch !important;
  margin: 0 !important;
  padding: 0 !important;
}

.page-store .store-profile-business__card {
  display: flex !important;
  min-width: 0 !important;
  height: 448px !important;
  min-height: 448px !important;
  flex-direction: column !important;
  overflow: hidden !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 1px solid var(--pm-border) !important;
  border-radius: 24px !important;
  background: rgba(255, 255, 255, 0.92) !important;
  color: var(--pm-ink) !important;
  box-shadow: var(--pm-card-shadow) !important;
  transition: transform 0.2s ease, box-shadow 0.2s ease !important;
}

.page-store .store-profile-business__card:hover {
  transform: translateY(-2px) !important;
  box-shadow: var(--pm-soft-shadow) !important;
}

.page-store .store-profile-business__media {
  position: relative !important;
  display: block !important;
  width: 100% !important;
  height: 214px !important;
  min-height: 214px !important;
  overflow: visible !important;
  border-radius: 24px 24px 0 0 !important;
  background: #ffffff !important;
  text-decoration: none !important;
}

.page-store .store-profile-business__media > img {
  position: absolute !important;
  inset: 0 !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  border-radius: 24px 24px 0 0 !important;
  object-fit: cover !important;
  object-position: center !important;
}

.page-store .store-profile-business__media > span {
  position: absolute !important;
  z-index: 2 !important;
  right: 12px !important;
  bottom: 0 !important;
  width: 84px !important;
  height: 84px !important;
  padding: 8px !important;
  border-radius: 18px !important;
  background: #ffffff !important;
  box-shadow: 0 18px 35px rgba(8, 40, 67, 0.12) !important;
  outline: 2px solid #ffffff !important;
  transform: translateY(28%) !important;
}

.page-store .store-profile-business__media > span img {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
}

.page-store .store-profile-business__body {
  display: flex !important;
  height: 234px !important;
  min-height: 234px !important;
  flex: 1 1 auto !important;
  flex-direction: column !important;
  margin: 0 !important;
  padding: 32px 24px 24px !important;
}

.page-store .store-profile-business__kicker {
  display: inline-flex !important;
  width: max-content !important;
  max-width: 100% !important;
  min-height: 24px !important;
  align-items: center !important;
  margin: 0 0 14px !important;
  padding: 4px 10px !important;
  overflow: hidden !important;
  border-radius: 999px !important;
  background: #e5f7fd !important;
  color: var(--pm-blue) !important;
  font-size: 11px !important;
  font-weight: 800 !important;
  line-height: 16px !important;
  text-overflow: ellipsis !important;
  text-transform: uppercase !important;
  white-space: nowrap !important;
}

.page-store .store-profile-business__title {
  display: -webkit-box !important;
  height: 18px !important;
  margin: 0 0 8px !important;
  overflow: hidden !important;
  -webkit-box-orient: vertical !important;
  -webkit-line-clamp: 1 !important;
  color: var(--pm-navy) !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  line-height: 17.5px !important;
  text-decoration: none !important;
}

.page-store .store-profile-business__location {
  height: 16.5px !important;
  margin: 0 0 12px !important;
  overflow: hidden !important;
  color: var(--pm-blue) !important;
  font-size: 11px !important;
  font-weight: 400 !important;
  line-height: 16.5px !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

.page-store .store-profile-business__description {
  display: -webkit-box !important;
  height: 51px !important;
  margin: 0 !important;
  overflow: hidden !important;
  -webkit-box-orient: vertical !important;
  -webkit-line-clamp: 3 !important;
  color: var(--pm-muted) !important;
  font-size: 12px !important;
  font-weight: 400 !important;
  line-height: 17px !important;
}

.page-store .store-profile-business__action {
  display: inline-flex !important;
  width: max-content !important;
  margin: auto 0 0 !important;
  color: var(--pm-navy) !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  line-height: 20px !important;
  text-decoration: none !important;
}

@media (max-width: 991px) {
  .page-store .store-profile-business__grid {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 767px) {
  html body .page-store section#business-supporters.store-profile-business.ck-container {
    padding: 32px 14px !important;
  }

  .page-store .store-profile-business__header {
    align-items: flex-start !important;
    flex-direction: column !important;
  }
}

/* Parish overview fixed Sponsors & Parishioner Benefits section. */
.page-store .store-profile-benefits,
.page-store .store-profile-benefits * {
  box-sizing: border-box !important;
  font-family: var(--pm-font-sans) !important;
}

.page-store .store-profile-benefits {
  width: 100% !important;
  max-width: 1280px !important;
  margin: 0 auto !important;
  padding: 40px 24px !important;
  scroll-margin-top: 170px !important;
  color: var(--pm-ink) !important;
}

html body .page-store section#sponsors.store-profile-benefits.ck-container {
  padding: 40px 24px !important;
}

.page-store .store-profile-benefits__header {
  display: flex !important;
  width: 100% !important;
  align-items: flex-end !important;
  justify-content: space-between !important;
  gap: 16px !important;
  margin: 0 0 24px !important;
  padding: 0 !important;
}

.page-store .store-profile-benefits__header h2 {
  min-height: 36px !important;
  margin: 0 !important;
  color: var(--pm-navy) !important;
  font-size: 30px !important;
  font-weight: 800 !important;
  line-height: 36px !important;
  letter-spacing: 0 !important;
}

.page-store .store-profile-benefits__header p {
  max-width: 672px !important;
  min-height: 20px !important;
  margin: 4px 0 0 !important;
  color: var(--pm-muted) !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  line-height: 20px !important;
}

.page-store .store-profile-benefits__links {
  display: flex !important;
  height: 20px !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 16px !important;
  margin: 0 !important;
  padding: 0 !important;
  white-space: nowrap !important;
}

.page-store .store-profile-benefits__links a {
  color: var(--pm-muted) !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  line-height: 20px !important;
  text-decoration: none !important;
}

.page-store .store-profile-benefits__links a:first-child {
  color: var(--pm-navy) !important;
  font-weight: 700 !important;
}

.page-store .store-profile-benefits__grid {
  display: grid !important;
  width: 100% !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 16px !important;
  align-items: stretch !important;
  margin: 0 !important;
  padding: 0 !important;
}

.page-store .store-profile-benefits__card {
  display: flex !important;
  min-width: 0 !important;
  height: 444px !important;
  min-height: 444px !important;
  flex-direction: column !important;
  overflow: hidden !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 1px solid var(--pm-border) !important;
  border-radius: 24px !important;
  background: rgba(255, 255, 255, 0.92) !important;
  color: var(--pm-ink) !important;
  box-shadow: var(--pm-card-shadow) !important;
  transition: transform 0.2s ease, box-shadow 0.2s ease !important;
}

.page-store .store-profile-benefits__card:hover {
  transform: translateY(-2px) !important;
  box-shadow: var(--pm-soft-shadow) !important;
}

.page-store .store-profile-benefits__media {
  position: relative !important;
  display: block !important;
  width: 100% !important;
  height: 292px !important;
  min-height: 292px !important;
  overflow: hidden !important;
  border-radius: 24px 24px 0 0 !important;
  background: #ffffff !important;
  text-decoration: none !important;
}

.page-store .store-profile-benefits__media img {
  position: absolute !important;
  inset: 0 !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center !important;
}

.page-store .store-profile-benefits__body {
  display: flex !important;
  height: 152px !important;
  min-height: 152px !important;
  flex: 1 1 auto !important;
  flex-direction: column !important;
  gap: 8px !important;
  margin: 0 !important;
  padding: 16px !important;
}

.page-store .store-profile-benefits__title {
  display: -webkit-box !important;
  height: 18px !important;
  margin: 0 !important;
  overflow: hidden !important;
  -webkit-box-orient: vertical !important;
  -webkit-line-clamp: 1 !important;
  color: var(--pm-navy) !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  line-height: 17.5px !important;
  text-decoration: none !important;
}

.page-store .store-profile-benefits__location {
  height: 16.5px !important;
  margin: -4px 0 0 !important;
  overflow: hidden !important;
  color: var(--pm-blue) !important;
  font-size: 11px !important;
  font-weight: 400 !important;
  line-height: 16.5px !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

.page-store .store-profile-benefits__description {
  display: -webkit-box !important;
  height: 34px !important;
  margin: 0 !important;
  overflow: hidden !important;
  -webkit-box-orient: vertical !important;
  -webkit-line-clamp: 2 !important;
  color: var(--pm-muted) !important;
  font-size: 12px !important;
  font-weight: 400 !important;
  line-height: 17px !important;
}

.page-store .store-profile-benefits__action {
  display: inline-flex !important;
  width: max-content !important;
  margin: auto 0 0 !important;
  color: #102a43 !important;
  font-family: var(--pm-font-sans) !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  line-height: 20px !important;
  text-decoration: none !important;
}

@media (max-width: 991px) {
  .page-store .store-profile-benefits__grid {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 767px) {
  html body .page-store section#sponsors.store-profile-benefits.ck-container {
    padding: 32px 14px !important;
  }

  .page-store .store-profile-benefits__header {
    align-items: flex-start !important;
    flex-direction: column !important;
  }
}

body:has(.page-store) .pm-site-footer.ps-footer,
body:has(.page-store) footer.pm-site-footer,
body:has(.pm-reviews-section) .pm-site-footer.ps-footer,
body:has(.pm-reviews-section) footer.pm-site-footer {
  margin-top: 80px !important;
}

#business-supporters .store-profile-ministries__header h2 {
  height: 36px !important;
  margin: 0 !important;
  color: var(--pm-navy) !important;
  font-family: var(--pm-font-sans) !important;
  font-size: 30px !important;
  font-weight: 800 !important;
  line-height: 36px !important;
  letter-spacing: 0 !important;
}

#business-supporters .store-profile-ministries__header p {
  min-height: 20px !important;
  margin: 4px 0 0 !important;
  color: var(--pm-muted) !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  line-height: 20px !important;
}

.page-store #about,
.page-store #shop,
.page-store #give,
.page-store #causas,
.page-store #business-supporters,
.page-store #sponsors {
  scroll-margin-top: 170px !important;
}

html,
body {
  min-height: 100% !important;
  background:
    radial-gradient(1200px 600px at 80% -10%, #d6f0fb 0%, transparent 60%),
    linear-gradient(180deg, #f6fcff 0%, #ffffff 35%, #eef8fb 100%) !important;
}

.page-store,
.page-store .ps-store-list,
.page-store .store-page,
.page-store .store-page--parish,
.page-store .store-page--cause {
  background: transparent !important;
  background-image: none !important;
}

.pm-store-profile-header .pm-store-header__cart .header__extra.pm-cart-pill .pm-cart-pill__count,
.page-store .pm-store-profile-header .pm-store-header__cart .header__extra.pm-cart-pill .pm-cart-pill__count,
.page-store .pm-store-header__cart .header__extra.pm-cart-pill .pm-cart-pill__count {
  position: static !important;
  inset: auto !important;
  display: grid !important;
  width: auto !important;
  min-width: 20px !important;
  height: 20px !important;
  padding: 0 6px !important;
  place-items: center !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: linear-gradient(135deg, var(--pm-blue), var(--pm-cyan)) !important;
  color: #ffffff !important;
  transform: none !important;
}

.pm-store-profile-header .pm-store-header__cart .header__extra.pm-cart-pill,
.page-store .pm-store-profile-header .pm-store-header__cart .header__extra.pm-cart-pill,
.page-store .pm-store-header__cart .header__extra.pm-cart-pill {
  display: inline-flex !important;
  width: auto !important;
  min-width: 0 !important;
  height: 34px !important;
  min-height: 0 !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  padding: 8px 12px !important;
}

.pm-store-profile-header .pm-store-header__cart .header__extra.pm-cart-pill:has(.pm-cart-pill__count:not(.pm-cart-pill__count--empty)),
.pm-store-profile-header .pm-store-header__cart .header__extra.pm-cart-pill.pm-cart-pill--has-count,
.page-store .pm-store-profile-header .pm-store-header__cart .header__extra.pm-cart-pill:has(.pm-cart-pill__count:not(.pm-cart-pill__count--empty)),
.page-store .pm-store-profile-header .pm-store-header__cart .header__extra.pm-cart-pill.pm-cart-pill--has-count,
.page-store .pm-store-header__cart .header__extra.pm-cart-pill:has(.pm-cart-pill__count:not(.pm-cart-pill__count--empty)) {
  width: 70px !important;
  min-width: 70px !important;
  height: 38px !important;
  min-height: 38px !important;
  padding: 8px 12px !important;
}

.store-identity-shell.pm-store-profile-header .pm-store-header__cart .header__extra.pm-cart-pill.pm-cart-pill--has-count {
  width: 70px !important;
  min-width: 70px !important;
  height: 38px !important;
  min-height: 38px !important;
}

.pm-store-header__cart .btn-shopping-cart.pm-cart-pill.pm-cart-pill--has-count {
  box-sizing: border-box !important;
  width: 70px !important;
  min-width: 70px !important;
  height: 38px !important;
  min-height: 38px !important;
  max-height: 38px !important;
}

.pm-store-header__cart.store-identity-nav__cart:has(.btn-shopping-cart.pm-cart-pill--has-count) {
  height: 38px !important;
  min-height: 38px !important;
  max-height: 38px !important;
}

.pm-store-profile-header .pm-store-header__top:has(.pm-cart-pill--has-count) .pm-store-header__search.ps-form--search-mobile,
.page-store .pm-store-profile-header .pm-store-header__top:has(.pm-cart-pill--has-count) .pm-store-header__search.ps-form--search-mobile {
  flex: 1 1 auto !important;
  min-width: 0 !important;
}

.pm-store-profile-header .pm-store-header__top:has(.pm-cart-pill--has-count) .pm-store-header__actions,
.page-store .pm-store-profile-header .pm-store-header__top:has(.pm-cart-pill--has-count) .pm-store-header__actions {
  flex: 0 0 auto !important;
  width: auto !important;
  min-width: 0 !important;
}

.pm-store-profile-header .pm-store-header__cart .header__extra.pm-cart-pill .pm-cart-pill__count.pm-cart-pill__count--empty,
.page-store .pm-store-profile-header .pm-store-header__cart .header__extra.pm-cart-pill .pm-cart-pill__count.pm-cart-pill__count--empty,
.page-store .pm-store-header__cart .header__extra.pm-cart-pill .pm-cart-pill__count.pm-cart-pill__count--empty {
  display: none !important;
}

.pm-store-profile-header .pm-store-header__cart .header__extra.pm-cart-pill .pm-cart-pill__count i,
.page-store .pm-store-profile-header .pm-store-header__cart .header__extra.pm-cart-pill .pm-cart-pill__count i,
.page-store .pm-store-header__cart .header__extra.pm-cart-pill .pm-cart-pill__count i {
  color: #ffffff !important;
  font-size: 10px !important;
  font-style: normal !important;
  font-weight: 800 !important;
  line-height: 1 !important;
}

/* Absolute final mobile override: Vercel parity for /stores/skd. */
@media (max-width: 991px) {
  html body .page-store .pm-store-profile-header.store-identity-shell {
    height: 175px !important;
    min-height: 175px !important;
  }

  html body .page-store .pm-store-profile-header .pm-store-header.store-identity-nav {
    height: 175px !important;
    min-height: 175px !important;
    overflow: visible !important;
  }

  html body .page-store .pm-store-profile-header .pm-store-header__top {
    height: 84px !important;
    min-height: 84px !important;
    padding: 0 24px !important;
  }

  html body .page-store .pm-store-profile-header .pm-store-header__mobile-search.ck-container {
    position: absolute !important;
    top: 84px !important;
    left: 0 !important;
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    height: 46px !important;
    padding: 0 24px !important;
  }

  html body .page-store .pm-store-profile-header .pm-store-header__mobile-search .pm-store-header__search,
  html body .page-store .pm-store-profile-header .pm-store-header__mobile-search .form-group--nest {
    display: flex !important;
    width: 100% !important;
    height: 44px !important;
    min-height: 44px !important;
  }

  html body .page-store .pm-store-profile-header .pm-store-header__mobile-search .form-group--nest {
    align-items: center !important;
    padding: 4px 8px 4px 40px !important;
    border: 1px solid #dbeafe !important;
    border-radius: 999px !important;
    background: #ffffff !important;
  }

  html body .page-store .pm-store-profile-header .pm-store-header__mobile-search .form-control {
    display: block !important;
    height: 36px !important;
    min-height: 36px !important;
    font-size: 14px !important;
    line-height: 36px !important;
  }

  html body .page-store .pm-store-profile-header .pm-store-header__mobile-search button[type="submit"] {
    display: inline-flex !important;
    min-width: 78px !important;
    height: 34px !important;
    min-height: 34px !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 16px !important;
    border-radius: 999px !important;
    background: #0b3454 !important;
    color: #ffffff !important;
    font-size: 14px !important;
    font-weight: 800 !important;
  }

  html body .page-store .pm-store-profile-header .pm-store-header__bottom {
    position: absolute !important;
    top: 130px !important;
    left: 0 !important;
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    height: 45px !important;
    min-height: 45px !important;
    overflow: visible !important;
    padding: 0 24px !important;
    border-bottom: 1px solid #dbeafe !important;
  }

  html body .page-store .pm-store-profile-header .pm-store-header__tabs {
    display: flex !important;
    width: 100% !important;
    height: 45px !important;
    align-items: center !important;
    gap: 32px !important;
    overflow-x: auto !important;
    padding: 0 96px 0 0 !important;
    white-space: nowrap !important;
  }

  html body .page-store .pm-store-profile-header .pm-store-header__tabs a {
    display: inline-flex !important;
    height: 45px !important;
    align-items: center !important;
    color: #0b3454 !important;
    font-size: 16px !important;
    font-weight: 800 !important;
    line-height: 24px !important;
    text-decoration: none !important;
  }

  html body .page-store .pm-store-profile-header .pm-store-header__join {
    position: absolute !important;
    top: 5px !important;
    right: 24px !important;
    display: inline-flex !important;
    height: 36px !important;
    min-height: 36px !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 16px !important;
    border-radius: 999px !important;
  }

  html body .page-store .pm-store-header-spacer {
    height: 175px !important;
    min-height: 175px !important;
  }

  html body .page-store .store-page.store-page--parish .store-page__breadcrumb--overview {
    width: 100% !important;
    max-width: none !important;
    margin: 16px 0 0 !important;
    padding: 0 24px !important;
  }

  html body .page-store .store-page.store-page--parish .store-profile-hero {
    width: 100% !important;
    max-width: none !important;
    margin: 16px 0 0 !important;
    padding: 0 24px 32px !important;
  }

  html body .page-store .store-page.store-page--parish .store-profile-hero__card {
    display: flex !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    flex-direction: column !important;
    grid-template-columns: none !important;
    overflow: hidden !important;
    border-radius: 24px !important;
  }

  html body .page-store .store-page.store-page--parish .store-profile-hero__media {
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    aspect-ratio: 1.58 / 1 !important;
    border: 0 !important;
    border-radius: 0 !important;
  }

  html body .page-store .store-page.store-page--parish .store-profile-hero__content {
    display: flex !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    flex-direction: column !important;
    gap: 18px !important;
    padding: 32px 28px 28px !important;
    overflow: visible !important;
  }

  html body .page-store .store-page.store-page--parish .store-profile-hero__content h1 {
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    color: #0b3454 !important;
    font-size: 30px !important;
    font-weight: 800 !important;
    line-height: 37.5px !important;
    letter-spacing: 0 !important;
  }

  html body .page-store .store-page.store-page--parish .store-profile-hero__quote {
    width: 100% !important;
    height: auto !important;
    margin: 0 !important;
    color: #64748b !important;
    font-size: 14px !important;
    line-height: 20px !important;
  }

  html body .page-store .store-page.store-page--parish .store-profile-hero__identity {
    width: 100% !important;
    height: auto !important;
    min-height: 76px !important;
    margin: 0 !important;
    padding: 12px !important;
    overflow: hidden !important;
  }

  html body .page-store .store-page.store-page--parish .store-profile-hero__identity > div {
    width: auto !important;
    height: auto !important;
    min-width: 0 !important;
    flex: 1 1 auto !important;
  }

  html body .page-store .store-page.store-page--parish .store-profile-hero__stats {
    width: 100% !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 8px !important;
  }

  html body .page-store .store-page.store-page--parish .store-profile-hero__stats > div {
    height: auto !important;
    min-height: 66px !important;
    padding: 12px !important;
  }

  html body .page-store .store-page.store-page--parish .store-profile-hero__actions {
    width: 100% !important;
    height: auto !important;
    flex-wrap: wrap !important;
    gap: 12px !important;
  }
}

@media (max-width: 575px) {
  html body .page-store .pm-store-profile-header .pm-store-header__top,
  html body .page-store .pm-store-profile-header .pm-store-header__mobile-search.ck-container,
  html body .page-store .pm-store-profile-header .pm-store-header__bottom,
  html body .page-store .store-page.store-page--parish .store-page__breadcrumb--overview,
  html body .page-store .store-page.store-page--parish .store-profile-hero {
    padding-right: 16px !important;
    padding-left: 16px !important;
  }

  html body .page-store .pm-store-profile-header .pm-store-header__copy {
    display: none !important;
  }

  html body .page-store .pm-store-profile-header .pm-store-header__tabs {
    gap: 28px !important;
  }

  html body .page-store .pm-store-profile-header .pm-store-header__join {
    right: 16px !important;
  }

  html body .page-store .store-page.store-page--parish .store-profile-hero__content {
    padding: 28px !important;
  }
}

/* Final pass: Vercel parish mobile drawer geometry and icons. */
/* Final active mobile correction for /stores/skd header and hero identity. */
@media (max-width: 991px) {
  html body .page-store .pm-store-profile-header .pm-store-header__brand {
    height: 64px !important;
    min-height: 64px !important;
    align-items: center !important;
  }
}

@media (max-width: 991px) {
  html body .page-store .pm-store-profile-header .pm-store-header__top.ck-container {
    position: relative !important;
    display: flex !important;
    height: 84px !important;
    min-height: 84px !important;
    align-items: center !important;
    gap: 12px !important;
    padding: 0 24px !important;
  }

  html body .page-store .pm-store-profile-header .pm-store-header__brand {
    flex: 0 0 244.2px !important;
    width: 244.2px !important;
    min-width: 244.2px !important;
    max-width: 244.2px !important;
  }

  html body .page-store .pm-store-profile-header .pm-store-header__logo-shell,
  html body .page-store .pm-store-profile-header .pm-store-header__logo {
    width: 64px !important;
    height: 64px !important;
    min-width: 64px !important;
    min-height: 64px !important;
  }

  html body .page-store .pm-store-profile-header img.pm-store-header__logo {
    box-sizing: border-box !important;
    width: 60px !important;
    height: 60.4167px !important;
    min-width: 60px !important;
    min-height: 60.4167px !important;
    max-width: 60px !important;
    max-height: none !important;
    aspect-ratio: auto !important;
    object-fit: contain !important;
  }

  html body .page-store .pm-store-profile-header .pm-store-header__actions {
    position: static !important;
    top: auto !important;
    right: auto !important;
    left: auto !important;
    display: flex !important;
    width: auto !important;
    height: 40px !important;
    min-width: 0 !important;
    flex: 0 0 auto !important;
    align-items: center !important;
    gap: 8px !important;
    margin: 0 0 0 auto !important;
  }

  html body .page-store .pm-store-profile-header .pm-store-header__account {
    position: static !important;
    display: grid !important;
    width: 40px !important;
    height: 40px !important;
    min-width: 40px !important;
    min-height: 40px !important;
    place-items: center !important;
    border: 1px solid #dbeafe !important;
    border-radius: 999px !important;
    background: #ffffff !important;
    color: #0b3454 !important;
    box-shadow: none !important;
  }

  html body .page-store .pm-store-profile-header .pm-store-header__cart.store-identity-nav__cart {
    position: static !important;
    display: flex !important;
    height: 40px !important;
    min-height: 40px !important;
    align-items: center !important;
  }

  html body .page-store .pm-store-profile-header .pm-store-header__cart .header__extra.pm-cart-pill,
  html body .page-store .pm-store-profile-header .pm-store-header__cart .header__extra.pm-cart-pill.pm-cart-pill--has-count {
    display: inline-flex !important;
    width: auto !important;
    min-width: 42px !important;
    height: 40px !important;
    min-height: 40px !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 12px !important;
  }

  html body .page-store .store-page.store-page--parish .store-profile-hero__identity p,
  html body .page-store .store-page.store-page--parish .store-profile-hero__identity small {
    display: block !important;
    height: auto !important;
    min-height: 0 !important;
    overflow: visible !important;
    white-space: normal !important;
    text-overflow: clip !important;
  }

  html body .page-store .store-page.store-page--parish .store-profile-hero__identity p {
    color: #0b3454 !important;
    font-size: 14px !important;
    font-weight: 800 !important;
    line-height: 18px !important;
  }
}

@media (max-width: 575px) {
  html body .page-store .pm-store-profile-header .pm-store-header__top.ck-container {
    padding-right: 16px !important;
    padding-left: 16px !important;
  }

  html body .page-store .pm-store-profile-header .pm-store-header__bottom {
    padding-right: 0 !important;
    padding-left: 0 !important;
  }

  html body .page-store .pm-store-profile-header .pm-store-header__tabs {
    width: 100% !important;
    height: 40px !important;
    align-items: flex-start !important;
    justify-content: center !important;
    gap: 24px !important;
    margin-top: 4px !important;
    overflow: visible !important;
    padding: 0 80px 0 0 !important;
  }

  html body .page-store .pm-store-profile-header .pm-store-header__tabs a {
    height: 24px !important;
    min-height: 24px !important;
    line-height: 24px !important;
  }

  html body .page-store .pm-store-profile-header .pm-store-header__join {
    top: 1.7px !important;
    height: 36.7px !important;
    min-height: 36.7px !important;
  }

  html body .page-store .pm-store-profile-header .pm-store-header__mobile-search .pm-store-header__search {
    width: 100% !important;
    height: 46px !important;
    min-height: 46px !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  html body .page-store .pm-store-profile-header .pm-store-header__mobile-search .form-group--nest {
    width: 100% !important;
    height: 46px !important;
    min-height: 46px !important;
    padding-right: 13px !important;
  }

  html body .page-store .pm-store-profile-header .pm-store-header__mobile-search button[type="submit"] {
    width: 69.6px !important;
    min-width: 69.6px !important;
    height: 32.7px !important;
    min-height: 32.7px !important;
    padding: 0 12px !important;
    font-weight: 700 !important;
  }

  html body .page-store .pm-store-profile-header .pm-store-header__brand {
    flex: 0 0 64px !important;
    width: 64px !important;
    min-width: 64px !important;
    max-width: 64px !important;
  }

  html body .page-store .pm-store-profile-header .pm-store-header__copy {
    display: none !important;
  }
}

/* Final global mobile menu override: keep product pages aligned with home/Vercel. */
#menu-mobile.pm-mobile-menu.ps-panel--sidebar {
  width: min(340px, 86vw) !important;
  max-width: 340px !important;
  border-right: 0 !important;
}

#menu-mobile.pm-mobile-menu .pm-mobile-menu__header {
  height: 69px !important;
  min-height: 69px !important;
  padding: 16px 20px !important;
  border-bottom: 1px solid var(--pm-border) !important;
}

#menu-mobile.pm-mobile-menu .pm-mobile-menu__logo {
  width: 170.5px !important;
  max-width: calc(100% - 56px) !important;
}

#menu-mobile.pm-mobile-menu .pm-mobile-menu__logo img {
  display: block !important;
  width: 170.5px !important;
  height: 32px !important;
  max-width: 170.5px !important;
  object-fit: contain !important;
}

#menu-mobile.pm-mobile-menu .pm-mobile-menu__close {
  width: 36px !important;
  height: 36px !important;
  min-width: 36px !important;
  min-height: 36px !important;
}

#menu-mobile.pm-mobile-menu .pm-mobile-menu__content {
  padding: 16px 12px 28px !important;
}

#menu-mobile.pm-mobile-menu .menu--mobile > li {
  min-height: 48px !important;
}

#menu-mobile.pm-mobile-menu .menu--mobile > li > a {
  display: flex !important;
  width: 100% !important;
  height: 44px !important;
  min-height: 44px !important;
  align-items: center !important;
  gap: 12px !important;
  padding: 12px !important;
  border-radius: 16px !important;
  font-family: var(--pm-font-sans) !important;
  font-size: 14px !important;
  line-height: 20px !important;
}

#menu-mobile.pm-mobile-menu .pm-mobile-menu__nav > li > a {
  font-weight: 600 !important;
}

#menu-mobile.pm-mobile-menu .menu--mobile-extra > li > a {
  font-weight: 500 !important;
}

#menu-mobile.pm-mobile-menu .pm-mobile-menu__extra {
  margin-top: 10px !important;
  padding-top: 10px !important;
  border-top: 1px solid var(--pm-border) !important;
}

#menu-mobile.pm-mobile-menu .menu--mobile > li > a > span {
  font-family: inherit !important;
  font-size: inherit !important;
  font-weight: inherit !important;
  line-height: inherit !important;
  letter-spacing: inherit !important;
  color: inherit !important;
}

#menu-mobile.pm-mobile-menu .menu--mobile > li > a > i,
#menu-mobile.pm-mobile-menu .menu--mobile > li > a::before {
  position: static !important;
  top: auto !important;
  left: auto !important;
  display: grid !important;
  width: 20px !important;
  min-width: 20px !important;
  height: 20px !important;
  flex: 0 0 20px !important;
  place-items: center !important;
  color: var(--pm-blue) !important;
  font-size: 18px !important;
  text-align: center !important;
}

#menu-mobile.pm-mobile-menu .menu--mobile-extra > li > a::before {
  display: none !important;
}

.page-store .ps-panel--sidebar.pm-store-mobile-menu[id^="store-menu-mobile-"] {
  width: min(340px, 86vw) !important;
  max-width: 340px !important;
  border-right: 0 !important;
  background: #ffffff !important;
  box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25) !important;
}

.page-store .pm-store-mobile-menu .pm-store-mobile-menu__header {
  height: 69px !important;
  min-height: 69px !important;
  padding: 16px 20px !important;
  border-bottom: 1px solid #dbeafe !important;
}

.page-store .pm-store-mobile-menu__logo {
  width: 170.5px !important;
  max-width: calc(100% - 56px) !important;
}

.page-store .pm-store-mobile-menu__logo img {
  width: 170.5px !important;
  height: auto !important;
}

.page-store .pm-store-mobile-menu__close {
  width: 36px !important;
  height: 36px !important;
  min-width: 36px !important;
  min-height: 36px !important;
  border: 1px solid #dbeafe !important;
  color: #64748b !important;
}

.page-store .pm-store-mobile-menu__close svg {
  display: block !important;
  width: 20px !important;
  height: 20px !important;
  stroke: currentColor !important;
}

.page-store .pm-store-mobile-menu__content {
  padding: 16px 12px 28px !important;
}

.page-store .pm-store-mobile-menu .menu--mobile > li {
  min-height: 48px !important;
}

.page-store .pm-store-mobile-menu .menu--mobile > li > a {
  display: flex !important;
  width: 100% !important;
  height: 44px !important;
  min-height: 44px !important;
  align-items: center !important;
  gap: 12px !important;
  padding: 12px !important;
  border-radius: 16px !important;
  color: #102a43 !important;
  font-family: var(--pm-font-sans) !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  line-height: 20px !important;
}

.page-store .pm-store-mobile-menu .menu--mobile > li > a::before,
.page-store .pm-store-mobile-menu__nav > li > a::before {
  display: none !important;
  content: none !important;
}

.page-store .pm-store-mobile-menu__icon {
  position: static !important;
  display: block !important;
  width: 20px !important;
  height: 20px !important;
  flex: 0 0 20px !important;
  color: #057ea2 !important;
  stroke: currentColor !important;
}

.page-store .pm-store-mobile-menu__extra {
  margin-top: 3px !important;
  padding-top: 17px !important;
  border-top: 1px solid #dbeafe !important;
}

.page-store .pm-store-mobile-menu .menu--mobile-extra > li > a {
  font-weight: 500 !important;
}

.page-store .pm-store-mobile-menu .menu--mobile-extra .pm-store-mobile-menu__icon {
  color: #64748b !important;
}

.page-store .pm-store-mobile-menu__footer {
  display: none !important;
}

/* EOF: no page-level horizontal scroll in any viewport. */
html,
body {
  width: 100% !important;
  max-width: 100% !important;
  overflow-x: hidden !important;
}

body > .ck-content,
.page-store,
.ps-page--product,
.ps-container,
.ck-container,
.pm-site-footer,
.pm-site-footer * {
  max-width: 100% !important;
}

.pm-mini-cart-drawer.ps-cart--mobile {
  right: 0 !important;
  left: auto !important;
  max-width: 100vw !important;
  transform: none !important;
}

body:not(.pm-mini-cart-open) .pm-mini-cart-drawer.ps-cart--mobile {
  pointer-events: none !important;
}

@media (max-width: 991px) {
  .pm-site-footer .ps-footer__copyright {
    width: 100% !important;
    margin-right: 0 !important;
    margin-left: 0 !important;
  }

  .pm-site-footer .pm-footer-legal-menu,
  .pm-site-footer .footer-legal-menu {
    max-width: 100% !important;
    flex-wrap: wrap !important;
  }
}
/* Store events fixed landing page. */
.pm-events-page {
  background: linear-gradient(180deg, #f5fbff 0%, #ffffff 58%, #eff9fd 100%);
  color: var(--pm-navy);
  font-family: var(--pm-font-sans) !important;
  padding-bottom: 0;
}

.pm-events-section {
  box-sizing: border-box;
  max-width: 1280px;
  margin: 0 auto;
  padding: 32px 16px;
}

.pm-events-upcoming {
  padding-bottom: 80px;
}

@media (min-width: 640px) {
  .pm-events-section {
    padding-right: 24px;
    padding-left: 24px;
  }
}

.pm-events-section--breadcrumb {
  padding-top: 16px;
  padding-bottom: 16px;
}

.pm-events-breadcrumb {
  overflow-x: auto;
}

.pm-events-breadcrumb ol {
  display: flex;
  align-items: center;
  gap: 6px;
  margin: 0;
  padding: 0;
  list-style: none;
  color: var(--pm-muted);
  font-size: 12px;
  line-height: 16px;
  white-space: nowrap;
}

.pm-events-breadcrumb li {
  display: flex;
  align-items: center;
  gap: 6px;
}

.pm-events-breadcrumb li:not(:last-child)::after {
  content: "/";
  color: var(--pm-muted);
}

.pm-events-breadcrumb a {
  color: inherit !important;
  text-decoration: none !important;
}

.pm-events-breadcrumb a:hover {
  color: var(--pm-blue) !important;
}

.pm-events-breadcrumb span {
  color: var(--pm-navy);
  font-weight: 700;
}

.pm-events-hero {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr);
  gap: 16px;
  align-items: stretch;
  padding-top: 0;
  padding-bottom: 8px;
}

.pm-events-hero__intro {
  display: flex;
  box-sizing: border-box;
  min-height: 335px;
  height: 335px;
  max-height: 335px;
  flex-direction: column;
  justify-content: center;
  gap: 20px;
  border: 1px solid var(--pm-border) !important;
  border-radius: 24px !important;
  background: rgba(255, 255, 255, .92) !important;
  box-shadow: var(--pm-card-shadow) !important;
  padding: 32px !important;
}

.pm-events-pill,
.pm-events-page .pm-kicker {
  display: inline-flex;
  width: fit-content;
  align-items: center;
  gap: 8px;
  border-radius: 999px;
  background: var(--pm-soft);
  color: var(--pm-blue);
  font-size: 11px;
  font-weight: 700;
  line-height: 16px;
  padding: 4px 12px;
}

.pm-events-page .pm-kicker {
  text-transform: none;
  letter-spacing: 0;
}

.pm-events-hero h1 {
  margin: 0;
  max-width: 580px;
  color: var(--pm-navy);
  font-family: "Segoe UI", system-ui, -apple-system, BlinkMacSystemFont, sans-serif !important;
  font-size: 36px;
  font-weight: 800 !important;
  line-height: 45px;
  letter-spacing: -1px;
  font-synthesis: none !important;
}

.pm-events-hero h1 .pm-gradient-text {
  font-family: "Segoe UI", system-ui, -apple-system, BlinkMacSystemFont, sans-serif !important;
  font-weight: 800 !important;
  font-synthesis: none !important;
}

.pm-events-page .pm-btn {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  border: 1px solid transparent !important;
  border-radius: 999px !important;
  padding: 12px 20px !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  line-height: 21px !important;
  text-align: center;
  text-decoration: none !important;
  transition: transform .2s ease, box-shadow .2s ease, background-color .2s ease, color .2s ease;
}

.pm-events-page .pm-btn:hover {
  transform: translateY(-1px);
  text-decoration: none !important;
}

.pm-events-page .pm-btn-primary {
  border-color: transparent !important;
  background: linear-gradient(135deg, #0588aa 0%, #45b1e1 100%) !important;
  color: #ffffff !important;
  box-shadow: 0 14px 30px rgba(5, 126, 162, .25);
}

.pm-events-page .pm-btn-secondary {
  border-color: var(--pm-border) !important;
  background: #ffffff !important;
  color: var(--pm-blue) !important;
  box-shadow: none;
}

.pm-events-hero p,
.pm-events-upcoming__head p,
.pm-events-copy,
.pm-events-card__body p {
  margin: 0;
  color: var(--pm-muted);
  font-size: 14px;
  font-weight: 400;
  line-height: 22px;
}

.pm-events-hero__intro > p {
  max-width: 448px;
}

.pm-events-store-card {
  position: relative;
  box-sizing: border-box;
  isolation: isolate;
  min-height: 335px;
  height: 335px;
  max-height: 335px;
  overflow: hidden;
  border: 1px solid var(--pm-border);
  border-radius: 24px;
  box-shadow: var(--pm-card-shadow);
  color: #ffffff !important;
  text-decoration: none !important;
  transition: transform .2s ease, box-shadow .2s ease;
}

.pm-events-store-card:hover {
  transform: translateY(-2px);
  box-shadow: var(--pm-soft-shadow);
}

.pm-events-store-card > img {
  position: absolute;
  inset: 0;
  z-index: -2;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.pm-events-store-card > span {
  position: absolute;
  inset: 0;
  z-index: -1;
  background: linear-gradient(180deg, rgba(0, 0, 0, .35), rgba(0, 0, 0, .15) 45%, rgba(0, 0, 0, .55));
}

.pm-events-store-card > div {
  display: flex;
  height: 100%;
  flex-direction: column;
  justify-content: flex-end;
  gap: 12px;
  padding: 32px;
}

.pm-events-store-card small {
  display: inline-flex;
  width: fit-content;
  border-radius: 999px;
  background: rgba(255, 255, 255, .15);
  color: rgba(255, 255, 255, .85);
  font-size: 11px;
  font-weight: 700;
  line-height: 16px;
  letter-spacing: .44px;
  padding: 4px 12px;
  text-transform: uppercase;
  backdrop-filter: blur(8px);
}

.pm-events-store-card h2,
.pm-events-store-card p {
  margin: 0;
  color: inherit;
}

.pm-events-store-card h2 {
  font-family: "Segoe UI", system-ui, -apple-system, BlinkMacSystemFont, sans-serif !important;
  font-size: 30px;
  font-weight: 800 !important;
  line-height: 36px;
}

.pm-events-store-card p {
  color: rgba(255, 255, 255, .85);
  font-size: 14px;
  line-height: 20px;
}

.pm-events-featured {
  padding-top: 18px;
}

.pm-events-featured__card {
  display: grid;
  grid-template-columns: minmax(280px, .85fr) minmax(420px, 1.55fr) minmax(320px, .95fr);
  align-items: stretch;
  margin-top: 16px;
  overflow: hidden;
  border: 1px solid rgba(178, 213, 230, .8);
  border-radius: 24px;
  background: #ffffff;
  box-shadow: 0 24px 60px rgba(14, 58, 88, .08);
  padding: 0 !important;
}

.pm-events-featured__media,
.pm-events-card__media {
  position: relative;
  overflow: hidden;
  min-height: 200px;
}

.pm-events-featured__media {
  height: 100%;
  min-height: 294px;
  max-height: none;
}

.pm-events-featured__media > img,
.pm-events-card__media > img {
  display: block;
  width: 100%;
  height: 100%;
  min-height: inherit;
  object-fit: cover;
}

.pm-events-featured__media > span,
.pm-events-card__media > span {
  position: absolute;
  inset: 0;
  background: linear-gradient(0deg, rgba(5, 34, 48, .55), rgba(5, 34, 48, .04) 58%);
}

.pm-events-date {
  display: flex;
  position: absolute;
  left: 16px;
  bottom: 16px;
  width: 64px;
  height: 64px;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  border: 1px solid var(--pm-border);
  border-radius: 16px;
  background: #ffffff;
  box-shadow: var(--pm-soft-shadow);
}

.pm-events-card__media .pm-events-date {
  top: 16px;
  bottom: auto;
}

.pm-events-date p,
.pm-events-date strong {
  margin: 0;
}

.pm-events-date p {
  color: var(--pm-muted);
  font-size: 10px;
  font-weight: 700;
  line-height: 12px;
  letter-spacing: .4px;
  text-transform: uppercase;
}

.pm-events-date strong {
  color: var(--pm-navy);
  font-size: 24px;
  font-weight: 800;
  line-height: 24px;
}

.pm-events-spots {
  position: absolute;
  right: 16px;
  bottom: 16px;
  border-radius: 999px;
  background: rgba(5, 34, 48, .72);
  color: #ffffff;
  font-size: 12px;
  font-weight: 700;
  line-height: 16px;
  padding: 6px 12px;
  backdrop-filter: blur(8px);
}

.pm-events-featured__content {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 18px;
  padding: 30px 28px;
}

html body .page-store .store-page--events .pm-events-featured__content .pm-label,
html body .page-store .store-page--events .pm-events-card__body > .pm-label {
  display: inline-flex !important;
  width: fit-content !important;
  min-width: 0 !important;
  align-items: center !important;
  justify-content: center !important;
  margin: 0 !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: #e7f7fc !important;
  color: #007fa6 !important;
  font-family: var(--pm-font-sans) !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  line-height: 16px !important;
  letter-spacing: 0 !important;
  padding: 5px 11px !important;
  text-transform: uppercase !important;
}

.pm-events-featured h2,
.pm-events-upcoming h2 {
  margin: 8px 0 0;
  color: var(--pm-navy);
  font-family: "Segoe UI", system-ui, -apple-system, BlinkMacSystemFont, sans-serif !important;
  font-size: 30px;
  font-weight: 800 !important;
  line-height: 36px;
  letter-spacing: 0;
}

.pm-events-location {
  margin: 4px 0 0;
  color: var(--pm-blue);
  font-size: 14px;
  font-weight: 600;
  line-height: 20px;
}

.pm-events-copy {
  margin-top: 8px;
}

.pm-events-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 12px;
}

.pm-events-meta-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 13px;
}

.pm-events-meta-grid > div {
  border: 1px solid var(--pm-border);
  border-radius: 16px;
  background: linear-gradient(180deg, #f9fdff 0%, #f2f9fc 100%);
  padding: 14px;
}

.pm-events-meta-grid p,
.pm-events-featured__checkout p {
  margin: 0;
  color: var(--pm-muted);
  font-size: 10px;
  font-weight: 700;
  line-height: 14px;
  letter-spacing: .4px;
  text-transform: uppercase;
}

.pm-events-meta-grid strong {
  display: block;
  margin-top: 2px;
  color: var(--pm-navy);
  font-size: 14px;
  font-weight: 800;
  line-height: 20px;
}

.pm-events-meta-grid span {
  color: var(--pm-muted);
  font-size: 12px;
  line-height: 18px;
}

.pm-events-featured__checkout {
  display: flex;
  min-width: 320px;
  flex-direction: column;
  justify-content: center;
  gap: 10px;
  border-left: 1px solid var(--pm-border);
  background: linear-gradient(180deg, #ffffff 0%, #f8fcfe 100%);
  padding: 18px 24px;
}

.pm-events-featured__checkout strong {
  display: block;
  color: var(--pm-navy);
  font-size: 30px;
  font-weight: 800;
  line-height: 36px;
}

.pm-events-featured__checkout span {
  color: var(--pm-muted);
  font-size: 12px;
  line-height: 18px;
}

.pm-events-featured__checkout > div > p {
  margin: 0 0 8px !important;
  color: var(--pm-muted) !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  line-height: 15px !important;
  letter-spacing: 0.04em !important;
  text-transform: uppercase !important;
}

.pm-events-featured__checkout .pm-event-detail__availability {
  width: 100%;
}

.pm-events-featured__checkout form {
  width: 100%;
}

.pm-events-featured__checkout .pm-events-share,
.pm-event-detail__checkout .pm-events-share {
  display: inline-flex !important;
  width: 100% !important;
  min-height: 42px !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  padding: 9px 16px !important;
  border: 1px solid var(--pm-border) !important;
  border-radius: 999px !important;
  background: #ffffff !important;
  color: var(--pm-blue) !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  line-height: 20px !important;
  cursor: pointer !important;
}

.pm-events-featured__checkout .pm-events-share:hover,
.pm-events-featured__checkout .pm-events-share:focus-visible,
.pm-event-detail__checkout .pm-events-share:hover,
.pm-event-detail__checkout .pm-events-share:focus-visible {
  border-color: var(--pm-blue) !important;
  background: var(--pm-soft) !important;
}

.pm-events-featured__checkout .pm-events-share svg,
.pm-event-detail__checkout .pm-events-share svg {
  width: 18px !important;
  height: 18px !important;
  flex: 0 0 18px !important;
}

.pm-events-quantity {
  display: flex;
  align-items: center;
  gap: 12px;
  border: 1px solid var(--pm-border);
  border-radius: 16px;
  background: #f8fcfe;
  min-height: 46px;
  padding: 8px 16px;
}

.pm-events-quantity button {
  border: 0;
  background: transparent;
  color: var(--pm-navy);
  font-size: 18px;
  font-weight: 700;
}

.pm-events-quantity span {
  flex: 1;
  color: var(--pm-navy);
  text-align: center;
  font-size: 14px;
  font-weight: 700;
}

.pm-events-featured__checkout .pm-btn {
  width: 100%;
  min-height: 46px;
}

.pm-events-upcoming__head {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  margin: 0 0 24px;
}

.pm-events-upcoming h2 {
  font-size: 30px;
}

.pm-events-upcoming__head p {
  max-width: 672px;
  margin-top: 4px;
}

.pm-events-filters {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 24px;
}

.pm-events-filters span,
.pm-events-filters button {
  cursor: default;
  border: 1px solid var(--pm-border);
  border-radius: 999px;
  background: #ffffff;
  color: var(--pm-navy);
  font-size: 14px;
  font-weight: 600;
  line-height: 20px;
  padding: 6px 16px;
  appearance: none;
}

.pm-events-filters span.is-active,
.pm-events-filters button.is-active {
  border-color: var(--pm-navy);
  background: var(--pm-navy);
  color: #ffffff;
}

.pm-events-search {
  display: block;
  position: relative;
  margin-bottom: 16px;
}

.pm-events-search i {
  position: absolute;
  top: 50%;
  left: 14px;
  z-index: 1;
  color: var(--pm-muted);
  font-size: 16px;
  transform: translateY(-50%);
}

.pm-events-search input {
  width: 100%;
  height: 42px;
  border: 1px solid var(--pm-border);
  border-radius: 12px;
  background: #ffffff;
  color: var(--pm-navy);
  font-size: 14px;
  padding: 9px 16px 9px 40px;
  outline: none;
}

.pm-events-search input:focus {
  border-color: var(--pm-blue);
  box-shadow: 0 0 0 3px rgba(5, 136, 170, .1);
}

.pm-events-empty {
  border: 1px solid var(--pm-border) !important;
  border-radius: 20px !important;
  background: #ffffff !important;
  padding: 28px !important;
  text-align: center;
}

.pm-events-empty h3,
.pm-events-empty p {
  margin: 0;
}

.pm-events-empty h3 {
  color: var(--pm-navy);
  font-size: 18px;
  font-weight: 800;
}

.pm-events-empty p {
  margin-top: 6px;
  color: var(--pm-muted);
  font-size: 14px;
}

.pm-events-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}

.pm-events-card {
  display: flex;
  overflow: hidden;
  flex-direction: column;
  border: 1px solid rgba(178, 213, 230, .85);
  border-radius: 22px;
  background: #ffffff;
  box-shadow: 0 18px 42px rgba(14, 58, 88, .07);
  padding: 0 !important;
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}

.pm-events-card:hover {
  transform: translateY(-2px);
  border-color: rgba(80, 172, 210, .55);
  box-shadow: 0 24px 54px rgba(14, 58, 88, .11);
}

.pm-events-card__media {
  height: 158px;
  min-height: 158px;
  border-radius: 22px 22px 0 0;
}

.pm-events-card__media > img {
  display: block;
  height: 158px;
  transition: transform .35s ease;
}

.pm-events-card:hover .pm-events-card__media > img {
  transform: scale(1.035);
}

.pm-events-card__body {
  display: flex;
  flex: 1;
  flex-direction: column;
  gap: 10px;
  padding: 18px 16px 16px;
}

.pm-events-card__body h3 {
  margin: 0;
  color: var(--pm-navy);
  font-family: "Segoe UI", system-ui, -apple-system, BlinkMacSystemFont, sans-serif !important;
  font-size: 16px;
  font-weight: 800 !important;
  line-height: 22px;
}

.pm-events-card__body p {
  min-height: 44px;
}

.pm-events-card__body > div {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-top: auto;
  padding-top: 14px;
}

.pm-events-card__body a {
  color: var(--pm-navy) !important;
  font-size: 14px;
  font-weight: 800;
  text-decoration: none !important;
}

.pm-events-card__body a:hover {
  color: var(--pm-blue) !important;
}

.pm-events-card__body strong {
  color: var(--pm-navy);
  font-size: 14px;
  font-weight: 800;
}

@media (max-width: 991px) {
  .pm-events-hero,
  .pm-events-featured__card,
  .pm-events-grid {
    grid-template-columns: 1fr;
  }

  .pm-events-featured__checkout {
    min-width: 0;
    border-top: 1px solid var(--pm-border);
    border-left: 0;
  }

  .pm-events-featured__media {
    height: auto;
    max-height: none;
  }
}

@media (max-width: 767px) {
  .pm-events-section {
    padding-right: 18px;
    padding-left: 18px;
  }

  .pm-events-hero__intro,
  .pm-events-store-card > div {
    padding: 24px !important;
  }

  .pm-events-hero__intro,
  .pm-events-store-card {
    height: auto;
    max-height: none;
  }

  .pm-events-hero h1 {
    font-size: 30px;
    line-height: 36px;
  }

  .pm-events-featured h2,
  .pm-events-upcoming h2 {
    font-size: 24px;
    line-height: 30px;
  }

  .pm-events-featured__media {
    min-height: 280px;
  }

  .pm-events-featured__content,
  .pm-events-featured__checkout {
    padding: 22px;
  }

  .pm-events-meta-grid {
    grid-template-columns: 1fr;
  }
}

/* Hard lock the fixed events hero title to Segoe UI. */
html body .page-store .store-page--events .pm-events-page .pm-events-hero .pm-events-hero__intro > h1,
html body .page-store .store-page--events .pm-events-page .pm-events-hero .pm-events-hero__intro > h1 *,
html body .page-store .store-page--events .pm-events-page .pm-events-hero h1,
html body .page-store .store-page--events .pm-events-page .pm-events-hero h1 * {
  font-family: "Segoe UI", system-ui, -apple-system, BlinkMacSystemFont, sans-serif !important;
  font-synthesis: none !important;
  letter-spacing: -1px !important;
}

html body .page-store .store-page--events .pm-events-page .pm-events-hero .pm-events-hero__intro > h1 {
  font-size: 36px !important;
  font-weight: 800 !important;
  line-height: 45px !important;
}

.pm-events-title-segoe,
.pm-events-title-segoe__accent {
  font-family: "Segoe UI", system-ui, -apple-system, BlinkMacSystemFont, sans-serif !important;
  font-synthesis: none !important;
  letter-spacing: -1px !important;
}

.pm-events-title-segoe {
  font-size: 36px !important;
  font-weight: 800 !important;
  line-height: 45px !important;
}

/* Dynamic parish event detail. */
.pm-event-detail__breadcrumb {
  padding-top: 16px;
  padding-bottom: 16px;
}

.pm-event-detail__hero {
  display: grid;
  grid-template-columns: minmax(280px, .92fr) minmax(400px, 1.65fr) minmax(250px, .7fr);
  align-items: stretch;
  overflow: hidden;
  border: 1px solid var(--pm-border);
  border-radius: 24px;
  background: #ffffff;
  box-shadow: 0 24px 60px rgba(14, 58, 88, .08);
  padding: 0;
}

.pm-event-detail__media {
  position: relative;
  min-height: 300px;
  overflow: hidden;
}

.pm-event-detail__media > img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.pm-event-detail__summary {
  display: flex;
  min-width: 0;
  flex-direction: column;
  justify-content: center;
  gap: 18px;
  padding: 30px 28px;
}

html body .page-store .store-page--events .pm-event-detail__summary .pm-label {
  display: inline-flex !important;
  width: fit-content !important;
  min-width: 0 !important;
  align-items: center !important;
  justify-content: center !important;
  margin: 0 !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: #e7f7fc !important;
  color: #007fa6 !important;
  font-family: var(--pm-font-sans) !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  line-height: 16px !important;
  letter-spacing: 0 !important;
  padding: 5px 11px !important;
  text-transform: uppercase !important;
}

html body .page-store .store-page--events .pm-event-detail__summary h1 {
  margin: 10px 0 0;
  color: var(--pm-navy);
  font-family: "Segoe UI", system-ui, -apple-system, BlinkMacSystemFont, sans-serif !important;
  font-size: 30px !important;
  font-weight: 800 !important;
  line-height: 36px !important;
}

.pm-event-detail__excerpt {
  display: -webkit-box;
  overflow: hidden;
  margin: 10px 0 0;
  color: var(--pm-muted);
  font-size: 14px;
  line-height: 21px;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}

.pm-event-detail__checkout {
  display: flex;
  min-width: 0;
  flex-direction: column;
  justify-content: center;
  gap: 16px;
  border-left: 1px solid var(--pm-border);
  background: linear-gradient(180deg, #ffffff 0%, #f8fcfe 100%);
  padding: 30px 24px;
}

.pm-event-detail__checkout > div:first-child > strong {
  display: block;
  color: var(--pm-navy);
  font-size: 30px;
  font-weight: 800;
  line-height: 36px;
}

.pm-event-detail__checkout > div:first-child > span {
  color: var(--pm-muted);
  font-size: 12px;
  line-height: 18px;
}

.pm-event-detail__checkout p {
  margin: 0 0 7px;
  color: var(--pm-muted);
  font-size: 10px;
  font-weight: 700;
  line-height: 14px;
  letter-spacing: .4px;
  text-transform: uppercase;
}

.pm-event-detail__availability {
  display: flex;
  align-items: center;
  gap: 9px;
  border-radius: 999px;
  background: #eaf7fb;
  color: var(--pm-muted);
  font-size: 12px;
  line-height: 18px;
  padding: 8px 12px;
}

.pm-event-detail__availability i {
  width: 8px;
  height: 8px;
  flex: 0 0 8px;
  border-radius: 50%;
  background: var(--pm-blue);
}

.pm-event-detail__checkout .pm-events-quantity {
  padding: 0;
}

.pm-event-detail__checkout .pm-events-quantity button {
  width: 44px;
  height: 44px;
  flex: 0 0 44px;
  border-right: 1px solid var(--pm-border);
}

.pm-event-detail__checkout .pm-events-quantity button:last-child {
  border-right: 0;
  border-left: 1px solid var(--pm-border);
}

.pm-event-detail__checkout .pm-btn {
  width: 100%;
}

.pm-event-detail__about {
  padding-top: 24px;
  padding-right: 0;
  padding-bottom: 80px;
  padding-left: 0;
}

.pm-event-detail__about article {
  border: 1px solid var(--pm-border) !important;
  border-radius: 24px !important;
  background: #ffffff !important;
  box-shadow: 0 24px 60px rgba(14, 58, 88, .08) !important;
  padding: 32px !important;
}

.pm-event-detail__about h2 {
  margin: 12px 0 10px;
  color: var(--pm-navy);
  font-family: "Segoe UI", system-ui, -apple-system, BlinkMacSystemFont, sans-serif !important;
  font-size: 26px;
  font-weight: 800 !important;
  line-height: 32px;
}

.pm-event-detail__description {
  color: var(--pm-muted);
  font-size: 14px;
  line-height: 20px;
}

@media (max-width: 991px) {
  .pm-event-detail__hero {
    grid-template-columns: 1fr;
    width: auto;
    margin-right: 24px;
    margin-left: 24px;
  }

  .pm-event-detail__media {
    min-height: 360px;
  }

  .pm-event-detail__checkout {
    border-top: 1px solid var(--pm-border);
    border-left: 0;
  }

  .pm-event-detail__about {
    padding-right: 24px;
    padding-left: 24px;
  }
}

@media (max-width: 767px) {
  .pm-event-detail__hero {
    margin-right: 18px;
    margin-left: 18px;
  }

  .pm-event-detail__media {
    min-height: 280px;
  }

  .pm-event-detail__summary,
  .pm-event-detail__checkout {
    padding: 22px;
  }

  html body .page-store .store-page--events .pm-event-detail__summary h1 {
    font-size: 25px !important;
    line-height: 31px !important;
  }

  .pm-event-detail__about article {
    padding: 24px !important;
  }

  .pm-event-detail__about {
    padding-right: 18px;
    padding-left: 18px;
  }
}

.h1, .h2, .h3, .h4, .h5, .h6,
h1, h2, h3, h4, h5, h6 {
  font-weight: unset;
  color: #102039;
}
/* Absolute EOF /products mobile card override. */
@media (max-width: 767px) {
  body#product-page .pm-shop-hero,
  body#product-page .pm-shop-steps,
  body#product-page .pm-shop-sponsor,
  body#product-page .pm-shop-explore,
  body#product-page .pm-shop-results > .row.d-md-none,
  body#product-page .pm-shop-results__header {
    display: none !important;
  }

  body#product-page .ps-container,
  body#product-page .ps-layout--shop,
  body#product-page .ps-layout__right,
  body#product-page .ps-shopping,
  body#product-page .pm-shop-listing__grid,
  body#product-page .pm-shop-results,
  body#product-page .bb-product-items-wrapper,
  body#product-page .ps-shopping-product,
  body#product-page .pm-shop-products-grid {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
  }

  body#product-page .pm-shop-listing__grid {
    display: block !important;
  }

  body#product-page .ps-shopping {
    padding: 0 0 36px !important;
  }

  body#product-page .pm-shop-chips {
    display: flex !important;
    gap: 8px !important;
    flex-wrap: nowrap !important;
    overflow-x: auto !important;
    margin: 0 0 16px !important;
    padding: 0 0 2px !important;
    scrollbar-width: none !important;
  }

  body#product-page .pm-shop-chips a:nth-child(-n+3) {
    display: none !important;
  }

  body#product-page .pm-shop-chips a {
    flex: 0 0 auto !important;
    min-height: 34px !important;
    padding: 8px 16px !important;
    border: 1px solid #dbeafe !important;
    background: rgba(255, 255, 255, 0.92) !important;
    color: var(--pm-navy) !important;
    font-size: 12px !important;
    font-weight: 600 !important;
  }

  body#product-page .pm-shop-products-grid {
    grid-template-columns: 1fr !important;
    gap: 16px !important;
  }

  body#product-page .pm-shop-product-card.pm-card {
    width: 100% !important;
    min-height: 0 !important;
    border: 1px solid #dbeafe !important;
    border-radius: 20px !important;
    background: rgba(255, 255, 255, 0.94) !important;
    box-shadow: 0 18px 50px rgba(2, 80, 110, 0.08) !important;
  }

  body#product-page .pm-shop-product-card__media {
    height: 224px !important;
    min-height: 224px !important;
    max-height: 224px !important;
    aspect-ratio: auto !important;
    background: #ffffff !important;
  }

  body#product-page .pm-shop-product-card__image {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 10px 16px 8px !important;
    background: #ffffff !important;
  }

  body#product-page .pm-shop-product-card__image img {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
    object-position: center center !important;
  }

  body#product-page .pm-shop-product-card__body {
    gap: 9px !important;
    padding: 0 16px 16px !important;
  }

  body#product-page .pm-shop-product-card__title-link h3 {
    min-height: 0 !important;
    font-size: 14px !important;
    line-height: 17px !important;
  }

  body#product-page .pm-shop-product-card__body p {
    margin-top: 2px !important;
    font-size: 11px !important;
    line-height: 14px !important;
  }

  body#product-page .pm-shop-product-card__footer {
    align-items: center !important;
    justify-content: space-between !important;
    padding-top: 4px !important;
  }

  body#product-page .pm-shop-product-card__footer span {
    font-size: 14px !important;
    line-height: 18px !important;
  }

  body#product-page .pm-shop-product-card__add {
    min-width: 60px !important;
    min-height: 34px !important;
    padding: 9px 15px !important;
    font-size: 12px !important;
  }
}
/* Absolute EOF /products mobile active selector: .pm-shop-page is present on /products. */
@media (max-width: 767px) {
  .pm-shop-page {
    padding-top: 65px !important;
  }

  .pm-shop-page .pm-shop-hero,
  .pm-shop-page .pm-shop-steps,
  .pm-shop-page .pm-shop-sponsor,
  .pm-shop-page .pm-shop-results > .row.d-md-none,
  .pm-shop-page .pm-shop-results__header {
    display: none !important;
  }

  .pm-shop-page .ps-container,
  .pm-shop-page .ps-layout--shop,
  .pm-shop-page .ps-layout__right,
  .pm-shop-page .ps-shopping,
  .pm-shop-page .pm-shop-listing__grid,
  .pm-shop-page .pm-shop-results,
  .pm-shop-page .bb-product-items-wrapper,
  .pm-shop-page .ps-shopping-product,
  .pm-shop-page .pm-shop-products-grid {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
  }

  .pm-shop-page .pm-shop-listing__grid {
    display: block !important;
  }

  .pm-shop-page .ps-shopping {
    padding: 0 0 36px !important;
  }

  .pm-shop-page .pm-shop-chips {
    display: flex !important;
    gap: 8px !important;
    flex-wrap: nowrap !important;
    overflow-x: auto !important;
    margin: 0 0 16px !important;
    padding: 0 0 2px !important;
    scrollbar-width: none !important;
  }

  .pm-shop-page .pm-shop-chips a:nth-child(-n+3) {
    display: none !important;
  }

  .pm-shop-page .pm-shop-chips a {
    flex: 0 0 auto !important;
    min-height: 34px !important;
    padding: 8px 16px !important;
    border: 1px solid #dbeafe !important;
    background: rgba(255, 255, 255, 0.92) !important;
    color: var(--pm-navy) !important;
    font-size: 12px !important;
    font-weight: 600 !important;
  }

  .pm-shop-page .pm-shop-products-grid {
    grid-template-columns: 1fr !important;
    gap: 16px !important;
  }

  .pm-shop-page .pm-shop-product-card.pm-card {
    width: 100% !important;
    min-height: 0 !important;
    border: 1px solid #dbeafe !important;
    border-radius: 20px !important;
    background: rgba(255, 255, 255, 0.94) !important;
    box-shadow: 0 18px 50px rgba(2, 80, 110, 0.08) !important;
  }

  .pm-shop-page .pm-shop-product-card__media {
    height: 224px !important;
    min-height: 224px !important;
    max-height: 224px !important;
    aspect-ratio: auto !important;
    background: #ffffff !important;
  }

  .pm-shop-page .pm-shop-product-card__image {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 10px 16px 8px !important;
    background: #ffffff !important;
  }

  .pm-shop-page .pm-shop-product-card__image img {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
    object-position: center center !important;
  }

  .pm-shop-page .pm-shop-product-card__body {
    gap: 9px !important;
    padding: 0 16px 16px !important;
  }

  .pm-shop-page .pm-shop-product-card__title-link h3 {
    min-height: 0 !important;
    font-size: 14px !important;
    line-height: 17px !important;
  }

  .pm-shop-page .pm-shop-product-card__body p {
    margin-top: 2px !important;
    font-size: 11px !important;
    line-height: 14px !important;
  }

  .pm-shop-page .pm-shop-product-card__footer {
    align-items: center !important;
    justify-content: space-between !important;
    padding-top: 4px !important;
  }

  .pm-shop-page .pm-shop-product-card__footer span {
    font-size: 14px !important;
    line-height: 18px !important;
  }

  .pm-shop-page .pm-shop-product-card__add {
    width: 60px !important;
    min-width: 60px !important;
    min-height: 34px !important;
    padding: 9px 15px !important;
    font-size: 12px !important;
  }
}

/* /donations Give page: align with the /products and Vercel /give layout. */
.pm-give-page.page-donations {
  max-width: none !important;
  margin: 0 !important;
  padding: 82px 0 0 !important;
  background:
    radial-gradient(1200px 600px at 80% -10%, #d6f0fb 0%, transparent 60%),
    linear-gradient(180deg, #f6fcff 0%, #ffffff 35%, #eef8fb 100%) !important;
}

.pm-give-page .pm-shop-hero,
.pm-give-page .pm-shop-steps,
.pm-give-page .pm-shop-sponsor,
.pm-give-page .pm-shop-listing {
  width: min(1280px, 100%) !important;
  margin-right: auto !important;
  margin-left: auto !important;
  padding-right: 24px !important;
  padding-left: 24px !important;
}

.pm-give-page .pm-shop-listing {
  width: min(1232px, calc(100% - 48px)) !important;
  padding-right: 0 !important;
  padding-left: 0 !important;
}

.pm-give-page,
.pm-give-page :where(h1, h2, h3, h4, h5, h6, p, a, span, label, li, strong, small, input, button, select, textarea) {
  font-family: var(--pm-font-sans) !important;
}

.pm-give-page i[class^="icon-"],
.pm-give-page i[class*=" icon-"] {
  font-family: Linearicons !important;
}

.pm-give-page .text-gorda,
.pm-give-page .pm-shop-hero h1,
.pm-give-page .pm-shop-hero h1 span,
.pm-give-page .pm-shop-hero__media-content h2,
.pm-give-page .pm-shop-results__header h2,
.pm-give-page .pm-give-card__body h3 {
  font-family: "Segoe UI", system-ui, -apple-system, BlinkMacSystemFont, sans-serif !important;
}

.pm-give-page .pm-shop-hero__media::after {
  background: linear-gradient(180deg, rgba(5, 34, 48, .28), rgba(5, 34, 48, .08) 44%, rgba(5, 34, 48, .68));
}

.pm-give-page .pm-shop-sponsor a {
  background: linear-gradient(90deg, #083b60, #087fa5, #42addc);
}

.pm-give-listing .pm-shop-results {
  min-width: 0;
}

.pm-give-page .pm-shop-results__header {
  align-items: flex-start;
}

.pm-give-results__actions {
  flex-wrap: wrap;
  justify-content: flex-end;
}

.pm-give-results__actions .pm-donations-toolbar__count,
.pm-give-results__actions .pm-donations-toolbar__per-page {
  min-width: 0 !important;
  margin: 0 !important;
}

.pm-give-results__actions .products-layout {
  display: inline-flex !important;
  align-items: center;
  gap: 8px;
  margin: 0 !important;
}

.pm-give-results__actions .products-layout a {
  display: grid !important;
  width: 36px !important;
  height: 36px !important;
  place-items: center;
  border: 1px solid var(--pm-border) !important;
  border-radius: 999px !important;
  background: #ffffff !important;
  color: var(--pm-muted) !important;
  text-decoration: none !important;
}

.pm-give-results__actions .products-layout li.active a,
.pm-give-results__actions .products-layout a:hover {
  border-color: var(--pm-blue) !important;
  background: var(--pm-blue) !important;
  color: #ffffff !important;
}

.pm-give-page .pm-donations-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 16px !important;
}

.pm-give-page .pm-donations-grid .pm-give-card.pm-card {
  min-height: 0 !important;
  border: 1px solid var(--pm-border);
  border-radius: 24px;
  box-shadow: var(--pm-card-shadow);
}

.pm-give-page .pm-donations-grid .pm-give-card__media {
  height: 190px !important;
  border-radius: 24px 24px 0 0;
}

.pm-give-page .pm-donations-grid .pm-give-card__media > img {
  height: 100%;
  object-fit: cover;
}

.pm-give-page .pm-donations-grid .pm-give-card__body {
  padding: 34px 16px 18px !important;
}

.pm-give-page .pm-give-card__body h3 {
  color: var(--pm-navy) !important;
  font-size: 18px !important;
  font-weight: 800 !important;
  line-height: 24px !important;
}

.pm-give-page .pm-give-card__button {
  border-radius: 999px !important;
  background: linear-gradient(90deg, var(--pm-blue), var(--pm-cyan)) !important;
  color: #ffffff !important;
}

/* Parish Giving cards: match the public ParishMart campaign-card composition. */
.store-page--parish .pm-store-giving-page .pm-donations-grid .pm-give-card.pm-card {
  overflow: hidden !important;
  border-radius: 28px !important;
  background: #ffffff !important;
  box-shadow: 0 18px 42px rgba(8, 40, 67, 0.08) !important;
}

.store-page--parish .pm-store-giving-page .pm-donations-grid .pm-give-card__media {
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 4 / 3 !important;
  border-radius: 28px 28px 0 0 !important;
}

.store-page--parish .pm-store-giving-page .pm-donations-grid .pm-give-card__media::after {
  display: none !important;
}

.store-page--parish .pm-store-giving-page .pm-donations-grid .pm-give-card__media > img {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}

.store-page--parish .pm-store-giving-page .pm-donations-grid .pm-give-card__media > span {
  right: 12px !important;
  bottom: 0 !important;
  width: 80px !important;
  height: 80px !important;
  padding: 6px !important;
  border-radius: 18px !important;
  transform: translateY(26%) !important;
}

.store-page--parish .pm-store-giving-page .pm-donations-grid .pm-give-card__body {
  gap: 4.5px !important;
  padding: 40px 12px 12px !important;
}

.store-page--parish .pm-store-giving-page .pm-give-card__location {
  margin-bottom: 0 !important;
  font-size: 11px !important;
  line-height: 16.5px !important;
}

.store-page--parish .pm-store-giving-page .pm-give-card__lead {
  display: block !important;
  margin: 0 0 2px !important;
  color: var(--pm-muted) !important;
  font-size: 15px !important;
  font-weight: 800 !important;
  line-height: 20px !important;
}

.store-page--parish .pm-store-giving-page .pm-give-card__body > p:not(.pm-give-card__location) {
  font-size: 12px !important;
  line-height: 16px !important;
}

.store-page--parish .pm-store-giving-page .pm-give-card__body > div {
  padding-top: 8px !important;
}

.store-page--parish .pm-store-giving-page .pm-give-card__button {
  min-height: 32.67px !important;
  padding: 6px 14px !important;
  border: 1px solid var(--pm-border) !important;
  background: #ffffff !important;
  color: var(--pm-blue) !important;
  font-size: 14px !important;
  line-height: 18.67px !important;
  box-shadow: none !important;
}

.store-page--parish .pm-store-giving-page .pm-give-card__button:hover {
  border-color: var(--pm-blue) !important;
  background: var(--pm-soft) !important;
  color: var(--pm-blue) !important;
}

.pm-give-page ~ span .ps-newsletter,
.pm-give-page ~ .ps-site-features {
  display: none !important;
}

@media (max-width: 1199px) {
  .pm-give-page .pm-donations-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 767px) {
  .pm-give-page.page-donations {
    padding-top: 72px !important;
  }

  .pm-give-page .pm-shop-hero,
  .pm-give-page .pm-shop-steps,
  .pm-give-page .pm-shop-sponsor,
  .pm-give-page .pm-shop-listing {
    width: 100% !important;
    padding-right: 16px !important;
    padding-left: 16px !important;
  }

  .pm-give-page .pm-shop-listing {
    padding-right: 0 !important;
    padding-left: 0 !important;
  }

  .pm-give-results__actions {
    justify-content: flex-start;
  }

  .pm-give-page .pm-donations-grid {
    grid-template-columns: 1fr !important;
  }
}

/* /stores communities page: Vercel communities parity. */
html.pm-communities-document,
body.pm-communities-document {
  background: transparent !important;
  background-image: none !important;
}

.pm-communities-page {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 0 24px !important;
  background: transparent !important;
  color: var(--pm-ink);
  font-family: var(--pm-font-sans) !important;
}

.pm-communities-page *,
.pm-communities-page *::before,
.pm-communities-page *::after {
  box-sizing: border-box;
}

.pm-communities-page ~ span .ps-newsletter,
.pm-communities-page ~ .ps-site-features {
  display: none !important;
}

.pm-communities-breadcrumb.ps-breadcrumb {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 72px 0 0 !important;
  background: transparent !important;
}

.pm-communities-breadcrumb .ps-container {
  width: min(1280px, 100%) !important;
  max-width: 1280px !important;
  margin-right: auto !important;
  margin-left: auto !important;
  padding: 0 16px !important;
}

.pm-communities-breadcrumb .breadcrumb-custom {
  display: flex !important;
  gap: 8px !important;
  align-items: center !important;
  margin: 0 !important;
  color: #475569 !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  line-height: 1.4 !important;
}

.pm-communities-breadcrumb .breadcrumb-custom a {
  color: #334155 !important;
  font-weight: 500 !important;
  text-decoration: none !important;
}

.pm-communities-breadcrumb .breadcrumb-custom a:hover {
  color: var(--pm-blue) !important;
}

.pm-communities-breadcrumb .breadcrumb-custom span[aria-hidden="true"] {
  color: #94a3b8 !important;
  font-weight: 500 !important;
}

.pm-communities-breadcrumb .breadcrumb-custom span:last-child {
  color: var(--pm-navy) !important;
  font-weight: 800 !important;
}

.pm-communities-hero,
.pm-communities-section {
  width: min(1280px, 100%);
  margin-right: auto;
  margin-left: auto;
  padding: 32px 16px;
}

.pm-communities-hero {
  padding-top: 10px;
  padding-bottom: 8px;
}

.pm-communities-hero__grid {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(360px, 1fr);
  gap: 16px;
  align-items: stretch;
}

.pm-communities-page .pm-card,
.pm-communities-page .pm-dark-panel {
  border: 1px solid var(--pm-border);
  border-radius: 24px;
  background: rgba(255, 255, 255, 0.94);
  box-shadow: var(--pm-card-shadow);
}

.pm-communities-page .pm-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 44px;
  padding: 13px 20px;
  border: 1px solid transparent;
  border-radius: 999px;
  font-size: 14px;
  font-weight: 700;
  line-height: 1;
  text-decoration: none !important;
  transition: transform 0.15s ease, box-shadow 0.15s ease, border-color 0.15s ease, background 0.15s ease, color 0.15s ease;
}

.pm-communities-page .pm-btn:hover {
  transform: translateY(-1px);
}

.pm-communities-page .pm-btn-primary {
  background: linear-gradient(90deg, var(--pm-blue), var(--pm-cyan));
  color: #ffffff !important;
  box-shadow: 0 14px 30px rgba(5, 126, 162, 0.25);
}

.pm-communities-hero__intro {
  display: flex;
  min-height: 340px;
  flex-direction: column;
  justify-content: center;
  gap: 20px;
  padding: 32px;
}

.pm-communities-kicker {
  display: inline-flex;
  width: fit-content;
  align-items: center;
  gap: 8px;
  padding: 7px 13px;
  border-radius: 999px;
  background: var(--pm-soft);
  color: var(--pm-blue);
  font-size: 11px;
  font-weight: 700;
  line-height: 1;
}

.pm-communities-hero h1 {
  max-width: 620px;
  margin: 0 !important;
  color: var(--pm-navy) !important;
  font-size: 36px !important;
  font-weight: 800 !important;
  letter-spacing: 0 !important;
  line-height: 1.13 !important;
}

.pm-communities-hero__intro > p {
  max-width: 430px;
  margin: 0 !important;
  color: var(--pm-muted) !important;
  font-size: 14px !important;
  line-height: 1.6 !important;
}

.pm-communities-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.pm-communities-featured {
  position: relative;
  isolation: isolate;
  display: flex;
  min-height: 340px;
  flex-direction: column;
  justify-content: flex-end;
  overflow: hidden;
  padding: 32px;
  border: 1px solid var(--pm-border);
  border-radius: 24px;
  color: #ffffff !important;
  text-decoration: none !important;
  box-shadow: var(--pm-card-shadow);
  transition: transform 0.16s ease, box-shadow 0.16s ease;
}

.pm-communities-featured:hover {
  transform: translateY(-2px);
  box-shadow: var(--pm-soft-shadow);
}

.pm-communities-featured::after {
  position: absolute;
  inset: 0;
  z-index: -1;
  content: "";
  background: linear-gradient(180deg, rgba(0, 0, 0, 0.35), rgba(0, 0, 0, 0.15) 45%, rgba(0, 0, 0, 0.55));
}

.pm-communities-featured > img {
  position: absolute;
  inset: 0;
  z-index: -2;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.2s ease;
}

.pm-communities-featured:hover > img {
  transform: scale(1.025);
}

.pm-communities-featured__label {
  position: absolute;
  top: 24px;
  left: 24px;
  display: inline-flex;
  width: fit-content;
  align-items: center;
  gap: 8px;
  padding: 8px 13px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.15);
  color: rgba(255, 255, 255, 0.86);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.05em;
  line-height: 1;
  text-transform: uppercase;
  backdrop-filter: blur(10px);
}

.pm-communities-featured__content {
  display: grid;
  gap: 8px;
}

.pm-communities-featured h2 {
  margin: 0 !important;
  color: #ffffff !important;
  font-size: 30px !important;
  font-weight: 800 !important;
  line-height: 1.15 !important;
}

.pm-communities-featured p {
  margin: 0 !important;
  color: rgba(255, 255, 255, 0.86) !important;
  font-size: 14px !important;
}

.pm-communities-sponsor-banner {
  width: min(1280px, 100%);
  margin-right: auto;
  margin-left: auto;
  padding: 12px 16px;
}

.pm-communities-sponsor-banner__link {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 24px;
  border: 1px solid var(--pm-border);
  border-radius: 24px;
  background: linear-gradient(90deg, var(--pm-navy), var(--pm-blue), var(--pm-cyan));
  color: #ffffff !important;
  text-decoration: none !important;
  box-shadow: var(--pm-card-shadow);
  transition: box-shadow 0.16s ease, transform 0.16s ease;
}

.pm-communities-sponsor-banner__link:hover {
  color: #ffffff !important;
  box-shadow: var(--pm-soft-shadow);
}

.pm-communities-sponsor-banner__copy {
  display: flex;
  min-width: 0;
  align-items: center;
  gap: 16px;
}

.pm-communities-sponsor-banner__icon {
  display: grid;
  width: 44px;
  height: 44px;
  flex: 0 0 44px;
  place-items: center;
  border-radius: 16px;
  background: rgba(255, 255, 255, 0.15);
  color: #ffffff;
  backdrop-filter: blur(10px);
}

.pm-communities-sponsor-banner__icon svg {
  width: 20px;
  height: 20px;
}

.pm-communities-sponsor-banner__copy small {
  display: block;
  margin: 0 0 4px;
  color: rgba(255, 255, 255, 0.86);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.05em;
  line-height: 1;
  text-transform: uppercase;
}

.pm-communities-sponsor-banner__copy strong {
  display: block;
  color: #ffffff;
  font-size: 18px;
  font-weight: 800;
  line-height: 1.22;
}

.pm-communities-sponsor-banner__button {
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  gap: 6px;
  padding: 10px 16px;
  border-radius: 999px;
  background: #ffffff;
  color: var(--pm-navy);
  font-size: 12px;
  font-weight: 800;
  line-height: 1;
  transition: transform 0.16s ease;
}

.pm-communities-sponsor-banner__link:hover .pm-communities-sponsor-banner__button {
  transform: translateX(2px);
}

.pm-communities-sponsor-banner__button svg {
  width: 14px;
  height: 14px;
}

.pm-communities-section__header {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 22px;
}

.pm-communities-section__header h2 {
  margin: 0 !important;
  color: var(--pm-navy) !important;
  font-size: 30px !important;
  font-weight: 800 !important;
  letter-spacing: 0 !important;
  line-height: 1.18 !important;
}

.pm-communities-section__header p {
  max-width: 660px;
  margin: 6px 0 0 !important;
  color: var(--pm-muted) !important;
  font-size: 14px !important;
  line-height: 1.55 !important;
}

.pm-communities-section__header > a {
  flex: 0 0 auto;
  color: var(--pm-blue) !important;
  font-size: 14px;
  font-weight: 800;
  text-decoration: none !important;
}

.pm-communities-section__header > a.pm-communities-section__header-link--dark {
  color: #102a43 !important;
}

.pm-cards-carousel {
  position: relative;
  padding-right: 68px;
  padding-left: 68px;
}

.pm-cards-carousel__track {
  display: flex;
  gap: 16px;
  align-items: stretch;
  margin: 0;
  padding: 0 4px 8px;
  overflow-x: auto;
  scroll-behavior: smooth;
  scroll-snap-type: x mandatory;
  scrollbar-width: none;
}

.pm-cards-carousel__track::-webkit-scrollbar {
  display: none;
}

.pm-cards-carousel__slide {
  display: flex;
  width: calc((100% - 48px) / 4);
  min-width: calc((100% - 48px) / 4);
  flex: 0 0 calc((100% - 48px) / 4);
  scroll-snap-align: start;
}

.pm-cards-carousel__slide.pm-shop-product-card--hidden {
  display: none !important;
}

.pm-communities-page .pm-community-card {
  display: flex;
  width: 100%;
  min-height: 392px;
  flex-direction: column;
  overflow: hidden;
  padding: 0;
  border-color: var(--pm-border) !important;
  background: #ffffff !important;
  box-shadow: none !important;
  transition: transform 0.16s ease, box-shadow 0.16s ease;
}

.pm-communities-page .pm-community-card:hover {
  transform: translateY(-2px);
  box-shadow: none !important;
}

.pm-communities-page .pm-community-card__photo {
  position: relative;
  display: block;
  aspect-ratio: 4 / 3;
  overflow: hidden;
  border: 0;
  border-radius: 24px 24px 0 0;
  background: #ffffff;
  text-decoration: none !important;
}

.pm-communities-page .pm-community-card__photo > img {
  display: block;
  width: 100%;
  height: 100%;
  border-radius: inherit;
  object-fit: contain;
  object-position: center center;
}

.pm-communities-page .pm-communities-section--stores .pm-community-card__photo > img {
  object-fit: cover !important;
}

.pm-communities-page .pm-communities-section--ministries .pm-community-card__photo > img {
  object-fit: cover !important;
}

.pm-communities-page .pm-community-card__logo {
  position: absolute;
  right: 12px;
  bottom: -22px;
  z-index: 2;
  display: none;
  width: 72px;
  height: 72px;
  place-items: center;
  padding: 7px;
  overflow: hidden;
  border-radius: 18px;
  background: #ffffff;
  box-shadow: 0 16px 34px rgba(7, 32, 57, 0.12);
  outline: 4px solid #ffffff;
}

.pm-communities-page .pm-community-card__logo img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.pm-communities-page .pm-community-card__body {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  gap: 7px;
  padding: 18px 20px 18px;
  font-family: var(--pm-font-sans) !important;
}

.pm-communities-page .pm-store-carousel-card .pm-community-card__body {
  padding-top: 18px;
}

.pm-communities-page .pm-community-card__body > a {
  color: inherit !important;
  text-decoration: none !important;
}

.pm-communities-page .pm-community-card h3 {
  margin: 0 !important;
  color: #102a43 !important;
  font-family: "Segoe UI", system-ui, -apple-system, BlinkMacSystemFont, sans-serif !important;
  font-size: 16px !important;
  font-weight: 800 !important;
  letter-spacing: 0 !important;
  line-height: 1.26 !important;
}

.pm-communities-page .pm-community-card h3:hover {
  color: var(--pm-blue) !important;
}

.pm-communities-page .pm-community-card__location {
  margin: 0 !important;
  color: #64748b !important;
  font-size: 11px !important;
  font-weight: 500 !important;
  letter-spacing: 0 !important;
  line-height: 1.35 !important;
}

.pm-communities-page .pm-community-card__body > p:not(.pm-community-card__location) {
  margin: 0 !important;
  color: var(--pm-muted) !important;
  font-size: 12px !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
  line-height: 1.5 !important;
}

.pm-communities-page .pm-community-card__link {
  margin-top: auto;
  padding-top: 8px;
  color: #102a43 !important;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 0;
  line-height: 1.2;
  text-decoration: none !important;
}

.pm-communities-page .pm-community-card__link:hover {
  color: var(--pm-blue) !important;
}

.pm-cards-carousel__nav {
  position: absolute;
  top: 50%;
  z-index: 4;
  display: grid;
  width: 40px;
  height: 40px;
  place-items: center;
  padding: 0;
  border: 1px solid var(--pm-border);
  border-radius: 999px;
  background: #ffffff;
  color: var(--pm-navy);
  box-shadow: var(--pm-card-shadow);
  transform: translateY(-50%);
  transition: border-color 0.15s ease, color 0.15s ease, opacity 0.15s ease;
}

.pm-cards-carousel__nav:hover {
  border-color: var(--pm-blue);
  color: var(--pm-blue);
}

.pm-cards-carousel__nav:disabled {
  cursor: default;
  opacity: 0;
  pointer-events: none;
}

.pm-cards-carousel__nav--prev {
  left: 8px;
}

.pm-cards-carousel__nav--next {
  right: 8px;
}

.pm-cards-carousel__nav svg {
  width: 20px;
  height: 20px;
  fill: none;
  stroke: currentColor;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.pm-communities-section--stores .pm-shop-load-more {
  margin-top: 18px !important;
  margin-bottom: 80px !important;
  text-align: center !important;
}

.pm-communities-section--stores .pm-shop-load-more__button {
  min-width: 132px !important;
  min-height: 42px !important;
  border: 1px solid #057ea2 !important;
  border-radius: 999px !important;
  background: #ffffff !important;
  color: #057ea2 !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  box-shadow: none !important;
}

.pm-communities-section--stores .pm-shop-load-more__button:hover,
.pm-communities-section--stores .pm-shop-load-more__button:focus {
  border-color: #057ea2 !important;
  background: rgba(5, 126, 162, 0.08) !important;
  color: #057ea2 !important;
}

.pm-communities-cta {
  padding: 40px !important;
  overflow: hidden;
  border: 0 !important;
  background:
    radial-gradient(circle at 12% 18%, rgba(69, 177, 225, 0.26), transparent 28%),
    linear-gradient(135deg, #082843 0%, #0b3454 48%, #057ea2 100%) !important;
  color: #ffffff;
}

.pm-communities-cta__content {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 24px;
}

.pm-communities-cta h2 {
  margin: 0 !important;
  color: #ffffff !important;
  font-size: 30px !important;
  font-weight: 800 !important;
  line-height: 1.18 !important;
}

.pm-communities-cta p {
  max-width: 680px;
  margin: 12px 0 0 !important;
  color: rgba(255, 255, 255, 0.86) !important;
  font-size: 15px !important;
  line-height: 1.55 !important;
}

.pm-communities-cta__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.pm-communities-cta__secondary {
  background: rgba(255, 255, 255, 0.10) !important;
  color: #ffffff !important;
}

.pm-communities-cta__secondary:hover {
  background: rgba(255, 255, 255, 0.20) !important;
}

.pm-communities-cta__primary {
  background: #ffffff !important;
  color: var(--pm-blue) !important;
  box-shadow: none !important;
}

.pm-communities-sponsorships {
  padding-top: 8px;
}

.pm-communities-sponsorships .pm-shop-sponsorships__benefits article {
  border: 1px solid var(--pm-border);
  border-radius: 24px;
  background: rgba(255, 255, 255, 0.94);
  box-shadow: var(--pm-card-shadow);
}

@media (max-width: 1199px) {
  .pm-cards-carousel {
    padding-right: 60px;
    padding-left: 60px;
  }

  .pm-cards-carousel__slide {
    width: calc((100% - 32px) / 3);
    min-width: calc((100% - 32px) / 3);
    flex-basis: calc((100% - 32px) / 3);
  }
}

@media (max-width: 991px) {
  .pm-communities-hero__grid {
    grid-template-columns: 1fr;
  }

  .pm-communities-featured {
    min-height: 280px;
  }

  .pm-cards-carousel__slide {
    width: calc((100% - 16px) / 2);
    min-width: calc((100% - 16px) / 2);
    flex-basis: calc((100% - 16px) / 2);
  }

  .pm-communities-cta__content,
  .pm-shop-sponsorships__grid {
    grid-template-columns: 1fr;
    flex-direction: column;
  }
}

@media (max-width: 767px) {
  .pm-communities-breadcrumb.ps-breadcrumb {
    padding-top: 66px !important;
    padding-right: 0 !important;
    padding-left: 0 !important;
  }

  .pm-communities-page {
    padding-top: 0 !important;
  }

  .pm-communities-hero,
  .pm-communities-section {
    padding-right: 16px;
    padding-left: 16px;
  }

  .pm-communities-hero__intro {
    min-height: 300px;
    padding: 24px;
  }

  .pm-communities-hero h1 {
    font-size: 30px !important;
  }

  .pm-communities-featured {
    min-height: 260px;
    padding: 24px;
  }

  .pm-communities-section__header {
    align-items: flex-start;
    flex-direction: column;
  }

  .pm-communities-sponsor-banner__link {
    align-items: flex-start;
    flex-direction: column;
    padding: 20px;
  }

  .pm-communities-sponsor-banner__copy {
    align-items: flex-start;
  }

  .pm-communities-sponsor-banner__copy strong {
    font-size: 16px;
  }

  .pm-communities-section__header h2,
  .pm-communities-cta h2 {
    font-size: 24px !important;
  }

  .pm-cards-carousel__slide {
    width: 78%;
    min-width: 78%;
    flex-basis: 78%;
  }

  .pm-cards-carousel {
    padding-right: 0;
    padding-left: 0;
  }

  .pm-cards-carousel__nav {
    display: none;
  }

  .pm-communities-cta {
    padding: 28px 24px !important;
  }

  .pm-shop-sponsorships__benefits {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 479px) {
  .pm-cards-carousel__slide {
    width: 86%;
    min-width: 86%;
    flex-basis: 86%;
  }
}

/* /local-businesses page: Local Biz Supporters. */
html.pm-local-biz-document,
body.pm-local-biz-document {
  background: transparent !important;
  background-image: none !important;
}

.pm-local-biz-page .pm-btn-secondary {
  border-color: var(--pm-border) !important;
  background: #ffffff !important;
  color: var(--pm-blue) !important;
  box-shadow: none !important;
}

.pm-local-biz-page .pm-btn-secondary:hover {
  border-color: var(--pm-blue) !important;
  color: var(--pm-blue) !important;
}

.pm-local-biz-page .pm-btn-dark {
  min-height: 40px;
  padding: 11px 20px;
  background: var(--pm-navy) !important;
  color: #ffffff !important;
  box-shadow: none !important;
}

.pm-local-biz-hero__media {
  min-height: 340px;
  cursor: default;
}

.pm-local-biz-search,
.pm-local-biz-tabs,
.pm-local-biz-section {
  width: min(1280px, 100%);
  margin-right: auto;
  margin-left: auto;
  padding-right: 16px;
  padding-left: 16px;
}

.pm-local-biz-search {
  padding-top: 22px;
  padding-bottom: 18px;
}

.pm-local-biz-search__intro {
  margin-bottom: 12px;
}

.pm-local-biz-search__intro p {
  margin: 0 !important;
  color: var(--pm-navy) !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  line-height: 1.35 !important;
}

.pm-local-biz-search__intro span {
  display: block;
  margin-top: 3px;
  color: var(--pm-muted) !important;
  font-size: 12px !important;
  line-height: 1.45 !important;
}

.pm-local-biz-search__form {
  display: flex;
  flex-wrap: wrap;
  gap: 0;
  align-items: center;
  width: 100%;
}

.pm-local-biz-search__field {
  display: flex;
  flex: 1 1 100%;
  width: 100%;
  min-width: 0;
  align-items: center;
  gap: 12px;
  min-height: 50px;
  margin: 0;
  margin-bottom: 15px;
  padding: 0 16px;
  border: 1px solid #d9e8ff;
  border-radius: 999px;
  background: #ffffff;
  box-shadow: 0 10px 24px rgba(15, 95, 139, 0.05);
}

.pm-local-biz-search__field svg {
  width: 20px;
  height: 20px;
  flex: 0 0 20px;
  color: #526a8a;
}

.pm-local-biz-search__field .pm-input {
  width: 100%;
  min-width: 0;
  height: auto;
  min-height: 0;
  padding: 0;
  border: 0 !important;
  outline: 0;
  background: transparent;
  color: #253858;
  font-size: 17px;
  font-weight: 400;
  line-height: 1.4;
}

.pm-local-biz-search__field .pm-input::placeholder {
  color: #526a8a;
}

.pm-local-biz-filter-pill {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-height: 40px;
  padding: 9px 16px;
  border: 1px solid var(--pm-border);
  border-radius: 999px;
  background: #ffffff;
  color: var(--pm-navy);
  font-size: 14px;
  font-weight: 500;
  line-height: 1;
  transition: border-color 0.15s ease, color 0.15s ease;
}

.pm-local-biz-filter-pill:hover {
  border-color: var(--pm-blue);
  color: var(--pm-navy);
}

.pm-local-biz-filter-pill svg {
  width: 14px;
  height: 14px;
  color: var(--pm-muted);
}

.pm-local-biz-search__submit {
  padding-top: 10px !important;
  padding-bottom: 10px !important;
}

.pm-local-biz-tabs {
  padding-top: 0;
  padding-bottom: 22px;
}

.pm-local-biz-tabs > div {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.pm-local-biz-tabs .pm-chip {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 46px;
  padding: 0 18px;
  border: 1px solid #d9e8ff;
  border-radius: 999px;
  background: #ffffff;
  color: var(--pm-navy);
  box-shadow: 0 8px 20px rgba(15, 95, 139, 0.04);
  font-size: 15px;
  font-weight: 800;
  line-height: 1;
  transition: border-color 0.15s ease, background 0.15s ease, color 0.15s ease;
}

.pm-local-biz-tabs .pm-chip:hover,
.pm-local-biz-tabs .pm-chip:focus {
  border-color: #9fd7ee;
  color: var(--pm-navy);
}

.pm-local-biz-tabs .pm-local-biz-tabs__chip--active {
  border-color: transparent !important;
  background: linear-gradient(90deg, #0b83a5, #39bde2) !important;
  color: #ffffff !important;
  box-shadow: none;
}

.pm-local-biz-section {
  padding-top: 0;
  padding-bottom: 32px;
}

.pm-local-biz-filter-toggle {
  display: none;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 44px;
  margin-bottom: 16px;
  padding: 0 18px;
  border: 1px solid #d9e8ff;
  border-radius: 999px;
  background: #ffffff;
  color: var(--pm-navy);
  box-shadow: 0 8px 20px rgba(15, 95, 139, 0.05);
  font-size: 14px;
  font-weight: 700;
  line-height: 1;
}

.pm-local-biz-filter-toggle svg {
  width: 16px;
  height: 16px;
}

.pm-local-biz-filter-backdrop {
  display: none;
}

.pm-local-biz-directory {
  display: grid;
  grid-template-columns: 274px minmax(0, 1fr);
  gap: 24px;
  align-items: start;
  transition: grid-template-columns 0.24s ease;
}

@media (min-width: 992px) {
  .pm-local-biz-directory.is-filter-collapsed {
    grid-template-columns: 48px minmax(0, 1fr);
  }
}

.pm-local-biz-sidebar {
  position: sticky;
  top: 96px;
  display: flex;
  min-height: 0;
  align-self: start;
  align-items: stretch;
  padding: 0;
  overflow: hidden;
  border: 1px solid #d9e8ff;
  border-radius: 24px;
  background: #ffffff;
  box-shadow: 0 14px 36px rgba(15, 95, 139, 0.04);
  transition: border-radius 0.24s ease;
}

.pm-local-biz-directory.is-filter-collapsed .pm-local-biz-sidebar {
  border-radius: 14px;
}

.pm-local-biz-filter-rail {
  display: flex;
  width: 48px;
  min-width: 48px;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  gap: 9px;
  padding: 16px 0;
  border: 0;
  background: #f2fbfd;
  color: var(--pm-muted);
  cursor: pointer;
  transition: color 0.16s ease, background-color 0.16s ease;
}

.pm-local-biz-filter-rail:hover,
.pm-local-biz-filter-rail:focus {
  color: var(--pm-navy);
  background: #eaf7fb;
  outline: none;
}

.pm-local-biz-filter-rail__chevron {
  font-size: 14px;
  transition: transform 0.2s ease;
}

.pm-local-biz-directory.is-filter-collapsed .pm-local-biz-filter-rail__chevron {
  transform: rotate(180deg);
}

.pm-local-biz-filter-rail span {
  display: inline-block;
  color: inherit;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.12em;
  line-height: 1;
  text-transform: uppercase;
  transform: rotate(180deg);
  writing-mode: vertical-rl;
}

.pm-local-biz-filter-rail__icon {
  font-size: 13px;
  line-height: 1;
}

.pm-local-biz-sidebar__card {
  width: auto;
  min-width: 0;
  flex: 1 1 auto;
  padding: 22px 20px 22px 0;
  overflow: hidden;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  opacity: 1;
  transition: opacity 0.16s ease;
}

.pm-local-biz-directory.is-filter-collapsed .pm-local-biz-sidebar__card {
  opacity: 0;
  pointer-events: none;
}

.pm-local-biz-sidebar__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 14px;
}

.pm-local-biz-sidebar__head > span {
  color: #4b6685;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.05em;
  line-height: 1;
  text-transform: uppercase;
}

.pm-local-biz-sidebar__close {
  display: none;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  border: 1px solid #d9e8ff;
  border-radius: 999px;
  background: #ffffff;
  color: var(--pm-navy);
}

.pm-local-biz-sidebar__close svg {
  width: 16px;
  height: 16px;
}

.pm-local-biz-sidebar__options {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.pm-local-biz-filter-option {
  display: flex;
  width: 100%;
  align-items: center;
  padding: 10px 12px;
  border: 0;
  border-radius: 12px;
  background: transparent;
  color: var(--pm-navy);
  font-size: 14px;
  font-weight: 400;
  line-height: 1.25;
  text-align: left;
  transition: background 0.15s ease, color 0.15s ease;
}

.pm-local-biz-filter-option:hover,
.pm-local-biz-filter-option:focus {
  background: #f4fbfe;
  color: var(--pm-navy);
}

.pm-local-biz-filter-option--active {
  background: #eef8fb;
  color: #003763;
}

.pm-local-biz-directory__content {
  min-width: 0;
}

.pm-local-biz-count {
  margin: 0 0 14px;
  color: var(--pm-muted);
  font-size: 13px;
  font-weight: 700;
  line-height: 1.4;
}

.pm-local-biz-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.pm-local-biz-card-wrap.pm-shop-product-card--hidden {
  display: none !important;
}

.pm-local-biz-card-wrap.pm-local-biz-card-wrap--filtered {
  display: none !important;
}

.pm-local-biz-page.pm-local-biz-is-filtering .pm-local-biz-card-wrap.pm-shop-product-card--hidden:not(.pm-local-biz-card-wrap--filtered) {
  display: block !important;
}

.pm-local-biz-empty {
  margin: 18px 0 44px;
  padding: 18px 20px;
  border: 1px solid #d9e8ff;
  border-radius: 16px;
  background: #ffffff;
  color: var(--pm-muted);
  font-size: 14px;
  font-weight: 600;
  text-align: center;
}

.pm-local-biz-card {
  display: flex;
  height: 100%;
  min-height: 492px;
  flex-direction: column;
  overflow: hidden;
  padding: 12px;
  transition: transform 0.16s ease, box-shadow 0.16s ease;
}

.pm-local-biz-card:hover {
  transform: translateY(-2px);
  box-shadow: var(--pm-soft-shadow);
}

.pm-local-biz-card__media {
  position: relative;
  display: block;
  aspect-ratio: 4 / 3;
  overflow: visible;
  border: 1px solid var(--pm-border);
  border-radius: 18px;
  background: #ffffff;
  text-decoration: none !important;
}

.pm-local-biz-card__media > img {
  display: block;
  width: 100%;
  height: 100%;
  border-radius: inherit;
  object-fit: cover;
}

.pm-local-biz-card__media::after {
  position: absolute;
  inset: 0;
  border-radius: inherit;
  content: "";
  pointer-events: none;
  background: linear-gradient(0deg, rgba(7, 32, 57, 0.22), transparent 50%);
}

.pm-local-biz-card__benefit {
  position: absolute;
  top: 12px;
  left: 12px;
  z-index: 2;
  display: inline-flex;
  min-height: 26px;
  align-items: center;
  padding: 6px 12px;
  border-radius: 999px;
  background: var(--pm-navy);
  color: #ffffff;
  font-size: 12px;
  font-weight: 800;
  line-height: 1;
}

.pm-local-biz-card__logo,
.pm-local-biz-card__avatar {
  position: absolute;
  right: 12px;
  bottom: 0;
  z-index: 3;
  display: grid;
  width: 80px;
  height: 80px;
  place-items: center;
  overflow: hidden;
  border-radius: 18px;
  background: #ffffff;
  box-shadow: var(--pm-soft-shadow);
  outline: 3px solid #ffffff;
  transform: translateY(25%);
}

.pm-local-biz-card__logo {
  padding: 6px;
}

.pm-local-biz-card__logo img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.pm-local-biz-card__avatar {
  background: linear-gradient(135deg, var(--pm-blue), var(--pm-cyan));
  color: #ffffff;
  font-size: 20px;
  font-weight: 800;
}

.pm-local-biz-card__body {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  gap: 8px;
  padding: 32px 12px 4px;
}

.pm-local-biz-card__body > .pm-label {
  width: fit-content;
  align-self: flex-start;
  min-height: 24px;
  padding: 5px 10px;
  border: 0 !important;
  border-radius: 999px;
  background: var(--pm-soft) !important;
  color: var(--pm-blue) !important;
  box-shadow: none !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 0 !important;
  line-height: 1 !important;
  text-transform: uppercase;
}

.pm-local-biz-card__body > a {
  color: inherit !important;
  text-decoration: none !important;
}

.pm-local-biz-card h3 {
  margin: 0 !important;
  color: #102a43 !important;
  font-family: "Segoe UI", system-ui, -apple-system, BlinkMacSystemFont, sans-serif !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  letter-spacing: 0 !important;
  line-height: 1.26 !important;
}

.pm-local-biz-card h3:hover {
  color: var(--pm-blue) !important;
}

.pm-local-biz-card__location {
  margin: 0 !important;
  color: var(--pm-blue) !important;
  font-size: 11px !important;
  font-weight: 500 !important;
  letter-spacing: 0 !important;
  line-height: 1.35 !important;
}

.pm-local-biz-card__description {
  margin: 0 !important;
  color: var(--pm-muted) !important;
  font-size: 12px !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
  line-height: 1.5 !important;
}

.pm-local-biz-card__support {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-top: 2px;
}

.pm-local-biz-card__support-logo {
  display: grid;
  width: 44px;
  height: 44px;
  flex: 0 0 44px;
  place-items: center;
  overflow: hidden;
  padding: 2px;
  border-radius: 999px;
  background: #ffffff;
  box-shadow: var(--pm-soft-shadow);
  outline: 1px solid var(--pm-border);
}

.pm-local-biz-card__support-logo img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.pm-local-biz-card__support > div {
  flex: 1 1 auto;
  min-width: 0;
  padding: 8px 12px;
  border: 1px solid var(--pm-border);
  border-radius: 16px;
  background: rgba(238, 248, 251, 0.6);
}

.pm-local-biz-card__support p {
  margin: 0 !important;
  color: var(--pm-navy) !important;
  font-size: 11px !important;
  font-weight: 800 !important;
  line-height: 1.25 !important;
}

.pm-local-biz-card__support span {
  display: block;
  margin-top: 2px;
  color: var(--pm-muted) !important;
  font-size: 10px !important;
  line-height: 1.25 !important;
}

.pm-local-biz-card__body > a.pm-local-biz-card__link {
  margin-top: auto;
  padding-top: 4px;
  color: #102a43 !important;
  font-size: 14px;
  font-weight: 800;
  letter-spacing: 0;
  line-height: 1.2;
  text-decoration: none !important;
}

.pm-local-biz-card__body > a.pm-local-biz-card__link:hover {
  color: var(--pm-navy) !important;
}

.pm-local-biz-load-more {
  margin-top: 28px !important;
  margin-bottom: 48px !important;
  text-align: center !important;
}

.pm-local-biz-load-more .pm-shop-load-more__button {
  min-width: 132px !important;
  min-height: 42px !important;
  border: 1px solid #057ea2 !important;
  border-radius: 999px !important;
  background: #ffffff !important;
  color: #057ea2 !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  box-shadow: none !important;
}

.pm-local-biz-load-more .pm-shop-load-more__button:hover,
.pm-local-biz-load-more .pm-shop-load-more__button:focus {
  background: rgba(5, 126, 162, 0.08) !important;
  color: #057ea2 !important;
}

.pm-local-biz-offers {
  padding-top: 12px;
  padding-bottom: 32px;
}

.pm-local-biz-offers__carousel {
  display: flex;
  align-items: center;
  gap: 12px;
}

.pm-local-biz-offers__track {
  display: flex;
  flex: 1 1 auto;
  gap: 16px;
  align-items: stretch;
  min-width: 0;
  padding-bottom: 8px;
  overflow-x: auto;
  scroll-behavior: smooth;
  scroll-snap-type: x mandatory;
  scrollbar-width: none;
}

.pm-local-biz-offers__track::-webkit-scrollbar {
  display: none;
}

.pm-local-biz-offers__slide {
  display: flex;
  width: calc((100% - 48px) / 4);
  min-width: calc((100% - 48px) / 4);
  flex: 0 0 calc((100% - 48px) / 4);
  scroll-snap-align: start;
}

.pm-local-biz-offer-card {
  display: flex;
  width: 100%;
  min-height: 312px;
  flex-direction: column;
  overflow: hidden;
  padding: 12px;
  transition: transform 0.16s ease, box-shadow 0.16s ease;
}

.pm-local-biz-offer-card:hover {
  transform: translateY(-2px);
  box-shadow: var(--pm-soft-shadow);
}

.pm-local-biz-offer-card__media {
  position: relative;
  display: block;
  aspect-ratio: 4 / 3;
  overflow: hidden;
  border: 1px solid var(--pm-border);
  border-radius: 18px;
  background: #ffffff;
  text-decoration: none !important;
}

.pm-local-biz-offer-card__media > img {
  display: block;
  width: 100%;
  height: 100%;
  border-radius: inherit;
  object-fit: cover;
}

.pm-local-biz-offer-card__media::after {
  position: absolute;
  inset: 0;
  border-radius: inherit;
  content: "";
  pointer-events: none;
  background: linear-gradient(0deg, rgba(7, 32, 57, 0.22), transparent 50%);
}

.pm-local-biz-offer-card__avatar {
  position: absolute;
  top: 12px;
  left: 12px;
  z-index: 2;
  display: grid;
  width: 44px;
  height: 44px;
  place-items: center;
  border-radius: 999px;
  background: linear-gradient(135deg, var(--pm-blue), var(--pm-cyan));
  color: #ffffff;
  font-size: 10px;
  font-weight: 800;
  line-height: 1;
  box-shadow: var(--pm-soft-shadow);
  outline: 2px solid #ffffff;
}

.pm-local-biz-offer-card__body {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  gap: 6px;
  padding: 12px;
}

.pm-local-biz-offer-card__body > a {
  color: inherit !important;
  text-decoration: none !important;
}

.pm-local-biz-offer-card h3 {
  margin: 0 !important;
  color: #102a43 !important;
  font-family: "Segoe UI", system-ui, -apple-system, BlinkMacSystemFont, sans-serif !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  letter-spacing: 0 !important;
  line-height: 1.28 !important;
}

.pm-local-biz-offer-card h3:hover {
  color: var(--pm-blue) !important;
}

.pm-local-biz-offer-card__body > p {
  margin: 0 !important;
  color: var(--pm-blue) !important;
  font-size: 16px !important;
  font-weight: 800 !important;
  letter-spacing: 0 !important;
  line-height: 1.25 !important;
}

.pm-local-biz-offer-card__body > a.pm-local-biz-offer-card__link {
  margin-top: auto;
  padding-top: 4px;
  color: var(--pm-blue) !important;
  font-size: 14px;
  font-weight: 800;
  letter-spacing: 0;
  line-height: 1.2;
  text-decoration: none !important;
}

.pm-local-biz-offer-card__body > a.pm-local-biz-offer-card__link:hover {
  color: var(--pm-navy) !important;
}

.pm-local-biz-offers__nav {
  display: grid;
  width: 40px;
  height: 40px;
  flex: 0 0 40px;
  place-items: center;
  padding: 0;
  border: 1px solid var(--pm-border);
  border-radius: 999px;
  background: #ffffff;
  color: var(--pm-navy);
  box-shadow: var(--pm-card-shadow);
  transition: border-color 0.15s ease, color 0.15s ease, opacity 0.15s ease;
}

.pm-local-biz-offers__nav:hover {
  border-color: var(--pm-blue);
  color: var(--pm-blue);
}

.pm-local-biz-offers__nav:disabled {
  cursor: not-allowed;
  opacity: 0;
}

.pm-local-biz-offers__nav svg {
  width: 20px;
  height: 20px;
  fill: none;
  stroke: currentColor;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.pm-local-biz-cta .pm-dark-panel {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  padding: 40px !important;
  border: 0 !important;
  background:
    radial-gradient(circle at 12% 18%, rgba(69, 177, 225, 0.26), transparent 28%),
    linear-gradient(135deg, #082843 0%, #0b3454 48%, #057ea2 100%) !important;
  color: #ffffff;
}

.pm-local-biz-cta h2 {
  margin: 0 !important;
  color: #ffffff !important;
  font-size: 22px !important;
  font-weight: 800 !important;
  line-height: 1.25 !important;
}

.pm-local-biz-cta p {
  max-width: 760px;
  margin: 6px 0 0 !important;
  color: rgba(255, 255, 255, 0.82) !important;
  font-size: 14px !important;
  line-height: 1.55 !important;
}

.pm-local-biz-cta .pm-btn {
  flex: 0 0 auto;
  background: #ffffff !important;
  color: var(--pm-navy) !important;
  box-shadow: none !important;
}

@media (max-width: 991px) {
  .pm-local-biz-filter-toggle {
    display: inline-flex;
  }

  .pm-local-biz-directory {
    display: block;
  }

  .pm-local-biz-sidebar {
    position: fixed;
    z-index: 10002;
    top: 0;
    bottom: 0;
    left: 0;
    width: min(330px, calc(100vw - 38px));
    padding: 18px;
    overflow-y: auto;
    background: #ffffff;
    border: 0;
    border-radius: 0;
    box-shadow: 24px 0 48px rgba(15, 95, 139, 0.16);
    transform: translateX(-110%);
    transition: transform 0.2s ease;
  }

  .pm-local-biz-filter-rail {
    display: none;
  }

  .pm-local-biz-page.pm-local-biz-filters-open .pm-local-biz-sidebar {
    transform: translateX(0);
  }

  .pm-local-biz-page.pm-local-biz-filters-open .pm-local-biz-filter-backdrop {
    position: fixed;
    z-index: 10001;
    inset: 0;
    display: block;
    background: rgba(8, 27, 45, 0.32);
  }

  .pm-local-biz-filter-backdrop[hidden] {
    display: none !important;
  }

  .pm-local-biz-sidebar__card {
    width: 100%;
    min-height: 100%;
    padding: 22px 18px;
    border: 1px solid #d9e8ff;
    border-radius: 24px;
    background: #ffffff;
    opacity: 1;
    pointer-events: auto;
  }

  .pm-local-biz-sidebar__close {
    display: inline-flex;
  }

  .pm-local-biz-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .pm-local-biz-offers__slide {
    width: calc((100% - 16px) / 2);
    min-width: calc((100% - 16px) / 2);
    flex-basis: calc((100% - 16px) / 2);
  }

  .pm-local-biz-cta .pm-dark-panel {
    align-items: flex-start;
    flex-direction: column;
  }
}

@media (max-width: 767px) {
  .pm-local-biz-search,
  .pm-local-biz-tabs,
  .pm-local-biz-section {
    padding-right: 16px;
    padding-left: 16px;
  }

  .pm-local-biz-search__form {
    align-items: stretch;
    flex-direction: column;
  }

  .pm-local-biz-search__field,
  .pm-local-biz-filter-pill,
  .pm-local-biz-search__submit {
    width: 100%;
  }

  .pm-local-biz-filter-pill,
  .pm-local-biz-search__submit {
    justify-content: center;
  }

  .pm-local-biz-search__field {
    min-height: 48px;
  }

  .pm-local-biz-search__field .pm-input {
    font-size: 15px;
  }

  .pm-local-biz-tabs > div {
    gap: 10px;
  }

  .pm-local-biz-tabs .pm-chip {
    min-height: 42px;
    padding: 0 14px;
    font-size: 14px;
  }

  .pm-local-biz-grid {
    grid-template-columns: 1fr;
  }

  .pm-local-biz-card {
    min-height: 0;
  }

  .pm-local-biz-offers__carousel {
    gap: 0;
  }

  .pm-local-biz-offers__track {
    gap: 16px;
  }

  .pm-local-biz-offers__slide {
    width: 78%;
    min-width: 78%;
    flex-basis: 78%;
  }

  .pm-local-biz-offers__nav {
    display: none;
  }

  .pm-local-biz-cta .pm-dark-panel {
    padding: 28px 24px !important;
  }
}

/* Common listing-page width and breadcrumb parity. */
.pm-shop-page .pm-shop-hero,
.pm-shop-page .pm-shop-steps,
.pm-shop-page .pm-shop-sponsor,
.pm-shop-page .pm-shop-sponsorships,
.pm-shop-page .pm-shop-impact,
.pm-shop-page > .ps-container,
.pm-give-page .pm-shop-hero,
.pm-give-page .pm-shop-steps,
.pm-give-page .pm-shop-sponsor,
.pm-give-page .pm-shop-listing,
.pm-communities-page .pm-communities-hero,
.pm-communities-page .pm-communities-section,
.pm-local-biz-page .pm-local-biz-search,
.pm-local-biz-page .pm-local-biz-tabs,
.pm-local-biz-page .pm-local-biz-section {
  width: min(1280px, 100%) !important;
  max-width: 1280px !important;
  margin-right: auto !important;
  margin-left: auto !important;
  padding-right: 24px !important;
  padding-left: 24px !important;
}

.pm-shop-page > .ps-container,
.pm-give-page .pm-shop-listing {
  box-sizing: border-box !important;
}

.pm-shop-page .ps-layout--shop,
.pm-shop-page .ps-layout__right,
.pm-shop-page .ps-shopping,
.pm-give-page .ps-shopping,
.pm-shop-page .pm-shop-listing__grid,
.pm-shop-page .pm-shop-results,
.pm-give-page .pm-shop-results {
  width: 100% !important;
  max-width: 100% !important;
}

body .pm-give-page .pm-shop-listing {
  width: min(1280px, 100%) !important;
  max-width: 1280px !important;
  margin-right: auto !important;
  margin-left: auto !important;
  padding-right: 16px !important;
  padding-left: 16px !important;
}

body .pm-shop-page .pm-shop-results,
body .pm-give-page .pm-shop-results {
  width: 100% !important;
  max-width: 100% !important;
  margin-right: 0 !important;
  margin-left: 0 !important;
}

body .pm-give-page.page-donations {
  padding-top: 65px !important;
}

.pm-donations-breadcrumb.ps-breadcrumb,
.pm-communities-breadcrumb.ps-breadcrumb {
  width: 100% !important;
  max-width: none !important;
  margin-right: 0 !important;
  margin-left: 0 !important;
  background: transparent !important;
}

.pm-donations-breadcrumb .ps-container,
.pm-communities-breadcrumb .ps-container {
  width: min(1280px, 100%) !important;
  max-width: 1280px !important;
  margin-right: auto !important;
  margin-left: auto !important;
  padding-right: 16px !important;
  padding-left: 16px !important;
}

.pm-donations-breadcrumb .breadcrumb-custom,
.pm-communities-breadcrumb .breadcrumb-custom {
  display: flex !important;
  gap: 7px !important;
  align-items: center !important;
  min-height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  color: #475569 !important;
  font-family: var(--pm-font-sans) !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  letter-spacing: 0 !important;
  line-height: 1.4 !important;
}

.pm-donations-breadcrumb .breadcrumb-custom a,
.pm-communities-breadcrumb .breadcrumb-custom a {
  color: #334155 !important;
  font-weight: 500 !important;
  text-decoration: none !important;
}

.pm-donations-breadcrumb .breadcrumb-custom a:hover,
.pm-communities-breadcrumb .breadcrumb-custom a:hover {
  color: var(--pm-blue) !important;
}

.pm-donations-breadcrumb .breadcrumb-custom span[aria-hidden="true"],
.pm-communities-breadcrumb .breadcrumb-custom span[aria-hidden="true"] {
  color: #94a3b8 !important;
  font-weight: 500 !important;
}

.pm-donations-breadcrumb .breadcrumb-custom span:last-child,
.pm-communities-breadcrumb .breadcrumb-custom span:last-child {
  color: var(--pm-navy) !important;
  font-weight: 800 !important;
}

/* Home ecosystem sponsors: auto-scrolling partner logo marquee. */
.pm-ecosystem__sponsors-marquee {
  position: relative !important;
  overflow: hidden !important;
  width: 100% !important;
  margin-top: 18px !important;
  padding: 6px 0 !important;
  mask-image: linear-gradient(90deg, transparent, #000000 8%, #000000 92%, transparent) !important;
}

.pm-ecosystem__sponsors-marquee:hover .pm-ecosystem__sponsors-track {
  animation-play-state: paused !important;
}

.pm-ecosystem__sponsors-track {
  display: flex !important;
  width: max-content !important;
  min-width: 100% !important;
  align-items: center !important;
  gap: 14px !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
  animation: pmSponsorMarquee 26s linear infinite !important;
  will-change: transform !important;
}

.pm-ecosystem__sponsors-track li {
  display: inline-flex !important;
  width: auto !important;
  min-width: 210px !important;
  height: 72px !important;
  align-items: center !important;
  gap: 12px !important;
  margin: 0 !important;
  padding: 12px 16px !important;
  border: 1px solid #dbeafe !important;
  border-radius: 999px !important;
  background: rgba(255, 255, 255, 0.94) !important;
  color: var(--pm-navy) !important;
  box-shadow: 0 14px 34px rgba(8, 40, 67, 0.08) !important;
  white-space: nowrap !important;
}

.pm-ecosystem__sponsor-logo {
  display: grid !important;
  width: 44px !important;
  height: 44px !important;
  flex: 0 0 44px !important;
  place-items: center !important;
  border-radius: 16px !important;
  background: linear-gradient(135deg, var(--pm-blue), var(--pm-cyan)) !important;
  color: #ffffff !important;
  font-size: 14px !important;
  font-weight: 900 !important;
  letter-spacing: 0.04em !important;
  line-height: 1 !important;
  box-shadow: 0 12px 24px rgba(13, 145, 184, 0.18) !important;
}

.pm-ecosystem__sponsors-track li > span:last-child {
  overflow: hidden !important;
  color: var(--pm-navy) !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  line-height: 18px !important;
  text-overflow: ellipsis !important;
}

@keyframes pmSponsorMarquee {
  from {
    transform: translate3d(0, 0, 0);
  }

  to {
    transform: translate3d(-50%, 0, 0);
  }
}

@media (prefers-reduced-motion: reduce) {
  .pm-ecosystem__sponsors-track {
    animation: none !important;
  }
}

@media (max-width: 767px) {
  .pm-ecosystem__sponsors-track li {
    min-width: 180px !important;
    height: 64px !important;
    padding: 10px 14px !important;
  }

  .pm-ecosystem__sponsor-logo {
    width: 38px !important;
    height: 38px !important;
    flex-basis: 38px !important;
    border-radius: 14px !important;
    font-size: 13px !important;
  }
}

/* Home ecosystem sponsors marquee: preserve original chip look, only animate horizontally. */
.pm-ecosystem__sponsors .pm-ecosystem__sponsors-marquee {
  margin-top: 16px !important;
  padding: 2px 0 !important;
}

.pm-ecosystem__sponsors .pm-ecosystem__sponsors-track {
  gap: 10px !important;
}

.pm-ecosystem__sponsors .pm-ecosystem__sponsors-track li {
  width: auto !important;
  min-width: 0 !important;
  height: auto !important;
  gap: 0 !important;
  padding: 10px 14px !important;
  border: 1px solid var(--pm-border) !important;
  border-radius: 999px !important;
  background: #ffffff !important;
  color: var(--pm-navy) !important;
  font-size: 13px !important;
  font-weight: 800 !important;
  line-height: 18px !important;
  box-shadow: 0 10px 22px rgba(8, 40, 67, 0.06) !important;
}

/* Home fixes: keep preferred partners visually identical, but make the row a marquee. */
.pm-ecosystem__sponsors .pm-ecosystem__sponsors-marquee {
  position: relative !important;
  overflow: hidden !important;
  width: 100% !important;
  margin-top: 14px !important;
  padding: 0 !important;
  mask-image: linear-gradient(90deg, transparent, #000000 4%, #000000 96%, transparent) !important;
}

.pm-ecosystem__sponsors ul.pm-ecosystem__sponsors-track {
  display: flex !important;
  width: max-content !important;
  min-width: 100% !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 16px !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
  animation: pmSponsorMarquee 26s linear infinite !important;
  will-change: transform !important;
}

.pm-ecosystem__sponsors .pm-ecosystem__sponsors-marquee:hover ul.pm-ecosystem__sponsors-track {
  animation-play-state: paused !important;
}

.pm-ecosystem__sponsors ul.pm-ecosystem__sponsors-track li {
  display: inline-flex !important;
  width: auto !important;
  min-width: 212px !important;
  min-height: 0 !important;
  height: 64px !important;
  align-items: center !important;
  gap: 12px !important;
  margin: 0 !important;
  padding: 10px 18px 10px 10px !important;
  border: 1px solid var(--pm-border) !important;
  border-radius: 16px !important;
  background: #ffffff !important;
  box-shadow: 0 12px 28px rgba(8, 40, 67, 0.07) !important;
  color: var(--pm-navy) !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  line-height: 18px !important;
  letter-spacing: 0 !important;
  white-space: nowrap !important;
  filter: none !important;
  transition: border-color 0.15s ease, box-shadow 0.15s ease, transform 0.15s ease !important;
}

.pm-ecosystem__sponsors ul.pm-ecosystem__sponsors-track .pm-ecosystem__sponsor-logo {
  display: grid !important;
  width: 42px !important;
  height: 42px !important;
  flex: 0 0 42px !important;
  place-items: center !important;
  overflow: hidden !important;
  border-radius: 12px !important;
  background: #8b8f95 !important;
  color: #ffffff !important;
  font-size: 13px !important;
  font-weight: 900 !important;
  letter-spacing: 0 !important;
  line-height: 1 !important;
  box-shadow: none !important;
}

.pm-ecosystem__sponsors ul.pm-ecosystem__sponsors-track .pm-ecosystem__sponsor-logo img {
  width: 100% !important;
  height: 100% !important;
  padding: 5px !important;
  border-radius: inherit !important;
  background: #ffffff !important;
  object-fit: contain !important;
}

.pm-ecosystem__sponsors ul.pm-ecosystem__sponsors-track li > span:last-child {
  max-width: 160px !important;
  overflow: hidden !important;
  color: #0b3454 !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  line-height: 18px !important;
  text-overflow: ellipsis !important;
}

.pm-ecosystem__sponsors ul.pm-ecosystem__sponsors-track li:hover {
  border-color: #cfe5ff !important;
  box-shadow: 0 16px 34px rgba(8, 40, 67, 0.10) !important;
  transform: translateY(-1px) !important;
}

.pm-give-section .pm-give-card__media > span {
  width: 80px !important;
  height: 80px !important;
  padding: 6px !important;
  border-radius: 16px !important;
}

.pm-give-page .pm-donations-grid .pm-give-card__media > span {
  position: absolute !important;
  z-index: 2 !important;
  right: 12px !important;
  bottom: 0 !important;
  width: 80px !important;
  height: 80px !important;
  padding: 6px !important;
  border: 0 !important;
  border-radius: 16px !important;
  background: #ffffff !important;
  box-shadow: 0 18px 35px rgba(8, 40, 67, 0.12) !important;
  outline: 2px solid #ffffff !important;
  transform: translateY(25%) !important;
}

.pm-give-page .pm-donations-grid .pm-give-card__media > span img {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
}

.pm-review-card__avatar {
  font-size: 14px !important;
}

@media (max-width: 767px) {
  .pm-ecosystem__sponsors ul.pm-ecosystem__sponsors-track {
    gap: 12px !important;
  }

  .pm-ecosystem__sponsors ul.pm-ecosystem__sponsors-track li {
    min-width: 178px !important;
    height: 58px !important;
    gap: 10px !important;
    padding: 9px 14px 9px 9px !important;
    font-size: 16px !important;
    line-height: 24px !important;
  }

  .pm-ecosystem__sponsors ul.pm-ecosystem__sponsors-track .pm-ecosystem__sponsor-logo {
    width: 36px !important;
    height: 36px !important;
    flex-basis: 36px !important;
    border-radius: 10px !important;
    font-size: 12px !important;
  }
}

/* Cart page: Vercel parity for /cart. */
.pm-cart-page,
.pm-cart-page :where(h1, h2, h3, h4, h5, h6, p, a, span, small, strong, input, button, table, th, td) {
  font-family: var(--pm-font-inter) !important;
  letter-spacing: 0 !important;
}

.pm-cart-page {
  color: var(--pm-ink);
  padding-top: 65px !important;
}

.pm-cart-breadcrumb.ps-breadcrumb {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
}

.pm-cart-breadcrumb .ps-container,
.pm-cart-hero,
.pm-cart-content__inner {
  box-sizing: border-box !important;
  width: min(1280px, 100%) !important;
  max-width: 1280px !important;
  margin-right: auto !important;
  margin-left: auto !important;
  padding-right: 24px !important;
  padding-left: 24px !important;
}

.pm-cart-breadcrumb .ps-container {
  padding-top: 16px !important;
  padding-bottom: 12px !important;
}

.pm-cart-breadcrumb .breadcrumb-custom {
  display: flex !important;
  align-items: center !important;
  gap: 6px !important;
  min-height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow-x: auto !important;
  color: var(--pm-muted) !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  line-height: 17px !important;
  white-space: nowrap !important;
}

.pm-cart-breadcrumb .breadcrumb-custom a {
  color: #334155 !important;
  font-weight: 500 !important;
  text-decoration: none !important;
}

.pm-cart-breadcrumb .breadcrumb-custom a:hover {
  color: var(--pm-blue) !important;
}

.pm-cart-breadcrumb .breadcrumb-custom span[aria-hidden="true"] {
  color: #94a3b8 !important;
  font-weight: 500 !important;
}

.pm-cart-breadcrumb .breadcrumb-custom span:last-child {
  color: var(--pm-navy) !important;
  font-weight: 700 !important;
}

.pm-cart-hero {
  padding-top: 10px !important;
  padding-bottom: 12px !important;
}

.pm-cart-hero__panel {
  position: relative;
  isolation: isolate;
  min-height: 171px;
  overflow: hidden;
  padding: 38px 36px;
  border: 1px solid rgba(219, 234, 254, 0.86);
  border-radius: 24px;
  background: var(--pm-navy);
  box-shadow: 0 18px 50px rgba(2, 80, 110, 0.08);
}

.pm-cart-hero__panel > img,
.pm-cart-hero__overlay {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}

.pm-cart-hero__panel > img {
  z-index: -2;
  display: block;
  object-fit: cover;
  object-position: center 58%;
}

.pm-cart-hero__overlay {
  z-index: -1;
  background: linear-gradient(90deg, rgba(11, 52, 84, 0.92), rgba(11, 52, 84, 0.76) 50%, rgba(11, 52, 84, 0.40));
}

.pm-cart-hero__content {
  max-width: 580px;
}

.pm-cart-hero h1 {
  margin: 0 !important;
  color: #ffffff !important;
  font-size: 48px !important;
  font-weight: 800 !important;
  line-height: 1.05 !important;
}

.pm-cart-hero h1 span {
  display: inline !important;
  background: linear-gradient(90deg, var(--pm-blue), var(--pm-cyan));
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent !important;
  -webkit-text-fill-color: transparent;
  font-weight: 800 !important;
}

.pm-cart-hero p {
  max-width: 540px;
  margin: 10px 0 0 !important;
  color: rgba(255, 255, 255, 0.88) !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  line-height: 20px !important;
}

.pm-cart-content {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 32px 0 0 !important;
  background: transparent !important;
}

.pm-cart-content__inner {
  padding-bottom: 48px !important;
}

.pm-cart-empty-card {
  display: flex;
  min-height: 269px;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  padding: 40px 24px;
  border: 1px solid var(--pm-border);
  border-radius: 24px;
  background: rgba(255, 255, 255, 0.96);
  box-shadow: 0 18px 50px rgba(2, 80, 110, 0.06);
  text-align: center;
}

.pm-cart-empty-card__icon {
  display: grid;
  width: 56px;
  height: 56px;
  place-items: center;
  border-radius: 999px;
  background: var(--pm-soft);
  color: var(--pm-blue);
}

.pm-cart-empty-card__icon svg {
  width: 30px;
  height: 30px;
}

.pm-cart-empty-card h2 {
  margin: 16px 0 0 !important;
  color: #082843 !important;
  font-size: 18px !important;
  font-weight: 700 !important;
  line-height: 28px !important;
}

.pm-cart-empty-card p {
  margin: 8px 0 0 !important;
  color: #405b86 !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  line-height: 20px !important;
}

.pm-cart-empty-card__actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 8px;
  margin-top: 20px;
}

.pm-cart-button {
  display: inline-flex;
  min-height: 46px;
  align-items: center;
  justify-content: center;
  padding: 12px 22px;
  border: 1px solid transparent;
  border-radius: 999px;
  font-size: 13px !important;
  font-weight: 700 !important;
  line-height: 18px !important;
  text-decoration: none !important;
  white-space: nowrap;
  transition: transform 0.15s ease, box-shadow 0.15s ease, border-color 0.15s ease, color 0.15s ease, background 0.15s ease;
}

.pm-cart-button:hover {
  transform: translateY(-1px);
  text-decoration: none !important;
}

.pm-cart-button--primary {
  color: #ffffff !important;
  background: linear-gradient(90deg, var(--pm-blue), var(--pm-cyan));
  box-shadow: 0 14px 30px rgba(5, 126, 162, 0.25);
}

.pm-cart-button--secondary {
  border-color: var(--pm-border);
  background: #ffffff;
  color: var(--pm-blue) !important;
  box-shadow: none;
}

.pm-cart-content--filled .pm-cart-panel {
  padding: 28px 24px 24px;
  border: 1px solid var(--pm-border);
  border-radius: 30px;
  background: rgba(255, 255, 255, 0.96);
  box-shadow: 0 18px 50px rgba(2, 80, 110, 0.06);
}

.pm-cart-filled__header h2 {
  margin: 0 !important;
  color: #082843 !important;
  font-size: 18px !important;
  font-weight: 700 !important;
  line-height: 24px !important;
}

.pm-cart-filled__header p {
  margin: 6px 0 0 !important;
  color: #405b86 !important;
  font-size: 12px !important;
  font-weight: 400 !important;
  line-height: 18px !important;
}

.pm-cart-items-form {
  margin: 18px 0 0 !important;
}

.pm-cart-content--filled .ps-table--shopping-cart {
  display: grid !important;
  gap: 16px !important;
  margin-bottom: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

.pm-cart-item {
  display: grid;
  grid-template-columns: 110px minmax(0, 1fr) auto;
  align-items: center;
  gap: 14px;
  min-height: 138px;
  padding: 12px 14px;
  border: 1px solid var(--pm-border);
  border-radius: 20px;
  background: #ffffff;
}

.pm-cart-item__media {
  display: block;
  width: 110px;
  height: 110px;
  overflow: hidden;
  border-radius: 12px;
  background: #ffffff;
  text-decoration: none !important;
}

.pm-cart-item__media img {
  display: block;
  width: 100% !important;
  height: 100% !important;
  object-fit: contain;
  object-position: center;
}

.pm-cart-item__body {
  min-width: 0;
}

.pm-cart-item__title {
  display: block;
  overflow: hidden;
  color: #082843 !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  line-height: 18px !important;
  text-decoration: none !important;
  text-overflow: ellipsis;
}

.pm-cart-item__title:hover {
  color: var(--pm-blue) !important;
}

.pm-cart-item__variant {
  margin: 1px 0 0 !important;
  color: #64748b !important;
  font-size: 12px !important;
  font-weight: 400 !important;
  line-height: 16px !important;
}

.pm-cart-item__support {
  margin: 3px 0 0 !important;
  color: var(--pm-blue) !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  line-height: 16px !important;
}

.pm-cart-item__options {
  margin-top: 4px;
  color: #64748b;
  font-size: 12px;
  line-height: 18px;
}

.pm-cart-item__options p,
.pm-cart-item__options small {
  margin: 0 !important;
  color: inherit !important;
  font-size: inherit !important;
  line-height: inherit !important;
}

.pm-cart-item__actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
  margin-top: 10px;
}

.pm-cart-qty.form-group--number {
  position: static !important;
  display: grid !important;
  width: 106px !important;
  height: 38px !important;
  grid-template-columns: 32px 42px 32px !important;
  align-items: center !important;
  overflow: hidden !important;
  border: 1px solid var(--pm-border) !important;
  border-radius: 999px !important;
  background: #ffffff !important;
}

.pm-cart-qty.form-group--number button {
  position: static !important;
  top: auto !important;
  right: auto !important;
  bottom: auto !important;
  left: auto !important;
  display: grid !important;
  width: 32px !important;
  min-width: 32px !important;
  max-width: 32px !important;
  height: 36px !important;
  place-items: center !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  color: var(--pm-blue) !important;
  font-size: 16px !important;
  font-weight: 400 !important;
  line-height: 1 !important;
  transform: none !important;
}

.pm-cart-qty.form-group--number .qty-input {
  width: 42px !important;
  height: 36px !important;
  min-height: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  color: #082843 !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  line-height: 36px !important;
  text-align: center !important;
  box-shadow: none !important;
}

.pm-cart-item__remove {
  color: #405b86 !important;
  font-size: 12px !important;
  font-weight: 400 !important;
  line-height: 16px !important;
  text-decoration: none !important;
}

.pm-cart-item__remove:hover {
  color: var(--pm-blue) !important;
}

.pm-cart-item__price {
  justify-self: end;
  color: #082843 !important;
  font-family: var(--pm-font-segoe) !important;
  font-size: 18px !important;
  font-weight: 800 !important;
  line-height: 24px !important;
  white-space: nowrap;
}

.pm-cart-summary {
  margin-top: 20px;
  padding-top: 20px;
  border-top: 1px solid var(--pm-border);
}

.pm-cart-summary__row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}

.pm-cart-summary__row span {
  color: #082843 !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  line-height: 20px !important;
}

.pm-cart-summary__row strong {
  color: #082843 !important;
  font-family: var(--pm-font-segoe) !important;
  font-size: 26px !important;
  font-weight: 800 !important;
  line-height: 32px !important;
  white-space: nowrap;
}

.pm-cart-checkout-button {
  display: flex;
  width: 100%;
  min-height: 46px;
  align-items: center;
  justify-content: center;
  margin-top: 18px;
  padding: 12px 22px;
  border: 0;
  border-radius: 999px;
  background: linear-gradient(90deg, var(--pm-blue), var(--pm-cyan));
  color: #ffffff !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  line-height: 20px !important;
  text-align: center;
  text-decoration: none !important;
  box-shadow: 0 18px 40px rgba(5, 126, 162, 0.18);
}

.pm-cart-checkout-button:hover {
  color: #ffffff !important;
  text-decoration: none !important;
  transform: translateY(-1px);
}

@media (max-width: 991px) {
  .pm-cart-hero__panel {
    min-height: 164px;
    padding: 34px 30px;
  }

  .pm-cart-hero h1 {
    font-size: 42px !important;
    line-height: 1.08 !important;
  }
}

@media (max-width: 767px) {
  .pm-cart-breadcrumb .ps-container {
    padding-top: 12px !important;
    padding-right: 16px !important;
    padding-bottom: 8px !important;
    padding-left: 16px !important;
  }

  .pm-cart-hero,
  .pm-cart-content__inner {
    padding-right: 16px !important;
    padding-left: 16px !important;
  }

  .pm-cart-hero {
    padding-top: 8px !important;
    padding-bottom: 8px !important;
  }

  .pm-cart-hero__panel {
    min-height: 178px;
    padding: 28px 24px;
    border-radius: 22px;
  }

  .pm-cart-hero__overlay {
    background: linear-gradient(90deg, rgba(11, 52, 84, 0.94), rgba(11, 52, 84, 0.78) 62%, rgba(11, 52, 84, 0.46));
  }

  .pm-cart-hero h1 {
    font-size: 34px !important;
    line-height: 1.12 !important;
  }

  .pm-cart-hero p {
    max-width: 100%;
    font-size: 13px !important;
    line-height: 19px !important;
  }

  .pm-cart-content {
    padding-top: 24px !important;
  }

  .pm-cart-empty-card {
    min-height: 260px;
    padding: 36px 20px;
    border-radius: 22px;
  }

  .pm-cart-content--filled .pm-cart-panel {
    padding: 18px;
    border-radius: 22px;
  }

  .pm-cart-item {
    grid-template-columns: 92px minmax(0, 1fr);
    align-items: start;
    min-height: 0;
    padding: 14px;
  }

  .pm-cart-item__media {
    width: 92px;
    height: 92px;
  }

  .pm-cart-item__title {
    font-size: 15px !important;
    line-height: 20px !important;
  }

  .pm-cart-item__variant,
  .pm-cart-item__support {
    font-size: 12px !important;
    line-height: 17px !important;
  }

  .pm-cart-item__actions {
    gap: 10px;
    margin-top: 10px;
  }

  .pm-cart-item__price {
    grid-column: 2;
    justify-self: start;
    margin-top: 2px;
    font-size: 18px !important;
    line-height: 24px !important;
  }

  .pm-cart-summary__row strong {
    font-size: 26px !important;
    line-height: 32px !important;
  }

  .pm-cart-checkout-button {
    min-height: 56px;
    font-size: 15px !important;
  }
}

@media (max-width: 479px) {
  .pm-cart-empty-card__actions,
  .pm-cart-button {
    width: 100%;
  }
}

/* Cart page: compact Vercel mockup parity. */
.pm-cart-page {
  --pm-cart-blue: var(--pm-blue);
  --pm-cart-blue-dark: var(--pm-navy);
  --pm-cart-navy: var(--pm-navy);
  --pm-cart-ink: var(--pm-ink);
  --pm-cart-muted: var(--pm-muted);
  --pm-cart-line: var(--pm-border);
  --pm-cart-bg: #f5f7fa;
  --pm-cart-card: #ffffff;
  --pm-cart-radius: 12px;
  --pm-cart-shadow: 0 1px 3px rgba(16, 42, 74, 0.06), 0 6px 24px rgba(16, 42, 74, 0.05);
  width: 100% !important;
  min-height: calc(100vh - 80px);
  padding-top: 0 !important;
  background: var(--pm-cart-bg) !important;
  color: var(--pm-cart-ink) !important;
  font-family: var(--pm-font-sans) !important;
}

.pm-cart-page,
.pm-cart-page * {
  box-sizing: border-box;
}

.pm-cart-page :where(h1, h2, h3, h4, h5, h6, p, a, span, small, strong, input, button, label) {
  font-family: var(--pm-font-sans) !important;
  letter-spacing: 0 !important;
}

.pm-cart-page a {
  text-decoration: none !important;
}

.pm-cart-breadcrumb.ps-breadcrumb {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  background: #ffffff !important;
  border-bottom: 1px solid var(--pm-cart-line);
}

.pm-cart-breadcrumb .ps-container,
.pm-cart-content__inner {
  width: min(1180px, 100%) !important;
  max-width: 1180px !important;
  margin: 0 auto !important;
  padding-right: 24px !important;
  padding-left: 24px !important;
}

.pm-cart-breadcrumb .ps-container {
  padding-top: 12px !important;
  padding-bottom: 12px !important;
}

.pm-cart-breadcrumb .breadcrumb-custom {
  display: flex !important;
  align-items: center !important;
  gap: 6px !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow-x: auto;
  color: var(--pm-cart-muted) !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  line-height: 18px !important;
  white-space: nowrap;
}

.pm-cart-breadcrumb .breadcrumb-custom a {
  color: var(--pm-cart-navy) !important;
  font-weight: 600 !important;
}

.pm-cart-breadcrumb .breadcrumb-custom a:hover {
  color: var(--pm-cart-blue) !important;
}

.pm-cart-breadcrumb .breadcrumb-custom span[aria-hidden="true"] {
  color: #9aa8b8 !important;
}

.pm-cart-breadcrumb .breadcrumb-custom span:last-child {
  color: var(--pm-cart-muted) !important;
}

.pm-cart-content {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
}

.pm-cart-content__inner {
  padding-top: 32px !important;
  padding-bottom: 64px !important;
}

.pm-cart-page-head {
  max-width: 650px;
  margin: 0 0 28px;
}

.pm-cart-page-head h1 {
  margin: 0 0 8px !important;
  color: var(--pm-cart-ink) !important;
  font-size: 30px !important;
  font-weight: 800 !important;
  line-height: 1.18 !important;
}

.pm-cart-page-head p {
  max-width: 560px;
  margin: 0 !important;
  color: var(--pm-cart-muted) !important;
  font-size: 15px !important;
  font-weight: 400 !important;
  line-height: 1.5 !important;
}

.pm-cart-layout {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 340px !important;
  gap: 28px !important;
  align-items: start !important;
}

.pm-cart-main {
  min-width: 0;
}

.pm-cart-section-label {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 14px;
  color: var(--pm-cart-blue);
  font-size: 12px;
  font-weight: 800;
  line-height: 1.2;
  text-transform: uppercase;
}

.pm-cart-section-label strong {
  color: var(--pm-cart-blue) !important;
  font-size: inherit !important;
  font-weight: inherit !important;
}

.pm-cart-items-form {
  margin: 0 !important;
}

.pm-cart-content--filled .ps-table--shopping-cart,
.pm-cart-items-list {
  display: grid !important;
  gap: 16px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

.pm-cart-item {
  display: grid !important;
  grid-template-columns: 88px minmax(0, 1fr) auto !important;
  gap: 18px !important;
  align-items: start !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 18px !important;
  border: 1px solid var(--pm-cart-line) !important;
  border-radius: var(--pm-cart-radius) !important;
  background: var(--pm-cart-card) !important;
  box-shadow: var(--pm-cart-shadow) !important;
}

.pm-cart-item__media {
  display: grid !important;
  width: 88px !important;
  height: 88px !important;
  place-items: center;
  overflow: hidden;
  border-radius: 10px !important;
  background: #eef3f8 !important;
}

.pm-cart-item__media img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center !important;
}

.pm-cart-item__body {
  min-width: 0;
}

.pm-cart-item__title {
  display: block;
  margin: 0 0 10px !important;
  color: var(--pm-cart-ink) !important;
  font-size: 15px !important;
  font-weight: 800 !important;
  line-height: 1.35 !important;
}

.pm-cart-item__title:hover {
  color: var(--pm-cart-blue) !important;
}

.pm-cart-item__variant {
  margin: -4px 0 8px !important;
  color: var(--pm-cart-muted) !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  line-height: 1.4 !important;
}

.pm-cart-item__support {
  display: inline-flex !important;
  align-items: center;
  gap: 6px;
  margin: 0 !important;
  color: var(--pm-cart-blue) !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  line-height: 1.35 !important;
}

.pm-cart-item__support svg {
  width: 15px;
  height: 15px;
  flex: 0 0 15px;
}

.pm-cart-item__options {
  margin-top: 8px !important;
  color: var(--pm-cart-muted) !important;
  font-size: 12px !important;
  line-height: 1.45 !important;
}

.pm-cart-item__options p,
.pm-cart-item__options small {
  margin: 0 !important;
  color: inherit !important;
  font-size: inherit !important;
  line-height: inherit !important;
}

.pm-cart-item__actions {
  display: flex !important;
  flex-wrap: wrap;
  align-items: center;
  gap: 20px !important;
  margin-top: 14px !important;
}

.pm-cart-qty.form-group--number {
  position: static !important;
  display: grid !important;
  width: 96px !important;
  height: 32px !important;
  grid-template-columns: 30px 34px 30px !important;
  overflow: hidden !important;
  border: 1px solid var(--pm-cart-line) !important;
  border-radius: 8px !important;
  background: #ffffff !important;
}

.pm-cart-qty.form-group--number button {
  position: static !important;
  display: grid !important;
  width: 30px !important;
  height: 30px !important;
  place-items: center !important;
  padding: 0 !important;
  border: 0 !important;
  background: #ffffff !important;
  color: var(--pm-cart-navy) !important;
  font-size: 16px !important;
  font-weight: 500 !important;
  line-height: 1 !important;
  transform: none !important;
}

.pm-cart-qty.form-group--number button:hover {
  background: #f0f4f8 !important;
}

.pm-cart-qty.form-group--number .qty-input {
  width: 34px !important;
  height: 30px !important;
  min-height: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  color: var(--pm-cart-navy) !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  line-height: 30px !important;
  text-align: center !important;
  box-shadow: none !important;
  appearance: textfield;
}

.pm-cart-qty.form-group--number .qty-input::-webkit-outer-spin-button,
.pm-cart-qty.form-group--number .qty-input::-webkit-inner-spin-button {
  margin: 0;
  appearance: none;
}

.pm-cart-item__remove {
  color: var(--pm-cart-blue) !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  line-height: 1.35 !important;
}

.pm-cart-item__remove:hover {
  color: var(--pm-cart-blue-dark) !important;
  text-decoration: underline !important;
}

.pm-cart-item__price {
  justify-self: end !important;
  color: var(--pm-cart-ink) !important;
  font-size: 16px !important;
  font-weight: 800 !important;
  line-height: 1.3 !important;
  white-space: nowrap;
}

.pm-cart-thanks {
  display: flex;
  gap: 14px;
  align-items: flex-start;
  margin: 20px 0 36px;
  padding: 16px 18px;
  border: 1px solid #d4e6f7;
  border-radius: var(--pm-cart-radius);
  background: #eaf3fb;
}

.pm-cart-thanks > svg {
  width: 26px;
  height: 26px;
  flex: 0 0 26px;
  color: var(--pm-cart-blue);
}

.pm-cart-thanks strong {
  display: block;
  color: var(--pm-cart-ink) !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  line-height: 1.35 !important;
}

.pm-cart-thanks p {
  margin: 4px 0 0 !important;
  color: var(--pm-cart-muted) !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
}

.pm-cart-summary {
  position: sticky;
  top: 92px;
  margin: 0 !important;
  padding: 22px !important;
  border: 1px solid var(--pm-cart-line) !important;
  border-radius: var(--pm-cart-radius) !important;
  background: var(--pm-cart-card) !important;
  box-shadow: var(--pm-cart-shadow) !important;
}

.pm-cart-summary h2 {
  margin: 0 0 18px !important;
  color: var(--pm-cart-ink) !important;
  font-size: 18px !important;
  font-weight: 800 !important;
  line-height: 1.25 !important;
}

.pm-cart-summary__row {
  display: flex !important;
  align-items: baseline;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 8px;
}

.pm-cart-summary__row span {
  color: var(--pm-cart-ink) !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  line-height: 1.35 !important;
}

.pm-cart-summary__row strong {
  color: var(--pm-cart-ink) !important;
  font-size: 15px !important;
  font-weight: 800 !important;
  line-height: 1.35 !important;
  white-space: nowrap;
}

.pm-cart-summary__note {
  margin: 0 0 18px !important;
  color: var(--pm-cart-muted) !important;
  font-size: 12px !important;
  line-height: 1.45 !important;
}

.pm-cart-summary__divider {
  height: 1px;
  margin: 16px 0;
  background: var(--pm-cart-line);
}

.pm-cart-assurance {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 12px;
  color: var(--pm-cart-muted);
  font-size: 13px;
  line-height: 1.35;
}

.pm-cart-assurance svg {
  width: 18px;
  height: 18px;
  flex: 0 0 18px;
  color: var(--pm-cart-blue);
}

.pm-cart-checkout-button,
.pm-cart-continue-button,
.pm-cart-rec-card__add,
.pm-cart-donate__submit,
.pm-cart-button {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  border-radius: 999px !important;
  font-weight: 800 !important;
  text-align: center;
  text-decoration: none !important;
}

.pm-cart-checkout-button {
  width: 100%;
  min-height: 47px;
  margin: 18px 0 12px !important;
  padding: 13px 18px !important;
  border: 1.5px solid transparent !important;
  background: var(--pm-cart-blue) !important;
  color: #ffffff !important;
  font-size: 15px !important;
  box-shadow: none !important;
}

.pm-cart-checkout-button:hover {
  background: var(--pm-cart-blue-dark) !important;
  color: #ffffff !important;
  transform: none !important;
}

.pm-cart-continue-button {
  width: 100%;
  min-height: 47px;
  padding: 12px 18px !important;
  border: 1.5px solid var(--pm-cart-blue) !important;
  background: #ffffff !important;
  color: var(--pm-cart-blue) !important;
  font-size: 15px !important;
}

.pm-cart-continue-button:hover {
  background: #eaf3fb !important;
  color: var(--pm-cart-blue-dark) !important;
}

.pm-cart-recommendations {
  margin-top: 8px;
}

.pm-cart-recommendations > h2 {
  margin: 0 0 18px !important;
  color: var(--pm-cart-ink) !important;
  font-size: 17px !important;
  font-weight: 800 !important;
  line-height: 1.3 !important;
}

.pm-cart-rec-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
}

.pm-cart-rec-carousel {
  grid-column: span 2;
  min-width: 0;
}

.pm-cart-rec-carousel--full {
  grid-column: 1 / -1;
}

.pm-cart-rec-carousel__viewport {
  width: 100%;
  overflow: hidden;
}

.pm-cart-rec-carousel__track {
  display: flex;
  align-items: stretch;
  gap: 16px;
  width: 100%;
  will-change: transform;
}

.pm-cart-rec-carousel__track > .pm-cart-rec-card {
  flex: 0 0 calc((100% - 16px) / 2);
}

.pm-cart-rec-card {
  display: flex;
  min-width: 0;
  min-height: 100%;
  flex-direction: column;
  padding: 14px;
  border: 1px solid var(--pm-cart-line);
  border-radius: var(--pm-cart-radius);
  background: var(--pm-cart-card);
  box-shadow: var(--pm-cart-shadow);
}

.pm-cart-rec-card__image {
  display: grid;
  width: 100%;
  height: 110px;
  place-items: center;
  overflow: hidden;
  margin-bottom: 12px;
  border-radius: 8px;
  background: #eef3f8;
}

.pm-cart-rec-card__image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.pm-cart-rec-card h3 {
  margin: 0 0 6px !important;
  color: var(--pm-cart-ink) !important;
  font-family: "Segoe UI", system-ui, -apple-system, BlinkMacSystemFont, sans-serif !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  line-height: 1.3 !important;
}

.pm-cart-rec-card h3 a {
  color: inherit !important;
  font-family: "Segoe UI", system-ui, -apple-system, BlinkMacSystemFont, sans-serif !important;
  font-weight: 800 !important;
  text-decoration: none !important;
}

.pm-cart-rec-card h3 a:hover,
.pm-cart-rec-card h3 a:focus {
  color: var(--pm-cart-blue) !important;
  text-decoration: none !important;
}

.pm-cart-rec-card p {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  margin: 0 !important;
  color: var(--pm-cart-blue) !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  line-height: 1.35 !important;
}

.pm-cart-rec-card p svg {
  width: 13px;
  height: 13px;
  flex: 0 0 13px;
}

.pm-cart-rec-card footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-top: auto;
  padding-top: 12px;
}

.pm-cart-rec-card footer strong {
  color: var(--pm-cart-ink) !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  white-space: nowrap;
}

.pm-cart-rec-card__add {
  min-height: 32px;
  padding: 6px 16px !important;
  border: 1px solid var(--pm-cart-blue) !important;
  background: #ffffff !important;
  color: var(--pm-cart-blue) !important;
  font-size: 13px !important;
}

.pm-cart-rec-card__add:hover {
  background: var(--pm-cart-blue) !important;
  color: #ffffff !important;
}

.pm-cart-donate {
  display: grid;
  grid-column: span 2;
  grid-template-columns: 46px minmax(0, 1fr);
  grid-template-areas:
    "icon text"
    "form form"
    "foot foot";
  align-content: center;
  align-items: center;
  gap: 14px 16px;
  min-width: 0;
  min-height: 100%;
  margin: 0;
  padding: 22px 24px;
  border: 1px solid var(--pm-cart-line);
  border-radius: var(--pm-cart-radius);
  background: var(--pm-cart-card);
  box-shadow: var(--pm-cart-shadow);
}

.pm-cart-donate__icon {
  grid-area: icon;
  display: grid;
  width: 46px;
  height: 46px;
  flex: 0 0 46px;
  place-items: center;
  border-radius: 12px;
  background: #eaf3fb;
  color: var(--pm-cart-blue);
}

.pm-cart-donate__icon svg {
  width: 26px;
  height: 26px;
}

.pm-cart-donate__text {
  grid-area: text;
  min-width: 0;
}

.pm-cart-donate__eyebrow {
  display: block;
  margin-bottom: 3px;
  color: var(--pm-cart-blue) !important;
  font-size: 11px !important;
  font-weight: 800 !important;
  line-height: 1.2 !important;
  text-transform: uppercase;
}

.pm-cart-donate__text h2 {
  margin: 0 !important;
  color: var(--pm-cart-ink) !important;
  font-family: "Segoe UI", system-ui, -apple-system, BlinkMacSystemFont, sans-serif !important;
  font-size: 16px !important;
  font-weight: 800 !important;
  line-height: 1.3 !important;
}

.pm-cart-donate__title-link {
  color: inherit !important;
  font-family: "Segoe UI", system-ui, -apple-system, BlinkMacSystemFont, sans-serif !important;
  font-weight: 800 !important;
  text-decoration: none !important;
}

.pm-cart-donate__title-link:hover,
.pm-cart-donate__title-link:focus {
  color: var(--pm-cart-blue) !important;
  text-decoration: none !important;
}

.pm-cart-donate__text p {
  margin: 4px 0 0 !important;
  color: var(--pm-cart-muted) !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
}

.pm-cart-donate__form {
  grid-area: form;
  min-width: 0;
}

.pm-cart-donate__amounts {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-start;
  gap: 8px;
}

.pm-cart-donate__amount,
.pm-cart-donate__custom {
  min-height: 38px;
  border: 1px solid var(--pm-cart-line) !important;
  border-radius: 8px !important;
  background: #ffffff !important;
  color: var(--pm-cart-navy) !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  line-height: 1 !important;
}

.pm-cart-donate__amount {
  padding: 9px 16px !important;
}

.pm-cart-donate__amount:hover,
.pm-cart-donate__amount.is-active {
  border-color: var(--pm-cart-blue) !important;
  background: var(--pm-cart-blue) !important;
  color: #ffffff !important;
}

.pm-cart-donate__custom {
  width: 130px;
  padding: 9px 14px !important;
}

.pm-cart-donate__custom:focus,
.pm-cart-donate__custom.is-active {
  border-color: var(--pm-cart-blue) !important;
  outline: 0;
  box-shadow: 0 0 0 3px rgba(27, 111, 196, 0.16) !important;
}

.pm-cart-donate__submit {
  min-height: 40px;
  padding: 10px 22px !important;
  border: 0 !important;
  background: var(--pm-cart-blue) !important;
  color: #ffffff !important;
  font-size: 14px !important;
}

.pm-cart-donate__submit:hover {
  background: var(--pm-cart-blue-dark) !important;
}

.pm-cart-donate__foot {
  grid-area: foot;
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 0 !important;
  color: var(--pm-cart-muted) !important;
  font-size: 12px !important;
  line-height: 1.35 !important;
}

.pm-cart-donate__foot svg {
  width: 14px;
  height: 14px;
  flex: 0 0 14px;
}

.pm-cart-empty-card {
  display: flex;
  min-height: 300px;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  padding: 40px 24px;
  border: 1px solid var(--pm-cart-line);
  border-radius: var(--pm-cart-radius);
  background: #ffffff;
  box-shadow: var(--pm-cart-shadow);
  text-align: center;
}

.pm-cart-empty-card__icon {
  display: grid;
  width: 56px;
  height: 56px;
  place-items: center;
  border-radius: 999px;
  background: #eaf3fb;
  color: var(--pm-cart-blue);
}

.pm-cart-empty-card h2 {
  margin: 16px 0 0 !important;
  color: var(--pm-cart-ink) !important;
  font-size: 20px !important;
  font-weight: 800 !important;
  line-height: 1.3 !important;
}

.pm-cart-empty-card p {
  margin: 8px 0 0 !important;
  color: var(--pm-cart-muted) !important;
  font-size: 14px !important;
  line-height: 1.45 !important;
}

.pm-cart-empty-card__actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 10px;
  margin-top: 22px;
}

.pm-cart-button {
  min-height: 44px;
  padding: 11px 22px !important;
  border: 1.5px solid transparent !important;
  font-size: 14px !important;
}

.pm-cart-button--primary {
  background: var(--pm-cart-blue) !important;
  color: #ffffff !important;
}

.pm-cart-button--secondary {
  border-color: var(--pm-cart-blue) !important;
  background: #ffffff !important;
  color: var(--pm-cart-blue) !important;
}

@media (max-width: 991px) {
  .pm-cart-layout {
    grid-template-columns: 1fr !important;
  }

  .pm-cart-summary {
    position: static !important;
  }

  .pm-cart-rec-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .pm-cart-rec-carousel {
    grid-column: 1 / -1;
  }

  .pm-cart-donate__amounts {
    justify-content: flex-start;
  }
}

@media (max-width: 767px) {
  .pm-cart-breadcrumb .ps-container,
  .pm-cart-content__inner {
    padding-right: 16px !important;
    padding-left: 16px !important;
  }

  .pm-cart-content__inner {
    padding-top: 24px !important;
    padding-bottom: 48px !important;
  }

  .pm-cart-page-head h1 {
    font-size: 28px !important;
  }

  .pm-cart-item {
    grid-template-columns: 78px minmax(0, 1fr) !important;
    gap: 14px !important;
    padding: 14px !important;
  }

  .pm-cart-item__media {
    width: 78px !important;
    height: 78px !important;
  }

  .pm-cart-item__price {
    grid-column: 2;
    justify-self: start !important;
    margin-top: 2px;
  }

  .pm-cart-item__actions {
    gap: 14px !important;
  }

  .pm-cart-donate {
    align-items: flex-start;
    padding: 20px;
  }
}

@media (max-width: 575px) {
  .pm-cart-donate {
    grid-column: span 1;
    grid-template-columns: 42px minmax(0, 1fr);
    gap: 12px 14px;
  }

  .pm-cart-donate__icon {
    width: 42px;
    height: 42px;
    flex-basis: 42px;
  }

  .pm-cart-page-head h1 {
    font-size: 25px !important;
  }

  .pm-cart-page-head p {
    font-size: 14px !important;
  }

  .pm-cart-rec-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
  }

  .pm-cart-rec-carousel__track {
    gap: 12px;
  }

  .pm-cart-rec-carousel__track > .pm-cart-rec-card {
    flex-basis: calc((100% - 12px) / 2);
  }

  .pm-cart-rec-card {
    padding: 12px;
  }

  .pm-cart-rec-card__image {
    height: 96px;
  }

  .pm-cart-donate__form,
  .pm-cart-donate__amounts,
  .pm-cart-donate__custom,
  .pm-cart-donate__submit,
  .pm-cart-empty-card__actions,
  .pm-cart-button {
    width: 100%;
  }

  .pm-cart-donate__amounts {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .pm-cart-donate__custom,
  .pm-cart-donate__submit {
    grid-column: 1 / -1;
  }
}

.pm-auth-page {
  width: 100%;
  background:
    radial-gradient(900px 460px at 82% -12%, #d6f0fb 0%, rgba(214, 240, 251, 0) 64%),
    linear-gradient(180deg, #f6fcff 0%, #ffffff 42%, #eef8fb 100%);
  color: var(--pm-ink);
  font-family: var(--pm-font-sans) !important;
}

.pm-auth-shell.ck-container {
  width: 100%;
  max-width: 448px !important;
  min-width: 0 !important;
  margin: 0 auto !important;
  padding: 129px 24px 72px !important;
}

.pm-auth-content {
  width: 100%;
}

.pm-auth-copy {
  margin-bottom: 24px;
}

.pm-auth-copy h1 {
  margin: 0 !important;
  color: var(--pm-navy) !important;
  font-family: var(--pm-font-sans) !important;
  font-size: 36px !important;
  font-weight: 800 !important;
  line-height: 42px !important;
  letter-spacing: 0 !important;
}

.pm-auth-copy h1 .pm-gradient-text {
  font-weight: 800 !important;
}

.pm-auth-copy p {
  margin: 12px 0 0 !important;
  color: var(--pm-muted) !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  line-height: 22px !important;
}

.pm-auth-role-switch {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  width: 100%;
  margin: 0 0 18px;
}

.pm-auth-role-switch__item {
  display: flex;
  min-width: 0;
  min-height: 66px;
  align-items: center;
  gap: 10px;
  padding: 10px;
  border: 1px solid var(--pm-border);
  border-radius: 16px;
  background: #ffffff;
  color: var(--pm-ink) !important;
  text-decoration: none !important;
  box-shadow: var(--pm-soft-shadow);
  transition: border-color 0.18s ease, box-shadow 0.18s ease, transform 0.18s ease;
}

.pm-auth-role-switch__item:hover,
.pm-auth-role-switch__item:focus-visible {
  border-color: rgba(5, 126, 162, 0.38);
  color: var(--pm-ink) !important;
  transform: translateY(-1px);
}

.pm-auth-role-switch__item:focus-visible {
  outline: 3px solid rgba(69, 177, 225, 0.22);
  outline-offset: 2px;
}

.pm-auth-role-switch__item.is-active {
  border-color: rgba(5, 126, 162, 0.48);
  background: linear-gradient(180deg, #ffffff 0%, #eef9fd 100%);
  box-shadow: 0 16px 34px rgba(5, 126, 162, 0.16);
}

.pm-auth-role-switch__icon {
  display: grid;
  width: 34px;
  height: 34px;
  flex: 0 0 34px;
  place-items: center;
  border-radius: 12px;
  background: #eaf8fd;
  color: var(--pm-blue);
}

.pm-auth-role-switch__icon svg {
  width: 18px;
  height: 18px;
}

.pm-auth-role-switch__item.is-active .pm-auth-role-switch__icon {
  background: linear-gradient(90deg, var(--pm-blue), var(--pm-cyan));
  color: #ffffff;
}

.pm-auth-role-switch__copy {
  display: grid;
  min-width: 0;
  gap: 2px;
}

.pm-auth-role-switch__copy strong {
  overflow: hidden;
  color: var(--pm-navy);
  font-size: 13px;
  font-weight: 800;
  line-height: 17px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.pm-auth-role-switch__copy small {
  overflow: hidden;
  color: var(--pm-muted);
  font-size: 11px;
  font-weight: 600;
  line-height: 15px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.pm-auth-page .alert {
  margin: 0 0 16px;
  border: 1px solid var(--pm-border);
  border-radius: 16px;
  background: #ffffff;
  color: var(--pm-navy);
  box-shadow: var(--pm-soft-shadow);
}

.pm-auth-account .container {
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  padding: 0 !important;
}

.pm-auth-account .mobile-top,
.pm-auth-account .container > .row,
.pm-auth-account .container > .row > .col-12 {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

.pm-auth-account,
.pm-auth-account .container,
.pm-auth-page .auth-card,
.pm-auth-page .auth-card__body,
.pm-auth-form,
.pm-auth-form .login-options {
  background: transparent !important;
}

.pm-auth-page .auth-card.card {
  overflow: visible;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

.pm-auth-page .auth-card__header {
  display: none !important;
}

.pm-auth-page .auth-card__body {
  padding: 0 !important;
}

.pm-auth-form.ps-form--account {
  display: flex;
  width: 100%;
  max-width: none;
  flex-direction: column;
  margin: 0;
  padding-top: 0 !important;
}

.pm-auth-form label,
.pm-auth-form .form-label {
  margin-bottom: 6px !important;
  color: var(--pm-navy) !important;
  font-family: var(--pm-font-sans) !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  line-height: 18px !important;
}

.pm-auth-form .mb-3 {
  margin-bottom: 16px !important;
}

.pm-auth-form .position-relative {
  width: 100%;
}

.pm-auth-form .form-control {
  width: 100% !important;
  height: 46px !important;
  min-height: 46px !important;
  border: 1px solid var(--pm-border) !important;
  border-radius: 16px !important;
  background: #ffffff !important;
  color: var(--pm-ink) !important;
  font-size: 14px !important;
  line-height: 20px !important;
  box-shadow: var(--pm-soft-shadow) !important;
}

.pm-auth-form .form-control:focus {
  border-color: var(--pm-cyan) !important;
  box-shadow: 0 0 0 3px rgba(69, 177, 225, 0.18), var(--pm-soft-shadow) !important;
}

.pm-auth-form .form-control::placeholder {
  color: var(--pm-muted);
}

.pm-auth-form .auth-input-icon.input-group-text {
  position: absolute !important;
  top: 3px !important;
  left: 1px !important;
  z-index: 5;
  display: grid !important;
  width: 44px;
  height: 42px;
  place-items: center;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  color: var(--pm-muted) !important;
}

.pm-auth-form .auth-input-icon svg {
  width: 20px !important;
  height: 20px !important;
}

.pm-auth-form .ps-5 {
  padding-left: 44px !important;
}

.pm-auth-form .input-group {
  position: relative;
  display: block;
  width: 100%;
}

.pm-auth-form .input-group .form-control {
  padding-right: 48px !important;
}

.pm-auth-form .input-password-toggle {
  position: absolute !important;
  top: 50% !important;
  right: 10px !important;
  z-index: 6;
  display: grid !important;
  width: 32px;
  height: 32px;
  place-items: center;
  border: 0 !important;
  background: transparent !important;
  color: var(--pm-muted) !important;
  transform: translateY(-50%) !important;
}

.pm-auth-form .input-password-toggle svg {
  width: 18px !important;
  height: 18px !important;
}

.pm-auth-form .row.g-0.mb-3 {
  display: flex;
  align-items: center;
  margin-right: 0 !important;
  margin-left: 0 !important;
  margin-bottom: 16px !important;
}

.pm-auth-form .row.g-0.mb-3 > [class*="col-"] {
  padding: 0 !important;
}

.pm-auth-form .text-decoration-underline {
  color: var(--pm-blue) !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  line-height: 18px !important;
  text-decoration: none !important;
}

.pm-auth-form .text-decoration-underline:hover {
  color: var(--pm-navy) !important;
}

.pm-auth-form .ps-checkbox {
  min-height: 22px;
}

.pm-auth-form .ps-checkbox .form-control {
  position: absolute;
  width: 1px !important;
  height: 1px !important;
  min-height: 1px !important;
  padding: 0 !important;
  opacity: 0;
  box-shadow: none !important;
}

.pm-auth-form .ps-checkbox label {
  display: inline-flex;
  align-items: center;
  min-height: 22px;
  padding-left: 28px;
  color: var(--pm-navy) !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  line-height: 18px !important;
}

.pm-auth-form .ps-checkbox label::before {
  top: 1px;
  width: 18px;
  height: 18px;
  border-color: var(--pm-border);
  border-radius: 6px;
  background: #ffffff;
}

.pm-auth-form .ps-checkbox label::after {
  top: 4px;
  left: 6px;
}

.pm-auth-form .ps-checkbox input[type=checkbox]:checked ~ label::before {
  border-color: var(--pm-blue);
  background: var(--pm-blue);
}

.pm-auth-submit {
  width: 100%;
  height: 46px;
  min-height: 46px;
  color: #ffffff !important;
  background: linear-gradient(90deg, var(--pm-blue), var(--pm-cyan)) !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  line-height: 20px !important;
  box-shadow: 0 14px 30px rgba(5, 126, 162, 0.25);
}

.pm-auth-submit:hover {
  color: #ffffff !important;
}

.pm-auth-form .d-grid {
  width: 100%;
}

.pm-auth-form .login-options {
  order: 20;
}

.pm-auth-form .login-options-title {
  display: flex;
  align-items: center;
  gap: 12px;
  margin: 16px 0 14px;
  padding: 0;
  border: 0;
}

.pm-auth-form .login-options-title::before,
.pm-auth-form .login-options-title::after {
  display: block;
  height: 1px;
  flex: 1 1 0;
  background: var(--pm-border);
  content: "";
}

.pm-auth-form .login-options-title p {
  margin: 0 !important;
  padding: 0 !important;
  color: transparent !important;
  font-size: 0 !important;
  line-height: 1 !important;
}

.pm-auth-form .login-options-title p::after {
  color: var(--pm-muted);
  content: "or";
  font-size: 12px;
  font-weight: 600;
  line-height: 18px;
}

.pm-auth-form .login-options .social-icons,
.pm-auth-form .login-options .social-login-basic {
  gap: 10px;
  margin: 0;
  padding: 0;
}

.pm-auth-form .login-options .social-icons.social-login-lg li,
.pm-auth-form .login-options .social-login-basic li {
  width: 100%;
}

.pm-auth-form .login-options .social-icons li > a,
.pm-auth-form .login-options .social-login-basic .social-login {
  display: inline-flex;
  width: 100%;
  min-height: 46px;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 12px 18px;
  border: 1px solid var(--pm-border) !important;
  border-radius: var(--pm-pill-radius) !important;
  background: #ffffff !important;
  color: var(--pm-blue) !important;
  font-family: var(--pm-font-sans) !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  line-height: 21px !important;
  text-decoration: none !important;
  box-shadow: none !important;
}

.pm-auth-form .login-options .social-icons li > a:hover,
.pm-auth-form .login-options .social-login-basic .social-login:hover {
  border-color: var(--pm-blue) !important;
  color: var(--pm-blue) !important;
  transform: translateY(-1px);
}

.pm-auth-form .login-options .social-icons li > a svg,
.pm-auth-form .login-options .social-login-basic .social-login img {
  width: 20px !important;
  height: 20px !important;
  min-width: 20px !important;
  margin-right: 0 !important;
}

.pm-auth-form .login-options .social-icons li > a.google span,
.pm-auth-form .login-options .social-login-basic .google-login span {
  font-size: 0 !important;
  line-height: 0 !important;
}

.pm-auth-form .login-options .social-icons li > a.google span::after,
.pm-auth-form .login-options .social-login-basic .google-login span::after {
  color: var(--pm-blue);
  content: "Continue with Google";
  font-size: 14px;
  font-weight: 700;
  line-height: 21px;
}

.pm-auth-form .mt-3.text-center {
  display: none !important;
}

.pm-auth-join {
  margin: 24px 0 0 !important;
  color: var(--pm-muted) !important;
  font-size: 12px !important;
  font-weight: 400 !important;
  line-height: 16px !important;
  text-align: center;
}

.pm-auth-join a {
  color: #64748b !important;
  font-weight: 700;
  text-decoration: none !important;
}

@media (max-width: 575px) {
  .pm-auth-shell.ck-container {
    max-width: 100% !important;
    padding: 117px 16px 56px !important;
  }

  .pm-auth-copy {
    margin-bottom: 22px;
  }

  .pm-auth-copy h1 {
    font-size: 30px !important;
    line-height: 36px !important;
  }

  .pm-auth-role-switch {
    gap: 7px;
    margin-bottom: 16px;
  }

  .pm-auth-role-switch__item {
    min-height: 60px;
    gap: 8px;
    padding: 8px;
    border-radius: 14px;
  }

  .pm-auth-role-switch__icon {
    width: 30px;
    height: 30px;
    flex-basis: 30px;
    border-radius: 10px;
  }

  .pm-auth-role-switch__icon svg {
    width: 16px;
    height: 16px;
  }

  .pm-auth-role-switch__copy strong {
    font-size: 12px;
    line-height: 16px;
  }

  .pm-auth-role-switch__copy small {
    font-size: 10px;
    line-height: 14px;
  }

  .pm-auth-form .row.g-0.mb-3 {
    gap: 0;
  }

  .pm-auth-form .row.g-0.mb-3 > .col-6 {
    width: 50%;
    max-width: 50%;
    flex: 0 0 50%;
  }
}

/* Donation product detail: Vercel campaign layout. */
#product-page .pm-donation-detail {
  width: min(1280px, 100%) !important;
  margin: 0 auto !important;
  padding: 0 24px 112px !important;
  color: var(--pm-ink) !important;
  font-family: var(--pm-font-sans) !important;
}

#product-page .pm-donation-detail *,
#product-page .pm-donation-detail *::before,
#product-page .pm-donation-detail *::after {
  box-sizing: border-box;
  letter-spacing: 0 !important;
}

#product-page .pm-donation-detail__hero,
#product-page .pm-donation-related {
  width: 100% !important;
  margin: 0 auto !important;
}

#product-page .pm-donation-detail__hero {
  padding: 0 0 16px !important;
}

#product-page .pm-donation-detail__grid {
  display: grid !important;
  grid-template-columns: minmax(0, 1.1fr) minmax(390px, 1fr) !important;
  gap: 20px !important;
  align-items: start !important;
}

#product-page .pm-donation-detail__left {
  display: grid !important;
  gap: 16px !important;
  min-width: 0 !important;
}

#product-page .pm-donation-detail__media-card,
#product-page .pm-donation-detail__panel,
#product-page .pm-donation-product-card {
  overflow: hidden !important;
  border: 1px solid var(--pm-border) !important;
  border-radius: 24px !important;
  background: rgba(255, 255, 255, 0.96) !important;
  box-shadow: var(--pm-card-shadow) !important;
}

#product-page .pm-donation-detail__image {
  position: relative !important;
  aspect-ratio: 16 / 9 !important;
  overflow: hidden !important;
  background: var(--pm-soft) !important;
}

#product-page .pm-donation-detail__image::after {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  background: linear-gradient(to top, rgba(11, 52, 84, 0.2), rgba(11, 52, 84, 0)) !important;
  pointer-events: none !important;
}

#product-page .pm-donation-detail__image img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}

#product-page .pm-donation-detail__intro {
  padding: 24px 28px 28px !important;
}

#product-page .pm-donation-detail__intro h2,
#product-page .pm-donation-related h2 {
  margin: 0 !important;
  color: var(--pm-navy) !important;
  font-family: var(--pm-font-sans) !important;
  font-size: 24px !important;
  font-weight: 800 !important;
  line-height: 1.22 !important;
}

#product-page .pm-donation-detail__intro p,
#product-page .pm-donation-related > p,
#product-page .pm-donation-form__summary {
  margin: 8px 0 0 !important;
  color: var(--pm-muted) !important;
  font-size: 14px !important;
  line-height: 1.55 !important;
}

#product-page .pm-donation-form__summary > :first-child {
  margin-top: 0 !important;
}

#product-page .pm-donation-form__summary > :last-child {
  margin-bottom: 0 !important;
}

#product-page .pm-donation-form__summary p,
#product-page .pm-donation-form__summary ul,
#product-page .pm-donation-form__summary ol {
  color: inherit !important;
  font-size: inherit !important;
  line-height: inherit !important;
}

#product-page .pm-donation-detail__panel {
  position: sticky !important;
  top: 96px !important;
  padding: 28px !important;
}

#product-page .pm-donation-form {
  display: grid !important;
  gap: 0 !important;
  margin: 0 !important;
}

#product-page .pm-donation-form > .pm-label {
  width: fit-content !important;
  margin: 0 !important;
  background: var(--pm-soft) !important;
  color: var(--pm-blue) !important;
}

#product-page .pm-donation-form h1 {
  margin: 10px 0 0 !important;
  color: var(--pm-navy) !important;
  font-family: var(--pm-font-sans) !important;
  font-size: 30px !important;
  font-weight: 800 !important;
  line-height: 1.16 !important;
}

#product-page .pm-donation-gift-box {
  margin-top: 22px !important;
  padding: 16px !important;
  border: 1px solid var(--pm-border) !important;
  border-radius: 20px !important;
  background: rgba(238, 248, 251, 0.72) !important;
}

#product-page .pm-donation-gift-box > p,
#product-page .pm-donation-platform h3 {
  margin: 0 !important;
  color: var(--pm-navy) !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  line-height: 1.35 !important;
}

#product-page .pm-donation-amounts {
  display: flex !important;
  flex-wrap: nowrap !important;
  align-items: flex-start !important;
  gap: 8px !important;
  margin-top: 12px !important;
}

#product-page .pm-donation-custom-wrap {
  display: flex !important;
  min-width: 0 !important;
  flex: 2.45 1 150px !important;
  flex-direction: column !important;
}

#product-page .pm-donation-amount,
#product-page .pm-donation-custom {
  display: inline-flex !important;
  width: auto !important;
  height: 40px !important;
  min-width: 0 !important;
  min-height: 40px !important;
  flex: 1 1 0 !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 9px 8px !important;
  border: 1px solid var(--pm-border) !important;
  border-radius: 12px !important;
  background: #ffffff !important;
  color: var(--pm-navy) !important;
  font-family: var(--pm-font-sans) !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  text-align: center !important;
  transition: border-color 0.15s ease, background 0.15s ease, color 0.15s ease, transform 0.15s ease !important;
}

#product-page .pm-donation-amount:hover,
#product-page .pm-donation-amount.is-active {
  border-color: var(--pm-blue) !important;
  background: var(--pm-blue) !important;
  color: #ffffff !important;
}

#product-page .pm-donation-custom {
  width: 100% !important;
  flex: 0 0 auto !important;
  margin-top: 0 !important;
  justify-content: flex-start !important;
  padding-right: 14px !important;
  padding-left: 14px !important;
  text-align: left !important;
}

#product-page .pm-donation-custom.is-active,
#product-page .pm-donation-custom:focus {
  border-color: var(--pm-blue) !important;
  box-shadow: 0 0 0 3px rgba(69, 177, 225, 0.18) !important;
  outline: 0 !important;
}

#product-page .pm-donation-custom-wrap.is-invalid .pm-donation-custom {
  border-color: var(--pm-border) !important;
  background: #ffffff !important;
  box-shadow: var(--pm-soft-shadow) !important;
}

#product-page .pm-donation-custom-error {
  display: block !important;
  margin-top: 6px !important;
  padding: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: #ff0000 !important;
  font-family: var(--pm-font-sans) !important;
  font-size: 12px !important;
  font-weight: 400 !important;
  line-height: 16px !important;
  text-align: left !important;
  text-transform: none !important;
}

#product-page .pm-donation-custom-error[hidden] {
  display: none !important;
}

#product-page .pm-donation-submit {
  width: 100% !important;
  min-height: 44px !important;
  margin-top: 12px !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: linear-gradient(90deg, var(--pm-blue), var(--pm-cyan)) !important;
  color: #ffffff !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  box-shadow: 0 14px 30px rgba(5, 126, 162, 0.25) !important;
}

#product-page .pm-donation-platform {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 16px !important;
  margin-top: 16px !important;
  padding: 16px 0 0 !important;
  border: 0 !important;
  border-top: 1px solid var(--pm-border) !important;
  border-radius: 0 !important;
  background: transparent !important;
}

#product-page .pm-donation-platform__left {
  display: flex !important;
  min-width: 0 !important;
  align-items: center !important;
  gap: 10px !important;
}

#product-page .pm-donation-platform__left svg {
  width: 20px !important;
  height: 20px !important;
  flex: 0 0 auto !important;
  color: var(--pm-blue) !important;
}

#product-page .pm-donation-platform p {
  margin: 4px 0 0 !important;
  color: var(--pm-muted) !important;
  font-size: 12px !important;
  line-height: 1.35 !important;
}

#product-page .pm-donation-platform__link {
  flex: 0 0 auto !important;
  color: var(--pm-blue) !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
  text-decoration: none !important;
  white-space: nowrap !important;
}

#product-page .pm-donation-platform__link:hover {
  color: var(--pm-navy) !important;
}

#product-page .pm-donation-product-card__add {
  display: inline-flex !important;
  min-height: 40px !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 10px 18px !important;
  border-radius: 999px !important;
  font-size: 13px !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  text-decoration: none !important;
  white-space: nowrap !important;
}

#product-page .pm-donation-related {
  padding: 16px 0 !important;
}

#product-page .pm-donation-related__grid {
  display: grid !important;
  gap: 16px !important;
  margin-top: 20px !important;
}

#product-page .pm-donation-related__grid {
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
}

#product-page .pm-donation-product-card {
  display: flex !important;
  min-width: 0 !important;
  min-height: 100% !important;
  flex-direction: column !important;
  transition: transform 0.15s ease, box-shadow 0.15s ease !important;
}

#product-page .pm-donation-product-card:hover {
  transform: translateY(-2px) !important;
  box-shadow: var(--pm-soft-shadow) !important;
}

#product-page .pm-donation-product-card__image {
  display: grid !important;
  aspect-ratio: 4 / 3 !important;
  place-items: center !important;
  overflow: hidden !important;
  background: var(--pm-soft) !important;
}

#product-page .pm-donation-product-card__image img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  padding: 12px !important;
}

#product-page .pm-donation-product-card > div {
  display: grid !important;
  gap: 6px !important;
  padding: 16px 16px 0 !important;
}

#product-page .pm-donation-product-card h3 {
  margin: 0 !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  line-height: 1.25 !important;
}

#product-page .pm-donation-product-card h3 a {
  color: var(--pm-navy) !important;
  text-decoration: none !important;
}

#product-page .pm-donation-product-card h3 a:hover {
  color: var(--pm-blue) !important;
}

#product-page .pm-donation-product-card p {
  margin: 0 !important;
  color: var(--pm-muted) !important;
  font-size: 11px !important;
  line-height: 1.45 !important;
}

#product-page .pm-donation-product-card footer {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 12px !important;
  margin-top: auto !important;
  padding: 14px 16px 16px !important;
}

#product-page .pm-donation-product-card footer strong {
  color: var(--pm-navy) !important;
  font-size: 14px !important;
  font-weight: 800 !important;
}

#product-page .pm-donation-product-card__add {
  min-height: 34px !important;
  padding: 9px 16px !important;
  background: linear-gradient(90deg, var(--pm-blue), var(--pm-cyan)) !important;
  color: #ffffff !important;
}

@media (max-width: 1199px) {
  #product-page .pm-donation-related__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 991px) {
  #product-page .pm-donation-detail {
    padding: 0 16px 112px !important;
  }

  #product-page .pm-donation-detail__grid {
    grid-template-columns: 1fr !important;
  }

  #product-page .pm-donation-detail__panel {
    position: static !important;
  }

}

@media (max-width: 575px) {
  #product-page .pm-donation-detail {
    padding-right: 16px !important;
    padding-left: 16px !important;
  }

  #product-page .pm-donation-detail__intro,
  #product-page .pm-donation-detail__panel {
    padding: 20px !important;
  }

  #product-page .pm-donation-related__grid {
    grid-template-columns: 1fr !important;
  }

  #product-page .pm-donation-amounts {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  #product-page .pm-donation-custom-wrap {
    grid-column: 1 / -1 !important;
    width: 100% !important;
  }

  #product-page .pm-donation-form h1 {
    font-size: 26px !important;
  }

  #product-page .pm-donation-platform {
    align-items: flex-start !important;
    flex-direction: column !important;
  }

}

/* Product detail breadcrumb spacing: keep the same visual gap with or without the admin bar. */
body#product-page .ps-breadcrumb,
body#product-page.show-admin-bar .ps-breadcrumb {
  padding: 12px 0 !important;
  margin-top: 0 !important;
  border-top: 0 !important;
}

body#product-page .ps-breadcrumb .pm-product-breadcrumb {
  line-height: 16px !important;
}

body#product-page .pm-site-header.header.header--1,
body#product-page .pm-site-header.header.header--1.header--sticky,
body#product-page .header--mobile,
body#product-page .header--mobile.header--sticky {
  position: sticky !important;
  right: auto !important;
  left: auto !important;
}

body#product-page > .ck-content,
body#product-page.show-admin-bar > .ck-content {
  padding-top: 0 !important;
}

body#product-page .ps-page--product,
body#product-page .pm-donation-detail {
  padding-top: 0 !important;
}

@media (max-width: 991px) {
  body#product-page > .ck-content,
  body#product-page.show-admin-bar > .ck-content {
    padding-top: 0 !important;
  }

  body#product-page .ps-breadcrumb,
  body#product-page.show-admin-bar .ps-breadcrumb {
    margin-top: 0 !important;
  }
}

/* /products live search must remain available on mobile. */
@media (max-width: 767px) {
  body#product-page .pm-shop-page .pm-shop-hero,
  .pm-shop-page .pm-shop-hero {
    display: block !important;
    padding-top: 16px !important;
  }

  body#product-page .pm-shop-page .pm-shop-hero__grid,
  .pm-shop-page .pm-shop-hero__grid {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
  }

  body#product-page .pm-shop-page .pm-shop-hero__card,
  .pm-shop-page .pm-shop-hero__card {
    display: flex !important;
    min-height: 0 !important;
  }

  body#product-page .pm-shop-page .pm-shop-hero__media,
  .pm-shop-page .pm-shop-hero__media {
    display: none !important;
  }

  .pm-shop-hero__search .ps-panel--search-result.active {
    max-height: min(58vh, 390px) !important;
    padding: 16px !important;
  }
}

/* Service local business profile visual refresh. */
.page-store.pm-service-profile,
.page-store.pm-service-profile * {
  box-sizing: border-box !important;
  letter-spacing: 0 !important;
}

body:has(.pm-service-profile) {
  background:
    radial-gradient(900px 520px at 86% -8%, rgba(214, 240, 251, 0.86) 0%, transparent 62%),
    linear-gradient(180deg, #f6fcff 0%, #ffffff 38%, #eef8fb 100%) !important;
}

.page-store.pm-service-profile {
  background: transparent !important;
  color: var(--pm-navy) !important;
  font-family: var(--pm-font-inter) !important;
}

.page-store.pm-service-profile .ps-store-list {
  margin: 0 !important;
  padding: 65px 0 0 !important;
  background: transparent !important;
}

body.show-admin-bar .page-store.pm-service-profile .ps-store-list {
  padding-top: 65px !important;
}

.page-store.pm-service-profile .ps-store-list > .row {
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
}

.page-store.pm-service-profile .pm-service-profile__breadcrumb {
  display: flex !important;
  width: min(1280px, calc(100% - 96px)) !important;
  min-height: 0 !important;
  align-items: center !important;
  gap: 8px !important;
  margin-right: auto !important;
  margin-left: auto !important;
  padding-top: 14px !important;
  padding-bottom: 14px !important;
  color: var(--pm-muted) !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  line-height: 18px !important;
}

.page-store.pm-service-profile .pm-service-profile__breadcrumb a {
  color: inherit !important;
  text-decoration: none !important;
}

.page-store.pm-service-profile .pm-service-profile__breadcrumb strong {
  color: var(--pm-navy) !important;
  font-weight: 850 !important;
}

.page-store.pm-service-profile .servicio_banner_store {
  position: relative !important;
  width: min(1280px, calc(100% - 96px)) !important;
  max-width: 1280px !important;
  min-height: 280px !important;
  margin: 0 auto 34px !important;
  overflow: hidden !important;
  border: 1px solid var(--pm-border) !important;
  border-radius: 24px !important;
  box-shadow: var(--pm-card-shadow) !important;
}

.page-store.pm-service-profile .servicio_banner_store::after {
  position: absolute !important;
  inset: 0 !important;
  background:
    linear-gradient(90deg, rgba(5, 21, 35, 0.32), rgba(5, 21, 35, 0.04)),
    linear-gradient(0deg, rgba(255, 255, 255, 0.18), rgba(255, 255, 255, 0)) !important;
  content: "" !important;
  pointer-events: none !important;
}

.page-store.pm-service-profile .pm-service-hero-identity {
  position: absolute !important;
  top: 34px !important;
  left: 42px !important;
  z-index: 2 !important;
  display: flex !important;
  max-width: calc(100% - 84px) !important;
  align-items: center !important;
  gap: 18px !important;
  color: #ffffff !important;
}

.page-store.pm-service-profile .pm-service-hero-logo {
  position: relative !important;
  top: auto !important;
  left: auto !important;
  z-index: auto !important;
  display: grid !important;
  width: 92px !important;
  height: 92px !important;
  flex: 0 0 92px !important;
  place-items: center !important;
  overflow: hidden !important;
  border: 1px solid rgba(218, 235, 247, 0.88) !important;
  border-radius: 16px !important;
  background: rgba(255, 255, 255, 0.98) !important;
  box-shadow: 0 18px 38px rgba(2, 16, 28, 0.22) !important;
}

.page-store.pm-service-profile .pm-service-hero-logo .logo_servicio {
  position: static !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  min-width: 0 !important;
  min-height: 0 !important;
  max-width: 100% !important;
  max-height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  aspect-ratio: 1 / 1 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  object-fit: contain !important;
  object-position: center center !important;
  box-shadow: none !important;
}

.page-store.pm-service-profile .pm-service-hero-copy {
  min-width: 0 !important;
}

.page-store.pm-service-profile .pm-service-hero-type {
  display: block !important;
  margin: 0 0 5px !important;
  color: #ffffff !important;
  font-size: 11px !important;
  font-weight: 850 !important;
  line-height: 15px !important;
  text-transform: uppercase !important;
  text-shadow: 0 2px 14px rgba(2, 16, 28, 0.34) !important;
}

.page-store.pm-service-profile .pm-service-hero-name {
  max-width: 640px !important;
  margin: 0 !important;
  color: #ffffff !important;
  font-family: var(--pm-font-inter) !important;
  font-size: clamp(34px, 3vw, 42px) !important;
  font-weight: 850 !important;
  line-height: 1.04 !important;
  text-shadow: 0 3px 18px rgba(2, 16, 28, 0.36) !important;
}

.page-store.pm-service-profile .servicio_intro_section {
  padding: 34px 0 !important;
  background: transparent !important;
}

.page-store.pm-service-profile .servicio_intro_section > .ck-container,
.page-store.pm-service-profile .servicio_intro_section > .ps-container {
  width: min(1280px, calc(100% - 96px)) !important;
  max-width: 1280px !important;
  margin-right: auto !important;
  margin-left: auto !important;
  padding: 0 !important;
}

.page-store.pm-service-profile .servicio_intro_section > .ck-container > .row,
.page-store.pm-service-profile .servicio_intro_section > .ps-container > .row {
  align-items: center !important;
  margin: 0 !important;
  padding: 34px !important;
  border: 1px solid var(--pm-border) !important;
  border-radius: 24px !important;
  background: rgba(255, 255, 255, 0.98) !important;
  box-shadow: var(--pm-card-shadow) !important;
}

.page-store.pm-service-profile .servicio_intro_section:nth-of-type(3) > .ck-container > .row,
.page-store.pm-service-profile .servicio_intro_section:nth-of-type(5) > .ps-container > .row {
  background: linear-gradient(145deg, rgba(255, 255, 255, 0.98), rgba(244, 251, 254, 0.98)) !important;
}

.page-store.pm-service-profile .servicio_intro_section img.img-fluid {
  display: block !important;
  width: 100% !important;
  min-height: 320px !important;
  max-height: 520px !important;
  border: 1px solid var(--pm-border) !important;
  border-radius: 20px !important;
  object-fit: cover !important;
  box-shadow: 0 24px 54px rgba(5, 45, 70, 0.12) !important;
}

.page-store.pm-service-profile .pm-service-offer-art-shell {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 24px !important;
  border: 1px solid var(--pm-border) !important;
  border-radius: 22px !important;
  background: rgba(255, 255, 255, 0.98) !important;
  box-shadow: 0 24px 54px rgba(5, 45, 70, 0.12) !important;
}

.page-store.pm-service-profile .servicio_intro_section img.img-fluid.pm-service-offer-art,
.page-store.pm-service-profile .pm-service-offer-art-shell .pm-service-offer-art {
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  object-fit: contain !important;
  box-shadow: none !important;
}

.page-store.pm-service-profile .servicio_intro_content,
.page-store.pm-service-profile .separa_titulo_servivio,
.page-store.pm-service-profile .servicio_intro_section .col-md-5 {
  min-width: 0 !important;
}

.page-store.pm-service-profile .lead-xd-hero {
  margin: 0 0 18px !important;
}

.page-store.pm-service-profile .lead-xd-hero h1 {
  margin: 0 !important;
  color: var(--pm-navy) !important;
  font-family: var(--pm-font-inter) !important;
  font-size: clamp(34px, 3.1vw, 48px) !important;
  font-weight: 500 !important;
  line-height: 1.08 !important;
}

.page-store.pm-service-profile .lead-xd-hero h1 b {
  font-weight: 850 !important;
}

.page-store.pm-service-profile .servicio_textos h2,
.page-store.pm-service-profile .servicio_textos h3 {
  color: var(--pm-navy) !important;
  font-family: var(--pm-font-inter) !important;
  font-weight: 800 !important;
  letter-spacing: 0 !important;
}

.page-store.pm-service-profile .servicio_textos p,
.page-store.pm-service-profile .servicio_textos li {
  color: #45617f !important;
  font-size: 15px !important;
  font-weight: 500 !important;
  line-height: 1.62 !important;
}

.page-store.pm-service-profile .servicio_textos p {
  margin-bottom: 14px !important;
}

.page-store.pm-service-profile .ubicacion {
  margin-top: 18px !important;
}

.page-store.pm-service-profile .ubicacion ul {
  flex-wrap: wrap !important;
  gap: 10px !important;
  margin: 0 !important;
}

.page-store.pm-service-profile .ubicacion li {
  min-height: 38px !important;
  padding: 8px 14px !important;
  border: 1px solid #d3eef7 !important;
  border-radius: 999px !important;
  background: #e8f8fd !important;
  color: var(--pm-navy) !important;
  font-size: 13px !important;
  font-weight: 800 !important;
  line-height: 18px !important;
}

.page-store.pm-service-profile .ubicacion svg {
  width: 18px !important;
  height: 18px !important;
  margin-right: 7px !important;
  fill: var(--pm-blue) !important;
}

.page-store.pm-service-profile .pildora_servicio,
.page-store.pm-service-profile .pildora_servicio2,
.page-store.pm-service-profile .view_more2.pildora_servicio,
.page-store.pm-service-profile .view_more2.pildora_servicio2 {
  display: inline-flex !important;
  width: auto !important;
  min-width: 136px !important;
  min-height: 46px !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 12px 22px !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: linear-gradient(90deg, var(--pm-blue), var(--pm-cyan)) !important;
  color: #ffffff !important;
  font-size: 14px !important;
  font-weight: 850 !important;
  line-height: 18px !important;
  text-decoration: none !important;
  box-shadow: 0 18px 34px rgba(5, 126, 162, 0.24) !important;
}

.page-store.pm-service-profile .pildora_servicio:hover,
.page-store.pm-service-profile .pildora_servicio2:hover {
  transform: translateY(-1px) !important;
  box-shadow: 0 22px 40px rgba(5, 126, 162, 0.28) !important;
}

.page-store.pm-service-profile .servicio_intro_section .col-md-5 > div[style*="background-color: #CFCFCF"],
.page-store.pm-service-profile .servicio_intro_section .col-md-5 > div[style*="background-color:#CFCFCF"] {
  border: 1px solid #d3eef7 !important;
  border-radius: 18px !important;
  background: #eef8fb !important;
  color: var(--pm-navy) !important;
}

.page-store.pm-service-profile .servicio_discount_block {
  padding: 0 !important;
}

.page-store.pm-service-profile .servicio_discount_block > .row {
  overflow: hidden !important;
  border-radius: 24px !important;
  background: #0b4868 !important;
  box-shadow: var(--pm-card-shadow) !important;
}

.page-store.pm-service-profile .servicio_discount_block .col-md-7 > .row {
  min-height: 152px !important;
  margin: 0 !important;
}

.page-store.pm-service-profile .servicio_discount_block .col-md-7 > .row > .col-3 {
  border-radius: 0 !important;
  background: #0b3454 !important;
}

.page-store.pm-service-profile .servicio_discount_offer,
.page-store.pm-service-profile .servicio_discount_contact {
  background: linear-gradient(90deg, #0b4868, #0d86ad) !important;
  border-radius: 0 !important;
}

.page-store.pm-service-profile .servicio_discount_offer {
  padding: 28px 34px !important;
}

.page-store.pm-service-profile .servicio_discount_offer h1,
.page-store.pm-service-profile .servicio_discount_offer h3,
.page-store.pm-service-profile .servicio_discount_offer p {
  color: #ffffff !important;
}

.page-store.pm-service-profile .servicio_discount_offer h1 {
  margin: 0 !important;
  font-size: 30px !important;
  font-weight: 850 !important;
  line-height: 1.05 !important;
}

.page-store.pm-service-profile .servicio_discount_offer h3 {
  margin: 4px 0 10px !important;
  font-size: 24px !important;
  font-weight: 800 !important;
}

.page-store.pm-service-profile .servicio_discount_offer p {
  margin: 0 !important;
  font-size: 13px !important;
  line-height: 18px !important;
}

.page-store.pm-service-profile .servicio_discount_contact .pildora_servicio2,
.page-store.pm-service-profile .servicio_discount_offer .pildora_servicio2 {
  background: #ffffff !important;
  color: var(--pm-navy) !important;
  box-shadow: 0 18px 34px rgba(2, 16, 28, 0.16) !important;
}

.page-store.pm-service-profile .pm-service-discount-section > .ps-container {
  width: min(1280px, calc(100% - 96px)) !important;
  max-width: 1280px !important;
  margin-right: auto !important;
  margin-left: auto !important;
  padding: 0 !important;
}

.page-store.pm-service-profile .pm-service-discount-cta {
  display: grid !important;
  grid-template-columns: auto minmax(0, 1fr) auto !important;
  align-items: center !important;
  gap: 20px !important;
  padding: 24px !important;
  border: 1px solid #bfe8f6 !important;
  border-radius: 24px !important;
  background: linear-gradient(90deg, #0b4868 0%, #0d86ad 58%, #42b4df 100%) !important;
  color: #ffffff !important;
  box-shadow: var(--pm-card-shadow) !important;
}

.page-store.pm-service-profile .pm-service-discount-cta__icon {
  display: grid !important;
  width: 58px !important;
  height: 58px !important;
  place-items: center !important;
  border-radius: 16px !important;
  background: rgba(255, 255, 255, 0.16) !important;
}

.page-store.pm-service-profile .pm-service-discount-cta__icon img {
  display: block !important;
  width: 30px !important;
  height: 30px !important;
  filter: brightness(0) invert(1) !important;
  object-fit: contain !important;
}

.page-store.pm-service-profile .pm-service-discount-cta__copy {
  min-width: 0 !important;
}

.page-store.pm-service-profile .pm-service-discount-cta__copy span {
  display: block !important;
  margin: 0 0 4px !important;
  color: rgba(255, 255, 255, 0.92) !important;
  font-size: 11px !important;
  font-weight: 850 !important;
  line-height: 15px !important;
  text-transform: uppercase !important;
}

.page-store.pm-service-profile .pm-service-discount-cta__copy p {
  max-width: 820px !important;
  margin: 0 !important;
  color: #ffffff !important;
  font-size: 20px !important;
  font-weight: 850 !important;
  line-height: 1.28 !important;
}

.page-store.pm-service-profile .pm-service-discount-cta__button {
  display: inline-flex !important;
  min-height: 46px !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  padding: 12px 22px !important;
  border-radius: 999px !important;
  background: #ffffff !important;
  color: var(--pm-navy) !important;
  font-size: 13px !important;
  font-weight: 850 !important;
  line-height: 18px !important;
  text-decoration: none !important;
  white-space: nowrap !important;
  box-shadow: 0 18px 34px rgba(2, 16, 28, 0.16) !important;
}

.page-store.pm-service-profile .pm-service-discount-cta__button svg {
  width: 17px !important;
  height: 17px !important;
  flex: 0 0 17px !important;
  fill: currentColor !important;
}

@media (max-width: 991px) {
  .page-store.pm-service-profile .servicio_banner_store,
  .page-store.pm-service-profile .pm-service-profile__breadcrumb,
  .page-store.pm-service-profile .servicio_intro_section > .ck-container,
  .page-store.pm-service-profile .servicio_intro_section > .ps-container,
  .page-store.pm-service-profile .pm-service-discount-section > .ps-container {
    width: min(100% - 32px, 1280px) !important;
  }

  .page-store.pm-service-profile .servicio_banner_store {
    min-height: 220px !important;
    margin-bottom: 22px !important;
    border-radius: 20px !important;
  }

  .page-store.pm-service-profile .pm-service-hero-identity {
    top: 24px !important;
    left: 24px !important;
    max-width: calc(100% - 48px) !important;
    gap: 12px !important;
  }

  .page-store.pm-service-profile .pm-service-hero-logo {
    width: 76px !important;
    height: 76px !important;
    flex-basis: 76px !important;
    border-radius: 14px !important;
  }

  .page-store.pm-service-profile .pm-service-hero-name {
    max-width: none !important;
    font-size: 28px !important;
  }

  .page-store.pm-service-profile .servicio_intro_section {
    padding: 24px 0 !important;
  }

  .page-store.pm-service-profile .servicio_intro_section > .ck-container > .row,
  .page-store.pm-service-profile .servicio_intro_section > .ps-container > .row {
    padding: 24px !important;
    border-radius: 20px !important;
  }

  .page-store.pm-service-profile .servicio_intro_section img.img-fluid {
    min-height: 260px !important;
    max-height: 360px !important;
  }

  .page-store.pm-service-profile .pm-service-offer-art-shell {
    padding: 18px !important;
  }

  .page-store.pm-service-profile .servicio_intro_section img.img-fluid.pm-service-offer-art,
  .page-store.pm-service-profile .pm-service-offer-art-shell .pm-service-offer-art {
    min-height: 0 !important;
    max-height: none !important;
  }

  .page-store.pm-service-profile .lead-xd-hero h1 {
    font-size: 34px !important;
  }

  .page-store.pm-service-profile .pm-service-discount-cta {
    grid-template-columns: auto minmax(0, 1fr) !important;
  }

  .page-store.pm-service-profile .pm-service-discount-cta__button {
    grid-column: 2 !important;
    width: fit-content !important;
  }
}

@media (max-width: 575px) {
  .page-store.pm-service-profile .servicio_banner_store {
    min-height: 190px !important;
  }

  .page-store.pm-service-profile .pm-service-profile__breadcrumb {
    overflow: hidden !important;
    white-space: nowrap !important;
  }

  .page-store.pm-service-profile .servicio_intro_section > .ck-container > .row,
  .page-store.pm-service-profile .servicio_intro_section > .ps-container > .row {
    padding: 20px !important;
    border-radius: 18px !important;
  }

  .page-store.pm-service-profile .lead-xd-hero h1 {
    font-size: 30px !important;
  }

  .page-store.pm-service-profile .servicio_textos p,
  .page-store.pm-service-profile .servicio_textos li {
    font-size: 14px !important;
  }

  .page-store.pm-service-profile .pildora_servicio,
  .page-store.pm-service-profile .pildora_servicio2,
  .page-store.pm-service-profile .view_more2.pildora_servicio,
  .page-store.pm-service-profile .view_more2.pildora_servicio2 {
    width: 100% !important;
  }

  .page-store.pm-service-profile .servicio_discount_block .col-md-7 > .row > .col-3 {
    min-height: 96px !important;
    border-radius: 0 !important;
  }

  .page-store.pm-service-profile .servicio_discount_offer {
    padding: 24px !important;
  }

  .page-store.pm-service-profile .pm-service-discount-cta {
    grid-template-columns: 1fr !important;
    gap: 14px !important;
    padding: 22px !important;
    border-radius: 20px !important;
  }

  .page-store.pm-service-profile .pm-service-discount-cta__copy p {
    font-size: 18px !important;
  }

  .page-store.pm-service-profile .pm-service-discount-cta__button {
    grid-column: auto !important;
    width: 100% !important;
  }
}

/* Store type 0 local business profile. */
.page-store .pm-business-profile,
.page-store .pm-business-profile * {
  box-sizing: border-box !important;
  letter-spacing: 0 !important;
}

.page-store .pm-business-profile {
  padding: 65px 0 84px !important;
  color: var(--pm-navy) !important;
  font-family: var(--pm-font-inter) !important;
}

body.show-admin-bar .page-store .pm-business-profile {
  padding-top: 65px !important;
}

body:has(.pm-business-profile) {
  overflow-x: clip !important;
  overflow-y: visible !important;
}

body:has(.pm-business-profile) .pm-site-footer.ps-footer,
body:has(.pm-business-profile) footer.pm-site-footer {
  margin-top: 0 !important;
}

.page-store .pm-business-profile__container {
  width: min(1280px, calc(100% - 96px)) !important;
  margin-right: auto !important;
  margin-left: auto !important;
}

.page-store .pm-business-profile__breadcrumb {
  display: flex !important;
  min-height: 0 !important;
  align-items: center !important;
  gap: 8px !important;
  padding-top: 14px !important;
  padding-bottom: 14px !important;
  color: var(--pm-muted) !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  line-height: 18px !important;
}

.page-store .pm-business-profile__breadcrumb a {
  color: inherit !important;
  text-decoration: none !important;
}

.page-store .pm-business-profile__breadcrumb strong {
  color: var(--pm-navy) !important;
  font-weight: 800 !important;
}

.page-store .pm-business-profile__hero {
  position: relative !important;
}

.page-store .pm-business-hero {
  position: relative !important;
  min-height: 370px !important;
  overflow: hidden !important;
  border: 1px solid var(--pm-border) !important;
  border-radius: 24px !important;
  background: var(--pm-navy) !important;
  box-shadow: var(--pm-card-shadow) !important;
}

.page-store .pm-business-hero__image,
.page-store .pm-business-map-card iframe {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  border: 0 !important;
}

.page-store .pm-business-hero__image {
  position: absolute !important;
  inset: 0 !important;
  object-fit: cover !important;
}

.page-store .pm-business-hero__shade {
  position: absolute !important;
  inset: 0 !important;
  background:
    linear-gradient(90deg, rgba(5, 21, 35, 0.88) 0%, rgba(5, 21, 35, 0.64) 45%, rgba(5, 21, 35, 0.22) 100%),
    linear-gradient(0deg, rgba(5, 21, 35, 0.25), rgba(5, 21, 35, 0.12)) !important;
}

.page-store .pm-business-hero__content {
  position: relative !important;
  z-index: 1 !important;
  display: flex !important;
  max-width: 860px !important;
  min-height: 370px !important;
  flex-direction: column !important;
  justify-content: center !important;
  padding: 44px 40px 64px !important;
  color: #ffffff !important;
}

.page-store .pm-business-hero__identity {
  display: flex !important;
  align-items: center !important;
  gap: 18px !important;
}

.page-store .pm-business-hero__logo {
  display: grid !important;
  width: 92px !important;
  height: 92px !important;
  flex: 0 0 92px !important;
  place-items: center !important;
  overflow: hidden !important;
  padding: 10px !important;
  border-radius: 16px !important;
  background: #ffffff !important;
  box-shadow: 0 18px 38px rgba(2, 16, 28, 0.22) !important;
}

.page-store .pm-business-hero__logo img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
}

.page-store .pm-business-profile__badge {
  display: inline-flex !important;
  width: fit-content !important;
  align-items: center !important;
  color: var(--pm-blue) !important;
  font-size: 11px !important;
  font-weight: 800 !important;
  line-height: 16px !important;
  text-transform: uppercase !important;
}

.page-store .pm-business-hero .pm-business-profile__badge {
  color: #ffffff !important;
}

.page-store .pm-business-hero h1 {
  margin: 4px 0 0 !important;
  color: #ffffff !important;
  font-family: var(--pm-font-inter) !important;
  font-size: 36px !important;
  font-weight: 800 !important;
  line-height: 1.08 !important;
}

.page-store .pm-business-hero p {
  max-width: 760px !important;
  margin: 14px 0 0 !important;
  color: #ffffff !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  line-height: 1.48 !important;
}

.page-store .pm-business-hero__location {
  display: inline-flex !important;
  width: fit-content !important;
  align-items: center !important;
  gap: 8px !important;
  margin-top: 14px !important;
  color: #ffffff !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  line-height: 20px !important;
}

.page-store .pm-business-profile svg {
  width: 18px !important;
  height: 18px !important;
  flex: 0 0 18px !important;
  fill: currentColor !important;
}

.page-store .pm-business-hero__actions {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 12px !important;
  margin-top: 24px !important;
}

.page-store .pm-business-profile__button {
  display: inline-flex !important;
  min-height: 46px !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  padding: 12px 22px !important;
  border: 0 !important;
  border-radius: 999px !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  line-height: 20px !important;
  text-decoration: none !important;
  white-space: nowrap !important;
}

.page-store .pm-business-profile__button--primary {
  background: linear-gradient(90deg, var(--pm-blue), var(--pm-cyan)) !important;
  color: #ffffff !important;
  box-shadow: 0 18px 34px rgba(5, 126, 162, 0.28) !important;
}

.page-store .pm-business-profile__button--dark {
  background: #0b4d73 !important;
  color: #ffffff !important;
}

.page-store .pm-business-contact-strip {
  position: relative !important;
  z-index: 2 !important;
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 12px !important;
  margin: -24px 24px 0 !important;
  padding: 18px 22px !important;
  border: 1px solid var(--pm-border) !important;
  border-radius: 18px !important;
  background: rgba(255, 255, 255, 0.98) !important;
  box-shadow: 0 18px 50px rgba(5, 45, 70, 0.10) !important;
}

.page-store .pm-business-contact-strip > div {
  display: flex !important;
  min-width: 0 !important;
  align-items: center !important;
  gap: 12px !important;
}

.page-store .pm-business-contact-strip__icon {
  display: grid !important;
  width: 30px !important;
  height: 30px !important;
  flex: 0 0 30px !important;
  place-items: center !important;
  border-radius: 50% !important;
  background: #e8f8fd !important;
  color: var(--pm-blue) !important;
}

.page-store .pm-business-contact-strip span:last-child,
.page-store .pm-business-contact-card__grid > div {
  min-width: 0 !important;
}

.page-store .pm-business-contact-strip small,
.page-store .pm-business-contact-card small,
.page-store .pm-business-map-card__label small,
.page-store .pm-business-card__kicker,
.page-store .pm-business-card__question {
  display: block !important;
  margin: 0 !important;
  color: #51708d !important;
  font-size: 10px !important;
  font-weight: 800 !important;
  line-height: 15px !important;
  text-transform: uppercase !important;
}

.page-store .pm-business-contact-strip a,
.page-store .pm-business-contact-strip strong,
.page-store .pm-business-contact-card a,
.page-store .pm-business-contact-card strong {
  display: block !important;
  overflow: hidden !important;
  color: var(--pm-navy) !important;
  font-size: 12px !important;
  font-weight: 800 !important;
  line-height: 18px !important;
  text-decoration: none !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

.page-store .pm-business-profile__story {
  display: grid !important;
  grid-template-columns: minmax(0, 760px) minmax(280px, 1fr) !important;
  align-items: start !important;
  gap: 30px !important;
  margin-top: 40px !important;
}

.page-store .pm-business-profile__story-content {
  display: grid !important;
  min-width: 0 !important;
  gap: 24px !important;
}

.page-store .pm-business-sticky-logo {
  display: block !important;
  min-width: 0 !important;
  align-self: stretch !important;
}

.page-store .pm-business-sticky-logo__inner {
  position: sticky !important;
  top: 86px !important;
  display: grid !important;
  width: min(100%, 480px) !important;
  min-height: 348px !important;
  margin: 0 auto !important;
  place-items: center !important;
  padding: 48px !important;
  border: 1px solid var(--pm-border) !important;
  border-radius: 22px !important;
  background: rgba(255, 255, 255, 0.98) !important;
  box-shadow: var(--pm-card-shadow) !important;
}

body.show-admin-bar .page-store .pm-business-sticky-logo__inner {
  top: 126px !important;
}

.page-store .pm-business-sticky-logo img {
  display: block !important;
  width: min(100%, 260px) !important;
  max-height: 220px !important;
  object-fit: contain !important;
}

.page-store .pm-business-card {
  border: 1px solid var(--pm-border) !important;
  border-radius: 22px !important;
  background: rgba(255, 255, 255, 0.98) !important;
  box-shadow: var(--pm-card-shadow) !important;
}

.page-store .pm-business-card--narrow {
  max-width: 760px !important;
  padding: 34px !important;
}

.page-store .pm-business-card h2,
.page-store .pm-business-products h2,
.page-store .pm-business-cta h2 {
  margin: 0 !important;
  color: var(--pm-navy) !important;
  font-family: var(--pm-font-inter) !important;
  font-size: 28px !important;
  font-weight: 800 !important;
  line-height: 1.18 !important;
}

.page-store .pm-business-card h3 {
  margin: 0 0 6px !important;
  color: var(--pm-navy) !important;
  font-family: var(--pm-font-inter) !important;
  font-size: 18px !important;
  font-weight: 800 !important;
  line-height: 1.22 !important;
}

.page-store .pm-business-card p {
  margin: 10px 0 0 !important;
  color: #536a86 !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  line-height: 1.54 !important;
}

.page-store .pm-business-founder__row {
  display: flex !important;
  align-items: center !important;
  gap: 22px !important;
  margin-top: 18px !important;
}

.page-store .pm-business-founder__row img {
  display: block !important;
  width: 136px !important;
  height: 136px !important;
  flex: 0 0 136px !important;
  border-radius: 12px !important;
  object-fit: cover !important;
}

.page-store .pm-business-support__identity {
  display: flex !important;
  align-items: center !important;
  gap: 16px !important;
  margin-top: 16px !important;
}

.page-store .pm-business-support__identity > span {
  display: grid !important;
  width: 52px !important;
  height: 52px !important;
  flex: 0 0 52px !important;
  place-items: center !important;
  border-radius: 14px !important;
  background: #e8f8fd !important;
  color: var(--pm-blue) !important;
}

.page-store .pm-business-support__identity a {
  color: var(--pm-navy) !important;
  font-size: 18px !important;
  font-weight: 800 !important;
  line-height: 24px !important;
  text-decoration: none !important;
}

.page-store .pm-business-support__identity small {
  display: block !important;
  margin-top: 2px !important;
  color: var(--pm-muted) !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  line-height: 18px !important;
}

.page-store .pm-business-card__question {
  margin-top: 26px !important;
}

.page-store .pm-business-profile__contact-grid {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
  gap: 32px !important;
  margin-top: 80px !important;
}

.page-store .pm-business-contact-card {
  min-height: 230px !important;
  padding: 34px !important;
}

.page-store .pm-business-contact-card__grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 20px 36px !important;
  margin-top: 24px !important;
}

.page-store .pm-business-map-card {
  position: relative !important;
  min-height: 230px !important;
  overflow: hidden !important;
  border: 1px solid var(--pm-border) !important;
  border-radius: 22px !important;
  background: var(--pm-soft) !important;
  box-shadow: var(--pm-card-shadow) !important;
}

.page-store .pm-business-map-card::after {
  position: absolute !important;
  inset: 0 !important;
  z-index: 1 !important;
  background:
    linear-gradient(90deg, transparent 0 18%, rgba(5, 126, 162, 0.16) 18% 19%, transparent 19% 52%, rgba(5, 126, 162, 0.14) 52% 53%, transparent 53%),
    linear-gradient(0deg, transparent 0 30%, rgba(11, 52, 84, 0.12) 30% 31%, transparent 31% 67%, rgba(11, 52, 84, 0.12) 67% 68%, transparent 68%) !important;
  content: "" !important;
  pointer-events: none !important;
}

.page-store .pm-business-map-card__label {
  position: absolute !important;
  top: 18px !important;
  left: 18px !important;
  z-index: 2 !important;
  max-width: calc(100% - 36px) !important;
  padding: 12px 14px !important;
  border-radius: 12px !important;
  background: #ffffff !important;
  box-shadow: 0 10px 28px rgba(5, 45, 70, 0.12) !important;
}

.page-store .pm-business-map-card__label strong,
.page-store .pm-business-map-card__label span {
  display: block !important;
  color: var(--pm-navy) !important;
  font-size: 12px !important;
  font-weight: 800 !important;
  line-height: 16px !important;
}

.page-store .pm-business-map-card__label span {
  color: var(--pm-muted) !important;
  font-weight: 600 !important;
}

.page-store .pm-business-map-card > a {
  position: absolute !important;
  right: 18px !important;
  bottom: 18px !important;
  z-index: 2 !important;
  display: inline-flex !important;
  min-height: 34px !important;
  align-items: center !important;
  padding: 9px 15px !important;
  border-radius: 999px !important;
  background: #ffffff !important;
  color: var(--pm-navy) !important;
  font-size: 12px !important;
  font-weight: 800 !important;
  line-height: 16px !important;
  text-decoration: none !important;
  box-shadow: 0 10px 28px rgba(5, 45, 70, 0.12) !important;
}

.page-store .pm-business-products {
  margin-top: 80px !important;
}

.page-store .pm-business-products__grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 20px !important;
  margin-top: 28px !important;
}

.page-store .pm-business-product-card {
  display: flex !important;
  min-width: 0 !important;
  min-height: 330px !important;
  flex-direction: column !important;
  overflow: hidden !important;
  border: 1px solid var(--pm-border) !important;
  border-radius: 20px !important;
  background: #ffffff !important;
  box-shadow: var(--pm-card-shadow) !important;
}

.page-store .pm-business-product-card__image {
  display: grid !important;
  position: relative !important;
  height: 212px !important;
  place-items: center !important;
  overflow: hidden !important;
  background: #f6fcff !important;
  text-decoration: none !important;
}

.page-store .pm-business-product-card__image img {
  display: block !important;
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  max-height: 100% !important;
  object-fit: cover !important;
  object-position: center bottom !important;
  padding: 0 !important;
}

.page-store .pm-business-product-card__body {
  display: flex !important;
  min-width: 0 !important;
  flex: 1 1 auto !important;
  flex-direction: column !important;
  gap: 3px !important;
  padding: 18px 18px 0 !important;
}

.page-store .pm-business-product-card__title {
  display: -webkit-box !important;
  overflow: hidden !important;
  color: var(--pm-navy) !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  line-height: 18px !important;
  text-decoration: none !important;
  -webkit-box-orient: vertical !important;
  -webkit-line-clamp: 2 !important;
}

.page-store .pm-business-product-card__body span {
  color: var(--pm-muted) !important;
  font-size: 11px !important;
  font-weight: 600 !important;
  line-height: 16px !important;
}

.page-store .pm-business-product-card footer {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 12px !important;
  padding: 14px 18px 18px !important;
}

.page-store .pm-business-product-card footer strong {
  color: var(--pm-navy) !important;
  font-size: 13px !important;
  font-weight: 800 !important;
  line-height: 18px !important;
}

.page-store .pm-business-product-card__add {
  display: inline-flex !important;
  min-height: 34px !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 9px 17px !important;
  border-radius: 999px !important;
  background: linear-gradient(90deg, var(--pm-blue), var(--pm-cyan)) !important;
  color: #ffffff !important;
  font-size: 13px !important;
  font-weight: 800 !important;
  line-height: 16px !important;
  text-decoration: none !important;
  white-space: nowrap !important;
}

.page-store .pm-business-cta {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 32px !important;
  margin-top: 84px !important;
  padding: 38px 34px !important;
  border-radius: 24px !important;
  background: #0b4868 !important;
  color: #ffffff !important;
  box-shadow: var(--pm-card-shadow) !important;
}

.page-store .pm-business-cta h2 {
  max-width: 560px !important;
  color: #ffffff !important;
}

.page-store .pm-business-cta p {
  max-width: 720px !important;
  margin: 10px 0 0 !important;
  color: rgba(255, 255, 255, 0.82) !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  line-height: 21px !important;
}

.page-store .pm-business-cta a {
  display: inline-flex !important;
  min-height: 46px !important;
  flex: 0 0 auto !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 12px 22px !important;
  border-radius: 999px !important;
  background: #ffffff !important;
  color: var(--pm-navy) !important;
  font-size: 13px !important;
  font-weight: 800 !important;
  line-height: 18px !important;
  text-decoration: none !important;
}

@media (max-width: 991px) {
  .page-store .pm-business-profile__container {
    width: min(100% - 32px, 1280px) !important;
  }

  .page-store .pm-business-hero,
  .page-store .pm-business-hero__content {
    min-height: 0 !important;
  }

  .page-store .pm-business-hero__content {
    padding: 30px 22px 42px !important;
  }

  .page-store .pm-business-contact-strip,
  .page-store .pm-business-profile__contact-grid {
    grid-template-columns: 1fr !important;
  }

  .page-store .pm-business-contact-strip {
    margin: -18px 16px 0 !important;
  }

  .page-store .pm-business-profile__story {
    grid-template-columns: 1fr !important;
    gap: 20px !important;
  }

  .page-store .pm-business-sticky-logo {
    align-self: auto !important;
  }

  .page-store .pm-business-sticky-logo__inner {
    position: static !important;
    width: 100% !important;
    min-height: 220px !important;
    padding: 32px !important;
  }

  .page-store .pm-business-sticky-logo img {
    max-height: 160px !important;
  }

  .page-store .pm-business-profile__contact-grid {
    gap: 20px !important;
    margin-top: 54px !important;
  }

  .page-store .pm-business-map-card {
    min-height: 260px !important;
  }

  .page-store .pm-business-cta {
    align-items: flex-start !important;
    flex-direction: column !important;
  }

  .page-store .pm-business-products__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 575px) {
  .page-store .pm-business-profile {
    padding-bottom: 56px !important;
  }

  .page-store .pm-business-profile__breadcrumb {
    min-height: 44px !important;
    overflow: hidden !important;
    white-space: nowrap !important;
  }

  .page-store .pm-business-hero {
    border-radius: 20px !important;
  }

  .page-store .pm-business-hero__shade {
    background: linear-gradient(0deg, rgba(5, 21, 35, 0.88), rgba(5, 21, 35, 0.48)) !important;
  }

  .page-store .pm-business-hero__identity {
    align-items: flex-start !important;
    flex-direction: column !important;
    gap: 14px !important;
  }

  .page-store .pm-business-hero__logo {
    width: 82px !important;
    height: 82px !important;
    flex-basis: 82px !important;
  }

  .page-store .pm-business-hero h1 {
    font-size: 30px !important;
    line-height: 1.12 !important;
  }

  .page-store .pm-business-hero p {
    font-size: 13px !important;
    line-height: 1.5 !important;
  }

  .page-store .pm-business-profile__button {
    width: 100% !important;
  }

  .page-store .pm-business-contact-strip {
    padding: 16px !important;
  }

  .page-store .pm-business-card--narrow,
  .page-store .pm-business-contact-card {
    max-width: 100% !important;
    padding: 24px 20px !important;
    border-radius: 18px !important;
  }

  .page-store .pm-business-card h2,
  .page-store .pm-business-products h2,
  .page-store .pm-business-cta h2 {
    font-size: 24px !important;
  }

  .page-store .pm-business-founder__row {
    align-items: flex-start !important;
    flex-direction: column !important;
  }

  .page-store .pm-business-founder__row img {
    width: 100% !important;
    height: 190px !important;
    flex-basis: auto !important;
  }

  .page-store .pm-business-sticky-logo__inner {
    min-height: 180px !important;
    padding: 26px !important;
    border-radius: 18px !important;
  }

  .page-store .pm-business-sticky-logo img {
    max-height: 130px !important;
  }

  .page-store .pm-business-contact-card__grid,
  .page-store .pm-business-products__grid {
    grid-template-columns: 1fr !important;
  }

  .page-store .pm-business-products,
  .page-store .pm-business-cta {
    margin-top: 56px !important;
  }

  .page-store .pm-business-product-card__image {
    height: 220px !important;
  }

  .page-store .pm-business-cta {
    padding: 28px 22px !important;
    border-radius: 20px !important;
  }

  .page-store .pm-business-cta a {
    width: 100% !important;
  }
}

body.checkout-page.pm-platform-contribution-modal-open #platform-contribution-modal {
  z-index: 2147483647 !important;
}

body.checkout-page.pm-platform-contribution-modal-open .modal-backdrop {
  z-index: 2147483646 !important;
}

body.checkout-page:has(#platform-contribution-modal.show) #platform-contribution-modal {
  z-index: 2147483647 !important;
}

body.checkout-page:has(#platform-contribution-modal.show) .modal-backdrop {
  z-index: 2147483646 !important;
}

#platform-contribution-modal,
#platform-contribution-modal.show,
#platform-contribution-modal .modal-dialog {
  z-index: 2147483647 !important;
}

.modal-backdrop.pm-platform-contribution-modal-backdrop {
  z-index: 2147483646 !important;
}

body:has(#platform-contribution-modal.show) > .modal-backdrop {
  z-index: 2147483646 !important;
}

/* Onboarding role-selection page. */
#onboarding-page {
  background: #f7fcff !important;
}

#onboarding-page .ck-content,
#onboarding-page .ck-content > div {
  background: #f7fcff !important;
}

#onboarding-page .ck-content {
  padding-top: 65px !important;
}

#onboarding-page .pm-site-footer {
  margin-top: 0 !important;
}

.pm-onboarding,
.pm-onboarding *,
.pm-onboarding *::before,
.pm-onboarding *::after {
  box-sizing: border-box !important;
}

.pm-onboarding {
  width: 100%;
  color: var(--pm-ink);
  font-family: var(--pm-font-sans) !important;
}

.pm-onboarding__section {
  width: 100%;
  max-width: 1280px;
  margin: 0 auto;
  padding: 56px 24px !important;
}

.pm-onboarding__inner {
  width: 100%;
  max-width: 768px;
  margin: 0 auto;
}

.pm-onboarding__intro {
  text-align: center;
}

.pm-onboarding__eyebrow {
  margin: 0 !important;
  color: var(--pm-blue) !important;
  font-family: var(--pm-font-sans) !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  line-height: 16.5px !important;
  letter-spacing: 1.1px !important;
  text-transform: uppercase !important;
}

.pm-onboarding__intro h1 {
  margin: 12px 0 0 !important;
  color: var(--pm-navy) !important;
  font-family: var(--pm-font-sans) !important;
  font-size: 36px !important;
  font-weight: 800 !important;
  line-height: 40px !important;
  letter-spacing: -0.025em !important;
}

.pm-onboarding__lead {
  max-width: 480px;
  margin: 12px auto 0 !important;
  color: var(--pm-muted) !important;
  font-family: var(--pm-font-sans) !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  line-height: 20px !important;
}

.pm-onboarding__grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px !important;
  margin-top: 36px !important;
}

.pm-onboarding-card.pm-card {
  display: flex !important;
  min-width: 0 !important;
  min-height: 271px !important;
  flex-direction: column !important;
  gap: 12px !important;
  padding: 28px !important;
  border: 1px solid var(--pm-border) !important;
  border-radius: 24px !important;
  background: rgba(255, 255, 255, 0.92) !important;
  box-shadow: var(--pm-card-shadow) !important;
  color: var(--pm-ink) !important;
  cursor: pointer;
  text-align: left !important;
  transition: transform 200ms ease, border-color 200ms ease, box-shadow 200ms ease !important;
}

.pm-onboarding-card.pm-card:hover {
  transform: translateY(-2px);
  border-color: rgba(5, 126, 162, 0.4) !important;
  box-shadow: var(--pm-soft-shadow) !important;
}

.pm-onboarding-card.pm-card:focus-visible {
  outline: 3px solid rgba(69, 177, 225, 0.36) !important;
  outline-offset: 3px !important;
}

.pm-onboarding-card__icon {
  display: inline-flex !important;
  width: 44px !important;
  height: 44px !important;
  align-items: center !important;
  justify-content: center !important;
  border-radius: 16px !important;
  background: linear-gradient(135deg, var(--pm-blue), var(--pm-cyan)) !important;
  color: #ffffff !important;
  flex: 0 0 auto !important;
}

.pm-onboarding-card__icon svg {
  display: block !important;
  width: 20px !important;
  height: 20px !important;
}

.pm-onboarding-card__heading {
  display: flex !important;
  flex-direction: column !important;
  min-width: 0 !important;
}

.pm-onboarding-card__eyebrow {
  color: var(--pm-blue) !important;
  font-family: var(--pm-font-sans) !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  line-height: 15px !important;
  letter-spacing: 0.5px !important;
  text-transform: uppercase !important;
}

.pm-onboarding-card__title {
  margin-top: 2px !important;
  color: var(--pm-navy) !important;
  font-family: var(--pm-font-sans) !important;
  font-size: 18px !important;
  font-weight: 800 !important;
  line-height: 28px !important;
  letter-spacing: 0 !important;
}

.pm-onboarding-card__copy {
  display: block !important;
  color: var(--pm-muted) !important;
  font-family: var(--pm-font-sans) !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  line-height: 22.75px !important;
}

.pm-onboarding-card__select {
  display: block !important;
  margin-top: auto !important;
  color: var(--pm-blue) !important;
  font-family: var(--pm-font-sans) !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  line-height: 20px !important;
}

@media (max-width: 575.98px) {
  .pm-onboarding__section {
    padding: 56px 16px !important;
  }

  .pm-onboarding__intro h1 {
    font-size: 30px !important;
    line-height: 36px !important;
  }

  .pm-onboarding__lead {
    max-width: 100%;
  }

  .pm-onboarding__grid {
    grid-template-columns: 1fr;
  }
}

/* Onboarding cause and local business steps. */
#onboarding-cause-step-1-page,
#onboarding-local-business-combined-page {
  margin: 0 !important;
  background: #ffffff !important;
}

#onboarding-local-business-combined-page {
  overflow-x: clip !important;
  overflow-y: visible !important;
}

#onboarding-cause-step-1-page .site-notice,
#onboarding-cause-step-1-page .js-site-notice,
#onboarding-local-business-combined-page .site-notice,
#onboarding-local-business-combined-page .js-site-notice {
  display: none !important;
}

#onboarding-cause-step-1-page .pm-cause-onboarding,
#onboarding-cause-step-1-page .pm-cause-onboarding *,
#onboarding-cause-step-1-page .pm-cause-onboarding *::before,
#onboarding-cause-step-1-page .pm-cause-onboarding *::after,
#onboarding-local-business-combined-page .pm-cause-onboarding,
#onboarding-local-business-combined-page .pm-cause-onboarding *,
#onboarding-local-business-combined-page .pm-cause-onboarding *::before,
#onboarding-local-business-combined-page .pm-cause-onboarding *::after {
  box-sizing: border-box !important;
  font-family: var(--pm-font-inter) !important;
}

.pm-cause-onboarding {
  min-height: 100dvh;
  color: var(--pm-ink);
  background: linear-gradient(135deg, #ffffff 0%, var(--pm-soft) 52%, #ffffff 100%);
}

.pm-cause-onboarding__grid {
  display: grid;
  width: 100%;
  max-width: 1320px;
  min-height: 100dvh;
  margin: 0 auto;
  padding: 0 16px;
  gap: 0;
}

.pm-cause-onboarding__panel {
  display: flex;
  flex-direction: column;
  min-width: 0;
  padding: 32px 0;
}

.pm-cause-onboarding__topbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 40px;
}

.pm-cause-onboarding__brand {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  min-width: 0;
  text-decoration: none !important;
}

.pm-cause-onboarding__brand img {
  display: block;
  width: auto;
  height: 28px;
  max-width: min(214px, 52vw);
  object-fit: contain;
}

.pm-cause-onboarding__return {
  display: inline-flex;
  min-height: 34px;
  align-items: center;
  justify-content: center;
  gap: 6px;
  padding: 8px 14px;
  border: 1px solid var(--pm-border);
  border-radius: 999px;
  background: #ffffff;
  color: var(--pm-navy) !important;
  font-size: 12px;
  font-weight: 700;
  line-height: 16px;
  text-decoration: none !important;
  transition: border-color .2s ease, color .2s ease, transform .2s ease;
  white-space: nowrap;
}

.pm-cause-onboarding__return svg {
  width: 14px;
  height: 14px;
  flex: 0 0 14px;
}

.pm-cause-onboarding__return:hover {
  border-color: var(--pm-blue);
  color: var(--pm-blue) !important;
  transform: translateY(-1px);
}

.pm-cause-onboarding__meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
  margin-bottom: 16px;
}

.pm-cause-onboarding__step-pill {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 6px 12px;
  border-radius: 999px;
  background: var(--pm-soft);
  color: var(--pm-blue);
  font-size: 11px;
  font-weight: 800;
  line-height: 16px;
  letter-spacing: .05em;
  text-transform: uppercase;
}

.pm-cause-onboarding__step-pill > span:first-child {
  width: 8px;
  height: 8px;
  flex: 0 0 8px;
  border-radius: 999px;
  background: var(--pm-cyan);
  box-shadow: 0 0 0 5px rgba(69, 177, 225, .18);
}

.pm-cause-onboarding__step-pill > [data-pm-step-pill] {
  width: auto;
  height: auto;
  flex: 0 1 auto;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  white-space: nowrap;
}

.pm-cause-onboarding__steps {
  display: flex;
  width: 100%;
  max-width: 440px;
  align-items: flex-start;
  margin-bottom: 32px;
}

.pm-cause-onboarding__step {
  display: flex;
  flex: 0 0 auto;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  border-radius: 8px;
  color: var(--pm-muted) !important;
  text-decoration: none !important;
  transition: opacity .2s ease;
}

.pm-cause-onboarding__step:hover {
  opacity: .9;
}

.pm-cause-onboarding__step-number {
  display: grid;
  width: 28px;
  height: 28px;
  place-items: center;
  border: 1px solid var(--pm-border);
  border-radius: 999px;
  background: #ffffff;
  color: var(--pm-muted);
  font-size: 11px;
  font-weight: 800;
  line-height: 1;
  transition: transform .2s ease, border-color .2s ease, color .2s ease;
}

.pm-cause-onboarding__step:hover .pm-cause-onboarding__step-number {
  border-color: var(--pm-blue);
  color: var(--pm-blue);
  transform: scale(1.1);
}

.pm-cause-onboarding__step.is-current .pm-cause-onboarding__step-number {
  border-color: transparent;
  background: linear-gradient(135deg, var(--pm-blue), var(--pm-cyan));
  color: #ffffff;
  box-shadow: 0 0 0 4px rgba(69, 177, 225, .18);
}

.pm-cause-onboarding__step-label {
  display: none;
  color: inherit;
  font-size: 9px;
  font-weight: 700;
  line-height: 12px;
  letter-spacing: .05em;
  text-transform: uppercase;
}

.pm-cause-onboarding__step.is-current .pm-cause-onboarding__step-label {
  color: var(--pm-blue);
}

.pm-cause-onboarding__step-line {
  height: 1px;
  flex: 1 1 auto;
  margin: 14px 8px 0;
  background: var(--pm-border);
}

.pm-cause-onboarding h1 {
  max-width: 680px;
  margin: 0 !important;
  color: var(--pm-navy) !important;
  font-size: 36px !important;
  font-weight: 800 !important;
  line-height: 45px !important;
  letter-spacing: 0 !important;
}

.pm-cause-onboarding h1 .pm-gradient-text {
  font: inherit !important;
  letter-spacing: inherit !important;
}

.pm-cause-onboarding__lead {
  max-width: 610px;
  margin: 16px 0 0 !important;
  color: var(--pm-muted) !important;
  font-size: 16px !important;
  font-weight: 400 !important;
  line-height: 24px !important;
}

.pm-cause-onboarding__form-wrap {
  flex: 1 1 auto;
  margin-top: 28px;
}

.pm-cause-onboarding__card {
  width: 100%;
  padding: 24px;
  border: 1px solid var(--pm-border);
  border-radius: 28px;
  background: rgba(255, 255, 255, .9);
  box-shadow: var(--pm-card-shadow);
  backdrop-filter: blur(8px);
}

.pm-cause-onboarding__fields {
  display: grid;
  grid-template-columns: 1fr;
  gap: 16px;
}

.pm-cause-onboarding__field {
  display: block;
  min-width: 0;
  margin: 0 !important;
}

.pm-cause-onboarding__field--wide {
  grid-column: 1 / -1;
}

.pm-cause-onboarding__field[hidden] {
  display: none !important;
}

.pm-cause-onboarding__label-text {
  display: flex;
  align-items: center;
  gap: 6px;
  color: var(--pm-navy);
  font-size: 12px;
  font-weight: 800;
  line-height: 16px;
}

.pm-cause-onboarding__optional {
  color: var(--pm-muted);
  font-weight: 400;
}

.pm-cause-onboarding__hint {
  position: relative;
  display: inline-flex;
  vertical-align: middle;
}

.pm-cause-onboarding__hint-trigger {
  display: grid;
  width: 16px;
  height: 16px;
  cursor: help;
  place-items: center;
  border: 1px solid var(--pm-border);
  border-radius: 999px;
  background: var(--pm-soft);
  color: var(--pm-blue);
  transition: border-color .15s ease, background-color .15s ease, color .15s ease;
}

.pm-cause-onboarding__hint-trigger svg {
  width: 10px;
  height: 10px;
}

.pm-cause-onboarding__hint-trigger:hover,
.pm-cause-onboarding__hint-trigger:focus {
  border-color: var(--pm-blue);
  background: var(--pm-blue);
  color: #ffffff;
  outline: 0;
}

.pm-cause-onboarding__tooltip {
  position: absolute;
  bottom: 100%;
  left: 50%;
  z-index: 50;
  width: 224px;
  max-width: 60vw;
  margin-bottom: 8px;
  padding: 8px 12px;
  border: 1px solid var(--pm-border);
  border-radius: 12px;
  background: #ffffff;
  color: var(--pm-ink);
  font-size: 11px;
  font-weight: 500;
  line-height: 1.35;
  opacity: 0;
  pointer-events: none;
  box-shadow: var(--pm-card-shadow);
  transform: translateX(-50%);
  transition: opacity .15s ease;
}

.pm-cause-onboarding__hint:hover .pm-cause-onboarding__tooltip,
.pm-cause-onboarding__hint:focus-within .pm-cause-onboarding__tooltip {
  opacity: 1;
}

.pm-cause-onboarding input,
.pm-cause-onboarding select {
  display: block;
  width: 100%;
  height: 46px;
  margin-top: 6px;
  padding: 12px 16px;
  border: 1px solid var(--pm-border);
  border-radius: 16px;
  background: #ffffff;
  color: var(--pm-ink);
  font-size: 14px;
  font-weight: 400;
  line-height: 20px;
  outline: 0;
  transition: border-color .15s ease, box-shadow .15s ease;
}

.pm-cause-onboarding input::placeholder {
  color: #94a3b8;
  opacity: 1;
}

.pm-cause-onboarding input:focus,
.pm-cause-onboarding select:focus {
  border-color: var(--pm-blue);
  box-shadow: 0 0 0 3px rgba(69, 177, 225, .16);
}

.pm-cause-onboarding input[aria-invalid="true"],
.pm-cause-onboarding select[aria-invalid="true"],
.pm-cause-onboarding textarea[aria-invalid="true"] {
  border-color: #ef4444;
  box-shadow: 0 0 0 3px rgba(239, 68, 68, .14);
}

.pm-cause-onboarding__field-error {
  display: block;
  width: 100%;
  margin-top: 6px;
  color: #ff2d55;
  font-size: 12px;
  font-weight: 400;
  line-height: 16px;
}

.pm-cause-onboarding__field-error[hidden] {
  display: none !important;
}

.pm-cause-onboarding__upload-stack .pm-cause-onboarding__field-error {
  max-width: 76px;
  text-align: center;
}

.pm-cause-onboarding__media-card > .pm-cause-onboarding__field-error {
  margin-top: -6px;
}

.pm-cause-onboarding__terms {
  flex-wrap: wrap;
}

.pm-cause-onboarding__terms .pm-cause-onboarding__field-error {
  margin-top: -4px;
  padding-left: 26px;
}

.pm-cause-onboarding select.is-disabled {
  cursor: not-allowed;
  opacity: .7;
}

.pm-cause-onboarding__choice-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  margin-top: 8px;
}

.pm-cause-onboarding__choice {
  min-height: 42px;
  padding: 10px 12px;
  border: 1px solid var(--pm-border);
  border-radius: 16px;
  background: #ffffff;
  color: var(--pm-navy);
  font-size: 14px;
  font-weight: 700;
  line-height: 20px;
  transition: border-color .15s ease, background-color .15s ease, color .15s ease;
}

.pm-cause-onboarding__choice:hover {
  border-color: var(--pm-blue);
}

.pm-cause-onboarding__choice.is-active {
  border-color: var(--pm-blue);
  background: var(--pm-blue);
  color: #ffffff;
}

.pm-cause-onboarding__social {
  display: flex;
  gap: 8px;
  margin-top: 6px;
}

.pm-cause-onboarding__social select {
  width: auto;
  flex: 0 0 auto;
  margin-top: 0;
  padding-right: 12px;
  padding-left: 12px;
}

.pm-cause-onboarding__social input {
  margin-top: 0;
}

.pm-cause-onboarding__actions {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-top: 24px;
  padding-top: 20px;
  border-top: 1px solid var(--pm-border);
}

.pm-cause-onboarding__btn {
  display: inline-flex;
  min-height: 47px;
  align-items: center;
  justify-content: center;
  padding: 12px 20px;
  border: 1px solid transparent;
  border-radius: 999px;
  font-size: 14px;
  font-weight: 700;
  line-height: 21px;
  text-align: center;
  text-decoration: none !important;
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease, color .2s ease;
  white-space: nowrap;
}

.pm-cause-onboarding__btn:hover {
  transform: translateY(-1px);
  text-decoration: none !important;
}

.pm-cause-onboarding__btn--primary {
  border-color: transparent;
  background: linear-gradient(135deg, var(--pm-blue), var(--pm-cyan));
  color: #ffffff !important;
  box-shadow: 0 14px 30px rgba(5, 126, 162, .25);
}

.pm-cause-onboarding__btn--secondary {
  border-color: var(--pm-border);
  background: #ffffff;
  color: var(--pm-blue) !important;
}

.pm-cause-onboarding--submitted {
  display: flex;
  min-height: 100vh;
  align-items: center;
  justify-content: center;
  padding: 40px 20px;
  background: linear-gradient(180deg, #f5fbff 0%, #ffffff 42%, #f4f9fd 100%);
}

.pm-cause-onboarding__submitted-card {
  display: flex;
  width: 100%;
  max-width: 520px;
  flex-direction: column;
  align-items: center;
  text-align: center;
}

.pm-cause-onboarding__submitted-icon {
  display: inline-flex;
  width: 46px;
  height: 46px;
  align-items: center;
  justify-content: center;
  margin-bottom: 20px;
  border-radius: 999px;
  background: rgba(69, 177, 225, .12);
  color: var(--pm-blue);
}

.pm-cause-onboarding__submitted-icon svg {
  width: 22px;
  height: 22px;
}

.pm-cause-onboarding__submitted-card h1 {
  margin: 0;
  color: var(--pm-navy);
  font-size: 24px;
  font-weight: 800;
  line-height: 1.25;
}

.pm-cause-onboarding__submitted-card p {
  max-width: 430px;
  margin: 12px auto 0;
  color: var(--pm-muted);
  font-size: 14px;
  font-weight: 500;
  line-height: 1.6;
}

.pm-cause-onboarding__submitted-link {
  margin-top: 24px;
}

#onboarding-local-business-combined-page .pm-cause-onboarding__submitted-icon,
#onboarding-parish-page .pm-cause-onboarding__submitted-icon {
  width: 80px;
  height: 80px;
  margin-bottom: 32px;
}

#onboarding-local-business-combined-page .pm-cause-onboarding__submitted-icon svg,
#onboarding-parish-page .pm-cause-onboarding__submitted-icon svg {
  width: 30px;
  height: 30px;
}

#onboarding-local-business-combined-page .pm-cause-onboarding__submitted-card h1,
#onboarding-parish-page .pm-cause-onboarding__submitted-card h1 {
  font-size: 32px;
  line-height: 40px;
}

#onboarding-local-business-combined-page .pm-cause-onboarding__submitted-card > p:not(.pm-cause-onboarding__submitted-redirect),
#onboarding-parish-page .pm-cause-onboarding__submitted-card > p:not(.pm-cause-onboarding__submitted-redirect) {
  max-width: 560px;
  margin-top: 16px;
  font-size: 18px;
  line-height: 28px;
}

#onboarding-local-business-combined-page .pm-cause-onboarding__submitted-card,
#onboarding-parish-page .pm-cause-onboarding__submitted-card {
  max-width: 620px;
}

#onboarding-local-business-combined-page .pm-cause-onboarding__submitted-redirect,
#onboarding-parish-page .pm-cause-onboarding__submitted-redirect {
  margin-top: 28px;
  font-size: 16px;
  line-height: 24px;
}

#onboarding-local-business-combined-page .pm-cause-onboarding__submitted-redirect strong,
#onboarding-parish-page .pm-cause-onboarding__submitted-redirect strong {
  color: var(--pm-blue);
  font-weight: 800;
}

.pm-cause-onboarding__preview {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  min-width: 0;
  padding: 32px 0;
}

.pm-cause-onboarding__preview-inner {
  width: 100%;
  max-width: 520px;
}

.pm-cause-onboarding__preview-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 12px;
  padding: 0 4px;
}

.pm-cause-onboarding__preview-head > span:first-child {
  color: var(--pm-blue);
  font-size: 11px;
  font-weight: 800;
  line-height: 16px;
  letter-spacing: .16em;
  text-transform: uppercase;
}

.pm-cause-onboarding__preview-head > span:last-child {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  color: var(--pm-muted);
  font-size: 12px;
  font-weight: 600;
  line-height: 16px;
  white-space: nowrap;
}

.pm-cause-onboarding__preview-head > span:last-child > span {
  width: 8px;
  height: 8px;
  border-radius: 999px;
  background: #10b981;
  box-shadow: 0 0 0 5px rgba(16, 185, 129, .15);
}

.pm-cause-onboarding__preview-card {
  overflow: hidden;
  border: 1px solid var(--pm-border);
  border-radius: 28px;
  background: #ffffff;
  box-shadow: var(--pm-card-shadow);
}

.pm-cause-onboarding__preview-media {
  position: relative;
  min-height: 200px;
  overflow: hidden;
}

.pm-cause-onboarding__preview-media img[data-pm-preview-image-output] {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.pm-cause-onboarding__preview-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(to top, rgba(0, 0, 0, .55), rgba(0, 0, 0, .15) 52%, transparent);
  pointer-events: none;
}

.pm-cause-onboarding__preview-content {
  position: relative;
  display: flex;
  min-height: 200px;
  flex-direction: column;
  justify-content: space-between;
  padding: 16px;
}

.pm-cause-onboarding__preview-badges {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px;
  min-height: 18px;
}

.pm-cause-onboarding__preview-badges span {
  display: inline-flex;
  align-items: center;
  min-height: 21px;
  padding: 2px 8px;
  border: 1px solid rgba(255, 255, 255, .3);
  border-radius: 999px;
  background: rgba(255, 255, 255, .1);
  color: #ffffff;
  font-size: 9px;
  font-weight: 700;
  line-height: 14px;
  backdrop-filter: blur(8px);
}

.pm-cause-onboarding__preview-badges span[hidden] {
  display: none !important;
}

.pm-cause-onboarding__preview-copy {
  margin-top: 40px;
  color: #ffffff;
}

.pm-cause-onboarding__preview-copy h3 {
  margin: 0 !important;
  color: #ffffff !important;
  font-size: 18px !important;
  font-weight: 800 !important;
  line-height: 22px !important;
}

.pm-cause-onboarding__preview-copy h3.is-placeholder {
  color: rgba(255, 255, 255, .5) !important;
}

.pm-cause-onboarding__preview-ctas {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 12px;
}

.pm-cause-onboarding__preview-ctas span {
  display: inline-flex;
  min-height: 27px;
  align-items: center;
  padding: 6px 12px;
  border-radius: 999px;
  color: #ffffff;
  cursor: default;
  font-size: 10px;
  font-weight: 800;
  line-height: 15px;
}

.pm-cause-onboarding__preview-ctas span:first-child {
  background: var(--pm-blue);
}

.pm-cause-onboarding__preview-ctas span:last-child {
  border: 1px solid rgba(255, 255, 255, .3);
  background: rgba(255, 255, 255, .1);
  backdrop-filter: blur(8px);
}

@media (min-width: 640px) {
  .pm-cause-onboarding__fields {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .pm-cause-onboarding__card {
    padding: 28px;
  }
}

@media (min-width: 640px) {
  .pm-cause-onboarding__grid {
    padding-right: 24px;
    padding-left: 24px;
  }

  .pm-cause-onboarding__brand img {
    height: 36px;
  }
}

@media (min-width: 768px) {
  .pm-cause-onboarding h1 {
    font-size: 48px !important;
    line-height: 60px !important;
  }

  .pm-cause-onboarding__lead {
    font-size: 18px !important;
    line-height: 28px !important;
  }
}

@media (min-width: 1024px) {
  .pm-cause-onboarding__grid {
    grid-template-columns: 1.02fr .98fr;
  }

  .pm-cause-onboarding__panel {
    padding-right: 32px;
  }

  .pm-cause-onboarding__brand img {
    height: 40px;
  }

  .pm-cause-onboarding__step-label {
    display: block;
  }

  .pm-cause-onboarding__preview {
    position: sticky;
    top: 32px;
    align-self: start;
    max-height: calc(100vh - 2rem);
    overflow-y: auto;
    padding-top: 48px;
    padding-bottom: 48px;
  }
}

@media (max-width: 575.98px) {
  .pm-cause-onboarding__topbar {
    align-items: flex-start;
  }

  .pm-cause-onboarding__return {
    padding-right: 12px;
    padding-left: 12px;
    font-size: 11px;
  }

  .pm-cause-onboarding__steps {
    max-width: 100%;
  }

  .pm-cause-onboarding__card {
    padding: 24px;
  }

  .pm-cause-onboarding__social {
    flex-direction: column;
  }

  .pm-cause-onboarding__social select {
    width: 100%;
  }
}

/* Onboarding cause full flow extensions. */
.pm-cause-onboarding__step-panel[hidden],
.pm-cause-onboarding__preview-body[hidden],
.pm-cause-onboarding input[hidden] {
  display: none !important;
}

.pm-cause-onboarding__step-panel:focus {
  outline: 0;
}

.pm-cause-onboarding__step.is-complete .pm-cause-onboarding__step-number {
  border-color: rgba(69, 177, 225, .26);
  background: var(--pm-soft);
  color: var(--pm-blue);
}

.pm-cause-onboarding textarea {
  display: block;
  width: 100%;
  min-height: 104px;
  margin-top: 6px;
  padding: 12px 16px;
  border: 1px solid var(--pm-border);
  border-radius: 16px;
  background: #ffffff;
  color: var(--pm-ink);
  font-size: 14px;
  font-weight: 400;
  line-height: 20px;
  outline: 0;
  resize: vertical;
  transition: border-color .15s ease, box-shadow .15s ease;
}

.pm-cause-onboarding textarea::placeholder {
  color: #94a3b8;
  opacity: 1;
}

.pm-cause-onboarding textarea:focus {
  border-color: var(--pm-blue);
  box-shadow: 0 0 0 3px rgba(69, 177, 225, .16);
}

.pm-cause-onboarding__image-tile.is-invalid,
.pm-cause-onboarding__upload-banner.is-invalid,
.pm-cause-onboarding__media-upload.is-invalid {
  border-color: #ef4444;
  box-shadow: 0 0 0 3px rgba(239, 68, 68, .14);
}

.pm-cause-onboarding input[type="checkbox"] {
  width: 16px;
  height: 16px;
  flex: 0 0 16px;
  margin: 2px 0 0;
  padding: 0;
  border-radius: 4px;
}

.pm-cause-onboarding__label-row {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}

.pm-cause-onboarding__label-row .pm-cause-onboarding__label-text {
  min-width: 0;
}

.pm-cause-onboarding__counter {
  flex: 0 0 auto;
  color: var(--pm-muted);
  font-size: 11px;
  font-weight: 700;
  line-height: 16px;
  white-space: nowrap;
}

.pm-cause-onboarding__choice-grid--compact {
  max-width: 280px;
}

.pm-cause-onboarding__nested-card {
  padding: 16px;
  border: 1px solid var(--pm-border);
  border-radius: 22px;
  background: #ffffff;
}

.pm-cause-onboarding__donation-list {
  display: grid;
  gap: 16px;
}

.pm-cause-onboarding__event-list {
  display: grid;
  gap: 16px;
}

.pm-cause-onboarding__donation-grid {
  display: grid;
  gap: 16px;
  align-items: start;
}

.pm-cause-onboarding__event-fields {
  gap: 16px 12px;
}

.pm-cause-onboarding__event-description textarea {
  min-height: 72px;
}

.pm-cause-onboarding__event-full-description textarea {
  height: 94px;
  min-height: 94px;
}

.pm-cause-onboarding__fields--nested {
  width: 100%;
  grid-template-columns: 1fr;
  gap: 14px;
}

.pm-cause-onboarding__fields--nested .pm-cause-onboarding__field {
  width: 100%;
  grid-column: 1 / -1;
}

.pm-cause-onboarding__upload-stack {
  display: flex;
  align-items: flex-start;
}

.pm-cause-onboarding__image-tile,
.pm-cause-onboarding__picture-slot {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px dashed rgba(69, 177, 225, .55);
  background-color: var(--pm-soft);
  background-position: center;
  background-size: cover;
  color: var(--pm-blue);
  font-size: 12px;
  font-weight: 800;
  line-height: 16px;
  text-align: center;
  transition: border-color .15s ease, background-color .15s ease, color .15s ease, transform .15s ease;
}

.pm-cause-onboarding__image-tile {
  width: 64px;
  height: 64px;
  border-radius: 16px;
}

.pm-cause-onboarding__image-tile:hover,
.pm-cause-onboarding__picture-slot:hover {
  border-color: var(--pm-blue);
  background-color: #eef9fd;
  transform: translateY(-1px);
}

.pm-cause-onboarding__upload-banner,
.pm-cause-onboarding__media-upload {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 44px;
  border: 1px dashed rgba(69, 177, 225, .55);
  border-radius: 16px;
  background: var(--pm-soft);
  color: var(--pm-blue);
  font-size: 13px;
  font-weight: 800;
  line-height: 18px;
  transition: border-color .15s ease, background-color .15s ease, transform .15s ease;
}

.pm-cause-onboarding__upload-banner {
  width: 100%;
  height: 112px;
  margin-top: 8px;
  flex-direction: column;
}

.pm-cause-onboarding__upload-banner--event {
  overflow: hidden;
  min-height: 112px;
  border-radius: 14px;
  background-position: center;
  background-size: cover;
}

.pm-cause-onboarding__upload-banner svg,
.pm-cause-onboarding__media-upload svg,
.pm-cause-onboarding__add svg,
.pm-cause-onboarding__picture-slot svg,
.pm-cause-onboarding__launch-card li svg {
  width: 16px;
  height: 16px;
  flex: 0 0 16px;
}

.pm-cause-onboarding__upload-banner:hover,
.pm-cause-onboarding__media-upload:hover {
  border-color: var(--pm-blue);
  background: #eef9fd;
  transform: translateY(-1px);
}

.pm-cause-onboarding__image-tile.is-uploaded,
.pm-cause-onboarding__upload-banner.is-uploaded,
.pm-cause-onboarding__media-upload.is-uploaded,
.pm-cause-onboarding__picture-slot.is-uploaded {
  border-style: solid;
  border-color: rgba(16, 185, 129, .45);
  background-color: rgba(16, 185, 129, .1);
  color: #047857;
}

.pm-cause-onboarding__upload-banner--event.is-uploaded {
  border-color: rgba(69, 177, 225, .35);
  background-color: var(--pm-soft);
  color: transparent;
}

.pm-cause-onboarding__upload-banner--event.is-uploaded svg,
.pm-cause-onboarding__upload-banner--event.is-uploaded [data-pm-file-label] {
  display: none;
}

.pm-cause-onboarding__picture-slot.is-uploaded span {
  display: none;
}

.pm-cause-onboarding__image-tile.is-uploaded span {
  display: none;
}

.pm-cause-onboarding__add {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-top: 16px;
  padding: 0;
  border: 0;
  background: transparent;
  color: var(--pm-blue);
  font-size: 13px;
  font-weight: 800;
  line-height: 18px;
}

.pm-cause-onboarding__add:hover {
  color: #057ea2;
}

#onboarding-parish-page .pm-cause-onboarding__add--schedule {
  grid-column: 1 / -1;
  justify-self: start;
  margin-top: 2px;
}

#onboarding-parish-page .pm-cause-onboarding__schedule-row + .pm-cause-onboarding__schedule-row {
  margin-top: 12px;
}

.pm-cause-onboarding__remove {
  display: inline-flex;
  margin-top: 16px;
  padding: 0;
  border: 0;
  background: transparent;
  color: var(--pm-muted);
  font-size: 12px;
  font-weight: 800;
  line-height: 16px;
}

.pm-cause-onboarding__remove:hover {
  color: var(--pm-blue);
}

.pm-cause-onboarding__remove[hidden] {
  display: none !important;
}

.pm-cause-onboarding__section-title {
  margin: 0 0 18px !important;
  color: var(--pm-navy) !important;
  font-size: 20px !important;
  font-weight: 800 !important;
  line-height: 28px !important;
}

.pm-cause-onboarding__media-list {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 16px;
}

.pm-cause-onboarding__media-card {
  display: grid;
  align-content: start;
  gap: 16px;
  min-width: 0;
  padding: 20px;
  border: 1px solid var(--pm-border);
  border-radius: 18px;
  background: #ffffff;
}

.pm-cause-onboarding__media-card--asset {
  min-height: 242px;
}

.pm-cause-onboarding__media-copy {
  min-width: 0;
}

.pm-cause-onboarding__media-meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  margin-bottom: 8px;
}

.pm-cause-onboarding__media-meta span,
.pm-cause-onboarding__launch-badge {
  color: #52627a;
  font-size: 10px;
  font-weight: 800;
  line-height: 14px;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.pm-cause-onboarding__launch-badge {
  color: var(--pm-blue);
}

.pm-cause-onboarding__media-meta strong {
  display: inline-flex;
  min-height: 20px;
  align-items: center;
  padding: 3px 8px;
  border-radius: 999px;
  background: var(--pm-soft);
  color: var(--pm-blue);
  font-size: 10px;
  font-weight: 800;
  line-height: 14px;
}

.pm-cause-onboarding__media-card h3 {
  margin: 0 0 8px !important;
  color: var(--pm-navy) !important;
  font-size: 16px !important;
  font-weight: 800 !important;
  line-height: 22px !important;
}

.pm-cause-onboarding__media-card h3 .pm-cause-onboarding__label-text {
  display: inline-flex;
  color: inherit;
  font-size: inherit;
  font-weight: inherit;
  line-height: inherit;
}

.pm-cause-onboarding__media-card p {
  margin: 0 0 8px !important;
  color: var(--pm-muted) !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  line-height: 24px !important;
}

.pm-cause-onboarding__media-card p:last-child {
  margin-bottom: 0 !important;
}

.pm-cause-onboarding__media-preview-image {
  display: block;
  width: 100%;
  height: 128px;
  border: 1px solid var(--pm-border);
  border-radius: 12px;
  background: #f8fbfd;
  object-fit: cover;
}

.pm-cause-onboarding__media-preview-image[hidden] {
  display: none !important;
}

.pm-cause-onboarding__media-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
}

.pm-cause-onboarding__media-upload {
  align-self: center;
  justify-self: start;
  min-height: 38px;
  padding: 9px 16px;
  border-style: solid;
  border-radius: 12px;
  background: #ffffff;
}

.pm-cause-onboarding__media-clear {
  display: inline-flex;
  min-height: 38px;
  align-items: center;
  padding: 0;
  border: 0;
  background: transparent;
  color: var(--pm-muted);
  font-size: 12px;
  font-weight: 500;
  line-height: 16px;
  text-decoration: underline;
}

.pm-cause-onboarding__media-clear:hover {
  color: var(--pm-blue);
}

.pm-cause-onboarding__media-clear[hidden] {
  display: none !important;
}

.pm-cause-onboarding__picture-count {
  display: inline-flex;
  margin-top: 2px;
  color: var(--pm-muted);
  font-size: 12px;
  font-weight: 700;
  line-height: 16px;
}

.pm-cause-onboarding__picture-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

.pm-cause-onboarding__picture-slot {
  width: 100%;
  min-height: 78px;
  border-radius: 18px;
}

.pm-cause-onboarding__launch-card {
  padding: 24px;
  border: 1px solid rgba(69, 177, 225, .25);
  border-radius: 24px;
  background: linear-gradient(135deg, rgba(230, 246, 252, .95), #ffffff);
}

.pm-cause-onboarding__launch-card h2 {
  margin: 10px 0 8px !important;
  color: var(--pm-navy) !important;
  font-size: 34px !important;
  font-weight: 800 !important;
  line-height: 42px !important;
}

.pm-cause-onboarding__launch-card h2 span {
  color: var(--pm-muted);
  font-size: 18px;
  font-weight: 700;
  line-height: 24px;
}

.pm-cause-onboarding__launch-card p {
  margin: 0 !important;
  color: var(--pm-muted) !important;
  font-size: 14px !important;
  line-height: 22px !important;
}

.pm-cause-onboarding__launch-card ul {
  display: grid;
  gap: 10px;
  margin: 20px 0 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

.pm-cause-onboarding__launch-card li {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  color: var(--pm-navy);
  font-size: 13px;
  font-weight: 700;
  line-height: 20px;
}

.pm-cause-onboarding__launch-card li svg {
  margin-top: 2px;
  color: #10b981;
}

.pm-cause-onboarding__terms {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  margin: 18px 0 0 !important;
  color: var(--pm-ink);
  font-size: 13px;
  font-weight: 500;
  line-height: 20px;
}

.pm-cause-onboarding__terms a {
  color: var(--pm-blue) !important;
  font-weight: 800;
  text-decoration: underline !important;
}

.pm-cause-onboarding__preview-logo {
  position: absolute;
  top: 16px;
  right: 16px;
  z-index: 2;
  width: 42px;
  height: 42px;
  border: 2px solid rgba(255, 255, 255, .8);
  border-radius: 12px;
  background: #ffffff;
  object-fit: cover;
  box-shadow: 0 10px 24px rgba(15, 23, 42, .18);
}

.pm-cause-onboarding__preview-logo[hidden] {
  display: none !important;
}

.pm-cause-onboarding__preview-copy p {
  max-width: 360px;
  margin: 8px 0 0 !important;
  color: rgba(255, 255, 255, .86) !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  line-height: 18px !important;
}

.pm-cause-onboarding__preview-copy p[hidden] {
  display: none !important;
}

.pm-cause-onboarding__preview-body {
  display: grid;
  gap: 14px;
  padding: 16px;
}

.pm-cause-onboarding__preview-section[hidden] {
  display: none !important;
}

.pm-cause-onboarding__preview-section h4 {
  margin: 0 0 8px !important;
  color: var(--pm-blue) !important;
  font-size: 10px !important;
  font-weight: 800 !important;
  line-height: 14px !important;
  letter-spacing: .12em !important;
  text-transform: uppercase !important;
}

.pm-cause-onboarding__preview-section > p,
.pm-cause-onboarding__preview-mini-card p {
  margin: 0 !important;
  color: var(--pm-muted) !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  line-height: 19px !important;
  overflow-wrap: anywhere;
  word-break: break-word;
  white-space: pre-line;
}

.pm-cause-onboarding__preview-section > p + p {
  margin-top: 8px !important;
}

.pm-cause-onboarding__preview-section > p[hidden] {
  display: none !important;
}

.pm-cause-onboarding__preview-long-description {
  display: -webkit-box;
  max-height: 95px;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 5;
}

.pm-cause-onboarding__preview-mini-card {
  padding: 12px;
  border: 1px solid var(--pm-border);
  border-radius: 16px;
  background: var(--pm-soft);
}

.pm-cause-onboarding__preview-mini-card--donation {
  display: flex;
  align-items: center;
  gap: 10px;
}

.pm-cause-onboarding__preview-mini-card--event {
  overflow: hidden;
  padding: 0;
  background: #ffffff;
}

.pm-cause-onboarding__preview-event-image {
  display: block;
  width: 100%;
  height: 64px;
  object-fit: cover;
  background: var(--pm-soft);
}

.pm-cause-onboarding__preview-event-image[hidden] {
  display: none !important;
}

.pm-cause-onboarding__preview-event-copy {
  display: grid;
  gap: 4px;
  padding: 12px;
}

.pm-cause-onboarding__preview-event-title-row {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}

.pm-cause-onboarding__preview-event-title-row span {
  flex: 0 0 auto;
  min-height: 0;
  margin-top: 0;
  padding: 0;
  border-radius: 0;
  background: transparent;
  color: var(--pm-blue);
  font-size: 12px;
  font-weight: 800;
  line-height: 16px;
}

.pm-cause-onboarding__preview-event-title-row span[hidden] {
  display: none !important;
}

.pm-cause-onboarding__preview-event-copy small {
  display: block;
  color: var(--pm-muted);
  font-size: 10px;
  font-weight: 800;
  line-height: 14px;
  text-transform: uppercase;
}

.pm-cause-onboarding__preview-event-copy small[hidden] {
  display: none !important;
}

.pm-cause-onboarding__preview-mini-card-image {
  display: block;
  width: 40px;
  height: 40px;
  flex: 0 0 40px;
  border-radius: 999px;
  object-fit: cover;
  background: #ffffff;
}

.pm-cause-onboarding__preview-mini-card-image[hidden] {
  display: none !important;
}

.pm-cause-onboarding__preview-mini-card-copy {
  min-width: 0;
  flex: 1 1 auto;
}

.pm-cause-onboarding__preview-mini-card strong {
  display: block;
  margin-bottom: 4px;
  color: var(--pm-navy);
  font-size: 14px;
  font-weight: 800;
  line-height: 20px;
}

.pm-cause-onboarding__preview-mini-card p[hidden] {
  display: none !important;
}

.pm-cause-onboarding__preview-mini-card span {
  display: inline-flex;
  min-height: 24px;
  align-items: center;
  margin-top: 10px;
  padding: 4px 10px;
  border-radius: 999px;
  background: var(--pm-blue);
  color: #ffffff;
  font-size: 10px;
  font-weight: 800;
  line-height: 14px;
}

.pm-cause-onboarding__preview-mini-card--donation span {
  flex: 0 0 auto;
  margin-top: 0;
}

.pm-cause-onboarding__preview-mini-card--event .pm-cause-onboarding__preview-event-title-row span {
  flex: 0 0 auto;
  min-height: 0;
  margin-top: 0;
  padding: 0;
  border-radius: 0;
  background: transparent;
  color: var(--pm-blue);
  font-size: 12px;
  font-weight: 800;
  line-height: 16px;
}

@media (min-width: 480px) {
  .pm-cause-onboarding__donation-grid {
    grid-template-columns: 64px minmax(0, 1fr);
  }
}

@media (min-width: 640px) {
  .pm-cause-onboarding__donation-grid {
    grid-template-columns: 76px minmax(0, 1fr);
  }

  .pm-cause-onboarding__event-fields {
    grid-template-columns: repeat(6, minmax(0, 1fr));
  }

  .pm-cause-onboarding__event-field--half {
    grid-column: span 3;
  }

  .pm-cause-onboarding__event-field--third {
    grid-column: span 2;
  }

  .pm-cause-onboarding__media-list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .pm-cause-onboarding__media-card--pictures,
  .pm-cause-onboarding__media-list > .pm-cause-onboarding__field {
    grid-column: 1 / -1;
  }

  .pm-cause-onboarding__picture-grid {
    grid-template-columns: repeat(6, minmax(0, 1fr));
  }
}

@media (max-width: 575.98px) {
  .pm-cause-onboarding__label-row {
    flex-direction: column;
    gap: 4px;
  }

  .pm-cause-onboarding__actions {
    align-items: stretch;
    flex-direction: column-reverse;
  }

  .pm-cause-onboarding__btn {
    width: 100%;
  }

  .pm-cause-onboarding__media-upload {
    width: 100%;
  }

  .pm-cause-onboarding__launch-card h2 {
    font-size: 30px !important;
    line-height: 38px !important;
  }
}

/* Local business combined onboarding reference alignment. */
#onboarding-local-business-combined-page .pm-cause-onboarding {
  --pm-lb-navy: #0b3454;
  --pm-lb-blue: #0586a4;
  --pm-lb-cyan: #36a9d4;
  --pm-lb-muted: #556b86;
  --pm-lb-border: #dbeafe;
  --pm-lb-soft: #edf9fd;
  --pm-lb-shadow: 0 18px 50px rgba(2, 80, 110, .08);
  background: linear-gradient(135deg, #ffffff 0%, var(--pm-lb-soft) 52%, #ffffff 100%) !important;
  color: var(--pm-lb-navy);
}

#onboarding-local-business-combined-page .pm-cause-onboarding__grid {
  width: min(100%, 1272px);
  max-width: 1272px;
  grid-template-columns: minmax(0, 612px) minmax(0, 623px);
  gap: 37px;
  align-items: start;
  padding: 32px 0;
}

#onboarding-local-business-combined-page .pm-cause-onboarding__panel {
  padding: 0;
}

#onboarding-local-business-combined-page .pm-cause-onboarding__topbar {
  margin-bottom: 40px;
}

#onboarding-local-business-combined-page .pm-cause-onboarding__brand img {
  width: 192px;
  height: auto;
}

#onboarding-local-business-combined-page .pm-cause-onboarding__return {
  min-height: 34px;
  padding: 8px 16px;
  border-color: var(--pm-lb-border);
  border-radius: 999px;
  color: var(--pm-lb-navy) !important;
  font-size: 12px;
  font-weight: 800;
  line-height: 16px;
  box-shadow: none;
}

#onboarding-local-business-combined-page .pm-cause-onboarding__return svg {
  width: 14px;
  height: 14px;
}

#onboarding-local-business-combined-page .pm-cause-onboarding__meta {
  margin-bottom: 18px;
}

#onboarding-local-business-combined-page .pm-cause-onboarding__step-pill {
  min-height: 26px;
  padding: 5px 12px 5px 9px;
  border: 0;
  background: #e7f7fb;
  color: #00799c;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .08em;
  line-height: 16px;
  text-transform: uppercase;
}

#onboarding-local-business-combined-page .pm-cause-onboarding__step-pill > span:first-child {
  width: 10px;
  height: 10px;
  background: var(--pm-lb-cyan);
  box-shadow: 0 0 0 5px rgba(54, 169, 212, .18);
}

#onboarding-local-business-combined-page .pm-cause-onboarding__steps {
  width: 440px;
  max-width: 100%;
  margin-bottom: 32px;
}

#onboarding-local-business-combined-page .pm-cause-onboarding__step {
  gap: 8px;
}

#onboarding-local-business-combined-page .pm-cause-onboarding__step-number {
  width: 30px;
  height: 30px;
  border-color: var(--pm-lb-border);
  color: var(--pm-lb-navy);
  font-size: 12px;
  font-weight: 800;
}

#onboarding-local-business-combined-page .pm-cause-onboarding__step.is-current .pm-cause-onboarding__step-number {
  border-color: var(--pm-lb-blue);
  background: var(--pm-lb-blue);
  color: #ffffff;
  box-shadow: 0 0 0 5px rgba(54, 169, 212, .22);
}

#onboarding-local-business-combined-page .pm-cause-onboarding__step.is-complete .pm-cause-onboarding__step-number {
  border-color: #d6f1f8;
  background: #d6f1f8;
  color: var(--pm-lb-blue);
}

#onboarding-local-business-combined-page .pm-cause-onboarding__step-label {
  color: var(--pm-lb-navy);
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .06em;
  line-height: 14px;
  text-transform: uppercase;
}

#onboarding-local-business-combined-page .pm-cause-onboarding__step.is-current .pm-cause-onboarding__step-label {
  color: var(--pm-lb-blue);
}

#onboarding-local-business-combined-page .pm-cause-onboarding__step-line {
  width: 40px;
  background: var(--pm-lb-border);
}

#onboarding-local-business-combined-page .pm-cause-onboarding h1 {
  max-width: 680px;
  margin: 0 !important;
  color: var(--pm-lb-navy) !important;
  font-size: 48px !important;
  font-weight: 800 !important;
  letter-spacing: 0 !important;
  line-height: 60px !important;
}

#onboarding-local-business-combined-page .pm-cause-onboarding h1 .pm-gradient-text {
  color: #209dca;
  background: none;
  -webkit-text-fill-color: currentColor;
}

#onboarding-local-business-combined-page .pm-cause-onboarding__lead {
  max-width: 610px;
  margin: 18px 0 0 !important;
  color: var(--pm-lb-muted);
  font-size: 18px;
  line-height: 30px;
}

#onboarding-local-business-combined-page .pm-cause-onboarding__form-wrap {
  margin-top: 28px;
}

#onboarding-local-business-combined-page .pm-cause-onboarding__card {
  padding: 28px;
  border-color: var(--pm-lb-border);
  border-radius: 28px;
  box-shadow: var(--pm-lb-shadow);
}

#onboarding-local-business-combined-page .pm-cause-onboarding__fields {
  gap: 16px 18px;
}

#onboarding-local-business-combined-page .pm-cause-onboarding__label-row {
  align-items: center;
}

#onboarding-local-business-combined-page .pm-cause-onboarding__label-text,
#onboarding-local-business-combined-page .pm-cause-onboarding__media-copy h3 {
  color: var(--pm-lb-navy);
  font-size: 12px;
  font-weight: 900;
  line-height: 18px;
}

#onboarding-local-business-combined-page .pm-cause-onboarding__optional {
  color: #6b7d96;
  font-size: 12px;
  font-weight: 800;
}

#onboarding-local-business-combined-page .pm-cause-onboarding__hint-trigger {
  width: 16px;
  height: 16px;
  color: var(--pm-lb-cyan);
}

#onboarding-local-business-combined-page .pm-cause-onboarding input,
#onboarding-local-business-combined-page .pm-cause-onboarding select,
#onboarding-local-business-combined-page .pm-cause-onboarding textarea {
  margin-top: 6px;
  border-color: var(--pm-lb-border);
  border-radius: 16px;
  color: var(--pm-lb-navy);
  font-size: 14px;
  font-weight: 400;
}

#onboarding-local-business-combined-page .pm-cause-onboarding input,
#onboarding-local-business-combined-page .pm-cause-onboarding select {
  min-height: 46px;
  padding: 0 16px;
}

#onboarding-local-business-combined-page .pm-cause-onboarding textarea {
  padding: 12px 16px;
}

#onboarding-local-business-combined-page .pm-cause-onboarding input::placeholder,
#onboarding-local-business-combined-page .pm-cause-onboarding textarea::placeholder {
  color: #8898ad;
}

#onboarding-local-business-combined-page .pm-cause-onboarding input:focus,
#onboarding-local-business-combined-page .pm-cause-onboarding select:focus,
#onboarding-local-business-combined-page .pm-cause-onboarding textarea:focus {
  border-color: var(--pm-lb-blue);
  box-shadow: 0 0 0 3px rgba(69, 177, 225, .16);
}

#onboarding-local-business-combined-page .pm-cause-onboarding input[data-pm-ai-missing]:not([aria-invalid="true"]),
#onboarding-local-business-combined-page .pm-cause-onboarding select[data-pm-ai-missing]:not([aria-invalid="true"]),
#onboarding-local-business-combined-page .pm-cause-onboarding textarea[data-pm-ai-missing]:not([aria-invalid="true"]) {
  border-color: #f5b400;
  box-shadow: 0 0 0 1px #f5b400;
}

#onboarding-local-business-combined-page .pm-cause-onboarding input[data-pm-ai-missing]:not([aria-invalid="true"]):focus,
#onboarding-local-business-combined-page .pm-cause-onboarding select[data-pm-ai-missing]:not([aria-invalid="true"]):focus,
#onboarding-local-business-combined-page .pm-cause-onboarding textarea[data-pm-ai-missing]:not([aria-invalid="true"]):focus {
  border-color: #f5b400;
  box-shadow: 0 0 0 3px rgba(245, 180, 0, .22);
}

#onboarding-local-business-combined-page .pm-cause-onboarding input[aria-invalid="true"],
#onboarding-local-business-combined-page .pm-cause-onboarding select[aria-invalid="true"],
#onboarding-local-business-combined-page .pm-cause-onboarding textarea[aria-invalid="true"] {
  border-color: #ef4444;
  box-shadow: 0 0 0 3px rgba(239, 68, 68, .14);
}

#onboarding-local-business-combined-page .pm-cause-onboarding__choice-grid {
  gap: 8px;
  margin-top: 8px;
}

#onboarding-local-business-combined-page .pm-cause-onboarding__choice {
  min-height: 42px;
  justify-content: center;
  padding: 10px 16px;
  border-color: var(--pm-lb-border);
  border-radius: 16px;
  background: #ffffff;
  color: var(--pm-lb-navy);
  text-align: center;
}

#onboarding-local-business-combined-page .pm-cause-onboarding__choice strong {
  font-size: 14px;
  font-weight: 900;
  line-height: 20px;
}

#onboarding-local-business-combined-page .pm-cause-onboarding__choice span {
  display: none;
}

#onboarding-local-business-combined-page .pm-cause-onboarding__choice.is-active {
  border-color: var(--pm-lb-blue);
  background: var(--pm-lb-blue);
  color: #ffffff;
}

#onboarding-local-business-combined-page .pm-cause-onboarding__social {
  display: grid;
  grid-template-columns: minmax(0, 108px) minmax(0, 1fr);
  gap: 8px;
}

#onboarding-local-business-combined-page .pm-cause-onboarding__social select,
#onboarding-local-business-combined-page .pm-cause-onboarding__social input {
  width: 100%;
}

#onboarding-local-business-combined-page .pm-cause-onboarding__counter {
  color: #536b87;
  font-size: 11px;
  font-weight: 800;
  line-height: 16px;
}

#onboarding-local-business-combined-page .pm-cause-onboarding__actions {
  margin-top: 24px;
  padding-top: 20px;
  border-top-color: var(--pm-lb-border);
}

#onboarding-local-business-combined-page .pm-cause-onboarding__btn {
  min-width: 72px;
  min-height: 47px;
  padding: 12px 20px;
  border-radius: 999px;
  font-size: 14px;
  font-weight: 900;
  line-height: 20px;
}

#onboarding-local-business-combined-page .pm-cause-onboarding__btn--primary {
  min-width: 102px;
  background: linear-gradient(135deg, var(--pm-lb-blue), var(--pm-lb-cyan));
  box-shadow: 0 14px 30px rgba(5, 126, 162, .25);
}

#onboarding-local-business-combined-page .pm-cause-onboarding__btn--secondary {
  border-color: var(--pm-lb-border);
  color: var(--pm-lb-blue) !important;
}

#onboarding-local-business-combined-page .pm-local-business-offering-grid {
  display: grid;
  grid-template-columns: 80px minmax(0, 1fr);
  gap: 16px;
  align-items: start;
}

#onboarding-local-business-combined-page .pm-local-business-offering-upload {
  padding-top: 28px;
}

#onboarding-local-business-combined-page .pm-cause-onboarding__nested-card {
  padding: 16px;
  border-color: var(--pm-lb-border);
  border-radius: 16px;
  background: #ffffff;
  box-shadow: 0 12px 32px rgba(5, 126, 162, .1);
}

#onboarding-local-business-combined-page .pm-cause-onboarding__section-title {
  margin-bottom: 10px;
  color: var(--pm-lb-blue) !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  letter-spacing: .08em !important;
  line-height: 18px !important;
  text-transform: uppercase !important;
}

#onboarding-local-business-combined-page .pm-cause-onboarding__image-tile {
  width: 80px;
  height: 80px;
  border-color: var(--pm-lb-border);
  border-radius: 16px;
  background-color: rgba(237, 249, 253, .6);
  background-position: center;
  background-size: cover;
  color: var(--pm-lb-blue);
}

#onboarding-local-business-combined-page .pm-cause-onboarding__image-tile span {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
}

#onboarding-local-business-combined-page .pm-cause-onboarding__add {
  min-height: 45px;
  margin-top: 16px;
  padding: 11px 16px;
  border: 1px dashed var(--pm-lb-border);
  border-radius: 16px;
  background: #ffffff;
  color: var(--pm-lb-blue);
  font-size: 14px;
  font-weight: 900;
}

#onboarding-local-business-combined-page .pm-cause-onboarding__media-list {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-items: start;
  gap: 18px;
}

#onboarding-local-business-combined-page .pm-cause-onboarding__media-card--pictures {
  grid-column: auto;
}

#onboarding-local-business-combined-page .pm-cause-onboarding__media-list > .pm-cause-onboarding__field {
  grid-column: 1 / -1;
}

#onboarding-local-business-combined-page .pm-cause-onboarding__media-card {
  min-height: 263px;
  padding: 20px;
  border-color: var(--pm-lb-border);
  border-radius: 16px;
  background: #ffffff;
  box-shadow: none;
}

#onboarding-local-business-combined-page .pm-cause-onboarding__media-meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 14px;
}

#onboarding-local-business-combined-page .pm-cause-onboarding__media-meta strong {
  color: #64748b;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .08em;
  line-height: 16px;
  text-transform: uppercase;
}

#onboarding-local-business-combined-page .pm-cause-onboarding__launch-badge {
  min-height: 20px;
  padding: 4px 10px;
  border-radius: 999px;
  background: #e7f7fb;
  color: var(--pm-lb-blue);
  font-size: 10px;
  font-weight: 900;
  line-height: 12px;
  text-transform: none;
}

#onboarding-local-business-combined-page .pm-cause-onboarding__media-card h3 {
  margin: 0 0 8px !important;
  font-size: 16px !important;
  line-height: 22px !important;
}

#onboarding-local-business-combined-page .pm-cause-onboarding__media-card p {
  color: #64748b;
  font-size: 14px;
  line-height: 22px;
}

#onboarding-local-business-combined-page .pm-cause-onboarding__media-actions {
  margin-top: 16px;
}

#onboarding-local-business-combined-page .pm-cause-onboarding__media-upload {
  min-height: 39px;
  padding: 9px 16px;
  border-color: var(--pm-lb-border);
  border-radius: 12px;
  color: var(--pm-lb-blue);
  font-size: 14px;
  font-weight: 900;
}

#onboarding-local-business-combined-page .pm-cause-onboarding__media-upload svg,
#onboarding-local-business-combined-page .pm-cause-onboarding__add svg {
  width: 16px;
  height: 16px;
}

#onboarding-local-business-combined-page .pm-cause-onboarding__picture-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
  margin-top: 14px;
}

#onboarding-local-business-combined-page .pm-cause-onboarding__picture-slot {
  aspect-ratio: 1 / 1;
  min-height: 70px;
  border-color: var(--pm-lb-border);
  border-radius: 12px;
}

#onboarding-local-business-combined-page .pm-cause-onboarding__picture-slot span {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
}

#onboarding-local-business-combined-page .pm-cause-onboarding__picture-slot.is-uploaded svg {
  display: none;
}

#onboarding-local-business-combined-page .pm-cause-onboarding__picture-count {
  margin-top: 10px !important;
  color: #64748b !important;
  font-size: 11px !important;
  line-height: 16px !important;
}

#onboarding-local-business-combined-page .pm-local-business-plan-card {
  width: 100%;
  padding: 24px;
  border: 1px solid var(--pm-lb-border);
  border-radius: 18px;
  background: #f7fcff;
  box-shadow: none;
}

#onboarding-local-business-combined-page .pm-local-business-plan-shell {
  display: flex;
  align-items: center;
  flex-direction: column;
  width: 100%;
}

#onboarding-local-business-combined-page .pm-local-business-billing-toggle {
  display: inline-flex;
  gap: 4px;
  padding: 4px;
  border: 1px solid var(--pm-lb-border);
  border-radius: 999px;
  background: #eef9fd;
}

#onboarding-local-business-combined-page .pm-local-business-billing-toggle__option {
  position: relative;
  min-width: 86px;
  margin: 0;
  border-radius: 999px;
  color: #64748b;
  cursor: pointer;
  font-size: 14px;
  font-weight: 900;
  line-height: 20px;
  text-align: center;
}

#onboarding-local-business-combined-page .pm-local-business-billing-toggle__option input,
#onboarding-local-business-combined-page .pm-local-business-plan-option > input {
  position: absolute;
  width: 1px;
  height: 1px;
  min-height: 0;
  margin: 0;
  padding: 0;
  border: 0;
  opacity: 0;
  pointer-events: none;
}

#onboarding-local-business-combined-page .pm-local-business-billing-toggle__option span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: 34px;
  padding: 7px 18px;
  border-radius: 999px;
}

#onboarding-local-business-combined-page .pm-local-business-billing-toggle__option.is-selected span {
  background: var(--pm-lb-navy);
  color: #ffffff;
}

#onboarding-local-business-combined-page .pm-local-business-plan-shell__saving {
  margin: 10px 0 0 !important;
  color: #007fa4 !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  line-height: 18px !important;
  text-align: center;
}

#onboarding-local-business-combined-page .pm-local-business-plan-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
  width: 100%;
  margin-top: 28px;
}

#onboarding-local-business-combined-page .pm-local-business-plan-option {
  position: relative;
  display: flex;
  flex-direction: column;
  min-height: 452px;
  padding: 28px 22px 24px;
  border: 2px solid var(--pm-lb-border);
  border-radius: 24px;
  background: #ffffff;
  color: var(--pm-lb-navy);
  cursor: pointer;
  transition: border-color 0.18s ease, box-shadow 0.18s ease;
}

#onboarding-local-business-combined-page .pm-local-business-plan-option.is-selected {
  border-color: var(--pm-lb-blue);
  box-shadow: 0 10px 24px rgba(4, 139, 177, 0.14);
}

#onboarding-local-business-combined-page .pm-local-business-plan-option__badge {
  position: absolute;
  top: -13px;
  left: 22px;
  display: inline-flex;
  align-items: center;
  min-height: 26px;
  padding: 4px 14px;
  border-radius: 999px;
  background: var(--pm-lb-blue);
  color: #ffffff;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 0;
  text-transform: uppercase;
}

#onboarding-local-business-combined-page .pm-local-business-plan-option__radio {
  position: absolute;
  top: 28px;
  right: 22px;
  width: 20px;
  height: 20px;
  border: 3px solid #d7ecff;
  border-radius: 999px;
  background: #ffffff;
}

#onboarding-local-business-combined-page .pm-local-business-plan-option.is-selected .pm-local-business-plan-option__radio {
  border-color: var(--pm-lb-blue);
}

#onboarding-local-business-combined-page .pm-local-business-plan-option.is-selected .pm-local-business-plan-option__radio::after {
  position: absolute;
  inset: 4px;
  border-radius: inherit;
  background: var(--pm-lb-blue);
  content: "";
}

#onboarding-local-business-combined-page .pm-local-business-plan-option__eyebrow {
  margin-bottom: 8px;
  color: #0087ad;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 0;
  line-height: 14px;
  text-transform: uppercase;
}

#onboarding-local-business-combined-page .pm-local-business-plan-option__title {
  max-width: 100%;
  color: var(--pm-lb-navy);
  font-size: 20px;
  font-weight: 900;
  line-height: 25px;
}

#onboarding-local-business-combined-page .pm-local-business-plan-option__description {
  min-height: 66px;
  margin-top: 10px;
  color: #64748b;
  font-size: 14px;
  font-weight: 600;
  line-height: 22px;
}

#onboarding-local-business-combined-page .pm-local-business-plan-option__normal {
  margin-top: 14px;
  color: #64748b;
  font-size: 13px;
  line-height: 18px;
  text-decoration: line-through;
}

#onboarding-local-business-combined-page .pm-local-business-plan-option__price {
  display: flex;
  align-items: flex-end;
  gap: 2px;
  margin-top: 2px;
  color: var(--pm-lb-navy);
  font-size: 34px;
  font-weight: 900;
  line-height: 38px;
}

#onboarding-local-business-combined-page .pm-local-business-plan-option__price small {
  margin-bottom: 4px;
  color: #64748b;
  font-size: 14px;
  font-weight: 800;
  line-height: 18px;
}

#onboarding-local-business-combined-page .pm-local-business-plan-option__founder {
  display: inline-flex;
  align-items: center;
  width: fit-content;
  max-width: 100%;
  min-height: 40px;
  margin-top: 12px;
  padding: 7px 14px;
  border: 1px solid #b8e2f0;
  border-radius: 999px;
  background: #eefafe;
  color: #0087ad;
  font-size: 11px;
  font-weight: 900;
  line-height: 13px;
}

#onboarding-local-business-combined-page .pm-local-business-plan-option__annual {
  margin-top: 10px;
  color: #0087ad;
  font-size: 13px;
  font-weight: 900;
  line-height: 18px;
}

#onboarding-local-business-combined-page .pm-local-business-plan-option__includes {
  margin-top: 18px;
  color: var(--pm-lb-navy);
  font-size: 12px;
  font-weight: 900;
  line-height: 18px;
}

#onboarding-local-business-combined-page .pm-local-business-plan-option__features {
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin-top: 10px;
  color: var(--pm-lb-navy);
  font-size: 13px;
  font-weight: 600;
  line-height: 18px;
}

#onboarding-local-business-combined-page .pm-local-business-plan-option__features > span {
  display: grid;
  grid-template-columns: 16px minmax(0, 1fr);
  gap: 8px;
}

#onboarding-local-business-combined-page .pm-local-business-plan-option__features > span > span:first-child {
  color: var(--pm-lb-blue);
  font-weight: 900;
}

#onboarding-local-business-combined-page .pm-local-business-plan-shell__note {
  align-self: flex-start;
  margin: 18px 0 0 !important;
  color: #64748b !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  line-height: 20px !important;
}

#onboarding-local-business-combined-page .pm-local-business-plan-shell > .pm-cause-onboarding__field-error {
  align-self: flex-start;
  margin-top: 10px;
}

#onboarding-local-business-combined-page .pm-cause-onboarding__terms {
  margin-top: 24px;
  padding: 0;
  border: 0;
  background: transparent;
  color: var(--pm-lb-navy);
  font-size: 12px;
  line-height: 18px;
}

#onboarding-local-business-combined-page .pm-cause-onboarding__terms input {
  min-height: 0;
  margin-top: 1px;
  padding: 0;
}

@media (max-width: 639.98px) {
  #onboarding-local-business-combined-page .pm-local-business-plan-grid {
    grid-template-columns: 1fr;
  }

  #onboarding-local-business-combined-page .pm-local-business-plan-option {
    min-height: 0;
  }
}

#onboarding-local-business-combined-page .pm-cause-onboarding__preview {
  justify-content: center;
  padding: 52px 0 0;
}

#onboarding-local-business-combined-page .pm-cause-onboarding__preview-inner {
  max-width: 520px;
}

#onboarding-local-business-combined-page .pm-cause-onboarding__preview-card {
  position: relative;
  border-color: var(--pm-lb-border);
  border-radius: 28px;
  box-shadow: var(--pm-lb-shadow);
}

#onboarding-local-business-combined-page .pm-cause-onboarding__preview-media {
  min-height: 180px;
}

#onboarding-local-business-combined-page .pm-cause-onboarding__preview-content {
  position: absolute;
  inset: 20px 20px auto 20px;
  min-height: 0;
  padding: 0;
  color: #ffffff;
}

#onboarding-local-business-combined-page .pm-cause-onboarding__preview-logo-placeholder,
#onboarding-local-business-combined-page .pm-cause-onboarding__preview-logo {
  width: 48px;
  height: 48px;
  border-radius: 16px;
  background: #ffffff;
  color: var(--pm-lb-navy);
  font-size: 14px;
  font-weight: 900;
  object-fit: cover;
}

#onboarding-local-business-combined-page .pm-cause-onboarding__preview-logo-placeholder {
  display: grid;
  place-items: center;
}

#onboarding-local-business-combined-page .pm-cause-onboarding__preview-logo {
  position: static;
  top: auto;
  right: auto;
  z-index: auto;
  display: block;
  border: 0;
  box-shadow: none;
}

#onboarding-local-business-combined-page .pm-cause-onboarding__preview-logo[hidden],
#onboarding-local-business-combined-page .pm-cause-onboarding__preview-logo-placeholder[hidden] {
  display: none !important;
}

#onboarding-local-business-combined-page .pm-cause-onboarding__preview-badges {
  min-height: 14.2857px;
  margin-top: 11px;
  line-height: 14.2857px;
}

#onboarding-local-business-combined-page .pm-cause-onboarding__preview-badges span {
  min-height: 0;
  padding: 0;
  border: 0;
  background: transparent;
  color: rgba(255, 255, 255, .8);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .05em;
  line-height: 14.2857px;
  text-transform: uppercase;
}

#onboarding-local-business-combined-page .pm-cause-onboarding__preview-copy {
  margin-top: 0;
}

#onboarding-local-business-combined-page .pm-cause-onboarding__preview-copy h3 {
  color: #ffffff !important;
  font-size: 20px !important;
  font-weight: 800 !important;
  line-height: 25px !important;
}

#onboarding-local-business-combined-page .pm-cause-onboarding__preview-copy h3.is-placeholder {
  color: #ffffff !important;
}

#onboarding-local-business-combined-page .pm-cause-onboarding__preview-ctas {
  display: none !important;
}

#onboarding-local-business-combined-page .pm-cause-onboarding__preview-copy p {
  display: block !important;
  max-width: 320px;
  margin: 2px 0 0 !important;
  color: rgba(255, 255, 255, .85) !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  line-height: 16px !important;
}

#onboarding-local-business-combined-page .pm-cause-onboarding__preview-copy p[hidden] {
  display: none !important;
}

#onboarding-local-business-combined-page .pm-cause-onboarding__preview-body {
  gap: 16px;
  padding: 20px;
}

#onboarding-local-business-combined-page .pm-local-business-preview-discount {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 12px;
  border: 1px solid rgba(14, 142, 168, .2);
  border-radius: 16px;
  background: var(--pm-lb-soft);
}

#onboarding-local-business-combined-page .pm-local-business-preview-discount[hidden] {
  display: none !important;
}

#onboarding-local-business-combined-page .pm-local-business-preview-discount__icon {
  display: grid;
  width: 36px;
  height: 36px;
  flex: 0 0 36px;
  place-items: center;
  border-radius: 12px;
  background: var(--pm-lb-blue);
  color: #ffffff;
}

#onboarding-local-business-combined-page .pm-local-business-preview-discount__icon svg {
  width: 17px;
  height: 17px;
  fill: none;
  stroke: currentColor;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 2;
}

#onboarding-local-business-combined-page .pm-local-business-preview-discount h4 {
  margin: 0 !important;
  color: var(--pm-lb-blue) !important;
  font-size: 10px !important;
  font-weight: 800 !important;
  letter-spacing: .08em !important;
  line-height: 14px !important;
  text-transform: uppercase !important;
}

#onboarding-local-business-combined-page .pm-local-business-preview-discount strong {
  display: block;
  margin: 0;
  color: var(--pm-lb-blue);
  font-size: 16px;
  font-weight: 900;
  line-height: 24px;
}

#onboarding-local-business-combined-page .pm-local-business-preview-discount p {
  margin: 0 !important;
  color: rgba(0, 35, 73, .8) !important;
  font-size: 11px !important;
  font-weight: 500 !important;
  line-height: 16px !important;
}

#onboarding-local-business-combined-page .pm-cause-onboarding__preview-section h4 {
  color: #64748b !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  letter-spacing: .05em !important;
  line-height: 14.2857px !important;
}

#onboarding-local-business-combined-page [data-pm-preview-about-section] h4 {
  margin-bottom: 4px !important;
}

#onboarding-local-business-combined-page [data-pm-preview-offerings-output] {
  display: grid;
  gap: 12px;
}

#onboarding-local-business-combined-page .pm-cause-onboarding__preview-mini-card {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 9px;
  border-color: var(--pm-lb-border);
  border-radius: 12px;
  background: #ffffff;
}

#onboarding-local-business-combined-page .pm-cause-onboarding__preview-mini-card-image {
  width: 38px;
  height: 38px;
  flex: 0 0 38px;
  border-radius: 8px;
}

#onboarding-local-business-combined-page .pm-cause-onboarding__preview-mini-card strong {
  margin: 0;
  color: var(--pm-lb-navy);
  font-size: 12px;
  font-weight: 700;
  line-height: 16px;
}

#onboarding-local-business-combined-page .pm-cause-onboarding__preview-mini-card p:empty {
  display: none !important;
}

#onboarding-local-business-combined-page .pm-local-business-preview-founder-card {
  align-items: flex-start;
  padding: 12px;
  border-radius: 16px;
}

#onboarding-local-business-combined-page .pm-local-business-preview-founder-card .pm-cause-onboarding__preview-mini-card-image {
  object-fit: cover;
  object-position: center;
}

#onboarding-local-business-combined-page .pm-local-business-preview-founder-card .pm-cause-onboarding__preview-mini-card-copy {
  min-width: 0;
}

#onboarding-local-business-combined-page .pm-local-business-preview-founder-card h4 {
  margin: 0 !important;
  color: var(--pm-lb-blue) !important;
  font-size: 10px !important;
  font-weight: 800 !important;
  letter-spacing: .08em !important;
  line-height: 14px !important;
  text-transform: uppercase !important;
}

#onboarding-local-business-combined-page .pm-local-business-preview-founder-card strong {
  display: block;
  color: var(--pm-lb-navy);
  font-size: 14px;
  font-weight: 900;
  line-height: 20px;
}

#onboarding-local-business-combined-page .pm-local-business-preview-founder-card p {
  display: -webkit-box;
  margin: 0 !important;
  overflow: hidden;
  color: var(--pm-lb-muted) !important;
  font-size: 11px !important;
  font-weight: 500 !important;
  line-height: 16px !important;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

#onboarding-local-business-combined-page .pm-local-business-preview-support-line {
  margin: 0 !important;
  color: var(--pm-lb-muted) !important;
  font-size: 11px !important;
  font-weight: 500 !important;
  line-height: 16px !important;
}

#onboarding-local-business-combined-page .pm-local-business-preview-support-line span {
  color: var(--pm-lb-blue);
  font-weight: 800;
}

@media (max-width: 1271.98px) {
  #onboarding-local-business-combined-page .pm-cause-onboarding__grid {
    width: 100%;
    padding: 32px 24px;
  }
}

@media (max-width: 1179.98px) {
  #onboarding-local-business-combined-page .pm-cause-onboarding__grid {
    grid-template-columns: minmax(0, 612px);
    justify-content: center;
    gap: 56px;
  }

  #onboarding-local-business-combined-page .pm-cause-onboarding__preview {
    justify-content: center;
    padding-top: 0;
  }
}

@media (max-width: 767.98px) {
  #onboarding-local-business-combined-page .pm-cause-onboarding h1 {
    font-size: 36px !important;
    line-height: 45px !important;
  }

  #onboarding-local-business-combined-page .pm-cause-onboarding[data-current-step="2"] h1 {
    font-size: 34px !important;
    line-height: 42.5px !important;
  }

  #onboarding-local-business-combined-page .pm-cause-onboarding__lead {
    font-size: 16px;
    line-height: 26px;
  }
}

@media (max-width: 639.98px) {
  #onboarding-local-business-combined-page .pm-cause-onboarding__grid {
    padding: 24px 20px;
  }

  #onboarding-local-business-combined-page .pm-cause-onboarding__topbar {
    align-items: flex-start;
    flex-direction: column;
    gap: 18px;
  }

  #onboarding-local-business-combined-page .pm-cause-onboarding__steps {
    width: 100%;
  }

  #onboarding-local-business-combined-page .pm-cause-onboarding__step-label {
    display: none;
  }

  #onboarding-local-business-combined-page .pm-cause-onboarding__card {
    padding: 28px;
  }

  #onboarding-local-business-combined-page .pm-local-business-offering-grid {
    grid-template-columns: 1fr;
  }

  #onboarding-local-business-combined-page .pm-cause-onboarding__media-list {
    grid-template-columns: 1fr;
  }

  #onboarding-local-business-combined-page .pm-local-business-offering-upload {
    padding-top: 0;
  }
}

@media (max-width: 575.98px) {
  #onboarding-local-business-combined-page .pm-cause-onboarding__actions {
    flex-direction: row;
  }

  #onboarding-local-business-combined-page .pm-cause-onboarding__btn {
    width: auto;
  }
}

.pm-contact-modal-open {
  overflow: hidden;
}

.pm-contact-modal[hidden] {
  display: none;
}

.pm-contact-modal {
  position: fixed;
  inset: 0;
  z-index: 10000;
  display: grid;
  place-items: center;
  padding: 20px;
  font-family: "Segoe UI", system-ui, -apple-system, BlinkMacSystemFont, sans-serif;
}

.pm-contact-modal__backdrop {
  position: absolute;
  inset: 0;
  background: rgba(10, 24, 36, 0.54);
  backdrop-filter: blur(2px);
}

.pm-contact-modal__dialog {
  position: relative;
  z-index: 1;
  width: min(448px, 100%);
  max-height: calc(100vh - 40px);
  overflow-y: auto;
  padding: 28px;
  border-radius: 24px;
  background: #fff;
  box-shadow: 0 24px 70px rgba(5, 25, 42, 0.28);
  color: #0a2940;
}

.pm-contact-modal__close {
  position: absolute;
  top: 16px;
  right: 16px;
  display: flex;
  width: 32px;
  height: 32px;
  padding: 0;
  align-items: center;
  justify-content: center;
  border: 1px solid #d8e6f1;
  border-radius: 50%;
  background: #fff;
  color: #668097;
}

.pm-contact-modal__close svg {
  display: block;
  width: 16px;
  height: 16px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.75;
  stroke-linecap: round;
}

.pm-contact-modal__icon {
  display: grid;
  width: 44px;
  height: 44px;
  margin-bottom: 14px;
  place-items: center;
  border-radius: 16px;
  background: #edf8fc;
  color: #008eb9;
}

.pm-contact-modal__icon svg {
  width: 20px;
  height: 20px;
}

.pm-contact-modal__dialog h2 {
  margin: 0 0 4px;
  color: #0a2940;
  font-size: 18px;
  font-weight: 800;
  line-height: 1.35;
}

.pm-contact-modal__dialog p {
  margin: 0 0 16px;
  color: #64758c;
  font-size: 14px;
  line-height: 1.5;
}

.pm-contact-modal__fields {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.pm-contact-modal__field--full {
  grid-column: 1 / -1;
}

.pm-contact-modal__dialog input,
.pm-contact-modal__dialog textarea {
  display: block;
  width: 100%;
  padding: 14px 12px;
  border: 1px solid #cfe2f3;
  border-radius: 12px;
  outline: none;
  background: #fbfdff;
  color: #0a2940;
  font: inherit;
  font-size: 14px;
}

.pm-contact-modal__dialog input {
  min-height: 48px;
}

.pm-contact-modal__dialog textarea {
  min-height: 128px;
  resize: vertical;
  border-radius: 16px;
}

.pm-contact-modal__dialog input:focus,
.pm-contact-modal__dialog textarea:focus {
  border-color: #008eb9;
  box-shadow: 0 0 0 3px rgba(0, 142, 185, 0.12);
}

.pm-contact-modal__dialog input:invalid:not(:placeholder-shown),
.pm-contact-modal__dialog textarea:invalid:not(:placeholder-shown) {
  border-color: #c83d4d;
}

.pm-contact-modal__contact-hint {
  margin: 8px 0 0 !important;
  font-size: 12px !important;
}

.pm-contact-modal__actions {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
  margin-top: 18px;
}

.pm-contact-modal__actions .pm-contact-us-btn {
  width: 100%;
  min-width: 0;
  padding-inline: 12px;
}

.pm-contact-modal__actions svg {
  width: 16px;
  height: 16px;
}

.pm-contact-modal__actions [data-contact-send]:disabled {
  cursor: wait;
  opacity: 0.7;
}

.pm-contact-modal__status {
  min-height: 18px;
  margin: 10px 0 0 !important;
  font-size: 13px !important;
  font-weight: 700;
  text-align: center;
}

.pm-contact-modal__status:empty {
  min-height: 0;
  margin-top: 0 !important;
}

.pm-contact-modal__status.is-success {
  color: #177245;
}

.pm-contact-modal__status.is-error {
  color: #b42335;
}

#contact-us-page button.pm-contact-us__contact-card {
  width: 100%;
  text-align: left;
}

#contact-us-page button.pm-contact-us-btn {
  font-family: inherit;
}

@media (max-width: 520px) {
  .pm-contact-modal {
    align-items: end;
    padding: 12px;
  }

  .pm-contact-modal__dialog {
    padding: 24px 20px 20px;
    border-radius: 22px;
  }

  .pm-contact-modal__actions {
    grid-template-columns: 1fr;
  }
}

/* Pixel geometry from the v2 home at desktop and mobile breakpoints. */
html body #homepage-1 .pm-v2-wrap,
html body #homepage-1 .pm-v2-home-hero .pm-v2-wrap {
  width: min(1180px, 100%) !important;
  padding-right: 24px !important;
  padding-left: 24px !important;
}

html body #homepage-1 .pm-v2-home-hero {
  padding-top: 28px !important;
  padding-bottom: 12px !important;
}

html body #homepage-1 .pm-v2-home-hero__grid {
  grid-template-columns: minmax(0, 1fr) 560px !important;
  gap: 40px !important;
}

html body #homepage-1 .pm-v2-home-hero__copy,
html body #homepage-1 .pm-v2-home-hero__copy * {
  font-family: "PM Inter V2", Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
}

html body #homepage-1 .pm-v2-home-hero .pm-v2-eyebrow {
  line-height: 15px !important;
  position: relative;
  top: 6px;
}

html body #homepage-1 .pm-v2-home-hero__copy h1 {
  margin-top: 25px !important;
  margin-bottom: 0 !important;
}

html body #homepage-1 .pm-v2-home-hero__copy p {
  width: 100% !important;
  max-width: 576px !important;
  margin-top: 20px !important;
  margin-bottom: 0 !important;
  color: #64748b !important;
  font-size: 16px !important;
  line-height: 24px !important;
}

html body #homepage-1 .pm-v2-home-hero__copy > .pm-v2-button {
  margin-top: 24px !important;
  gap: 8px !important;
  border: 1px solid transparent !important;
}

html body #homepage-1 .pm-v2-participate {
  padding-top: 28px !important;
  padding-bottom: 28px !important;
}

html body #homepage-1 .pm-v2-participate > .pm-v2-section-heading h2 {
  margin-top: 14px !important;
  margin-bottom: 12px !important;
}

html body #homepage-1 .pm-v2-participate > .pm-v2-section-heading {
  padding-top: 5.25px !important;
}

html body #homepage-1 .pm-v2-participate > .pm-v2-section-heading nav {
  margin-top: 42px !important;
}

@media (max-width: 800px) {
  html body #homepage-1 .pm-v2-home-hero__grid {
    grid-template-columns: 1fr !important;
    gap: 40px !important;
  }
}

html body #homepage-1 .pm-v2-eyebrow,
html body #homepage-1 [data-pm-tab-showcase-title] {
  font-size: 12.5px !important;
  font-weight: 700 !important;
  line-height: 18.75px !important;
  letter-spacing: 1.75px !important;
}

html body #homepage-1 .pm-v2-participate > .pm-v2-section-heading > p {
  color: #64748b !important;
  font-size: 17px !important;
  line-height: 26.35px !important;
}

html body #homepage-1 .pm-v2-section-heading nav {
  gap: 12px !important;
}

html body #homepage-1 .pm-v2-business-intro {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 32px !important;
  margin-top: 32px !important;
}

html body #homepage-1 .pm-v2-business-video {
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 16 / 9 !important;
}

html body #homepage-1 .pm-v2-business-intro > div {
  padding: 5.25px 0 0 !important;
}

html body #homepage-1 .pm-v2-business-intro h2 {
  margin-top: 12px !important;
  margin-bottom: 0 !important;
}

html body #homepage-1 .pm-v2-business-intro > div > p {
  margin-top: 12px !important;
  margin-bottom: 0 !important;
  color: #64748b !important;
  font-size: 14px !important;
  line-height: 20px !important;
}

html body #homepage-1 .pm-v2-business-intro > div > .pm-v2-button {
  margin-top: 20px !important;
  border: 1px solid transparent !important;
}

html body #homepage-1 .pm-v2-benefits {
  gap: 16px !important;
  margin-top: 36px !important;
}

html body #homepage-1 .pm-v2-benefits article {
  min-height: 166px !important;
  padding: 18px !important;
}

html body #homepage-1 .pm-v2-benefits h3 {
  margin-top: 12px !important;
  margin-bottom: 0 !important;
  color: #0b3454 !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  line-height: 20px !important;
}

html body #homepage-1 .pm-v2-benefits p {
  margin-top: 4px !important;
  color: #64748b !important;
  font-size: 12px !important;
  line-height: 16px !important;
}

html body #homepage-1 .pm-v2-businesses-head {
  margin-top: 40px !important;
  margin-bottom: 16px !important;
}

html body #homepage-1 .pm-v2-businesses {
  grid-auto-columns: 256px !important;
  gap: 16px !important;
  padding: 0 0 8px !important;
}

html body #homepage-1 .pm-v2-businesses > article {
  height: 379px !important;
  min-height: 379px !important;
  padding: 12px !important;
}

html body #homepage-1 .pm-v2-businesses__media {
  height: 174px !important;
  padding: 0 !important;
}

html body #homepage-1 .pm-v2-businesses > article > div {
  padding: 32px 12px 12px !important;
}

html body #homepage-1 .pm-v2-businesses h3 {
  font-size: 16px !important;
  line-height: 24px !important;
}

html body #homepage-1 .pm-v2-businesses p {
  font-size: 12px !important;
  line-height: 16px !important;
}

html body #homepage-1 .pm-v2-sliders label {
  color: #dcefff !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  line-height: 19.5px !important;
}

html body #homepage-1 .pm-v2-calculator .pm-v2-section-heading .pm-v2-eyebrow {
  font-weight: 800 !important;
}

html body #homepage-1 .pm-v2-calculator .pm-v2-section-heading h2 {
  margin-top: 14.25px !important;
}

html body #homepage-1 .pm-v2-calc-card {
  height: 307px !important;
  grid-template-columns: 431.1875px 352.8125px !important;
  align-items: center !important;
  margin-top: 24px !important;
  padding: 24px !important;
  gap: 26px !important;
}

html body #homepage-1 .pm-v2-sliders {
  width: 431.1875px !important;
  height: 171px !important;
  padding: 0 !important;
}

html body #homepage-1 .pm-v2-result {
  width: 352.8125px !important;
  height: 255px !important;
  padding: 20px !important;
}

html body #homepage-1 .pm-v2-home-hero__copy > .pm-v2-button {
  min-width: 174px !important;
}

html body #homepage-1 .pm-v2-circle h2 {
  letter-spacing: -0.7px !important;
}

html body #homepage-1 .pm-v2-calculator {
  height: 554.75px !important;
  min-height: 554.75px !important;
}

html body #homepage-1 .pm-v2-calc-card,
html body #homepage-1 .pm-v2-result {
  box-sizing: border-box !important;
}

html body #homepage-1 .pm-v2-calc-card {
  border: 1px solid rgba(255, 255, 255, 0.12) !important;
}

html body #homepage-1 .pm-v2-works {
  padding-top: 56px !important;
  padding-bottom: 56px !important;
}

html body #homepage-1 .pm-v2-works .pm-v2-section-heading {
  padding-top: 3.25px !important;
}

html body #homepage-1 .pm-v2-works .pm-v2-section-heading > p {
  width: min(640px, 100%) !important;
  margin-right: auto !important;
  margin-left: auto !important;
  color: #64748b !important;
  font-size: 16px !important;
  line-height: 24px !important;
}

html body #homepage-1 .pm-v2-work-grid {
  margin-top: 30px !important;
}

html body #homepage-1 .pm-v2-circle {
  padding-top: 66px !important;
  padding-bottom: 66px !important;
}

html body #homepage-1 .pm-v2-circle__grid {
  height: 480px !important;
  grid-template-columns: 0.92fr 1.08fr !important;
  gap: 52px !important;
}

html body #homepage-1 .pm-v2-wheel {
  width: 535px !important;
  height: 535px !important;
  transform: scale(0.8971962617);
  transform-origin: center center;
}

@media (max-width: 800px) {
  html body #homepage-1 .pm-v2-participate > .pm-v2-section-heading nav {
    flex-wrap: wrap !important;
    justify-content: center !important;
    overflow: visible !important;
    padding-bottom: 0 !important;
  }

  html body #homepage-1 .pm-v2-business-intro {
    grid-template-columns: 1fr !important;
  }

  html body #homepage-1 .pm-v2-benefits {
    margin-top: 32px !important;
  }

  html body #homepage-1 .pm-v2-benefits article {
    height: auto !important;
    min-height: 0 !important;
  }

  html body #homepage-1 .pm-v2-businesses-head {
    margin-bottom: 18.5px !important;
  }

  html body #homepage-1 .pm-v2-calc-card {
    width: 100% !important;
    height: auto !important;
    grid-template-columns: 1fr !important;
  }

  html body #homepage-1 .pm-v2-sliders,
  html body #homepage-1 .pm-v2-result {
    width: 100% !important;
    height: auto !important;
  }


  html body #homepage-1 .pm-v2-calculator {
    height: auto !important;
    min-height: 0 !important;
    padding-top: 48px !important;
    padding-bottom: 48px !important;
  }

  html body #homepage-1 .pm-v2-calc-card {
    padding: 22px !important;
    gap: 20px !important;
  }

  html body #homepage-1 .pm-v2-sliders {
    height: 171px !important;
  }

  html body #homepage-1 .pm-v2-result {
    height: 245px !important;
  }

  html body #homepage-1 .pm-v2-calculator__note {
    width: 100% !important;
    margin: 14px 0 0 !important;
    padding: 0 !important;
  }

  html body #homepage-1 .pm-v2-work-grid > article:nth-child(1) {
    height: 478.125px !important;
  }

  html body #homepage-1 .pm-v2-work-grid > article:nth-child(2) {
    height: 438.4375px !important;
    min-height: 438.4375px !important;
  }

  html body #homepage-1 .pm-v2-work-grid > article:nth-child(3) {
    height: 441.4375px !important;
  }

  html body #homepage-1 .pm-v2-circle__grid {
    height: auto !important;
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 40px !important;
  }

  html body #homepage-1 .pm-v2-circle__grid > div:first-child {
    width: 100% !important;
    min-width: 0 !important;
  }

  html body #homepage-1 .pm-v2-wheel {
    width: 535px !important;
    max-width: none !important;
    min-width: 0 !important;
    height: 535px !important;
    margin-bottom: -193px !important;
    justify-self: center;
    transform: scale(0.6392523364);
    transform-origin: center center;
  }
}

body#contact-us-page {
  background: #f8fdff !important;
}

body#contact-us-page > .ck-content {
  background: #f8fdff !important;
  padding-top: 65px !important;
}

#contact-us-page .pm-contact-us,
#contact-us-page .pm-contact-us *,
#contact-us-page .pm-contact-us *::before,
#contact-us-page .pm-contact-us *::after {
  box-sizing: border-box;
}

#contact-us-page .pm-contact-us {
  overflow-x: clip;
  color: var(--pm-ink);
  background: #f8fdff;
  font-family: var(--pm-font-inter) !important;
}

#contact-us-page .pm-contact-us a {
  text-decoration: none !important;
}

#contact-us-page .pm-contact-us__section {
  width: min(1280px, 100%);
  margin-right: auto;
  margin-left: auto;
  padding: 40px 24px;
}

#contact-us-page .pm-contact-us__section--breadcrumb {
  padding-top: 16px;
  padding-bottom: 16px;
}

#contact-us-page .pm-contact-us__section--hero {
  padding-top: 8px;
  padding-bottom: 40px;
}

#contact-us-page .pm-contact-us__section--cta {
  padding-bottom: 40px;
}

#contact-us-page .pm-contact-us__breadcrumb {
  overflow-x: auto;
}

#contact-us-page .pm-contact-us__breadcrumb ol {
  display: flex;
  align-items: center;
  gap: 6px;
  width: max-content;
  margin: 0 !important;
  padding: 0 !important;
  color: var(--pm-muted);
  font-size: 12px;
  line-height: 18px;
  list-style: none;
  white-space: nowrap;
}

#contact-us-page .pm-contact-us__breadcrumb li {
  display: flex;
  align-items: center;
  gap: 6px;
  margin: 0 !important;
}

#contact-us-page .pm-contact-us__breadcrumb a {
  color: var(--pm-muted);
  font-weight: 400;
}

#contact-us-page .pm-contact-us__breadcrumb a:hover {
  color: var(--pm-blue);
}

#contact-us-page .pm-contact-us__breadcrumb span {
  color: var(--pm-navy);
  font-weight: 700;
}

#contact-us-page .pm-contact-us-card {
  border: 1px solid var(--pm-border);
  border-radius: 24px;
  background: rgba(255, 255, 255, 0.92);
  box-shadow: var(--pm-card-shadow);
}

#contact-us-page .pm-contact-us__hero {
  overflow: hidden;
  padding: 40px;
}

#contact-us-page .pm-contact-us__kicker {
  display: inline-flex;
  align-items: center;
  width: fit-content;
  padding: 6px 12px;
  border-radius: 999px;
  background: #e9f8ff;
  color: var(--pm-blue);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0;
  line-height: 18px;
}

#contact-us-page .pm-contact-us h1,
#contact-us-page .pm-contact-us h2,
#contact-us-page .pm-contact-us h3,
#contact-us-page .pm-contact-us p {
  font-family: var(--pm-font-inter) !important;
}

#contact-us-page .pm-contact-us h1 {
  margin: 12px 0 0 !important;
  color: var(--pm-navy) !important;
  font-size: 36px !important;
  font-weight: 800 !important;
  letter-spacing: 0 !important;
  line-height: 40px !important;
}

#contact-us-page .pm-contact-us__hero > p {
  max-width: 672px;
  margin: 12px 0 0 !important;
  color: var(--pm-muted) !important;
  font-size: 16px !important;
  line-height: 24px !important;
}

#contact-us-page .pm-contact-us__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 20px;
}

#contact-us-page .pm-contact-us-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  padding: 12px 20px;
  border: 1px solid transparent;
  border-radius: 999px;
  font-size: 14px;
  font-weight: 700;
  line-height: 20px;
  text-align: center;
  white-space: nowrap;
  transition: transform 0.15s ease, box-shadow 0.15s ease, border-color 0.15s ease, background 0.15s ease, color 0.15s ease;
}

#contact-us-page .pm-contact-us-btn:hover {
  transform: translateY(-1px);
}

#contact-us-page .pm-contact-us-btn--primary {
  background: linear-gradient(90deg, var(--pm-blue), var(--pm-cyan));
  color: #ffffff !important;
  box-shadow: 0 14px 30px rgba(5, 126, 162, 0.25);
}

#contact-us-page .pm-contact-us-btn--secondary {
  border-color: var(--pm-border);
  background: #ffffff;
  color: var(--pm-blue) !important;
}

#contact-us-page .pm-contact-us-btn--light {
  min-width: 144px;
  background: #ffffff;
  color: var(--pm-blue) !important;
}

#contact-us-page .pm-contact-us__section-heading {
  display: flex;
  flex-direction: column;
  gap: 4px;
  margin-bottom: 24px;
}

#contact-us-page .pm-contact-us__section-heading h2 {
  margin: 0 !important;
  color: var(--pm-navy) !important;
  font-size: 30px !important;
  font-weight: 800 !important;
  letter-spacing: 0 !important;
  line-height: 36px !important;
}

#contact-us-page .pm-contact-us__section-heading p {
  max-width: 672px;
  margin: 0 !important;
  color: var(--pm-muted) !important;
  font-size: 14px !important;
  line-height: 20px !important;
}

#contact-us-page .pm-contact-us__contact-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

#contact-us-page .pm-contact-us__contact-card {
  display: flex;
  min-height: 226px;
  flex-direction: column;
  gap: 12px;
  padding: 24px;
  color: var(--pm-ink);
  transition: transform 0.15s ease, box-shadow 0.15s ease;
}

#contact-us-page .pm-contact-us__contact-card:hover,
#contact-us-page .pm-contact-us__social-card:hover {
  color: var(--pm-ink);
  box-shadow: var(--pm-soft-shadow);
  transform: translateY(-2px);
}

#contact-us-page .pm-contact-us__contact-icon,
#contact-us-page .pm-contact-us__social-icon {
  display: grid;
  width: 44px;
  height: 44px;
  flex: 0 0 44px;
  place-items: center;
  border-radius: 16px;
}

#contact-us-page .pm-contact-us__contact-icon {
  background: var(--pm-soft);
  color: var(--pm-blue);
  box-shadow: var(--pm-soft-shadow);
}

#contact-us-page .pm-contact-us__icon-svg,
#contact-us-page .pm-contact-us__social-svg {
  width: 20px;
  height: 20px;
}

#contact-us-page .pm-contact-us__contact-card h3 {
  margin: 0 !important;
  color: var(--pm-navy) !important;
  font-size: 18px !important;
  font-weight: 800 !important;
  line-height: 28px !important;
}

#contact-us-page .pm-contact-us__contact-card p {
  margin: 0 !important;
  color: var(--pm-muted) !important;
  font-size: 14px !important;
  line-height: 20px !important;
}

#contact-us-page .pm-contact-us__email {
  margin-top: 8px;
  color: var(--pm-blue);
  font-size: 14px;
  font-weight: 700;
  line-height: 20px;
}

#contact-us-page .pm-contact-us__faq-card {
  padding: 8px;
}

#contact-us-page .pm-contact-us__faq-item {
  padding-right: 16px;
  padding-left: 16px;
}

#contact-us-page .pm-contact-us__faq-item + .pm-contact-us__faq-item,
#contact-us-page .pm-contact-us__faq-link {
  border-top: 1px solid var(--pm-border);
}

#contact-us-page .pm-contact-us__faq-item summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  min-height: 52px;
  padding: 16px 0;
  color: var(--pm-navy);
  cursor: pointer;
  font-size: 14px;
  font-weight: 700;
  line-height: 20px;
  list-style: none;
}

#contact-us-page .pm-contact-us__faq-item summary span {
  font-weight: 700 !important;
}

#contact-us-page .pm-contact-us__faq-item summary::-webkit-details-marker {
  display: none;
}

#contact-us-page .pm-contact-us__faq-item p {
  margin: 0 !important;
  padding: 0 32px 16px 0;
  color: var(--pm-muted) !important;
  font-size: 14px !important;
  line-height: 20px !important;
}

#contact-us-page .pm-contact-us__faq-empty {
  padding: 16px;
  color: var(--pm-muted);
  font-size: 14px;
  line-height: 20px;
}

#contact-us-page .pm-contact-us__chevron {
  width: 16px;
  height: 16px;
  flex: 0 0 16px;
  color: var(--pm-blue);
  transition: transform 0.15s ease;
}

#contact-us-page .pm-contact-us__faq-item[open] .pm-contact-us__chevron {
  transform: rotate(90deg);
}

#contact-us-page .pm-contact-us__faq-link {
  padding: 16px;
}

#contact-us-page .pm-contact-us__faq-link a {
  display: inline-flex;
  align-items: center;
  color: var(--pm-ink) !important;
  font-size: 14px;
  font-weight: 700;
  line-height: 20px;
}

#contact-us-page .pm-contact-us__faq-link a:hover {
  color: var(--pm-navy);
}

#contact-us-page .pm-contact-us__social-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
}

#contact-us-page .pm-contact-us__social-card {
  display: flex;
  min-height: 86px;
  align-items: center;
  gap: 16px;
  padding: 20px;
  color: var(--pm-ink);
  transition: transform 0.15s ease, box-shadow 0.15s ease;
}

#contact-us-page .pm-contact-us__social-icon {
  background: var(--pm-navy);
  color: #ffffff;
}

#contact-us-page .pm-contact-us__social-copy {
  display: flex;
  min-width: 0;
  flex-direction: column;
  line-height: 1.25;
}

#contact-us-page .pm-contact-us__social-copy strong {
  color: var(--pm-navy);
  font-size: 14px;
  font-weight: 800;
  line-height: 18px;
}

#contact-us-page .pm-contact-us__social-copy small {
  color: var(--pm-muted);
  font-size: 12px;
  line-height: 16px;
}

#contact-us-page .pm-contact-us__social-card:hover .pm-contact-us__social-copy small {
  color: var(--pm-blue);
}

#contact-us-page .pm-contact-us__cta {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 24px;
  padding: 40px;
  border-radius: 24px;
  background: #0b4868;
  color: #ffffff;
}

#contact-us-page .pm-contact-us__cta h2 {
  max-width: 700px;
  margin: 0 !important;
  color: #ffffff !important;
  font-size: 30px !important;
  font-weight: 800 !important;
  letter-spacing: 0 !important;
  line-height: 38px !important;
}

#contact-us-page .pm-contact-us__cta p {
  margin: 12px 0 0 !important;
  color: rgba(255, 255, 255, 0.85) !important;
  font-size: 16px !important;
  line-height: 24px !important;
}

@media (max-width: 991.98px) {
  #contact-us-page .pm-contact-us__social-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 767.98px) {
  #contact-us-page .pm-contact-us__section {
    padding: 32px 16px;
  }

  #contact-us-page .pm-contact-us__section--breadcrumb {
    padding-top: 16px;
    padding-bottom: 16px;
  }

  #contact-us-page .pm-contact-us__section--hero {
    padding-top: 8px;
    padding-bottom: 32px;
  }

  #contact-us-page .pm-contact-us__hero {
    padding: 24px;
  }

  #contact-us-page .pm-contact-us h1 {
    font-size: 30px !important;
    line-height: 36px !important;
  }

  #contact-us-page .pm-contact-us__hero > p {
    font-size: 14px !important;
    line-height: 20px !important;
  }

  #contact-us-page .pm-contact-us__section-heading {
    margin-bottom: 16px;
  }

  #contact-us-page .pm-contact-us__section-heading h2 {
    font-size: 24px !important;
    line-height: 32px !important;
  }

  #contact-us-page .pm-contact-us__contact-grid,
  #contact-us-page .pm-contact-us__social-grid {
    grid-template-columns: 1fr;
  }

  #contact-us-page .pm-contact-us__contact-card {
    min-height: 0;
  }

  #contact-us-page .pm-contact-us__cta {
    flex-direction: column;
    padding: 24px;
  }

  #contact-us-page .pm-contact-us__cta h2 {
    font-size: 24px !important;
    line-height: 30px !important;
  }

  #contact-us-page .pm-contact-us__cta p {
    font-size: 14px !important;
    line-height: 20px !important;
  }
}

/* Onboarding AI search */
.pm-onboarding-search,
.pm-onboarding-search *,
.pm-onboarding-search *::before,
.pm-onboarding-search *::after {
  box-sizing: border-box;
}

.pm-onboarding-search [hidden] {
  display: none !important;
}

.pm-onboarding-search {
  min-height: calc(100vh - 120px);
  background: #f7fbfa;
  color: #102a34;
  font-family: "Segoe UI", system-ui, -apple-system, BlinkMacSystemFont, sans-serif;
}

.pm-onboarding-search__shell {
  width: min(1120px, calc(100% - 32px));
  margin: 0 auto;
  padding: 64px 0 72px;
}

.pm-onboarding-search__panel {
  animation: pmOnboardingFadeIn 180ms ease both;
}

.pm-onboarding-loading,
.pm-onboarding-confirm {
  background: #ffffff;
  border: 1px solid rgba(18, 53, 63, 0.1);
  border-radius: 24px;
  box-shadow: 0 24px 70px rgba(18, 53, 63, 0.1);
}

.pm-onboarding-search__form {
  max-width: 576px;
  margin: 0 auto;
  padding: 22px 0 72px;
  text-align: center;
}

.pm-onboarding-search__form .pm-onboarding-search__lead {
  margin-left: auto;
  margin-right: auto;
}

.pm-onboarding-search__form h1 {
  font-family: "Segoe UI", system-ui, -apple-system, BlinkMacSystemFont, sans-serif !important;
  font-weight: 900 !important;
}

.pm-onboarding-search__form .pm-onboarding-search__fields,
.pm-onboarding-search__form .pm-onboarding-search__chooser {
  text-align: left;
}

.pm-onboarding-search__form .pm-onboarding-search__actions {
  align-items: center;
  flex-direction: column;
  justify-content: center;
  gap: 18px;
  margin-top: 24px;
}

.pm-onboarding-search__form .pm-onboarding-search__primary {
  width: 100%;
  min-height: 48px;
  border-radius: 999px;
  background: linear-gradient(90deg, #0789ad 0%, #45add6 100%);
  box-shadow: 0 18px 38px rgba(7, 137, 173, 0.22);
}

.pm-onboarding-search__form .pm-onboarding-search__primary:hover {
  background: linear-gradient(90deg, #057c9d 0%, #349fca 100%);
}

.pm-onboarding-search__form .pm-onboarding-search__link {
  color: #00799d;
  font-size: 14px;
  text-decoration: underline;
  text-underline-offset: 2px;
}

.pm-onboarding-search__eyebrow {
  margin: 0 0 12px;
  color: #0c7c74;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.pm-onboarding-search h1,
.pm-onboarding-search h2 {
  margin: 0;
  color: #102a34;
  font-size: clamp(34px, 5vw, 58px);
  font-weight: 800;
  line-height: 1.03;
  letter-spacing: 0;
}

.pm-onboarding-search__lead {
  max-width: 680px;
  margin: 16px 0 0;
  color: #5e7178;
  font-size: 17px;
  line-height: 1.7;
}

.pm-onboarding-search__fields {
  position: relative;
  display: grid;
  gap: 16px;
  margin-top: 34px;
}

.pm-onboarding-search__field {
  display: grid;
  gap: 8px;
  margin: 0;
  color: #102a34;
  font-size: 14px;
  font-weight: 800;
}

.pm-onboarding-search__optional {
  color: #5e7178;
  font-size: inherit;
  font-weight: 500;
}

.pm-onboarding-search__hint {
  color: #5e7178;
  font-size: 12px;
  font-weight: 400;
  line-height: 1.5;
}

.pm-onboarding-search__field input,
.pm-onboarding-chat__composer input {
  width: 100%;
  min-height: 54px;
  border: 1px solid rgba(18, 53, 63, 0.16);
  border-radius: 14px;
  background: #fbfdfd;
  color: #102a34;
  font: inherit;
  font-weight: 600;
  outline: none;
  padding: 0 16px;
  transition: border-color 160ms ease, box-shadow 160ms ease;
}

.pm-onboarding-search__field input:focus,
.pm-onboarding-chat__composer input:focus {
  border-color: #0c7c74;
  box-shadow: 0 0 0 4px rgba(12, 124, 116, 0.14);
}

.pm-onboarding-search__matches {
  position: absolute;
  z-index: 5;
  top: 84px;
  left: 0;
  right: 0;
  padding: 0;
  border: 1px solid #cfe2ff;
  border-radius: 12px;
  background: #ffffff;
  box-shadow: 0 10px 24px rgba(13, 49, 80, 0.1);
  overflow: hidden;
}

.pm-onboarding-search__matches-label {
  padding: 10px 12px 5px;
  color: #607086;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.04em;
  line-height: 14px;
  text-transform: uppercase;
}

.pm-onboarding-search__matches-list {
  display: grid;
  gap: 0;
  padding: 0 12px 6px;
}

.pm-onboarding-search__match {
  display: flex;
  align-items: center;
  gap: 12px;
  box-sizing: border-box;
  min-width: 0;
  max-width: 100%;
  width: 100%;
  border: 0;
  border-radius: 8px;
  background: transparent;
  color: #102a34;
  cursor: pointer;
  padding: 8px 0;
  text-align: left;
}

.pm-onboarding-search__match-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 34px;
  width: 34px;
  height: 34px;
  border-radius: 9px;
  background: #eef8fb;
  color: #0582a8;
}

.pm-onboarding-search__match-copy {
  min-width: 0;
  flex: 1 1 auto;
  overflow: hidden;
}

.pm-onboarding-search__match:hover,
.pm-onboarding-search__match:focus-visible {
  background: #f5fbfd;
}

.pm-onboarding-search__match strong,
.pm-onboarding-search__match small {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.pm-onboarding-search__match small {
  margin-top: 1px;
  color: #607086;
  font-size: 12px;
  line-height: 16px;
}

.pm-onboarding-search__match em {
  flex: 0 0 84px;
  color: #0c7c74;
  font-size: 12px;
  font-style: normal;
  font-weight: 800;
  text-align: right;
  text-transform: uppercase;
  white-space: nowrap;
}

.pm-onboarding-search__match em.is-activate {
  color: #ed7500;
}

.pm-onboarding-search__match em.is-activate::before {
  display: inline-block;
  width: 6px;
  height: 6px;
  margin-right: 7px;
  border-radius: 50%;
  background: #ff9700;
  content: '';
  vertical-align: 1px;
}

.pm-onboarding-search__matches-footer {
  border-top: 1px solid #d8e5f3;
  padding: 7px 12px 8px;
  color: #607086;
  font-size: 11px;
  line-height: 16px;
}

.pm-onboarding-search__claim-summary {
  margin-top: 26px;
  padding: 18px 16px 16px;
  border: 1px solid #a9d7e8;
  border-radius: 15px;
  background: #f7fbfd;
  color: #123550;
}

.pm-onboarding-search__claim-heading {
  display: flex;
  align-items: center;
  gap: 12px;
  text-align: left;
}

.pm-onboarding-search__claim-copy {
  min-width: 0;
  flex: 1 1 auto;
  text-align: left;
}

.pm-onboarding-search__claim-copy strong,
.pm-onboarding-search__claim-copy small {
  display: block;
}

.pm-onboarding-search__claim-title {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 7px;
}

.pm-onboarding-search__claim-copy strong {
  font-size: 16px;
  line-height: 20px;
  text-align: left;
}

.pm-onboarding-search__claim-copy small {
  margin-top: 2px;
  color: #607086;
  font-size: 13px;
  line-height: 18px;
}

.pm-onboarding-search__claim-heading em {
  flex: 0 0 auto;
  color: #ed7500;
  font-size: 11px;
  font-style: normal;
  font-weight: 800;
  line-height: 20px;
  text-transform: uppercase;
}

.pm-onboarding-search__claim-heading em::before {
  display: inline-block;
  width: 6px;
  height: 6px;
  margin-right: 7px;
  border-radius: 50%;
  background: #ff9700;
  content: '';
  vertical-align: 1px;
}

.pm-onboarding-search__claim-summary > p {
  margin: 14px 0 12px;
  color: #607086;
  font-size: 14px;
  line-height: 21px;
}

.pm-onboarding-search__claim-summary > p::first-line {
  color: #123550;
}

.pm-onboarding-search__claim-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.pm-onboarding-search__claim-button,
.pm-onboarding-search__claim-dismiss {
  min-height: 46px;
  border-radius: 999px;
  padding: 0 20px;
  font: inherit;
  font-size: 14px;
  font-weight: 800;
  cursor: pointer;
}

.pm-onboarding-search__claim-button {
  border: 0;
  background: linear-gradient(90deg, #0789ad, #35a9db);
  color: #fff;
}

.pm-onboarding-search__claim-dismiss {
  border: 1px solid #d8e5f3;
  background: #fff;
  color: #0782a7;
}

@media (max-width: 575px) {
  .pm-onboarding-search__claim-heading {
    align-items: flex-start;
  }

  .pm-onboarding-search__claim-heading em {
    margin-top: 0;
  }

  .pm-onboarding-search__claim-actions {
    align-items: stretch;
    flex-direction: column;
  }
}

.pm-onboarding-search__chooser-label {
  margin-top: 24px;
  color: #0d3150;
  font-size: 14px;
  font-weight: 900;
  line-height: 1.35;
  text-align: left;
}

.pm-onboarding-search__chooser {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px 8px;
  margin-top: 8px;
}

.pm-onboarding-search__choice {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 42px;
  border: 1px solid #cfe2ff;
  border-radius: 11px;
  background: #ffffff;
  color: #607086;
  cursor: pointer;
  padding: 0 16px;
  text-align: center;
  transition: border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
}

.pm-onboarding-search__choice:hover,
.pm-onboarding-search__choice.is-active {
  border-color: #0789ad;
  background: #eaf8fd;
  color: #0d3150;
  box-shadow: none;
  transform: none;
}

.pm-onboarding-search__choice span {
  display: block;
  font-size: 14px;
  font-weight: 900;
  line-height: 1.35;
}

.pm-onboarding-search__choice[data-pm-choice="auto"] {
  grid-column: 2;
  min-height: 62px;
}

.pm-onboarding-manual .pm-onboarding-search__choice-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  width: 44px;
  height: 44px;
  border-radius: 15px;
  background: linear-gradient(135deg, #1388aa 0%, #3db4dc 100%);
  color: #ffffff;
}

.pm-onboarding-manual .pm-onboarding-search__choice-icon svg {
  width: 20px;
  height: 20px;
}

.pm-onboarding-search__notice {
  margin-top: 18px;
  border-radius: 12px;
  background: #fff5d6;
  color: #6b4a00;
  font-size: 14px;
  font-weight: 700;
  padding: 12px 14px;
}

.pm-onboarding-search__actions {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 14px;
  margin-top: 26px;
}

.pm-onboarding-search__actions--stack {
  align-items: stretch;
  flex-direction: column;
}

.pm-onboarding-search__partner-contact {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  margin-top: 36px;
  border-top: 1px solid #d8e5f3;
  padding-top: 20px;
}

.pm-onboarding-search__partner-contact p {
  margin: 0;
  color: #607086;
  font-size: 14px;
  line-height: 20px;
  text-align: left;
}

.pm-onboarding-search__partner-contact strong {
  color: #0d3150;
  font-weight: 900;
}

.pm-onboarding-search__partner-contact a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  min-height: 46px;
  border: 1px solid #d8e5f3;
  border-radius: 999px;
  background: #fff;
  color: #0782a7;
  font-size: 14px;
  font-weight: 800;
  padding: 0 20px;
  text-decoration: none;
}

.pm-onboarding-search__partner-contact a:hover,
.pm-onboarding-search__partner-contact a:focus-visible {
  border-color: #0782a7;
  color: #056d8d;
}

@media (max-width: 575px) {
  .pm-onboarding-search__partner-contact {
    align-items: flex-start;
    flex-direction: column;
    gap: 14px;
  }
}

.pm-onboarding-search__primary,
.pm-onboarding-chat__composer button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 50px;
  border: 0;
  border-radius: 999px;
  background: #0c7c74;
  color: #ffffff;
  cursor: pointer;
  font-weight: 900;
  padding: 0 24px;
}

.pm-onboarding-search__primary:hover,
.pm-onboarding-chat__composer button:hover {
  background: #09635d;
}

.pm-onboarding-search__link,
.pm-onboarding-search__back {
  border: 0;
  background: transparent;
  color: #0c7c74;
  cursor: pointer;
  font-weight: 900;
  padding: 0;
}

.pm-onboarding-search__back {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 28px;
}

.pm-onboarding-search__back svg {
  width: 18px;
  height: 18px;
}

.pm-onboarding-loading {
  max-width: 720px;
  margin: 0 auto;
  padding: clamp(28px, 5vw, 54px);
}

.pm-onboarding-loading__visual {
  display: flex;
  margin-bottom: 20px;
}

.pm-onboarding-loading__spinner {
  width: 58px;
  height: 58px;
  border: 5px solid #d9efed;
  border-top-color: #0c7c74;
  border-radius: 999px;
  animation: pmOnboardingSpin 900ms linear infinite;
}

.pm-onboarding-loading p {
  color: #5e7178;
}

.pm-onboarding-journey {
  display: grid;
  gap: 10px;
  margin: 28px 0 0;
  padding: 0;
  list-style: none;
}

.pm-onboarding-journey li {
  border-radius: 14px;
  background: #f4faf9;
  color: #28434c;
  font-weight: 800;
  padding: 13px 16px;
}

.pm-onboarding-loading__footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-top: 24px;
  color: #6a7b82;
  font-weight: 800;
}

.pm-onboarding-confirm {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(320px, 0.65fr);
  gap: 24px;
  padding: clamp(20px, 4vw, 34px);
}

.pm-onboarding-confirm__preview {
  overflow: hidden;
  margin-top: 24px;
  border: 1px solid rgba(18, 53, 63, 0.1);
  border-radius: 18px;
  background: #ffffff;
}

.pm-onboarding-confirm__banner {
  min-height: 180px;
  background: linear-gradient(135deg, #e9f7f5, #f7fbfa);
}

.pm-onboarding-confirm__banner img {
  width: 100%;
  height: 220px;
  object-fit: cover;
}

.pm-onboarding-confirm__identity {
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 22px 22px 0;
}

.pm-onboarding-confirm__logo {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  width: 70px;
  height: 70px;
  border: 4px solid #ffffff;
  border-radius: 18px;
  background: #0c7c74;
  color: #ffffff;
  font-size: 22px;
  font-weight: 900;
  box-shadow: 0 14px 28px rgba(18, 53, 63, 0.15);
}

.pm-onboarding-confirm__logo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.pm-onboarding-confirm__logo.is-image {
  overflow: visible;
  border-radius: 0;
  background: transparent;
}

.pm-onboarding-confirm__logo.is-image img {
  object-fit: contain;
}

.pm-onboarding-confirm__kind {
  color: #0c7c74;
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
}

.pm-onboarding-confirm h3,
.pm-onboarding-confirm h4,
.pm-onboarding-confirm p {
  margin-left: 22px;
  margin-right: 22px;
}

.pm-onboarding-confirm h3 {
  margin-top: 2px;
  margin-bottom: 0;
  color: #102a34;
  font-size: 27px;
  font-weight: 900;
}

.pm-onboarding-confirm h4 {
  margin-top: 20px;
  margin-bottom: 8px;
  color: #102a34;
  font-size: 20px;
  font-weight: 900;
}

.pm-onboarding-confirm p {
  color: #5e7178;
  font-size: 15px;
  line-height: 1.7;
}

.pm-onboarding-confirm__facts {
  display: grid;
  grid-template-columns: max-content minmax(0, 1fr);
  gap: 8px 16px;
  margin: 22px;
  padding-top: 18px;
  border-top: 1px solid rgba(18, 53, 63, 0.1);
}

.pm-onboarding-confirm__facts dt {
  color: #6a7b82;
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
}

.pm-onboarding-confirm__facts dd {
  min-width: 0;
  margin: 0;
  color: #102a34;
  font-weight: 700;
  overflow-wrap: anywhere;
}

.pm-onboarding-confirm__side {
  display: grid;
  align-content: start;
  gap: 18px;
}

.pm-onboarding-confirm__type-pills {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.pm-onboarding-confirm__type-pills button {
  border: 1px solid rgba(18, 53, 63, 0.14);
  border-radius: 999px;
  background: #ffffff;
  color: #28434c;
  cursor: pointer;
  font-weight: 900;
  padding: 9px 13px;
}

.pm-onboarding-confirm__type-pills button.is-active {
  border-color: #0c7c74;
  background: #e9f7f5;
  color: #0c7c74;
}

.pm-onboarding-chat {
  display: grid;
  gap: 12px;
  border: 1px solid rgba(18, 53, 63, 0.1);
  border-radius: 18px;
  background: #fbfdfd;
  padding: 16px;
}

.pm-onboarding-chat label {
  color: #102a34;
  font-weight: 900;
}

.pm-onboarding-chat__log {
  display: grid;
  gap: 8px;
  max-height: 250px;
  overflow: auto;
}

.pm-onboarding-chat__log > p {
  margin: 0;
  color: #6a7b82;
  font-size: 14px;
}

.pm-onboarding-chat__message {
  border-radius: 13px;
  color: #102a34;
  font-size: 14px;
  line-height: 1.5;
  padding: 10px 12px;
}

.pm-onboarding-chat__message--user {
  background: #e9f7f5;
}

.pm-onboarding-chat__message--assistant {
  background: #ffffff;
}

.pm-onboarding-chat__composer {
  display: flex;
  gap: 8px;
}

.pm-onboarding-chat__composer button {
  min-height: 46px;
  padding: 0 18px;
}

.pm-onboarding-chat__status {
  margin: 0;
  color: #6a7b82;
  font-size: 13px;
  font-weight: 800;
}

.pm-onboarding-manual {
  width: min(920px, 100%);
  margin: 0 auto;
  padding: 0;
  text-align: center;
}

.pm-onboarding-manual .pm-onboarding-search__back {
  width: max-content;
  margin: 0 auto 30px;
  color: #0789ad;
  text-decoration: underline;
  text-underline-offset: 2px;
}

.pm-onboarding-manual .pm-onboarding-search__intro {
  max-width: 650px;
  margin: 0 auto;
}

.pm-onboarding-manual .pm-onboarding-search__eyebrow {
  margin-bottom: 12px;
  color: #0789ad;
  font-size: 11px;
  letter-spacing: 0.12em;
}

.pm-onboarding-manual .pm-onboarding-search__intro h2 {
  margin: 0;
  color: #0d3150;
  font-family: "Segoe UI", system-ui, -apple-system, BlinkMacSystemFont, sans-serif !important;
  font-size: clamp(30px, 4vw, 38px);
  font-weight: 900 !important;
  line-height: 1.15;
}

.pm-onboarding-manual .pm-onboarding-search__lead {
  max-width: 520px;
  margin: 12px auto 0;
  color: #607086;
  font-size: 15px;
  line-height: 20px;
}

.pm-onboarding-manual__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
  margin-top: 32px;
  text-align: left;
}

.pm-onboarding-manual__card {
  display: grid;
  grid-template-rows: auto auto auto 1fr auto;
  gap: 8px;
  min-height: 294px;
  border: 1px solid #cfe2ff;
  border-radius: 22px;
  background: #ffffff;
  color: #102a34;
  padding: 28px;
  text-decoration: none;
}

.pm-onboarding-manual__card:hover {
  border-color: #45b9d7;
  color: #102a34;
  box-shadow: 0 14px 34px rgba(12, 124, 116, 0.12);
}

.pm-onboarding-manual__card strong {
  color: #0d3150;
  font-size: 18px;
  font-weight: 900;
}

.pm-onboarding-manual__card small {
  margin-top: 4px;
  color: #0789ad;
  font-size: 10px;
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 14px;
  text-transform: uppercase;
}

.pm-onboarding-manual__card span:not(.pm-onboarding-search__choice-icon) {
  color: #607086;
  font-size: 15px;
  line-height: 23px;
}

.pm-onboarding-manual__card em {
  align-self: end;
  color: #0789ad;
  font-style: normal;
  font-weight: 900;
}

@keyframes pmOnboardingSpin {
  to {
    transform: rotate(360deg);
  }
}

@keyframes pmOnboardingFadeIn {
  from {
    opacity: 0;
    transform: translateY(8px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@media (max-width: 900px) {
  .pm-onboarding-confirm {
    grid-template-columns: 1fr;
  }

  .pm-onboarding-manual__grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 640px) {
  .pm-onboarding-search__shell {
    width: min(100% - 20px, 1120px);
    padding: 28px 0 48px;
  }

  .pm-onboarding-search__form,
  .pm-onboarding-loading,
  .pm-onboarding-confirm,
  .pm-onboarding-manual {
    border-radius: 18px;
  }

  .pm-onboarding-search h1,
  .pm-onboarding-search h2 {
    font-size: 34px;
    line-height: 1.08;
  }

  .pm-onboarding-search__lead {
    font-size: 15px;
  }

  .pm-onboarding-search__chooser {
    grid-template-columns: 1fr;
  }

  .pm-onboarding-search__choice,
  .pm-onboarding-search__choice[data-pm-choice="auto"] {
    grid-column: auto;
    min-height: 42px;
  }

  .pm-onboarding-chat__composer {
    flex-direction: column;
  }

  .pm-onboarding-confirm__facts {
    grid-template-columns: 1fr;
  }
}

/* Onboarding AI parity with the Vercel research/review states */
.pm-onboarding-search__panel[data-pm-onboarding-screen="loading"] .pm-onboarding-loading,
.pm-onboarding-search__panel[data-pm-onboarding-screen="confirm"] .pm-onboarding-confirm {
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

.pm-onboarding-search__panel[data-pm-onboarding-screen="loading"].is-active {
  display: flex;
  justify-content: center;
}

.pm-onboarding-loading {
  width: min(520px, 100%);
  max-width: 520px;
  min-height: calc(100vh - 188px);
  margin: 0 auto;
  padding: 0 0 72px;
  text-align: center;
}

.pm-onboarding-loading h2 {
  color: #0d3150;
  font-size: 26px;
  font-family: "Segoe UI", system-ui, -apple-system, BlinkMacSystemFont, sans-serif !important;
  font-weight: 900 !important;
  line-height: 32px;
}

.pm-onboarding-loading h2 span {
  color: #1597c5;
}

.pm-onboarding-journey {
  display: grid;
  gap: 10px;
  width: max-content;
  max-width: 100%;
  margin: 22px auto 0;
  padding: 0;
  list-style: none;
  text-align: left;
}

.pm-onboarding-journey li {
  display: grid;
  grid-template-columns: 22px minmax(0, 1fr);
  align-items: center;
  gap: 12px;
  min-height: 22px;
  padding: 0;
  border-radius: 0;
  background: transparent;
  color: #0d3150;
  font-size: 14px;
  font-weight: 500;
  line-height: 20px;
}

.pm-onboarding-journey li::before {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 20px;
  height: 20px;
  border-radius: 999px;
  background: #e7f5f8;
  color: transparent;
  content: "";
}

.pm-onboarding-journey li.is-complete::before {
  background: #0789ad;
  color: #ffffff;
  content: "✓";
  font-size: 12px;
  font-weight: 900;
  line-height: 1;
}

.pm-onboarding-loading__status {
  margin: 20px 0 0;
  color: #59718a;
  font-size: 13px;
  line-height: 19px;
}

.pm-onboarding-loading__status strong {
  color: #0d3150;
  font-weight: 900;
}

.pm-onboarding-loading__footer {
  display: flex;
  justify-content: center;
  margin-top: 24px;
}

.pm-onboarding-loading__footer .pm-onboarding-search__link {
  color: #00799d;
  font-size: 14px;
  text-decoration: underline;
  text-underline-offset: 2px;
}

.pm-onboarding-steps {
  position: relative;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0;
  width: min(392px, 100%);
  margin: 52px auto 0;
}

.pm-onboarding-steps::before {
  position: absolute;
  top: 25px;
  left: 16.666%;
  right: 16.666%;
  height: 2px;
  background: #cfe4f5;
  content: "";
}

.pm-onboarding-step {
  position: relative;
  z-index: 1;
  display: grid;
  justify-items: center;
  align-content: start;
  gap: 7px;
  min-width: 0;
  color: #61728b;
  text-align: center;
}

.pm-onboarding-step__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  border: 2px solid #cfe4f5;
  border-radius: 999px;
  background: #f7fbfa;
  color: #8090a7;
}

.pm-onboarding-step__icon svg {
  width: 16px;
  height: 16px;
}

.pm-onboarding-step.is-active .pm-onboarding-step__icon {
  width: 50px;
  height: 50px;
  margin-top: -5px;
  border: 5px solid #d8f0f6;
  background: #ffffff;
  color: #0789ad;
}

.pm-onboarding-step.is-complete .pm-onboarding-step__icon {
  border-color: #0789ad;
  background: #0789ad;
  color: #ffffff;
}

.pm-onboarding-step strong {
  display: block;
  color: #0d3150;
  font-size: 12px;
  font-weight: 900;
  line-height: 15px;
}

.pm-onboarding-step small {
  display: block;
  max-width: 122px;
  color: #607086;
  font-size: 11px;
  font-weight: 500;
  line-height: 13px;
}

.pm-onboarding-confirm {
  display: block;
  width: min(672px, calc(100vw - 48px));
  max-width: 672px;
  margin: 0 auto;
  padding: 0 0 64px;
}

.pm-onboarding-confirm__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
}

.pm-onboarding-confirm h2 {
  color: #0d3150;
  font-size: 26px;
  font-family: "Segoe UI", system-ui, -apple-system, BlinkMacSystemFont, sans-serif !important;
  font-weight: 900 !important;
  line-height: 32px;
}

.pm-onboarding-confirm__confidence {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 28px;
  border-radius: 999px;
  background: #eef9fd;
  color: #0789ad;
  font-size: 12px;
  font-weight: 900;
  line-height: 16px;
  padding: 0 14px;
  white-space: nowrap;
}

.pm-onboarding-confirm__note {
  margin: 10px 0 0 !important;
  color: #607086;
  font-size: 14px;
  line-height: 20px;
}

.pm-onboarding-confirm__preview {
  overflow: visible;
  margin-top: 24px;
  border: 0;
  border-radius: 0;
  background: transparent;
}

.pm-onboarding-confirm__banner {
  overflow: hidden;
  min-height: 144px;
  border-radius: 10px;
  background: #e9f7f5;
}

.pm-onboarding-confirm__banner img {
  display: block;
  width: 100%;
  height: 144px;
  object-fit: cover;
}

.pm-onboarding-confirm__identity {
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 28px 0 0;
}

.pm-onboarding-confirm__logo {
  width: 56px;
  height: 56px;
  flex: 0 0 56px;
  border: 0;
  border-radius: 14px;
  background: #0c8f89;
  color: #ffffff;
  font-size: 20px;
  font-weight: 900;
  box-shadow: none;
}

.pm-onboarding-confirm__logo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.pm-onboarding-confirm__logo.is-image {
  overflow: visible;
  border-radius: 0;
  background: transparent;
}

.pm-onboarding-confirm__logo.is-image img {
  object-fit: contain;
}

.pm-onboarding-confirm__summary {
  min-width: 0;
}

.pm-onboarding-confirm h3 {
  margin: 0;
  color: #0d3150;
  font-size: 18px;
  font-weight: 900;
  line-height: 22px;
}

.pm-onboarding-confirm p {
  margin-left: 0 !important;
  margin-right: 0 !important;
}

.pm-onboarding-confirm__summary p {
  margin: 4px 0 0 !important;
  color: #607086;
  font-size: 15px;
  line-height: 20px;
}

.pm-onboarding-confirm__entity-label {
  margin-top: 26px;
  color: #0d3150;
  font-size: 14px;
  font-weight: 900;
  line-height: 18px;
}

.pm-onboarding-confirm__type-pills {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 8px;
}

.pm-onboarding-confirm__type-pills button {
  min-height: 30px;
  border: 1px solid #cfe2ff;
  border-radius: 999px;
  background: #ffffff;
  color: #607086;
  font-size: 13px;
  font-weight: 900;
  line-height: 16px;
  padding: 0 13px;
}

.pm-onboarding-confirm__type-pills button.is-active {
  border-color: #1a9ab4;
  background: #2ba8d3;
  color: #ffffff;
}

.pm-onboarding-confirm__description {
  margin: 24px 0 0 !important;
  border-radius: 10px;
  background: #f0f9fc;
  color: #0d3150;
  font-size: 15px;
  font-weight: 500;
  line-height: 24px;
  padding: 18px 16px;
}

.pm-onboarding-confirm__facts {
  display: none !important;
}

.pm-onboarding-chat {
  display: grid;
  gap: 14px;
  margin-top: 24px;
  border: 1px solid #cfe2ff;
  border-radius: 10px;
  background: transparent;
  padding: 14px 12px;
}

.pm-onboarding-chat label {
  color: #0d3150;
  font-size: 15px;
  font-weight: 500;
  line-height: 20px;
}

.pm-onboarding-chat__log:empty {
  display: none;
}

.pm-onboarding-chat__composer {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 76px;
  gap: 10px;
}

.pm-onboarding-chat__composer input {
  min-height: 46px;
  border: 1px solid #cfe2ff;
  border-radius: 8px;
  background: #ffffff;
  color: #0d3150;
  font-size: 14px;
  font-weight: 500;
  padding: 0 12px;
}

.pm-onboarding-chat__composer button {
  min-height: 46px;
  border-radius: 999px;
  background: #2ba8d3;
  color: #ffffff;
  font-size: 14px;
  font-weight: 900;
  padding: 0 18px;
}

.pm-onboarding-chat__composer button:hover {
  background: #0789ad;
}

.pm-onboarding-steps--review {
  margin-top: 32px;
}

.pm-onboarding-confirm__actions {
  display: block;
  margin-top: 24px;
}

.pm-onboarding-confirm__actions .pm-onboarding-search__primary {
  width: 100%;
  min-height: 48px;
  border-radius: 999px;
  background: linear-gradient(90deg, #0789ad 0%, #45add6 100%);
  box-shadow: 0 18px 38px rgba(7, 137, 173, 0.22);
}

@media (max-width: 640px) {
  .pm-onboarding-loading {
    min-height: calc(100vh - 134px);
    padding: 0 0 56px;
  }

  .pm-onboarding-loading h2,
  .pm-onboarding-confirm h2 {
    font-size: 24px;
    line-height: 30px;
  }

  .pm-onboarding-confirm {
    width: min(100%, calc(100vw - 28px));
    padding: 0 0 48px;
  }

  .pm-onboarding-confirm__header {
    align-items: flex-start;
    flex-direction: column;
    gap: 8px;
  }

  .pm-onboarding-confirm__banner,
  .pm-onboarding-confirm__banner img {
    min-height: 128px;
    height: 128px;
  }

  .pm-onboarding-confirm__identity {
    align-items: flex-start;
  }

  .pm-onboarding-chat__composer {
    grid-template-columns: 1fr;
  }

  .pm-onboarding-steps {
    width: 100%;
  }

  .pm-onboarding-step strong {
    font-size: 10px;
    line-height: 13px;
  }

  .pm-onboarding-step small {
    max-width: 104px;
    font-size: 10px;
    line-height: 12px;
  }
}

/* Late onboarding overrides: these must win after the legacy search rules above. */
.pm-onboarding-search__form { padding: 0 0 56px; }
.pm-onboarding-search__form h1 { font-size: 36px !important; font-weight: 800 !important; line-height: 40px !important; }
.pm-onboarding-search .pm-onboarding-partners h2 { margin: 0 0 20px; font-size: 11px !important; font-weight: 700; line-height: 16px !important; letter-spacing: .14em; }
.pm-onboarding-search__form .pm-onboarding-search__eyebrow { color: #0789ad; font-size: 11px; font-weight: 700; }
.pm-onboarding-search__form .pm-onboarding-search__lead { max-width: 448px; margin-top: 12px; font-size: 14px; line-height: 20px; }
.pm-onboarding-search__form .pm-onboarding-search__fields { gap: 24px; margin-top: 24px; }
.pm-onboarding-search__form .pm-onboarding-search__field { gap: 6px; font-weight: 700; }
.pm-onboarding-search__form .pm-onboarding-search__field > span:first-child {
  color: #0d3150;
  font-size: 14px;
  font-weight: 900;
  line-height: 1.35;
}
.pm-onboarding-search__form .pm-onboarding-search__field input { min-height: 50px; font-size: 16px; font-weight: 400; }
.pm-onboarding-search__form .pm-onboarding-search__chooser { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; }
.pm-onboarding-search__form .pm-onboarding-search__choice,
.pm-onboarding-search__form .pm-onboarding-search__choice[data-pm-choice="auto"] { grid-column: auto; min-height: 62px; }
.pm-onboarding-search__form .pm-onboarding-search__choice span { font-weight: 700; }
.pm-onboarding-search__form .pm-onboarding-search__choice[data-pm-choice="auto"] {
  padding-inline: 8px;
}
.pm-onboarding-search__form .pm-onboarding-search__choice[data-pm-choice="auto"]:hover,
.pm-onboarding-search__form .pm-onboarding-search__choice[data-pm-choice="auto"].is-active {
  border-color: #057ea2;
  background: linear-gradient(135deg, #d9f2f9 0%, #eef9fc 52%, #cdebf4 100%);
  color: #0b3454;
}
.pm-onboarding-search__form .pm-onboarding-search__choice-auto-copy,
.pm-onboarding-search__form .pm-onboarding-search__choice-auto-copy > span {
  white-space: nowrap;
}

@media (max-width: 640px) {
  .pm-onboarding-search__form .pm-onboarding-search__chooser { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

#onboarding-local-business-combined-page [data-pm-contact-order] {
  order: var(--pm-contact-order);
}

#onboarding-local-business-combined-page [data-pm-contact-order="1"] { --pm-contact-order: 1; }
#onboarding-local-business-combined-page [data-pm-contact-order="2"] { --pm-contact-order: 2; }
#onboarding-local-business-combined-page [data-pm-contact-order="3"] { --pm-contact-order: 3; }
#onboarding-local-business-combined-page [data-pm-contact-order="4"] { --pm-contact-order: 4; }
#onboarding-local-business-combined-page [data-pm-contact-order="5"] { --pm-contact-order: 5; }
#onboarding-local-business-combined-page [data-pm-contact-order="6"] { --pm-contact-order: 6; }
#onboarding-local-business-combined-page [data-pm-contact-order="7"] { --pm-contact-order: 7; }
#onboarding-local-business-combined-page [data-pm-contact-order="8"] { --pm-contact-order: 8; }
#onboarding-local-business-combined-page [data-pm-contact-order="9"] { --pm-contact-order: 9; }

.pm-local-business-discount-input {
  position: relative;
  display: block;
}

.pm-local-business-discount-input > input {
  -moz-appearance: textfield;
  padding-right: 72px !important;
}

.pm-local-business-discount-input > input::-webkit-inner-spin-button,
.pm-local-business-discount-input > input::-webkit-outer-spin-button {
  margin: 0;
  -webkit-appearance: none;
}

.pm-local-business-discount-input > span {
  position: absolute;
  top: 50%;
  right: 16px;
  color: #0d3150;
  font-size: 13px;
  font-weight: 800;
  line-height: 1;
  pointer-events: none;
  transform: translateY(-50%);
}

.pm-local-business-preview-gallery h4 { margin-bottom: 10px !important; }
.pm-local-business-preview-gallery__stage {
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  width: 100%;
  min-height: 250px;
  max-height: 340px;
  border: 1px solid #d4e4f4;
  border-radius: 16px;
  background: #f8fbfd;
}
.pm-local-business-preview-gallery__stage img { display: block; width: 100%; height: 100%; max-height: 338px; object-fit: contain; }
.pm-local-business-preview-gallery__thumbs { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 7px; margin-top: 9px; }
.pm-local-business-preview-gallery__thumb { overflow: hidden; aspect-ratio: 1 / 1; min-width: 0; padding: 0; border: 1px solid #d4e4f4; border-radius: 8px; background: #fff; cursor: pointer; }
.pm-local-business-preview-gallery__thumb.is-active { border: 2px solid #0789ad; }
.pm-local-business-preview-gallery__thumb img { display: block; width: 100%; height: 100%; object-fit: cover; }

.pm-cause-onboarding__picture-item { position: relative; min-width: 0; }
.pm-cause-onboarding__picture-item .pm-cause-onboarding__picture-slot { width: 100%; height: 100%; }
.pm-cause-onboarding__picture-remove {
  position: absolute;
  z-index: 2;
  top: 5px;
  right: 5px;
  display: grid;
  place-items: center;
  width: 24px;
  height: 24px;
  padding: 0;
  border: 0;
  border-radius: 999px;
  background: rgba(12, 30, 41, .82);
  color: #fff;
  cursor: pointer;
  font-size: 18px;
  font-weight: 400;
  line-height: 1;
}
.pm-cause-onboarding__picture-remove[hidden] { display: none !important; }
.pm-cause-onboarding__picture-remove:hover { background: #082843; }
/* Parish onboarding parity with the current four-step reference. */
#onboarding-parish-page .pm-parish-concierge { display:grid; grid-template-columns:48px minmax(0,1fr); gap:16px; align-items:start; margin-bottom:24px; }
#onboarding-parish-page .pm-parish-concierge > span { display:grid; width:48px; height:48px; place-items:center; border:1px solid #cce7f5; border-radius:16px; background:#eff9fd; color:#0789ad; font-size:14px; font-weight:800; }
#onboarding-parish-page .pm-parish-concierge p { margin:0!important; color:#60708a!important; font-size:14px!important; line-height:20px!important; }
#onboarding-parish-page .pm-parish-concierge strong { display:block; margin-bottom:4px; color:#0789ad; font-size:12px; line-height:16px; }
#onboarding-parish-page .pm-cause-onboarding input[data-pm-ai-missing]:not([aria-invalid="true"]),
#onboarding-parish-page .pm-cause-onboarding select[data-pm-ai-missing]:not([aria-invalid="true"]),
#onboarding-parish-page .pm-cause-onboarding textarea[data-pm-ai-missing]:not([aria-invalid="true"]) { border-color:#f5b400; box-shadow:0 0 0 1px #f5b400; }
#onboarding-parish-page .pm-cause-onboarding input[data-pm-ai-missing]:not([aria-invalid="true"]):focus,
#onboarding-parish-page .pm-cause-onboarding select[data-pm-ai-missing]:not([aria-invalid="true"]):focus,
#onboarding-parish-page .pm-cause-onboarding textarea[data-pm-ai-missing]:not([aria-invalid="true"]):focus { border-color:#f5b400; box-shadow:0 0 0 3px rgba(245,180,0,.22); }
#onboarding-parish-page .pm-cause-onboarding__choice-grid { display:flex; flex-wrap:wrap; gap:8px; }
#onboarding-parish-page .pm-cause-onboarding__choice { min-height:38px; padding:8px 14px; border-radius:999px; font-weight:500; line-height:20px; }
#onboarding-parish-page .pm-cause-onboarding__choice.is-active { border-color:#0789ad; background:#eff9fd; color:#0d3150; }
#onboarding-parish-page .pm-parish-media-title { margin:0 0 12px!important; color:#0d3150!important; font-size:16px!important; font-weight:800!important; line-height:22px!important; }
#onboarding-parish-page .pm-cause-onboarding__media-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
#onboarding-parish-page .pm-cause-onboarding__media-card { display:flex; min-height:220px; flex-direction:column; gap:8px; padding:20px; border-radius:18px; }
#onboarding-parish-page .pm-cause-onboarding__media-card--gallery { grid-column:auto; }
#onboarding-parish-page .pm-parish-media-meta { display:flex; align-items:center; justify-content:space-between; gap:8px; }
#onboarding-parish-page .pm-parish-media-meta span { color:#60708a; font-size:10px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
#onboarding-parish-page .pm-parish-media-meta em { padding:3px 10px; border-radius:999px; background:#eff9fd; color:#0789ad; font-size:10px; font-style:normal; font-weight:800; }
#onboarding-parish-page .pm-cause-onboarding__media-card > strong { color:#0d3150; font-size:16px; line-height:22px; }
#onboarding-parish-page .pm-cause-onboarding__media-card > p { margin:0!important; color:#60708a!important; font-size:14px!important; line-height:23px!important; }
#onboarding-parish-page .pm-cause-onboarding__upload-btn { display:inline-flex; width:fit-content; min-height:38px; align-items:center; gap:8px; margin-top:auto; padding:8px 14px; border:1px solid #d5e5f4; border-radius:12px; background:#fff; color:#0789ad; font-size:14px; font-weight:800; }
#onboarding-parish-page .pm-cause-onboarding__upload-btn svg { width:16px; height:16px; }
#onboarding-parish-page .pm-cause-onboarding__picture-grid { display:flex; flex-wrap:wrap; gap:8px; margin-top:4px; }
#onboarding-parish-page .pm-cause-onboarding__picture-item { width:70px; height:70px; flex:0 0 70px; }
#onboarding-parish-page .pm-cause-onboarding__picture-item .pm-cause-onboarding__picture-tile { width:100%; height:100%; }
#onboarding-parish-page .pm-cause-onboarding__picture-tile { width:70px; height:70px; flex:0 0 70px; border:1px solid #d5e5f4; border-radius:12px; background-color:#f8fbfd; background-position:center; background-size:cover; color:#71839a; }
#onboarding-parish-page .pm-cause-onboarding__picture-tile svg { width:22px; height:22px; }
#onboarding-parish-page .pm-cause-onboarding__media-grid > .pm-cause-onboarding__field { grid-column:1/-1; }
#onboarding-parish-page .pm-parish-preview-card { border-radius:28px; }
#onboarding-parish-page .pm-parish-preview-summary { display:grid; min-height:160px; grid-template-columns:repeat(2,minmax(0,1fr)); }
#onboarding-parish-page .pm-parish-preview-copy { display:flex; min-width:0; flex-direction:column; padding:16px; background:#fff; }
#onboarding-parish-page .pm-parish-preview-identity { display:flex; min-width:0; align-items:center; gap:8px; }
#onboarding-parish-page .pm-parish-preview-logo-placeholder,
#onboarding-parish-page .pm-parish-preview-identity .pm-cause-onboarding__preview-logo { position:static; display:grid; width:26px; height:26px; flex:0 0 26px; place-items:center; border:1px solid #d5e5f4; border-radius:7px; background:#eff9fd; color:#0d5d86; font-size:8px; font-weight:800; box-shadow:none; object-fit:cover; }
#onboarding-parish-page .pm-parish-preview-logo-placeholder[hidden],
#onboarding-parish-page .pm-parish-preview-identity .pm-cause-onboarding__preview-logo[hidden] { display:none!important; }
#onboarding-parish-page .pm-parish-preview-identity strong { overflow:hidden; color:#0d3150; font-size:9px; font-weight:800; text-overflow:ellipsis; white-space:nowrap; }
#onboarding-parish-page .pm-parish-preview-copy > p { display:-webkit-box; margin:12px 0 0!important; overflow:hidden; color:#0d3150!important; font-size:14px!important; font-weight:800!important; line-height:18px!important; -webkit-box-orient:vertical; -webkit-line-clamp:2; }
#onboarding-parish-page .pm-parish-preview-copy > p.is-placeholder { color:#60708a!important; }
#onboarding-parish-page .pm-parish-preview-copy > p[hidden] { display:none!important; }
#onboarding-parish-page .pm-parish-preview-impact { margin-top:12px; }
#onboarding-parish-page .pm-parish-preview-impact strong { display:block; color:#0d3150; font-size:13px; line-height:14px; }
#onboarding-parish-page .pm-parish-preview-impact span { display:block; margin-top:3px; color:#71839a; font-size:7px; line-height:10px; letter-spacing:.08em; text-transform:uppercase; }
#onboarding-parish-page .pm-parish-preview-copy .pm-cause-onboarding__preview-ctas { gap:6px; margin-top:auto; }
#onboarding-parish-page .pm-parish-preview-copy .pm-cause-onboarding__preview-ctas span { min-height:27px; padding:6px 11px; font-size:8px; line-height:13px; }
#onboarding-parish-page .pm-parish-preview-copy .pm-cause-onboarding__preview-ctas span:first-child { background:#0d3150; }
#onboarding-parish-page .pm-parish-preview-copy .pm-cause-onboarding__preview-ctas span:last-child { border-color:#d5e5f4; background:#fff; color:#0d3150; backdrop-filter:none; }
#onboarding-parish-page .pm-parish-preview-summary .pm-cause-onboarding__preview-media { min-height:160px; }
#onboarding-parish-page .pm-parish-preview-summary .pm-cause-onboarding__preview-media img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
@media (max-width:639.98px) {
  #onboarding-parish-page .pm-cause-onboarding__media-grid { grid-template-columns:1fr; }
  #onboarding-parish-page .pm-parish-preview-summary { grid-template-columns:1fr; }
  #onboarding-parish-page .pm-parish-preview-summary .pm-cause-onboarding__preview-media { min-height:180px; grid-row:1; }
}
#onboarding-parish-page .pm-cause-onboarding__picture-tile[hidden] { display:none!important; }
#onboarding-parish-page .pm-cause-onboarding__schedule-row { padding:0; border:0; background:transparent; }
#onboarding-parish-page .pm-cause-onboarding__schedule-row .pm-cause-onboarding__fields--nested { display:grid; grid-template-columns:2fr 3fr; gap:8px; }
#onboarding-parish-page .pm-cause-onboarding__schedule-row .pm-cause-onboarding__field > span { display:none; }
#onboarding-parish-page .pm-cause-onboarding__schedule-row input { margin-top:0; }
@media (max-width:639.98px) {
  #onboarding-parish-page .pm-cause-onboarding__schedule-row .pm-cause-onboarding__fields--nested { grid-template-columns:1fr; }
}
#onboarding-parish-page .pm-parish-preview-copy > p { display:block; overflow:visible; overflow-wrap:anywhere; -webkit-line-clamp:unset; }
#onboarding-parish-page .pm-cause-onboarding__counter.is-over-limit { color:#e76f00; font-weight:800; }
#onboarding-parish-page .pm-cause-onboarding textarea[data-pm-over-limit],
#onboarding-parish-page .pm-cause-onboarding textarea[data-pm-over-limit][aria-invalid="true"] { border-color:#f5b400; box-shadow:0 0 0 2px #f5b400; }
#onboarding-parish-page .pm-cause-onboarding textarea[data-pm-over-limit]:focus,
#onboarding-parish-page .pm-cause-onboarding textarea[data-pm-over-limit][aria-invalid="true"]:focus { border-color:#f5b400; box-shadow:0 0 0 3px rgba(245,180,0,.22); }
#onboarding-parish-page .pm-parish-preview-identity-copy { min-width:0; }
#onboarding-parish-page .pm-parish-preview-identity-copy strong { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
#onboarding-parish-page .pm-parish-preview-identity-copy p { margin:2px 0 0!important; overflow:hidden; color:#60708a!important; font-size:8px!important; font-weight:500!important; line-height:11px!important; text-overflow:ellipsis; white-space:nowrap; }
#onboarding-parish-page .pm-parish-preview-copy { padding-bottom:22px; }
#onboarding-parish-page .pm-parish-preview-impact { margin-bottom:16px; }
#onboarding-parish-page .pm-parish-preview-copy .pm-cause-onboarding__preview-ctas { margin-top:0; }
#onboarding-parish-page .pm-cause-onboarding__schedule-row .pm-cause-onboarding__fields--nested { grid-template-columns:minmax(0,2fr) minmax(0,3fr)!important; column-gap:10px!important; }
#onboarding-parish-page .pm-cause-onboarding__schedule-row .pm-cause-onboarding__fields--nested .pm-cause-onboarding__field { grid-column:auto; }
#onboarding-parish-page [data-pm-preview-schedule-output] { display:grid; gap:8px; }
#onboarding-parish-page [data-pm-preview-schedule-output] p { display:flex; align-items:baseline; justify-content:space-between; gap:16px; margin:0!important; }
#onboarding-parish-page [data-pm-preview-schedule-output] p strong,
#onboarding-parish-page [data-pm-preview-schedule-output] p span { min-width:0; color:#60708a; font-size:12px; line-height:18px; }
#onboarding-parish-page [data-pm-preview-schedule-output] p strong { color:#0d3150; }
@media (max-width:639.98px) {
  #onboarding-parish-page .pm-cause-onboarding__schedule-row .pm-cause-onboarding__fields--nested { grid-template-columns:1fr!important; row-gap:8px!important; }
}
#onboarding-parish-page .pm-parish-preview-gallery { padding:20px; border-top:1px solid #d5e5f4; background:#fff; }
#onboarding-parish-page .pm-parish-preview-gallery[hidden] { display:none!important; }
#onboarding-parish-page .pm-parish-preview-gallery h4 { margin:0 0 10px!important; color:#60708a!important; font-size:10px!important; font-weight:800!important; line-height:14px!important; letter-spacing:.1em!important; text-transform:uppercase; }
#onboarding-parish-page .pm-parish-preview-gallery__stage { overflow:hidden; width:100%; aspect-ratio:16/9; border:1px solid #d5e5f4; border-radius:14px; background:#f8fbfd; }
#onboarding-parish-page .pm-parish-preview-gallery__stage img { display:block; width:100%; height:100%; object-fit:contain; }
#onboarding-parish-page .pm-parish-preview-gallery__thumbs { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:7px; margin-top:9px; }
#onboarding-parish-page .pm-parish-preview-gallery__thumb { overflow:hidden; aspect-ratio:1/1; min-width:0; padding:0; border:1px solid #d5e5f4; border-radius:8px; background:#fff; cursor:pointer; }
#onboarding-parish-page .pm-parish-preview-gallery__thumb.is-active { border:2px solid #0789ad; }
#onboarding-parish-page .pm-parish-preview-gallery__thumb img { display:block; width:100%; height:100%; object-fit:cover; }
#onboarding-parish-page .pm-parish-preview-summary .pm-cause-onboarding__preview-media { display:flex; align-items:stretch; align-self:stretch; justify-content:center; flex-direction:column; background:#eff9fd; }
#onboarding-parish-page .pm-parish-preview-summary .pm-cause-onboarding__preview-media img { position:static; inset:auto; width:100%; height:auto; aspect-ratio:16/9; flex:none; object-fit:cover; }
@media (max-width:639.98px) {
  #onboarding-parish-page .pm-parish-preview-summary .pm-cause-onboarding__preview-media img { width:100%; height:auto; aspect-ratio:16/9; }
}
body#onboarding-parish-page { overflow-x:clip!important; overflow-y:visible!important; }
@media (min-width:1024px) {
  #onboarding-parish-page .pm-cause-onboarding__preview { overscroll-behavior:contain; }
}
#onboarding-parish-page .pm-parish-schedule-title { display:block; color:#0d3150; font-size:14px; font-weight:800; line-height:19px; }
#onboarding-parish-page .pm-parish-schedule-help { margin:4px 0 10px!important; color:#60708a!important; font-size:14px!important; line-height:20px!important; }
#onboarding-parish-page .pm-cause-onboarding__schedule-row { display:grid; grid-template-columns:minmax(0,1fr) 24px; align-items:center; gap:10px; }
#onboarding-parish-page .pm-cause-onboarding__schedule-row input { height:52px; padding:13px 16px; border-radius:16px; font-size:16px; line-height:24px; }
#onboarding-parish-page .pm-cause-onboarding__schedule-row .pm-cause-onboarding__remove { display:grid; width:24px; height:24px; place-items:center; align-self:center; padding:0; border:0; background:transparent; color:#71839a; font-size:22px; font-weight:400; line-height:1; text-decoration:none; }
#onboarding-parish-page .pm-cause-onboarding__schedule-row .pm-cause-onboarding__remove:hover { color:#0d3150; }
#onboarding-parish-page .pm-cause-onboarding__add--schedule { margin-top:-4px; padding:0; border:0; background:transparent; color:#0789ad; font-size:16px; font-weight:800; line-height:22px; }
@media (max-width:639.98px) {
  #onboarding-parish-page .pm-cause-onboarding__schedule-row { grid-template-columns:minmax(0,1fr) 24px; }
}
#onboarding-parish-page [data-pm-preview-schedule] { order:1; }
#onboarding-parish-page [data-pm-preview-about] { order:2; }
#onboarding-parish-page [data-pm-preview-details] { order:3; }
#onboarding-parish-page [data-pm-preview-schedule-output] p { display:block; width:100%; }
#onboarding-parish-page [data-pm-preview-schedule-output] p strong,
#onboarding-parish-page [data-pm-preview-schedule-output] p span { display:inline; font-weight:500; text-align:left; white-space:normal; }
#onboarding-parish-page [data-pm-preview-schedule-output] p span { margin-left:4px; }
#onboarding-parish-page .pm-cause-onboarding__media-card--asset [data-pm-media-preview] { display:block; width:100%; height:162px; margin-top:4px; border:1px solid #d5e5f4; border-radius:14px; background:#f8fbfd; object-fit:cover; }
#onboarding-parish-page .pm-cause-onboarding__media-card--asset:first-of-type [data-pm-media-preview] { object-fit:contain; }
#onboarding-parish-page .pm-cause-onboarding__media-card--asset [data-pm-media-preview][hidden] { display:none!important; }
#onboarding-parish-page .pm-cause-onboarding__media-card--asset .pm-cause-onboarding__upload-btn.is-uploaded { margin-top:12px; }

/* Cause onboarding: Vercel four-step profile and media layout. */
@media (min-width:640px) {
  #onboarding-cause-step-1-page [data-pm-step-panel="1"] .pm-cause-onboarding__fields > :nth-child(1) { order:1; }
  #onboarding-cause-step-1-page [data-pm-step-panel="1"] .pm-cause-onboarding__fields > :nth-child(2) { order:2; }
  #onboarding-cause-step-1-page [data-pm-step-panel="1"] .pm-cause-onboarding__fields > :nth-child(3) { order:3; }
  #onboarding-cause-step-1-page [data-pm-step-panel="1"] .pm-cause-onboarding__fields > :nth-child(4) { order:4; }
  #onboarding-cause-step-1-page [data-pm-step-panel="1"] .pm-cause-onboarding__fields > :nth-child(5) { order:5; }
  #onboarding-cause-step-1-page [data-pm-step-panel="1"] .pm-cause-onboarding__fields > :nth-child(6) { order:6; }
  #onboarding-cause-step-1-page [data-pm-step-panel="1"] .pm-cause-onboarding__fields > :nth-child(11) { order:7; }
  #onboarding-cause-step-1-page [data-pm-step-panel="1"] .pm-cause-onboarding__fields > :nth-child(12) { order:8; }
  #onboarding-cause-step-1-page [data-pm-step-panel="1"] .pm-cause-onboarding__fields > :nth-child(13) { order:9; }
  #onboarding-cause-step-1-page [data-pm-step-panel="1"] .pm-cause-onboarding__fields > :nth-child(14) { order:10; }
  #onboarding-cause-step-1-page [data-pm-step-panel="1"] .pm-cause-onboarding__fields > :nth-child(7) { order:11; }
  #onboarding-cause-step-1-page [data-pm-step-panel="1"] .pm-cause-onboarding__fields > :nth-child(8) { order:12; }
  #onboarding-cause-step-1-page [data-pm-step-panel="1"] .pm-cause-onboarding__fields > :nth-child(9) { order:13; }
  #onboarding-cause-step-1-page [data-pm-step-panel="1"] .pm-cause-onboarding__fields > :nth-child(10) { order:14; }
  #onboarding-cause-step-1-page .pm-cause-onboarding__media-card--pictures,
  #onboarding-cause-step-1-page .pm-cause-onboarding__media-list > .pm-cause-onboarding__field { grid-column:auto; }
  #onboarding-cause-step-1-page .pm-cause-onboarding__media-list > .pm-cause-onboarding__field { grid-column:1 / -1; }
}
#onboarding-cause-step-1-page .pm-cause-onboarding__media-card--pictures .pm-cause-onboarding__picture-grid { display:flex; flex-wrap:wrap; gap:8px; }
#onboarding-cause-step-1-page .pm-cause-onboarding__media-card--pictures .pm-cause-onboarding__picture-slot { display:none; width:72px; height:72px; flex:0 0 72px; border-radius:14px; }
#onboarding-cause-step-1-page .pm-cause-onboarding__media-card--pictures .pm-cause-onboarding__picture-slot:first-child,
#onboarding-cause-step-1-page .pm-cause-onboarding__media-card--pictures .pm-cause-onboarding__picture-slot.is-uploaded,
#onboarding-cause-step-1-page .pm-cause-onboarding__media-card--pictures .pm-cause-onboarding__picture-slot.is-uploaded + input + .pm-cause-onboarding__picture-slot { display:inline-flex; }
#onboarding-cause-step-1-page .pm-cause-onboarding__media-card--pictures .pm-cause-onboarding__picture-count { display:block; margin-top:8px; }
#onboarding-cause-step-1-page .pm-cause-onboarding input[data-pm-ai-missing]:not([aria-invalid="true"]),
#onboarding-cause-step-1-page .pm-cause-onboarding select[data-pm-ai-missing]:not([aria-invalid="true"]),
#onboarding-cause-step-1-page .pm-cause-onboarding textarea[data-pm-ai-missing]:not([aria-invalid="true"]) { border-color:#f5b400; box-shadow:0 0 0 1px #f5b400; }
#onboarding-cause-step-1-page .pm-cause-onboarding input[data-pm-ai-missing]:not([aria-invalid="true"]):focus,
#onboarding-cause-step-1-page .pm-cause-onboarding select[data-pm-ai-missing]:not([aria-invalid="true"]):focus,
#onboarding-cause-step-1-page .pm-cause-onboarding textarea[data-pm-ai-missing]:not([aria-invalid="true"]):focus { border-color:#f5b400; box-shadow:0 0 0 3px rgba(245,180,0,.22); }
#onboarding-cause-step-1-page [data-pm-preview-short-description-output] { font-weight:700!important; }
#onboarding-cause-step-1-page .pm-cause-onboarding__preview-logo { top:46px; right:auto; left:16px; }

/* Parish onboarding preview aligned with the current frontend reference. */
#onboarding-parish-page .pm-parish-preview-summary {
  min-height:180px;
  grid-template-columns:minmax(0,.85fr) minmax(0,1fr);
}
#onboarding-parish-page .pm-parish-preview-summary .pm-cause-onboarding__preview-media {
  grid-column:1;
  grid-row:1;
  min-height:180px;
}
#onboarding-parish-page .pm-parish-preview-summary .pm-cause-onboarding__preview-media img {
  width:100%;
  height:100%;
  aspect-ratio:auto;
  flex:1 1 auto;
  object-fit:cover;
}
#onboarding-parish-page .pm-parish-preview-copy {
  grid-column:2;
  grid-row:1;
  gap:10px;
  padding:16px;
}
#onboarding-parish-page .pm-parish-preview-copy h3 {
  margin:0!important;
  color:#0d3150!important;
  font-size:13px!important;
  font-weight:800!important;
  line-height:17px!important;
  letter-spacing:-.01em;
}
#onboarding-parish-page .pm-parish-preview-copy > p {
  margin:0!important;
  color:#60708a!important;
  font-size:10px!important;
  font-weight:400!important;
  line-height:16px!important;
}
#onboarding-parish-page .pm-parish-preview-copy > p.is-placeholder {
  font-style:italic;
}
#onboarding-parish-page .pm-parish-preview-copy .pm-cause-onboarding__preview-ctas {
  margin-top:0;
}
#onboarding-parish-page .pm-parish-preview-details {
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:8px;
  padding:12px;
  border-top:1px solid #d5e5f4;
  background:#fff;
}
#onboarding-parish-page .pm-parish-preview-details .pm-cause-onboarding__preview-section {
  display:block!important;
  order:initial;
  min-width:0;
  padding:10px;
  border:1px solid #d5e5f4;
  border-radius:12px;
  background:#fff;
}
#onboarding-parish-page .pm-parish-preview-details .pm-cause-onboarding__preview-section:nth-child(1) { order:1; }
#onboarding-parish-page .pm-parish-preview-details .pm-cause-onboarding__preview-section:nth-child(2) { order:2; }
#onboarding-parish-page .pm-parish-preview-details .pm-cause-onboarding__preview-section:nth-child(3) { order:3; }
#onboarding-parish-page .pm-parish-preview-details .pm-cause-onboarding__preview-section h4 {
  margin:0 0 4px!important;
  color:#0789ad!important;
  font-size:8px!important;
  font-weight:800!important;
  line-height:11px!important;
  letter-spacing:.08em!important;
  text-transform:uppercase;
}
#onboarding-parish-page .pm-parish-preview-details .pm-cause-onboarding__preview-section p,
#onboarding-parish-page .pm-parish-preview-details [data-pm-preview-schedule-output] p,
#onboarding-parish-page .pm-parish-preview-details [data-pm-preview-schedule-output] p strong,
#onboarding-parish-page .pm-parish-preview-details [data-pm-preview-schedule-output] p span {
  display:block;
  margin:0!important;
  color:#60708a!important;
  font-size:9px!important;
  font-weight:400!important;
  line-height:14px!important;
}
#onboarding-parish-page .pm-parish-preview-details .is-placeholder {
  color:#60708a!important;
}
#onboarding-parish-page .pm-parish-preview-connect__title {
  margin:5px 0 0!important;
  color:#073557!important;
  font-size:11px!important;
  font-weight:800!important;
  line-height:14px!important;
}
#onboarding-parish-page .pm-parish-preview-connect__labels {
  display:flex!important;
  flex-wrap:wrap!important;
  gap:4px!important;
  margin:8px 0 0!important;
  padding:0!important;
}
#onboarding-parish-page .pm-parish-preview-connect__labels a {
  display:block!important;
  min-height:18px!important;
  padding:2px 7px!important;
  border:0!important;
  border-radius:999px!important;
  background:#e9f8ff!important;
  color:#057ea2!important;
  font-size:7px!important;
  font-weight:700!important;
  line-height:14px!important;
  letter-spacing:.04em!important;
  text-transform:uppercase!important;
  text-decoration:none!important;
}
#onboarding-parish-page .pm-parish-preview-connect__labels a:hover,
#onboarding-parish-page .pm-parish-preview-connect__labels a:focus-visible {
  background:#d8f2ff!important;
  color:#073557!important;
  outline:none!important;
}
@media (max-width:639.98px) {
  #onboarding-parish-page .pm-parish-preview-summary {
    grid-template-columns:1fr;
  }
  #onboarding-parish-page .pm-parish-preview-summary .pm-cause-onboarding__preview-media {
    grid-column:1;
    grid-row:1;
  }
  #onboarding-parish-page .pm-parish-preview-copy {
    grid-column:1;
    grid-row:2;
  }
  #onboarding-parish-page .pm-parish-preview-details {
    grid-template-columns:1fr;
  }
}
#onboarding-cause-step-1-page .pm-cause-preview-gallery { padding:16px; border-top:1px solid #d5e5f4; background:#fff; }
#onboarding-cause-step-1-page .pm-cause-preview-gallery[hidden] { display:none!important; }
#onboarding-cause-step-1-page .pm-cause-preview-gallery h4 { margin:0 0 10px!important; color:#60708a!important; font-size:10px!important; font-weight:800!important; line-height:14px!important; letter-spacing:.1em!important; text-transform:uppercase; }
#onboarding-cause-step-1-page .pm-cause-preview-gallery__stage { overflow:hidden; width:100%; aspect-ratio:16/9; border:1px solid #d5e5f4; border-radius:14px; background:#f8fbfd; }
#onboarding-cause-step-1-page .pm-cause-preview-gallery__stage img { display:block; width:100%; height:100%; object-fit:contain; }
#onboarding-cause-step-1-page .pm-cause-preview-gallery__thumbs { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:7px; margin-top:9px; }
#onboarding-cause-step-1-page .pm-cause-preview-gallery__thumb { overflow:hidden; aspect-ratio:1/1; min-width:0; padding:0; border:1px solid #d5e5f4; border-radius:8px; background:#fff; cursor:pointer; }
#onboarding-cause-step-1-page .pm-cause-preview-gallery__thumb.is-active { border:2px solid #0789ad; }
#onboarding-cause-step-1-page .pm-cause-preview-gallery__thumb img { display:block; width:100%; height:100%; object-fit:cover; }
#onboarding-cause-step-1-page [data-pm-step-panel="4"] .pm-cause-onboarding__launch-card { border-color:#0789ad; background:#effaff; }
#onboarding-cause-step-1-page [data-pm-step-panel="4"] .pm-cause-onboarding__launch-badge { display:inline-flex; min-height:23px; align-items:center; padding:4px 12px; border-radius:999px; background:#0789ad; color:#fff; font-size:10px; line-height:15px; letter-spacing:.06em; }
#onboarding-cause-step-1-page [data-pm-step-panel="4"] .pm-cause-onboarding__launch-card ul { gap:7px; margin-top:16px!important; }
#onboarding-cause-step-1-page [data-pm-step-panel="4"] .pm-cause-onboarding__launch-card li { position:relative; gap:0; padding-left:14px; font-weight:500; }
#onboarding-cause-step-1-page [data-pm-step-panel="4"] .pm-cause-onboarding__launch-card li::before { position:absolute; top:0; left:0; color:#0789ad; content:'·'; font-size:16px; font-weight:800; line-height:20px; }
#onboarding-cause-step-1-page [data-pm-step-panel="4"] .pm-cause-onboarding__launch-note { margin-top:10px!important; }

/* Final Parish store mobile contract — keep this after all legacy overrides. */
@media (max-width: 991px) {
  html body .page-store .store-page--parish .pm-store-products-page .pm-shop-listing {
    padding-right: 15px !important;
    padding-left: 15px !important;
  }
  html body .page-store .pm-store-profile-header.store-identity-shell,
  html body .page-store .pm-store-profile-header .pm-store-header.store-identity-nav {
    height: 140px !important;
    min-height: 140px !important;
  }
  html body .page-store .pm-store-profile-header .pm-store-header__brand {
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
    flex: 1 1 auto !important;
  }
  html body .page-store .pm-store-profile-header .pm-store-header__copy {
    display: flex !important;
    min-width: 0 !important;
  }
  html body .page-store .pm-store-profile-header .pm-store-header__copy strong {
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
  }
  html body .page-store .pm-store-profile-header .pm-store-header__copy small,
  html body .page-store .pm-store-profile-header .pm-store-header__account,
  html body .page-store .pm-store-profile-header .pm-store-header__language-wrap,
  html body .page-store .pm-store-profile-header .pm-store-header__bottom {
    display: none !important;
  }
  html body .page-store .pm-store-header-spacer {
    height: 140px !important;
    min-height: 140px !important;
  }
  html body .page-store .store-page--parish .pm-store-products-page .pm-shop-hero__search {
    position: relative !important;
    display: flex !important;
    width: 100% !important;
    max-width: 100% !important;
    align-items: center !important;
    flex-wrap: nowrap !important;
    overflow: hidden !important;
  }
  html body .page-store .store-page--parish .pm-store-products-page .pm-shop-hero__search input[type="search"] {
    width: auto !important;
    min-width: 0 !important;
    flex: 1 1 auto !important;
  }
  html body .page-store .store-page--parish .pm-store-products-page .pm-shop-hero__search button {
    position: static !important;
    inset: auto !important;
    margin: 0 !important;
    flex: 0 0 77.625px !important;
    transform: none !important;
  }
}

html body .page-store .ps-panel--sidebar.pm-store-mobile-menu[id^="store-menu-mobile-"] {
  width: min(340px, 86vw) !important;
  max-width: 340px !important;
  height: 100vh !important;
  min-height: 100vh !important;
  overflow: hidden !important;
  border-right: 0 !important;
  background: #fff !important;
}
html body .page-store .pm-store-mobile-menu .pm-store-mobile-menu__header {
  position: relative !important;
  display: flex !important;
  width: 100% !important;
  height: 94px !important;
  min-height: 94px !important;
  align-items: center !important;
  justify-content: space-between !important;
  padding: 16px 20px !important;
  overflow: hidden !important;
  border-bottom: 1px solid #dbeafe !important;
}
html body .page-store .pm-store-mobile-menu__identity {
  display: flex !important;
  width: calc(100% - 48px) !important;
  min-width: 0 !important;
  height: 62px !important;
  align-items: center !important;
  gap: 12px !important;
  overflow: hidden !important;
}
html body .page-store .pm-store-mobile-menu__identity-logo {
  position: relative !important;
  display: block !important;
  width: 40px !important;
  min-width: 40px !important;
  height: 40px !important;
  flex: 0 0 40px !important;
  overflow: hidden !important;
  border-radius: 50% !important;
}
html body .page-store .pm-store-mobile-menu__identity-logo img {
  position: absolute !important;
  inset: 0 !important;
  display: block !important;
  width: 40px !important;
  min-width: 40px !important;
  max-width: 40px !important;
  height: 40px !important;
  min-height: 40px !important;
  max-height: 40px !important;
  object-fit: contain !important;
}
html body .page-store .pm-store-mobile-menu__identity-copy {
  display: flex !important;
  min-width: 0 !important;
  flex: 1 1 auto !important;
  flex-direction: column !important;
}
html body .page-store .pm-store-mobile-menu__identity-copy strong {
  color: #0b3152 !important;
  font-family: var(--pm-font-sans) !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  line-height: 20px !important;
}
html body .page-store .pm-store-mobile-menu__identity-copy small {
  margin-top: 2px !important;
  color: #64748b !important;
  font-size: 12px !important;
  line-height: 1.25 !important;
}
html body .page-store .pm-store-mobile-menu__content {
  height: calc(100vh - 192px) !important;
  padding: 24px 20px !important;
  overflow-y: auto !important;
}
html body .page-store .pm-store-mobile-menu .menu--mobile > li > a {
  height: 48px !important;
  min-height: 48px !important;
  padding: 12px 4px !important;
  font-size: 16px !important;
}
html body .page-store .pm-store-mobile-menu__footer {
  position: absolute !important;
  right: 0 !important;
  bottom: 0 !important;
  left: 0 !important;
  display: flex !important;
  height: 98px !important;
  min-height: 98px !important;
  align-items: center !important;
  gap: 8px !important;
  padding: 16px !important;
  border-top: 1px solid #dbeafe !important;
  background: #f8fcff !important;
}
html body .page-store .pm-store-mobile-menu__back {
  display: flex !important;
  min-width: 0 !important;
  height: 52px !important;
  flex: 1 1 auto !important;
  align-items: center !important;
  gap: 8px !important;
  padding: 8px 14px !important;
  overflow: hidden !important;
  border: 1px solid #dbeafe !important;
  border-radius: 28px !important;
  background: #fff !important;
  color: #64748b !important;
  font-size: 14px !important;
  font-weight: 700 !important;
}
html body .page-store .pm-store-mobile-menu__back svg {
  width: 18px !important;
  height: 18px !important;
  flex: 0 0 18px !important;
  fill: none !important;
  stroke: currentColor !important;
  stroke-width: 2 !important;
}
html body .page-store .pm-store-mobile-menu__back img {
  display: block !important;
  width: 118px !important;
  max-width: calc(100% - 78px) !important;
  height: auto !important;
}
html body .page-store .pm-store-mobile-menu__language-toggle {
  display: grid !important;
  width: 42px !important;
  height: 42px !important;
  place-items: center !important;
  border: 1px solid #dbeafe !important;
  border-radius: 50% !important;
  background: #fff !important;
  color: #0b3152 !important;
  font-size: 15px !important;
  font-weight: 800 !important;
}

@media (max-width: 991px) {
  html body .page-store .store-page--parish .pm-store-products-page .pm-shop-listing {
    padding-right: 15px !important;
    padding-left: 15px !important;
  }
}
/* Store product listing: keep the tablet layout in two columns below Bootstrap's 768px breakpoint. */
@media (min-width: 600px) and (max-width: 767px) {
  .pm-store-products-page .pm-shop-products-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .store-page--parish .pm-store-giving-page .pm-donations-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}
/* Homepage v2 reference body (header/footer intentionally excluded). */
.pm-v2-home,.pm-v2-home-hero{--v2-navy:#07395d;--v2-blue:#059fc7;--v2-sky:#40c2e5;--v2-muted:#637b8e;--v2-line:#cfe4ee;--v2-soft:#f4fbfd;font-family:"Segoe UI",system-ui,-apple-system,BlinkMacSystemFont,sans-serif;color:var(--v2-navy)}
.pm-v2-home *,.pm-v2-home-hero *{box-sizing:border-box}.pm-v2-wrap{width:min(1120px,calc(100% - 40px));margin-inline:auto}.pm-v2-eyebrow{display:block;color:#078fb5;font-size:11px;font-weight:800;letter-spacing:.16em;text-transform:uppercase}.pm-v2-button{display:inline-flex;align-items:center;gap:12px;padding:12px 20px;border-radius:999px;background:linear-gradient(100deg,#008db3,#35bde1);box-shadow:0 10px 25px rgba(0,150,190,.24);color:#fff!important;font-size:13px;font-weight:800;text-decoration:none!important}.pm-v2-button b{font-size:16px}.pm-v2-home-hero{padding:54px 0 66px;background:linear-gradient(115deg,#fff 0,#f6fcfe 58%,#eef9fd 100%)}.pm-v2-home-hero__grid{display:grid;grid-template-columns:1fr .9fr;gap:82px;align-items:center}.pm-v2-home-hero__copy h1{margin:15px 0 20px;color:var(--v2-navy);font-size:54px;line-height:.98;letter-spacing:-2.2px;font-weight:850}.pm-v2-home-hero__copy h1 span,.pm-v2-business-intro h2 span,.pm-v2-section-heading h2 span{color:#079fc8}.pm-v2-home-hero__copy p{max-width:620px;margin:0 0 26px;color:var(--v2-muted);font-size:15px;line-height:1.65}.pm-v2-video-card,.pm-v2-business-video{position:relative;display:block;overflow:hidden;border-radius:22px;box-shadow:0 20px 45px rgba(10,57,89,.16)}.pm-v2-video-card{aspect-ratio:16/9}.pm-v2-video-card img,.pm-v2-business-video img{width:100%;height:100%;object-fit:cover}.pm-v2-video-card__shade,.pm-v2-business-video:after{position:absolute;inset:0;content:"";background:rgba(239,247,250,.61)}.pm-v2-play{position:absolute;top:50%;left:50%;z-index:2;display:grid;width:62px;height:62px;place-items:center;transform:translate(-50%,-50%);border:7px solid rgba(255,255,255,.45);border-radius:16px;background:#fff;color:#0aa3cb;font-size:25px;box-shadow:0 5px 20px rgba(0,68,102,.28)}.pm-v2-video-card small,.pm-v2-business-video small{position:absolute;right:15px;bottom:12px;z-index:2;color:#075176;font-size:11px;font-weight:800}.pm-v2-participate{padding:46px 0 52px}.pm-v2-section-heading{text-align:center}.pm-v2-section-heading h2{margin:10px auto 8px;max-width:700px;color:var(--v2-navy);font-size:35px;line-height:1.08;letter-spacing:-1px;font-weight:850}.pm-v2-section-heading p{margin:0;color:#8495a3;font-size:14px}.pm-v2-section-heading nav{display:flex;justify-content:center;gap:10px;margin-top:24px}.pm-v2-section-heading nav button{padding:9px 17px;border:1px solid var(--v2-line);border-radius:999px;background:#fff;color:var(--v2-muted);font-size:12px;font-weight:700}.pm-v2-section-heading nav button.is-active{border-color:#10a5ca;background:#10a5ca;color:#fff;box-shadow:0 8px 18px rgba(10,160,200,.2)}.pm-v2-business-intro{display:grid;grid-template-columns:1.1fr 1fr;gap:34px;align-items:center;margin-top:35px}.pm-v2-business-video{height:292px}.pm-v2-business-video .pm-v2-play{width:53px;height:53px;border-width:5px;border-radius:14px;font-size:20px}.pm-v2-business-video small{right:auto;left:50%;bottom:63px;transform:translateX(-50%);padding:5px 10px;border-radius:999px;background:#124d68;color:#fff;white-space:nowrap}.pm-v2-business-intro h2{margin:10px 0 14px;font-size:36px;line-height:1.05;letter-spacing:-1px;font-weight:850}.pm-v2-business-intro p{margin:0 0 22px;color:var(--v2-muted);font-size:14px;line-height:1.65}.pm-v2-benefits{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:34px}.pm-v2-benefits article{min-height:150px;padding:20px;border:1px solid var(--v2-line);border-radius:15px;background:#fff}.pm-v2-benefits i{display:grid;width:32px;height:32px;place-items:center;border-radius:9px;background:#eaf9fd;color:#079fc8;font-style:normal}.pm-v2-benefits h3{margin:14px 0 7px;color:var(--v2-navy);font-size:13px;font-weight:800}.pm-v2-benefits p{margin:0;color:var(--v2-muted);font-size:11px;line-height:1.45}.pm-v2-businesses-head{display:flex;align-items:center;justify-content:space-between;margin:38px 0 15px;color:#078fb5;font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.pm-v2-businesses-head a{color:var(--v2-navy);font-size:12px;letter-spacing:0;text-transform:none}.pm-v2-businesses{display:grid;grid-auto-columns:235px;grid-auto-flow:column;gap:14px;overflow-x:auto;padding:4px 4px 14px;scrollbar-width:thin}.pm-v2-businesses>article{overflow:hidden;border:1px solid var(--v2-line);border-radius:18px;background:#fff;box-shadow:0 8px 25px rgba(7,57,93,.08)}.pm-v2-businesses__media{position:relative;display:block;height:174px;padding:8px}.pm-v2-businesses__media>img{width:100%;height:100%;border-radius:13px;object-fit:cover}.pm-v2-businesses__media b{position:absolute;right:14px;bottom:-12px;display:grid;width:56px;height:56px;place-items:center;overflow:hidden;border-radius:13px;background:#fff;color:#078fb5;box-shadow:0 7px 18px rgba(7,57,93,.18);font-size:14px}.pm-v2-businesses__media b img{width:100%;height:100%;object-fit:contain;padding:5px}.pm-v2-businesses>article>div{padding:18px 16px 16px}.pm-v2-businesses>article>div>span{color:#079fc8;font-size:9px;font-weight:800;text-transform:uppercase}.pm-v2-businesses h3{margin:8px 0;color:var(--v2-navy);font-size:14px;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pm-v2-businesses p{height:48px;margin:0 0 12px;color:var(--v2-muted);font-size:11px;line-height:1.45;overflow:hidden}.pm-v2-businesses>article>div>a{color:var(--v2-navy);font-size:11px;font-weight:800}.pm-v2-calculator{padding:49px 0 46px;background:linear-gradient(120deg,#1f7fb6,#073c64);color:#fff}.pm-v2-section-heading--light h2,.pm-v2-section-heading--light .pm-v2-eyebrow{color:#fff}.pm-v2-section-heading--light p{color:rgba(255,255,255,.72)}.pm-v2-calc-card{display:grid;grid-template-columns:1.35fr .8fr;gap:28px;max-width:800px;margin:24px auto 0;padding:22px;border-radius:22px;background:rgba(255,255,255,.08);box-shadow:inset 0 0 0 1px rgba(255,255,255,.12)}.pm-v2-sliders{padding:8px 4px}.pm-v2-sliders label{display:flex;justify-content:space-between;margin:6px 0;color:#fff;font-size:12px;font-weight:700}.pm-v2-sliders input{width:100%;accent-color:#49c8e6}.pm-v2-sliders small{display:flex;justify-content:space-between;margin:0 0 22px;color:rgba(255,255,255,.55);font-size:9px}.pm-v2-result{padding:20px 22px;border-radius:16px;background:#fff;color:var(--v2-navy);text-align:center}.pm-v2-result>span{display:block;color:#088fb6;font-size:10px;font-weight:800;text-transform:uppercase}.pm-v2-result>strong{display:block;color:#0a9fc8;font-size:37px;line-height:1.1}.pm-v2-result>em{display:block;margin-bottom:13px;color:#8195a4;font-size:11px;font-style:normal}.pm-v2-result p{display:flex;justify-content:space-between;margin:0;padding:7px 0;border-top:1px solid #e0edf2;font-size:10px}.pm-v2-result>small{display:block;margin-top:7px;padding:8px;border-radius:8px;background:#eaf8fb;font-size:10px}.pm-v2-calculator__note{text-align:center;color:rgba(255,255,255,.6);font-size:9px}.pm-v2-works{padding:60px 0 70px}.pm-v2-work-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:34px}.pm-v2-work-grid article{display:flex;min-height:400px;flex-direction:column;padding:25px;border:1px solid var(--v2-line);border-radius:20px;background:#fff;box-shadow:0 12px 30px rgba(7,57,93,.07)}.pm-v2-work-grid article.is-featured{border:2px solid #35bfe2}.pm-v2-work-grid article>span{color:#0ca0c6;font-size:11px;font-weight:800;letter-spacing:.15em}.pm-v2-work-grid article>i{display:grid;width:42px;height:42px;place-items:center;margin:17px 0;border-radius:12px;background:#eaf9fd;color:#079fc8;font-style:normal;font-size:18px}.pm-v2-work-grid h3{margin:0 0 12px;font-size:17px;font-weight:800}.pm-v2-work-grid p{min-height:130px;margin:0;color:var(--v2-muted);font-size:12px;line-height:1.5}.pm-v2-work-grid strong{color:#0a9fc8;font-size:25px;line-height:1.05}.pm-v2-work-grid article:nth-child(3) strong{font-size:15px}.pm-v2-work-grid small{min-height:34px;color:var(--v2-muted);font-size:9px}.pm-v2-work-grid a{margin-top:auto;color:#078fb5;font-size:11px;font-weight:800}.pm-v2-circle{padding:75px 0;background:linear-gradient(105deg,#f4fbfd,#fff)}.pm-v2-circle__grid{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}.pm-v2-circle h2{margin:10px 0 25px;font-size:35px;line-height:1.05;font-weight:850}.pm-v2-circle p{padding:17px;border-left:3px solid #32bbe0;border-radius:10px;background:#fff;box-shadow:0 10px 25px rgba(7,57,93,.08);font-size:14px;font-weight:700;line-height:1.55}.pm-v2-circle blockquote{margin:18px 0;padding-left:15px;border-left:3px solid #31bee4;color:#486c82;font-size:15px}.pm-v2-orbit{position:relative;width:340px;height:340px;margin:auto;border:2px solid #9ac8d9;border-radius:50%}.pm-v2-orbit>strong{position:absolute;top:50%;left:50%;display:grid;width:130px;height:130px;place-items:center;transform:translate(-50%,-50%);border-radius:50%;background:#06456f;box-shadow:0 12px 30px rgba(3,49,82,.3);color:#fff;text-align:center}.pm-v2-orbit>strong small{display:block}.pm-v2-orbit>span{position:absolute;display:grid;width:120px;height:100px;place-items:center;border:1px solid var(--v2-line);border-radius:17px;background:#fff;box-shadow:0 9px 20px rgba(7,57,93,.1);color:#247995;text-align:center;font-size:12px;font-weight:800}.pm-v2-orbit__top{top:-36px;left:110px}.pm-v2-orbit__left{top:205px;left:-35px}.pm-v2-orbit__right{top:205px;right:-35px}.pm-v2-partners{padding:35px 0;text-align:center}.pm-v2-partners>div{display:flex;align-items:center;justify-content:center;gap:16px;margin-top:20px}.pm-v2-partners>div>span{display:grid;width:135px;height:54px;place-items:center;border:1px solid var(--v2-line);border-radius:12px;background:#fff;color:#718897;font-size:12px;font-weight:700}.pm-v2-partners img{max-width:110px;max-height:36px}.pm-v2-home~.pm-featured-products,.pm-v2-home~.pm-give-section{display:none!important}
@media(max-width:800px){.pm-v2-home-hero__grid,.pm-v2-business-intro,.pm-v2-circle__grid{grid-template-columns:1fr;gap:34px}.pm-v2-home-hero__copy h1{font-size:46px}.pm-v2-benefits,.pm-v2-work-grid{grid-template-columns:repeat(2,1fr)}.pm-v2-work-grid article:last-child{grid-column:1/-1}.pm-v2-circle__grid{gap:65px}.pm-v2-calc-card{grid-template-columns:1fr}}
@media(max-width:520px){.pm-v2-wrap{width:min(100% - 28px,1120px)}.pm-v2-home-hero{padding:38px 0 46px}.pm-v2-home-hero__copy h1{font-size:39px;letter-spacing:-1.5px}.pm-v2-video-card{border-radius:17px}.pm-v2-section-heading h2,.pm-v2-business-intro h2,.pm-v2-circle h2{font-size:30px}.pm-v2-section-heading nav{justify-content:flex-start;overflow-x:auto;padding-bottom:5px}.pm-v2-section-heading nav button{flex:0 0 auto}.pm-v2-business-video{height:220px}.pm-v2-benefits,.pm-v2-work-grid{grid-template-columns:1fr}.pm-v2-work-grid article:last-child{grid-column:auto}.pm-v2-benefits article{min-height:0}.pm-v2-calc-card{padding:14px}.pm-v2-work-grid article{min-height:350px}.pm-v2-orbit{transform:scale(.82);transform-origin:center}.pm-v2-partners>div{flex-wrap:wrap}}

/* Late typography lock: the v2 reference uses heavy display faces in these exact positions. */
html body .pm-v2-home-hero,
html body .pm-v2-home,
html body .pm-v2-home-hero button,
html body .pm-v2-home-hero a,
html body .pm-v2-home button,
html body .pm-v2-home a,
html body .pm-reviews-section {
  font-family: "Segoe UI", system-ui, -apple-system, BlinkMacSystemFont, sans-serif !important;
}
html body .pm-v2-home-hero__copy h1 {
  max-width: 532px !important;
  font-weight: 800 !important;
  line-height: 1.06 !important;
  letter-spacing: -1.35px !important;
}
html body .pm-v2-home-hero__copy h1 span,
html body .pm-v2-section-heading h2 span,
html body .pm-v2-business-intro h2 span {
  font-family: "Segoe UI", system-ui, -apple-system, BlinkMacSystemFont, sans-serif !important;
  font-weight: 800 !important;
  background: linear-gradient(90deg, #028faf 0%, #16abd0 52%, #55c7e7 100%) !important;
  background-clip: text !important;
  -webkit-background-clip: text !important;
  color: transparent !important;
  -webkit-text-fill-color: transparent !important;
}
html body .pm-v2-section-heading h2,
html body .pm-v2-business-intro h2,
html body .pm-v2-circle h2,
html body .pm-reviews-section h2 {
  font-weight: 800 !important;
}
html body .pm-v2-participate > .pm-v2-section-heading h2 {
  max-width: 640px !important;
  font-size: 38px !important;
  line-height: 1.1 !important;
  letter-spacing: -.76px !important;
}
html body .pm-v2-business-intro h2 {
  max-width: 440px !important;
  line-height: 1.25 !important;
  letter-spacing: -.9px !important;
}
html body .pm-v2-calculator .pm-v2-section-heading h2 {
  font-size: 30px !important;
  line-height: 1.1 !important;
  letter-spacing: -.6px !important;
}
html body .pm-v2-works .pm-v2-section-heading h2 {
  max-width: 640px !important;
  font-size: 34px !important;
  line-height: 1.1 !important;
  letter-spacing: -.68px !important;
}
html body .pm-v2-benefits h3,
html body .pm-v2-businesses h3,
html body .pm-v2-work-grid h3,
html body .pm-v2-work-grid strong,
html body .pm-v2-result strong,
html body .pm-v2-orbit strong,
html body .pm-review-card strong {
  font-weight: 700 !important;
}
html body .pm-v2-work-grid h3 {
  font-size: 20px !important;
  line-height: 1.1 !important;
  letter-spacing: -.4px !important;
}
html body .pm-v2-eyebrow,
html body .pm-v2-button,
html body .pm-v2-businesses-head,
html body .pm-v2-businesses > article > div > span,
html body .pm-v2-work-grid article > span,
html body .pm-v2-work-grid a {
  font-weight: 800 !important;
}
@media (max-width: 520px) {
  html body .pm-v2-home-hero__copy h1 {
    font-size: 39px !important;
  }
  html body .pm-v2-participate > .pm-v2-section-heading h2,
  html body .pm-v2-business-intro h2,
  html body .pm-v2-works .pm-v2-section-heading h2,
  html body .pm-v2-circle h2 {
    font-size: 30px !important;
  }
}
.pm-v2-businesses-head__heading,.pm-v2-businesses-head__actions{display:flex;align-items:center}.pm-v2-businesses-head__heading{min-width:0;gap:20px}.pm-v2-businesses-head__heading>a{flex:0 0 auto;color:var(--v2-navy)!important;font-size:12px!important;font-weight:800!important;letter-spacing:0;text-transform:none}.pm-v2-businesses-head__actions{gap:8px;letter-spacing:0;text-transform:none}.pm-v2-businesses-head__actions button{display:grid;width:36px;height:36px;padding:0;place-items:center;border:1px solid var(--v2-line);border-radius:50%;background:#fff;color:var(--v2-navy);line-height:0;cursor:pointer}.pm-v2-businesses-head__actions button svg{display:block;width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.pm-v2-membership-options{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:8px 0 22px}.pm-v2-membership-options button{padding:8px;border:1px solid rgba(255,255,255,.28);border-radius:9px;background:rgba(255,255,255,.08);color:#fff;font-size:11px;font-weight:800;cursor:pointer}.pm-v2-membership-options button.is-active{border-color:#4ac9e8;background:#fff;color:#087ea3;box-shadow:0 0 0 2px rgba(74,201,232,.2)}.pm-v2-video-modal{position:fixed;inset:0;z-index:100000;display:grid;place-items:center;padding:24px;background:rgba(2,24,40,.88);backdrop-filter:blur(5px)}.pm-v2-video-modal>button{position:absolute;top:20px;right:24px;width:44px;height:44px;border:1px solid rgba(255,255,255,.4);border-radius:50%;background:#fff;color:#07395d;font-size:30px;line-height:1;cursor:pointer}.pm-v2-video-modal>div{width:min(1000px,92vw);overflow:hidden;border-radius:18px;background:#000;box-shadow:0 25px 80px rgba(0,0,0,.5);aspect-ratio:16/9}.pm-v2-video-modal iframe{display:block;width:100%;height:100%;border:0}
.pm-v2-businesses.pm-v2-businesses--categories{grid-auto-columns:240px;gap:16px;padding-bottom:8px;scrollbar-width:none}.pm-v2-businesses.pm-v2-businesses--categories::-webkit-scrollbar{display:none}.pm-v2-businesses--categories>.pm-v2-category-card{border-radius:16px;box-shadow:0 8px 25px rgba(7,57,93,.08);transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}.pm-v2-businesses--categories>.pm-v2-category-card:hover{transform:translateY(-2px);border-color:rgba(7,143,181,.4);box-shadow:0 12px 28px rgba(7,57,93,.13)}.pm-v2-category-card>a{display:block;color:var(--v2-navy)!important;text-decoration:none!important}.pm-v2-category-card>a>span{position:relative;display:block;height:160px;overflow:hidden}.pm-v2-category-card>a>span:after{position:absolute;inset:0;content:"";background:linear-gradient(135deg,rgba(245,158,11,.25),rgba(249,115,22,.1) 50%,rgba(124,45,18,.3));mix-blend-mode:multiply}.pm-v2-category-card img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .25s ease}.pm-v2-category-card:hover img{transform:scale(1.025)}.pm-v2-category-card strong{display:block;padding:16px;text-align:center;font-size:16px;font-weight:800;line-height:1.25}
html body #homepage-1 .pm-v2-businesses.pm-v2-businesses--categories{grid-auto-columns:240px!important;align-items:start}html body #homepage-1 .pm-v2-businesses--categories>.pm-v2-category-card{height:auto!important;min-height:0!important;padding:0!important}
@media(max-width:520px){.pm-v2-businesses-head__heading{gap:9px}.pm-v2-businesses-head__heading>span{max-width:180px}.pm-v2-businesses-head__actions button{width:34px;height:34px}}

/* Calculator typography and proportions matched to the v2 reference. */
html body .pm-v2-calculator {
  min-height: 555px !important;
  padding: 48px 0 !important;
  background: linear-gradient(110deg, #247ead 0%, #07507c 100%) !important;
}
html body .pm-v2-calculator .pm-v2-section-heading > * {
  width: min(620px, 100%) !important;
  margin-right: auto !important;
  margin-left: auto !important;
}
html body .pm-v2-calculator .pm-v2-section-heading .pm-v2-eyebrow {
  color: #45b1e1 !important;
  font-size: 12.5px !important;
  font-weight: 800 !important;
  line-height: 18.75px !important;
  letter-spacing: 1.75px !important;
}
html body .pm-v2-calculator .pm-v2-section-heading h2 {
  margin-top: 10px !important;
  margin-bottom: 8px !important;
  color: #fff !important;
  font-size: 30px !important;
  font-weight: 800 !important;
  line-height: 33px !important;
  letter-spacing: -.6px !important;
}
html body .pm-v2-calculator .pm-v2-section-heading p {
  color: #bcdcee !important;
  font-size: 14.5px !important;
  font-weight: 400 !important;
  line-height: 21.75px !important;
}
html body .pm-v2-calc-card {
  grid-template-columns: minmax(0, 1fr) 313px !important;
  gap: 26px !important;
  width: min(860px, calc(100% - 32px)) !important;
  max-width: none !important;
  min-height: 307px !important;
  margin-top: 28px !important;
  padding: 24px !important;
  background: rgba(255,255,255,.06) !important;
}
html body .pm-v2-sliders {
  padding: 18px 8px !important;
}
html body .pm-v2-sliders label {
  margin: 0 0 9px !important;
  color: #fff !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  line-height: 21px !important;
}
html body .pm-v2-sliders label output {
  color: #fff !important;
  font-size: 16px !important;
  font-weight: 900 !important;
  line-height: 24px !important;
}
html body .pm-v2-membership-options {
  gap: 10px !important;
  margin: 8px 0 29px !important;
}
html body .pm-v2-membership-options button {
  min-height: 43px !important;
  border-color: rgba(192,225,241,.42) !important;
  color: #fff !important;
  font-size: 13px !important;
  font-weight: 800 !important;
  line-height: 19.5px !important;
}
html body .pm-v2-membership-options button.is-active {
  border-color: #55c9e6 !important;
  background: #fff !important;
  color: #057ea6 !important;
}
html body .pm-v2-sliders input[type="range"] {
  width: 100% !important;
  height: 26px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  outline: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  appearance: none !important;
  -webkit-appearance: none !important;
  cursor: pointer;
}
html body .pm-v2-sliders input[type="range"]::-webkit-slider-runnable-track {
  width: 100%;
  height: 5px;
  border: 0;
  border-radius: 999px;
  background: linear-gradient(90deg,#45bde0 0 var(--pm-range-progress,0%),#5f91ae var(--pm-range-progress,0%) 100%);
}
html body .pm-v2-sliders input[type="range"]::-webkit-slider-thumb {
  width: 26px;
  height: 26px;
  margin-top: -10.5px;
  border: 4px solid #45b1e1;
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 2px 7px rgba(5,66,99,.25);
  appearance: none;
  -webkit-appearance: none;
}
html body .pm-v2-sliders input[type="range"]::-moz-range-track {
  width: 100%;
  height: 5px;
  border: 0;
  border-radius: 999px;
  background: #5f91ae;
}
html body .pm-v2-sliders input[type="range"]::-moz-range-progress {
  height: 5px;
  border-radius: 999px;
  background: #45bde0;
}
html body .pm-v2-sliders input[type="range"]::-moz-range-thumb {
  width: 18px;
  height: 18px;
  border: 4px solid #45b1e1;
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 2px 7px rgba(5,66,99,.25);
}
html body .pm-v2-sliders > small {
  margin: 2px 0 20px !important;
  color: #8fb8d2 !important;
  font-size: 11px !important;
  font-weight: 600 !important;
  line-height: 16.5px !important;
}
html body .pm-v2-sliders > small:last-child { margin-bottom: 0 !important; }
html body .pm-v2-result {
  min-height: 259px !important;
  padding: 25px 28px 24px !important;
  border-radius: 18px !important;
}
html body .pm-v2-result > span {
  color: #057ea2 !important;
  font-size: 11.5px !important;
  font-weight: 800 !important;
  line-height: 17.25px !important;
  letter-spacing: 1.035px !important;
}
html body .pm-v2-result > strong {
  margin-top: 1px !important;
  background: linear-gradient(90deg, #058db2, #22b5d8) !important;
  background-clip: text !important;
  -webkit-background-clip: text !important;
  color: transparent !important;
  -webkit-text-fill-color: transparent !important;
  font-size: 42px !important;
  font-weight: 800 !important;
  line-height: 42px !important;
  letter-spacing: -.84px !important;
}
html body .pm-v2-result > em {
  margin-bottom: 15px !important;
  color: #5b7086 !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  line-height: 19.5px !important;
}
html body .pm-v2-result > p {
  padding: 10px 0 !important;
  color: #5b7086 !important;
  font-size: 12.5px !important;
  font-weight: 600 !important;
  line-height: 18.75px !important;
}
html body .pm-v2-result > p b {
  color: #0b3454 !important;
  font-size: 12.5px !important;
  font-weight: 900 !important;
}
html body .pm-v2-result > small {
  margin-top: 8px !important;
  padding: 10px !important;
  color: #0b3454 !important;
  font-size: 12.5px !important;
  font-weight: 700 !important;
  line-height: 18.75px !important;
}
html body .pm-v2-result > small b {
  font-weight: 900 !important;
}
html body .pm-v2-calculator__note {
  width: min(860px, calc(100% - 32px)) !important;
  margin: 8px auto 0 !important;
  color: #8fb8d2 !important;
  font-size: 12px !important;
  font-weight: 400 !important;
  line-height: 18px !important;
}
html body .pm-v2-work-grid > article {
  border: 1px solid #dceaf3 !important;
  box-shadow: 0 10px 30px rgba(6,60,90,.06) !important;
  transition: border-color .35s ease, box-shadow .35s ease !important;
}
html body .pm-v2-work-grid > article.is-featured {
  border: 1px solid #45b1e1 !important;
  box-shadow: 0 0 0 2px rgba(69,177,225,.55), 0 22px 46px -14px rgba(5,126,162,.4) !important;
}
html body .pm-v2-wheel {
  position: relative;
  width: 535px;
  max-width: 100%;
  height: 526px;
  margin: 0 auto;
  font-family: "Segoe UI", system-ui, -apple-system, BlinkMacSystemFont, sans-serif !important;
}
html body .pm-v2-wheel__ring {
  position: absolute;
  top: 172px;
  left: 50%;
  width: 324px;
  height: 324px;
  transform: translateX(-50%);
  border: 1.5px solid #2e789c;
  border-radius: 50%;
  background: rgba(255,255,255,.18);
  box-shadow: inset 0 0 0 4px rgba(91,164,197,.08);
}
html body .pm-v2-wheel__spark {
  position: absolute;
  z-index: 2;
  top: 326px;
  left: calc(50% - 8px);
  width: 16px;
  height: 16px;
  border-radius: 50%;
  background: #45b1e1;
  box-shadow: 0 0 0 5px rgba(69,177,225,.22), 0 0 16px 4px rgba(69,177,225,.75);
  animation: pm-v2-spark-orbit 8s linear infinite;
  will-change: transform;
}
html body .pm-v2-wheel__hub {
  position: absolute;
  z-index: 3;
  top: 232px;
  left: 50%;
  display: flex;
  width: 164px;
  height: 164px;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  gap: 8px;
  transform: translateX(-50%);
  border-radius: 50%;
  background: linear-gradient(145deg,#176b9f,#073b62);
  box-shadow: 0 22px 38px rgba(8,47,85,.28);
  color: #fff;
}
html body .pm-v2-wheel svg {
  display: block;
  width: 24px;
  height: 24px;
  fill: none;
  stroke: currentColor;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}
html body .pm-v2-wheel__hub strong {
  color: #fff !important;
  font-size: 13px !important;
  font-weight: 800 !important;
}
html body .pm-v2-wheel__node {
  position: absolute;
  z-index: 4;
  display: flex;
  width: 132px;
  min-height: 132px;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  padding: 15px 10px 12px;
  border: 1px solid #d5e6ef;
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 12px 30px rgba(8,47,85,.1);
  color: #07395d;
  text-align: center;
}
html body .pm-v2-wheel__node--business {
  top: 56px;
  left: 50%;
  width: 154px;
  min-height: 165px;
  padding-top: 20px;
  transform: translateX(-50%);
  border: 3px solid #70c8e8;
  border-radius: 23px;
  box-shadow: 0 16px 32px rgba(8,47,85,.12);
}
html body .pm-v2-wheel__node--shopper { top: 331px; left: 60px; }
html body .pm-v2-wheel__node--parish { top: 331px; right: 60px; }
html body .pm-v2-wheel__node i {
  display: grid;
  width: 42px;
  height: 42px;
  flex: 0 0 42px;
  margin-bottom: 9px;
  place-items: center;
  border-radius: 13px;
  background: #eaf8fc;
  color: #0699c1;
  font-style: normal;
}
html body .pm-v2-wheel__node--business i {
  background: linear-gradient(145deg,#13a7d0,#0788b2);
  color: #fff;
}
html body .pm-v2-wheel__node i svg { width: 21px; height: 21px; }
html body .pm-v2-wheel__node b {
  color: #003b67 !important;
  font-size: 13px !important;
  font-weight: 800 !important;
  line-height: 16px !important;
}
html body .pm-v2-wheel__node > strong {
  margin-top: 3px;
  color: #003b67 !important;
  font-size: 18px !important;
  font-weight: 800 !important;
  line-height: 20px !important;
}
html body .pm-v2-wheel__node > small {
  margin-top: 1px;
  color: #587086 !important;
  font-size: 9.5px !important;
  font-weight: 800 !important;
  line-height: 13px !important;
  letter-spacing: .45px;
  text-transform: uppercase;
  white-space: nowrap;
}
html body .pm-v2-wheel__you {
  position: absolute;
  top: -15px;
  left: 50%;
  width: 112px;
  padding: 6px 9px;
  transform: translateX(-50%);
  border-radius: 999px;
  background: linear-gradient(90deg,#0694bc,#20afd4);
  box-shadow: 0 8px 18px rgba(5,126,162,.25);
  color: #fff;
  font-size: 10px;
  font-weight: 800;
  line-height: 12px;
  letter-spacing: .35px;
  text-transform: uppercase;
}
html body .pm-v2-partners {
  overflow: hidden;
}
html body .pm-v2-partners__viewport {
  width: 100%;
  margin-top: 20px;
  overflow: hidden;
  -webkit-mask-image: linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);
  mask-image: linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);
}
html body .pm-v2-partners__track {
  display: flex;
  width: max-content;
  animation: pm-v2-partners-marquee 24s linear infinite;
  will-change: transform;
}
html body .pm-v2-partners__set {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  gap: 16px;
  padding-right: 16px;
}
html body .pm-v2-partners__set > span {
  display: grid;
  width: 168px;
  height: 68px;
  flex: 0 0 168px;
  place-items: center;
  padding: 12px 18px;
  border: 1px solid #edf5f8;
  border-radius: 15px;
  background: #fff;
  color: #718897;
  font-size: 12px;
  font-weight: 700;
}
html body .pm-v2-partners__set img {
  display: block;
  max-width: 132px;
  max-height: 42px;
  object-fit: contain;
}
html body .pm-v2-partners__set > span > a {
  display: grid;
  width: 100%;
  height: 100%;
  place-items: center;
}
html body .pm-v2-partners__viewport:hover .pm-v2-partners__track {
  animation-play-state: paused;
}
@keyframes pm-v2-partners-marquee { to { transform: translateX(-50%); } }
@media (prefers-reduced-motion: reduce) {
  html body .pm-v2-partners__track { animation-play-state: paused; }
}
@keyframes pm-v2-spark-orbit {
  from { transform: rotate(-60deg) translateX(162px) rotate(60deg); }
  to { transform: rotate(300deg) translateX(162px) rotate(-300deg); }
}
@media (max-width: 560px) {
  html body .pm-v2-wheel { width: 360px; height: 450px; transform: scale(.72); transform-origin: top center; margin-bottom: -125px; }
  html body .pm-v2-wheel__node--shopper { left: 0; }
  html body .pm-v2-wheel__node--parish { right: 0; }
}
@media (max-width: 700px) {
  html body .pm-v2-calculator { min-height: 0 !important; padding: 42px 0 !important; }
  html body .pm-v2-calc-card { grid-template-columns: 1fr !important; width: calc(100% - 28px) !important; }
  html body .pm-v2-result { min-height: 0 !important; }
  html body .pm-v2-calculator__note { width: calc(100% - 32px) !important; }
}

/* Inline video players: thumbnail overlay is removed when playback starts. */
html body .pm-v2-video-card,
html body .pm-v2-business-video {
  position: relative;
  display: block;
  width: 100%;
  padding: 0 !important;
  overflow: hidden;
  border: 1px solid #cfe4ee !important;
  border-radius: 24px !important;
  background: #07395d !important;
  box-shadow: 0 16px 38px rgba(8,40,67,.16) !important;
  cursor: pointer;
  appearance: none;
}
html body .pm-v2-video-card { aspect-ratio: 16 / 9; }
html body .pm-v2-business-video { height: 292px; }
html body .pm-v2-video-card > img,
html body .pm-v2-business-video > img {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
html body .pm-v2-video-card__shade,
html body .pm-v2-business-video__shade {
  position: absolute;
  inset: 0;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  gap: 12px;
  background: linear-gradient(to bottom,rgba(0,0,0,.10),rgba(0,0,0,.45)) !important;
  transition: background .2s ease;
}
html body .pm-v2-video-card:hover .pm-v2-video-card__shade,
html body .pm-v2-business-video:hover .pm-v2-business-video__shade {
  background: linear-gradient(to bottom,rgba(0,0,0,.20),rgba(0,0,0,.55)) !important;
}
html body .pm-v2-video-card .pm-v2-play,
html body .pm-v2-business-video .pm-v2-play {
  position: static !important;
  display: grid !important;
  width: 64px !important;
  height: 64px !important;
  flex: 0 0 64px;
  place-items: center !important;
  transform: none !important;
  border: 0 !important;
  border-radius: 50% !important;
  background: rgba(255,255,255,.95) !important;
  box-shadow: 0 16px 40px -10px rgba(8,40,67,.6) !important;
  color: #079fc8 !important;
}
html body .pm-v2-video-card .pm-v2-play svg,
html body .pm-v2-business-video .pm-v2-play svg {
  display: block;
  width: 28px;
  height: 28px;
  fill: none;
  stroke: currentColor;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}
html body .pm-v2-video-card small,
html body .pm-v2-business-video small {
  position: static !important;
  z-index: auto !important;
  display: inline-flex;
  padding: 6px 14px;
  transform: none !important;
  border-radius: 999px;
  background: rgba(7,57,93,.75) !important;
  color: #fff !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  line-height: 18px !important;
  white-space: nowrap;
}
html body .pm-v2-video-card.is-playing,
html body .pm-v2-business-video.is-playing {
  cursor: default;
}
html body .pm-v2-business-video.is-playing::after {
  display: none !important;
  content: none !important;
}
html body .pm-v2-participate[data-pm-active-tab="businesses"] .pm-v2-businesses__media b,
html body .pm-v2-participate[data-pm-active-tab="parishes"] .pm-v2-businesses__media b,
html body .pm-v2-participate[data-pm-active-tab="causes"] .pm-v2-businesses__media b {
  width: 80px !important;
  height: 80px !important;
}
html body #homepage-1 .pm-reviews-section {
  max-width: none !important;
  background: #f4fbfd !important;
}
html body #homepage-1 .pm-reviews-section__inner {
  max-width: 1280px !important;
  margin-inline: auto !important;
}
html body #homepage-1 .pm-reviews-section__header {
  max-width: 700px !important;
  margin: 0 auto 30px !important;
  text-align: center !important;
}
html body #homepage-1 .pm-reviews-section__eyebrow {
  display: block !important;
  color: #078fb5 !important;
  font-size: 11px !important;
  font-weight: 800 !important;
  line-height: 1.4 !important;
  letter-spacing: .16em !important;
  text-transform: uppercase !important;
}
html body #homepage-1 .pm-reviews-section__header h2 {
  margin: 8px 0 !important;
  font-family: "Segoe UI", system-ui, -apple-system, BlinkMacSystemFont, sans-serif !important;
  font-size: 34px !important;
  font-weight: 800 !important;
  line-height: 1.1 !important;
  letter-spacing: -.02em !important;
}
html body #homepage-1 .pm-reviews-section__header h2 span {
  color: #079fc8 !important;
  font-family: "Segoe UI", system-ui, -apple-system, BlinkMacSystemFont, sans-serif !important;
  font-weight: 800 !important;
}
html body #homepage-1 .pm-reviews-section__header p {
  margin: 0 !important;
  font-size: 16px !important;
  line-height: 1.5 !important;
}
html body .pm-v2-video-card.is-playing iframe,
html body .pm-v2-business-video.is-playing iframe {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  border: 0;
}
@media (max-width: 520px) {
  html body .pm-v2-business-video { height: 220px; }
}

/* Exact Lucide benefit icons extracted from the v2 reference. */
html body .pm-v2-benefits i {
  display: grid !important;
  width: 40px !important;
  height: 40px !important;
  place-items: center !important;
  border-radius: 12px !important;
  background: #eef8fb !important;
  color: #057ea2 !important;
}
html body .pm-v2-benefits i svg {
  display: block !important;
  width: 20px !important;
  height: 20px !important;
  fill: none !important;
  stroke: currentColor !important;
  stroke-width: 2 !important;
  stroke-linecap: round !important;
  stroke-linejoin: round !important;
}

/* Requested final title weight for the homepage body only. */
html body #homepage-1 .pm-v2-home-hero h1,
html body #homepage-1 .pm-v2-home-hero h1 span,
html body #homepage-1 .pm-v2-home h1,
html body #homepage-1 .pm-v2-home h1 span,
html body #homepage-1 .pm-v2-home h2,
html body #homepage-1 .pm-v2-home h2 span,
html body #homepage-1 .pm-v2-home h3,
html body #homepage-1 .pm-v2-home .pm-v2-eyebrow,
html body #homepage-1 .pm-v2-home [data-pm-tab-showcase-title],
html body #homepage-1 .pm-v2-home .pm-v2-businesses-head__heading,
html body #homepage-1 .pm-v2-home .pm-v2-businesses > article > div > span,
html body #homepage-1 .pm-v2-home .pm-v2-result > span,
html body #homepage-1 .pm-v2-home .pm-v2-wheel__you,
html body #homepage-1 .pm-v2-home .pm-v2-wheel__node b,
html body #homepage-1 .pm-v2-home .pm-v2-wheel__hub strong,
html body #homepage-1 .pm-v2-partners > .pm-v2-eyebrow,
html body #homepage-1 .pm-reviews-section h2,
html body #homepage-1 .pm-review-card strong {
  font-weight: 700 !important;
}

/* Exact How ParishMart Works icons extracted from the v2 reference. */
html body .pm-v2-work-grid article > i {
  display: grid !important;
  width: 56px !important;
  height: 56px !important;
  place-items: center !important;
  border-radius: 16px !important;
  background: #eef8fb !important;
  color: #057ea2 !important;
}
html body .pm-v2-work-grid article > i svg {
  display: block !important;
  width: 28px !important;
  height: 28px !important;
  fill: none !important;
  stroke: currentColor !important;
  stroke-width: 2 !important;
  stroke-linecap: round !important;
  stroke-linejoin: round !important;
}

/* Pixel-matched typography and geometry for the three How ParishMart Works cards. */
html body .pm-v2-works {
  width: min(1132px, calc(100% - 40px)) !important;
}
html body .pm-v2-work-grid {
  grid-template-columns: repeat(3, minmax(0, 364px)) !important;
  justify-content: center !important;
  gap: 20px !important;
}
html body .pm-v2-work-grid > article {
  width: 364px !important;
  min-height: 441.4375px !important;
  padding: 30px !important;
}
html body .pm-v2-work-grid > article > span {
  color: #45b1e1 !important;
  font-size: 12px !important;
  font-weight: 800 !important;
  line-height: 18px !important;
  letter-spacing: 1.44px !important;
}
html body .pm-v2-work-grid article > i {
  margin: 20px 0 0 !important;
}
html body .pm-v2-work-grid h3 {
  margin: 20px 0 0 !important;
  color: #0b3454 !important;
  font-size: 20px !important;
  font-weight: 700 !important;
  line-height: 22px !important;
  letter-spacing: -.4px !important;
}
html body .pm-v2-work-grid > article > p {
  min-height: 0 !important;
  margin: 10px 0 0 !important;
  color: #5b7086 !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  line-height: 21.7px !important;
  letter-spacing: normal !important;
}
html body .pm-v2-work-metric {
  display: flex;
  min-height: 57px;
  align-items: flex-end;
  gap: 10px;
  margin-top: auto;
  padding-top: 18px;
  border-top: 1px dashed #dceaf3;
}
html body .pm-v2-work-metric > strong {
  flex: 0 0 auto;
  margin: 0 !important;
  background: linear-gradient(90deg,#058db2,#45b1e1) !important;
  background-clip: text !important;
  -webkit-background-clip: text !important;
  color: transparent !important;
  -webkit-text-fill-color: transparent !important;
  font-size: 38px !important;
  font-weight: 800 !important;
  line-height: 38px !important;
  letter-spacing: normal !important;
}
html body .pm-v2-work-metric > small {
  min-height: 0 !important;
  margin: 0 !important;
  color: #5b7086 !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  line-height: 18px !important;
  letter-spacing: normal !important;
}
html body .pm-v2-work-grid > article:nth-child(3) .pm-v2-work-metric {
  display: block;
}
html body .pm-v2-work-grid > article:nth-child(3) .pm-v2-work-metric > strong {
  display: block;
  font-size: 16px !important;
  line-height: 20px !important;
}
html body .pm-v2-work-grid > article:nth-child(3) .pm-v2-work-metric > small {
  display: block;
  margin-top: 2px !important;
}
html body .pm-v2-work-grid > article > a {
  margin-top: 16px !important;
  color: #057ea2 !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  line-height: 21px !important;
  letter-spacing: normal !important;
}
@media (max-width: 800px) {
  html body .pm-v2-work-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  html body .pm-v2-work-grid > article { width: 100% !important; }
}
@media (max-width: 520px) {
  html body .pm-v2-works { width: calc(100% - 28px) !important; }
  html body .pm-v2-work-grid { grid-template-columns: 1fr !important; }
}

/* Exact Inter face used by the v2 reference for the How ParishMart Works cards. */
@font-face {
  font-family: "PM Inter V2";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../fonts/pm-inter-v2-latin.woff2") format("woff2");
}
@font-face {
  font-family: "PM Inter V2";
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("../fonts/pm-inter-v2-latin.woff2") format("woff2");
}
@font-face {
  font-family: "PM Inter V2";
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("../fonts/pm-inter-v2-latin.woff2") format("woff2");
}
@font-face {
  font-family: "PM Inter V2";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("../fonts/pm-inter-v2-latin.woff2") format("woff2");
}
@font-face {
  font-family: "PM Inter V2";
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url("../fonts/pm-inter-v2-latin.woff2") format("woff2");
}
@font-face {
  font-family: "PM Inter V2";
  font-style: normal;
  font-weight: 900;
  font-display: swap;
  src: url("../fonts/pm-inter-v2-latin.woff2") format("woff2");
}
html body .pm-v2-work-grid,
html body .pm-v2-work-grid * {
  font-family: "PM Inter V2", Inter, Arial, sans-serif !important;
}
html body .pm-v2-work-grid > article > span,
html body .pm-v2-work-grid h3,
html body .pm-v2-work-grid > article > p,
html body .pm-v2-work-metric > strong,
html body .pm-v2-work-metric > small,
html body .pm-v2-work-grid > article > a {
  font-family: "PM Inter V2", Inter, Arial, sans-serif !important;
}
html body .pm-v2-home .pm-v2-works .pm-v2-work-grid > article > span {
  font-family: "PM Inter V2", Inter, Arial, sans-serif !important;
}

.tracking-wider {
  color: #057ea2;
  font-weight: 600;
}

/* Contact modal: late overrides to win over the theme's generic contact rules. */
#contact-us-page .pm-contact-modal__dialog #pm-contact-modal-title {
  font-family: "Segoe UI", system-ui, -apple-system, BlinkMacSystemFont, sans-serif !important;
  font-weight: 800 !important;
}

#contact-us-page .pm-contact-modal__actions .pm-contact-us-btn--primary {
  border-color: #073b5c !important;
  background: #073b5c !important;
  background-image: none !important;
  color: #fff !important;
}

#contact-us-page .pm-contact-modal__actions [data-contact-copy].is-copied {
  border-color: #008eb9 !important;
  background: #fff !important;
  color: #006d98 !important;
  font-weight: 800 !important;
}

#contact-us-page .pm-contact-modal__copy-icon {
  display: inline-grid;
  width: 16px;
  height: 16px;
  place-items: center;
  color: #008eb9;
}

#contact-us-page .pm-contact-modal__copy-icon svg {
  width: 16px;
  height: 16px;
}

#contact-us-page .pm-contact-modal__check-svg,
#contact-us-page [data-contact-copy].is-copied .pm-contact-modal__copy-svg {
  display: none;
}

#contact-us-page [data-contact-copy].is-copied .pm-contact-modal__check-svg {
  display: block;
}

/* Mobile DB menus: reserve one fixed column for every icon. */
#menu-mobile.pm-mobile-menu .menu--mobile > li > a {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
}

#menu-mobile.pm-mobile-menu .menu--mobile > li > a .menu-icon-image {
  position: static !important;
  top: auto !important;
  left: auto !important;
  width: 20px !important;
  min-width: 20px !important;
  height: 20px !important;
  flex: 0 0 20px !important;
  margin: 0 !important;
  object-fit: contain !important;
  transform: none !important;
}

#menu-mobile.pm-mobile-menu .pm-mobile-menu__nav > li > a > i,
#menu-mobile.pm-mobile-menu .pm-mobile-menu__nav > li > a::before {
  position: static !important;
  top: auto !important;
  left: auto !important;
  display: grid !important;
  width: 20px !important;
  min-width: 20px !important;
  height: 20px !important;
  flex: 0 0 20px !important;
  place-items: center !important;
  margin: 0 !important;
  border: 0 !important;
  line-height: 20px !important;
  transform: none !important;
}

#menu-mobile.pm-mobile-menu .menu--mobile > li > a > span {
  display: block !important;
  min-width: 0 !important;
  flex: 1 1 auto !important;
  margin: 0 !important;
}

/* Home is structural; the remaining entries keep the DB main-menu order. */
#menu-mobile.pm-mobile-menu .pm-mobile-menu__nav > li:nth-child(1) > a::before {
  content: "\e600" !important;
}

#menu-mobile.pm-mobile-menu .pm-mobile-menu__nav > li:nth-child(2) > a::before {
  content: "\e74c" !important;
}

#menu-mobile.pm-mobile-menu .pm-mobile-menu__nav > li:nth-child(3) > a::before {
  content: "\e744" !important;
}

#menu-mobile.pm-mobile-menu .pm-mobile-menu__nav > li:nth-child(4) > a::before {
  content: "\e7ff" !important;
}

#menu-mobile.pm-mobile-menu .pm-mobile-menu__nav > li:nth-child(5) > a::before {
  content: "\e957" !important;
}

#menu-mobile.pm-mobile-menu .pm-mobile-menu__nav > li:nth-child(6) > a::before {
  content: "\e696" !important;
}

#menu-mobile.pm-mobile-menu .pm-mobile-menu__nav > li.menu-item-has-image-icon > a::before {
  display: none !important;
  content: none !important;
}

/* Keep the complete drawer inside the visual viewport, including with Botble's admin bar. */
#menu-mobile.pm-mobile-menu.ps-panel--sidebar {
  height: 100dvh !important;
  max-height: 100dvh !important;
}

body.show-admin-bar #menu-mobile.pm-mobile-menu.ps-panel--sidebar {
  top: 40px !important;
  height: calc(100dvh - 40px) !important;
  max-height: calc(100dvh - 40px) !important;
}

@keyframes pm-v2-tab-enter {
  from {
    opacity: 0;
    transform: translateY(10px);
  }
  to {
    opacity: 1;
    transform: none;
  }
}

#homepage-1 .pm-v2-tab-enter {
  animation: pm-v2-tab-enter 0.45s both;
}

@media (prefers-reduced-motion: reduce) {
  #homepage-1 .pm-v2-tab-enter {
    animation: none;
  }
}

/* Home typography and color tokens aligned with frontend-laravel-v2. */
html body #homepage-1 .pm-v2-home,
html body #homepage-1 .pm-v2-home *,
html body .pm-v2-home-hero,
html body .pm-v2-home-hero * {
  font-family: "PM Inter V2", Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
}

html body #homepage-1 .pm-v2-home-hero__copy h1,
html body #homepage-1 .pm-v2-participate > .pm-v2-section-heading h2,
html body #homepage-1 .pm-v2-business-intro h2,
html body #homepage-1 .pm-v2-calculator .pm-v2-section-heading h2,
html body #homepage-1 .pm-v2-works .pm-v2-section-heading h2,
html body #homepage-1 .pm-v2-circle h2 {
  font-weight: 800 !important;
}

html body #homepage-1 .pm-v2-home-hero__copy h1,
html body #homepage-1 .pm-v2-participate > .pm-v2-section-heading h2,
html body #homepage-1 .pm-v2-works .pm-v2-section-heading h2,
html body #homepage-1 .pm-v2-circle h2 {
  color: #0b3454 !important;
}

html body #homepage-1 .pm-v2-business-intro h2 {
  color: #0b3454 !important;
}

html body #homepage-1 .pm-v2-section-heading nav button {
  padding: 11px 20px !important;
  color: #5b7086 !important;
  font-size: 14px !important;
  line-height: 21px !important;
}

html body #homepage-1 .pm-v2-section-heading nav button.is-active {
  color: #fff !important;
  background: linear-gradient(135deg, #057ea2, #18b6cf) !important;
}

html body #homepage-1 .pm-v2-button {
  font-size: 14px !important;
  font-weight: 700 !important;
  line-height: 21px !important;
}

html body #homepage-1 .pm-v2-circle h2 {
  line-height: 1.1 !important;
}

@media (max-width: 520px) {
  html body #homepage-1 .pm-v2-home-hero__copy h1 {
    font-size: 36px !important;
    line-height: 1.06 !important;
  }

  html body #homepage-1 .pm-v2-participate > .pm-v2-section-heading h2 {
    font-size: 27px !important;
    line-height: 1.1 !important;
  }

  html body #homepage-1 .pm-v2-calculator .pm-v2-section-heading h2 {
    font-size: 22px !important;
    line-height: 1.1 !important;
  }

  html body #homepage-1 .pm-v2-works .pm-v2-section-heading h2 {
    font-size: 25px !important;
    line-height: 1.1 !important;
  }

  html body #homepage-1 .pm-v2-circle h2 {
    font-size: 26px !important;
    line-height: 1.1 !important;
  }
}

@media (max-width: 800px) {
  html body #homepage-1 .pm-v2-home-hero__copy h1 {
    letter-spacing: -0.9px !important;
  }

  html body #homepage-1 .pm-v2-circle__grid > div:first-child > .pm-v2-eyebrow {
    position: relative;
    top: 6px;
    font-weight: 800 !important;
  }

  html body #homepage-1 .pm-v2-circle__grid > div:first-child > h2 {
    margin-top: 17.25px !important;
    margin-bottom: 16px !important;
  }

  html body #homepage-1 .pm-v2-circle__grid > div:first-child > p {
    min-height: 140px !important;
    margin: 0 !important;
    padding: 16px 18px !important;
    border: 1px solid var(--v2-line) !important;
    border-left: 4px solid #18b6cf !important;
    border-radius: 14px !important;
    color: #0b3454 !important;
    font-size: 16.5px !important;
    font-weight: 600 !important;
    line-height: 24.75px !important;
  }

  html body #homepage-1 .pm-v2-circle__grid > div:first-child > blockquote {
    height: 54px !important;
    margin: 18px 0 0 !important;
    padding-left: 16px !important;
    color: #0b3454 !important;
    font-size: 18px !important;
    line-height: 27px !important;
  }

  html body #homepage-1 .pm-v2-wheel {
    transform: translateX(-96.5px) scale(0.6392523364);
    transform-origin: top center;
  }
}


/* Local Business onboarding plans/billing parity. */
#onboarding-local-business-combined-page .pm-local-business-plans-more {
    display: flex;
    align-items: center;
    gap: 6px;
    margin: 16px auto 0;
    padding: 8px 16px;
    border: 1px solid #e2eaf2;
    border-radius: 999px;
    background: #fff;
    color: #1a8fd1;
    font: 700 14px/1.2 Inter, Arial, sans-serif;
}
#onboarding-local-business-combined-page .pm-local-business-plans-more svg { width: 16px; height: 16px; fill: none; stroke: currentColor; stroke-width: 2; }
#onboarding-local-business-combined-page .pm-local-business-plans-more[aria-expanded="true"] svg { transform: rotate(180deg); }
#onboarding-local-business-combined-page .pm-local-business-plan-grid.is-compact .pm-local-business-plan-option { min-height: 210px; padding-bottom: 22px; }
#onboarding-local-business-combined-page .pm-local-business-plan-grid.is-compact { grid-template-columns: repeat(3, minmax(0, 1fr)); }
#onboarding-local-business-combined-page .pm-local-business-plan-grid.is-compact .pm-local-business-plan-option__description,
#onboarding-local-business-combined-page .pm-local-business-plan-grid.is-compact .pm-local-business-plan-option__includes,
#onboarding-local-business-combined-page .pm-local-business-plan-grid.is-compact .pm-local-business-plan-option__features,
#onboarding-local-business-combined-page .pm-local-business-plan-grid.is-compact .pm-local-business-plan-option__founder,
#onboarding-local-business-combined-page .pm-local-business-plan-grid.is-compact .pm-local-business-plan-option__annual { display: none; }
@media (max-width: 639.98px) {
    #onboarding-local-business-combined-page .pm-local-business-plan-grid.is-compact { grid-template-columns: 1fr; }
}

#onboarding-local-business-billing-page { margin: 0; background: #f6f9fc; color: #0d2137; }
.pm-local-business-billing, .pm-local-business-billing * { box-sizing: border-box; font-family: Inter, "Segoe UI", Arial, sans-serif; }
.pm-local-business-billing { min-height: 100vh; }
.pm-local-business-billing__topbar { height: 72px; display: flex; align-items: center; justify-content: space-between; padding: 0 32px; border-bottom: 1px solid #e2eaf2; background: #fff; }
.pm-local-business-billing__topbar img { width: auto; height: 42px; }
.pm-local-business-billing__topbar a:last-child { color: #536579; font-size: 14px; font-weight: 700; }
.pm-local-business-billing__shell { width: min(1050px, calc(100% - 32px)); margin: 0 auto; padding: 52px 0 80px; }
.pm-local-business-billing__heading { text-align: center; margin-bottom: 32px; }
.pm-local-business-billing__heading > span { color: #1a8fd1; font-size: 12px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.pm-local-business-billing__heading h1 { margin: 8px 0; color: #0d2137; font-size: 38px; line-height: 1.12; font-weight: 800; }
.pm-local-business-billing__heading p { margin: 0 auto; max-width: 650px; color: #64748b; font-size: 15px; }
.pm-local-business-billing__grid { display: grid; grid-template-columns: minmax(0, 1fr) 330px; gap: 24px; align-items: start; }
.pm-local-business-billing__card, .pm-local-business-billing__summary { border: 1px solid #e2eaf2; border-radius: 22px; background: #fff; box-shadow: 0 16px 40px rgba(13,33,55,.06); }
.pm-local-business-billing__card { padding: 30px; }
.pm-local-business-billing__card h2, .pm-local-business-billing__summary h2 { margin: 0 0 22px; color: #0d2137; font-size: 20px; font-weight: 800; }
.pm-local-business-billing__card label { display: block; margin-top: 16px; color: #0d2137; font-size: 12px; font-weight: 800; }
.pm-local-business-billing__card input, .pm-local-business-billing__stripe { display: block; width: 100%; min-height: 46px; margin-top: 7px; padding: 12px 14px; border: 1px solid #dbe4ee; border-radius: 12px; background: #fff; color: #0d2137; font-size: 15px; }
.pm-local-business-billing__stripe { padding-top: 14px; }
.pm-local-business-billing__fields { display: grid; grid-template-columns: 1fr 1fr .7fr; gap: 12px; }
.pm-local-business-billing__error { margin: 16px 0 0; padding: 10px 12px; border-radius: 10px; background: #fef2f2; color: #dc2626; font-size: 13px; }
.pm-local-business-billing__actions { display: flex; align-items: center; justify-content: space-between; margin-top: 26px; }
.pm-local-business-billing__actions a { color: #536579; font-size: 14px; font-weight: 700; }
.pm-local-business-billing__actions button { padding: 12px 22px; border: 0; border-radius: 999px; background: linear-gradient(100deg,#1a8fd1,#0d2137); color: #fff; font-size: 14px; font-weight: 800; }
.pm-local-business-billing__actions button:disabled { opacity: .55; }
.pm-local-business-billing__notice { margin: 18px 0 0; text-align: center; color: #64748b; font-size: 12px; }
.pm-local-business-billing__summary { padding: 28px; }
.pm-local-business-billing__summary > span { color: #1a8fd1; font-size: 11px; font-weight: 800; letter-spacing: .12em; }
.pm-local-business-billing__summary h2 { margin: 8px 0; }
.pm-local-business-billing__summary > p { color: #64748b; font-size: 13px; line-height: 1.55; }
.pm-local-business-billing__summary > div { margin: 24px 0; padding: 18px; border-radius: 15px; background: #eef6fc; }
.pm-local-business-billing__summary strong { font-size: 34px; font-weight: 800; }
.pm-local-business-billing__summary small { color: #64748b; font-size: 13px; }
.pm-local-business-billing__summary ul { margin: 0; padding: 0; list-style: none; color: #536579; font-size: 13px; line-height: 2; }
@media (max-width: 760px) {
    .pm-local-business-billing__topbar { padding: 0 16px; }
    .pm-local-business-billing__shell { padding-top: 32px; }
    .pm-local-business-billing__heading h1 { font-size: 30px; }
    .pm-local-business-billing__grid { grid-template-columns: 1fr; }
    .pm-local-business-billing__summary { grid-row: 1; }
    .pm-local-business-billing__card { padding: 22px 18px; }
    .pm-local-business-billing__fields { grid-template-columns: 1fr 1fr; }
    .pm-local-business-billing__fields label:last-child { grid-column: 1 / -1; }
}


/* Pixel parity: Local Business combined step 5. */
#onboarding-local-business-combined-page .pm-cause-onboarding[data-current-step="5"] .pm-cause-onboarding__form-wrap { margin-top: 24px; }
#onboarding-local-business-combined-page .pm-cause-onboarding[data-current-step="5"] .pm-cause-onboarding__card {
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
}
#onboarding-local-business-combined-page .pm-local-business-founding-banner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    min-height: 71px;
    padding: 16px 20px;
    border-radius: 20px;
    color: #fff;
    background: linear-gradient(100deg, #0d2137 0%, #0f2c49 55%, #123f68 100%);
}
#onboarding-local-business-combined-page .pm-local-business-founding-banner__copy,
#onboarding-local-business-combined-page .pm-local-business-founding-banner__spots { display: flex; align-items: center; }
#onboarding-local-business-combined-page .pm-local-business-founding-banner__copy { gap: 12px; min-width: 0; }
#onboarding-local-business-combined-page .pm-local-business-founding-banner__icon {
    display: grid; place-items: center; flex: 0 0 36px; width: 36px; height: 36px;
    border-radius: 12px; background: rgba(255,255,255,.1); font-size: 16px; font-weight: 800;
}
#onboarding-local-business-combined-page .pm-local-business-founding-banner__copy div { display: flex; min-width: 0; flex-direction: column; }
#onboarding-local-business-combined-page .pm-local-business-founding-banner__copy strong {
    color: #fff; font-size: 14px; font-weight: 800; line-height: 17.5px;
}
#onboarding-local-business-combined-page .pm-local-business-founding-banner__copy em { color: #5cc0ef; font-style: normal; }
#onboarding-local-business-combined-page .pm-local-business-founding-banner__copy small {
    margin-top: 2px; color: rgba(255,255,255,.7); font-size: 12px; font-weight: 400; line-height: 16px;
}
#onboarding-local-business-combined-page .pm-local-business-founding-banner__spots { flex-direction: column; flex: 0 0 auto; text-align: right; }
#onboarding-local-business-combined-page .pm-local-business-founding-banner__spots strong { color: #fff; font-size: 24px; font-weight: 800; line-height: 24px; }
#onboarding-local-business-combined-page .pm-local-business-founding-banner__spots small { color: rgba(255,255,255,.6); font-size: 10px; font-weight: 700; line-height: 15px; letter-spacing: .05em; }
#onboarding-local-business-combined-page .pm-cause-onboarding[data-current-step="5"] .pm-local-business-plan-shell { margin-top: 24px; }
#onboarding-local-business-combined-page .pm-cause-onboarding[data-current-step="5"] .pm-local-business-billing-toggle { padding: 4px; border-color: #e2eaf2; background: #fff; }
#onboarding-local-business-combined-page .pm-cause-onboarding[data-current-step="5"] .pm-local-business-billing-toggle__option { min-width: 0; height: 32px; padding: 0 20px; font-size: 14px; font-weight: 700; }
#onboarding-local-business-combined-page .pm-cause-onboarding[data-current-step="5"] .pm-local-business-billing-toggle__option.is-selected { background: #0d2137; color: #fff; box-shadow: none; }
#onboarding-local-business-combined-page .pm-cause-onboarding[data-current-step="5"] .pm-local-business-plan-shell__saving { margin-top: 8px; color: #1a8fd1; font-size: 14px; font-weight: 700; line-height: 20px; }
#onboarding-local-business-combined-page .pm-local-business-plan-option__compact-title,
#onboarding-local-business-combined-page .pm-local-business-plan-option__compact-sub { display: none; }
#onboarding-local-business-combined-page .pm-local-business-plan-grid.is-compact { gap: 12px; margin-top: 24px; }
#onboarding-local-business-combined-page .pm-local-business-plan-grid.is-compact .pm-local-business-plan-option {
    min-height: 130.5px;
    height: 130.5px;
    padding: 16px;
    border: 1px solid #e2eaf2;
    border-radius: 16px;
    box-shadow: none;
}
#onboarding-local-business-combined-page .pm-local-business-plan-grid.is-compact .pm-local-business-plan-option.is-selected {
    border: 2px solid #1a8fd1;
    box-shadow: 0 12px 32px rgba(26,143,209,.14);
}
#onboarding-local-business-combined-page .pm-local-business-plan-grid.is-compact .pm-local-business-plan-option__radio { top: 16px; right: 16px; width: 20px; height: 20px; }
#onboarding-local-business-combined-page .pm-local-business-plan-grid.is-compact .pm-local-business-plan-option__eyebrow {
    margin: 0; padding-right: 24px; color: #1a8fd1; font-size: 11px; font-weight: 700; line-height: 16px; letter-spacing: .05em;
}
#onboarding-local-business-combined-page .pm-local-business-plan-grid.is-compact .pm-local-business-plan-option__title { display: none; }
#onboarding-local-business-combined-page .pm-local-business-plan-grid.is-compact .pm-local-business-plan-option__compact-title {
    display: block; margin-top: 2px; color: #0d2137; font-size: 14px; font-weight: 800; line-height: 20px;
}
#onboarding-local-business-combined-page .pm-local-business-plan-grid.is-compact .pm-local-business-plan-option__price {
    display: flex; margin-top: 4px; color: #0d2137; font-size: 24px; font-weight: 800; line-height: 32px;
}
#onboarding-local-business-combined-page .pm-local-business-plan-grid.is-compact .pm-local-business-plan-option__price small { font-size: 12px; font-weight: 600; line-height: 32px; }
#onboarding-local-business-combined-page .pm-local-business-plan-grid.is-compact .pm-local-business-plan-option__compact-sub {
    display: block; margin-top: 2px; overflow: hidden; color: #7b8794; font-size: 12px; font-weight: 600; line-height: 16px; text-overflow: ellipsis; white-space: nowrap;
}
#onboarding-local-business-combined-page .pm-local-business-plan-grid.is-compact .pm-local-business-plan-option__badge {
    top: -12px; padding: 4px 12px; border-radius: 999px; background: #1a8fd1; font-size: 10px; font-weight: 800; line-height: 15px; letter-spacing: .05em;
}
#onboarding-local-business-combined-page .pm-cause-onboarding[data-current-step="5"] .pm-local-business-plans-more { height: 38px; margin-top: 16px; padding: 8px 16px; }
#onboarding-local-business-combined-page .pm-local-business-giveback-note {
    display: flex; align-items: center; gap: 12px; min-height: 72px; margin-top: 24px; padding: 16px 20px; border-radius: 16px; background: #e9f4fb;
}
#onboarding-local-business-combined-page .pm-local-business-giveback-note > span {
    display: grid; place-items: center; flex: 0 0 32px; width: 32px; height: 32px; border-radius: 12px; background: #fff; color: #1a8fd1; font-size: 16px;
}
#onboarding-local-business-combined-page .pm-local-business-giveback-note p { margin: 0; color: #0d2137; font-size: 14px; font-weight: 400; line-height: 20px; }
#onboarding-local-business-combined-page .pm-local-business-giveback-note strong { color: #1a8fd1; font-weight: 700; }
#onboarding-local-business-combined-page .pm-cause-onboarding[data-current-step="5"] .pm-local-business-plan-shell__note { display: none; }
#onboarding-local-business-combined-page .pm-cause-onboarding[data-current-step="5"] .pm-cause-onboarding__terms {
    gap: 8px; margin-top: 24px; padding-top: 24px; border-top: 1px solid #e2eaf2; color: #0d2137; font-size: 14px; font-weight: 400; line-height: 20px;
}
#onboarding-local-business-combined-page .pm-cause-onboarding[data-current-step="5"] .pm-cause-onboarding__actions { margin-top: 20px; }
#onboarding-local-business-combined-page .pm-local-business-final-note { display: none; }
#onboarding-local-business-combined-page .pm-cause-onboarding[data-current-step="5"] .pm-local-business-final-note {
    display: block; margin: 20px 0 0; text-align: center; color: #7b8794; font-size: 12px; font-weight: 400; line-height: 16px;
}
@media (max-width: 639.98px) {
    #onboarding-local-business-combined-page .pm-local-business-founding-banner { align-items: flex-start; padding: 14px 16px; }
    #onboarding-local-business-combined-page .pm-local-business-founding-banner__copy small { display: none; }
    #onboarding-local-business-combined-page .pm-local-business-plan-grid.is-compact .pm-local-business-plan-option { height: 130.5px; }
}


#onboarding-local-business-combined-page .pm-cause-onboarding__grid {
    grid-template-columns: minmax(0, 616.72fr) minmax(0, 623.28fr);
    gap: 32px;
}
#onboarding-local-business-combined-page .pm-cause-onboarding[data-current-step="5"] .pm-cause-onboarding__lead { margin-top: 16px; }
#onboarding-local-business-combined-page .pm-cause-onboarding[data-current-step="5"] .pm-cause-onboarding__form-wrap { margin-top: 28px; }
#onboarding-local-business-combined-page .pm-local-business-plan-grid.is-compact .pm-local-business-plan-option__eyebrow { font-size: 10px; line-height: 15px; }
#onboarding-local-business-combined-page .pm-local-business-plan-grid.is-compact .pm-local-business-plan-option__compact-sub { margin-top: 4px; font-size: 11px; line-height: 16.5px; }
#onboarding-local-business-combined-page .pm-cause-onboarding[data-current-step="5"] .pm-cause-onboarding__terms { margin-top: 30px; }
#onboarding-local-business-combined-page .pm-cause-onboarding[data-current-step="5"] .pm-cause-onboarding__actions {
    height: 42px;
    padding: 0;
}
#onboarding-local-business-combined-page .pm-cause-onboarding[data-current-step="5"] .pm-cause-onboarding__actions .pm-cause-onboarding__btn { min-height: 42px; height: 42px; }
@media (max-width: 1023.98px) {
    #onboarding-local-business-combined-page .pm-cause-onboarding__grid { grid-template-columns: 1fr; gap: 0; }
}


#onboarding-local-business-combined-page .pm-cause-onboarding[data-current-step="5"] .pm-cause-onboarding__form-wrap { margin-top: 26px; }
#onboarding-local-business-combined-page .pm-cause-onboarding[data-current-step="5"] .pm-cause-onboarding__terms { margin-top: 36px; }
@media (max-width: 639.98px) {
    #onboarding-local-business-combined-page .pm-cause-onboarding__grid { width: calc(100% - 32px); }
    #onboarding-local-business-combined-page .pm-cause-onboarding__topbar {
        display: flex; align-items: center; justify-content: space-between; min-height: 114px; padding: 0;
    }
    #onboarding-local-business-combined-page .pm-cause-onboarding__brand,
    #onboarding-local-business-combined-page .pm-cause-onboarding__brand img { width: auto; height: 28px; }
    #onboarding-local-business-combined-page .pm-cause-onboarding__return {
        width: 118.36px; min-height: 50px; padding: 8px 14px; justify-content: center; text-align: center;
    }
    #onboarding-local-business-combined-page .pm-cause-onboarding__steps { margin-top: 52.5px; }
    #onboarding-local-business-combined-page .pm-local-business-founding-banner__copy small { display: block; }
    #onboarding-local-business-combined-page .pm-local-business-plan-grid.is-compact .pm-local-business-plan-option:not(.is-selected) { height: 127.5px; min-height: 127.5px; }
}


#onboarding-local-business-combined-page .pm-cause-onboarding[data-current-step="5"] .pm-cause-onboarding__terms { margin-top: 36px !important; }
@media (max-width: 639.98px) {
    #onboarding-local-business-combined-page .pm-cause-onboarding__grid {
        width: calc(100% + 8px) !important;
        margin-left: -4px !important;
    }
    #onboarding-local-business-combined-page .pm-cause-onboarding__topbar {
        flex-direction: row !important;
        min-height: 114px !important;
    }
    #onboarding-local-business-combined-page .pm-local-business-founding-banner { padding: 16px 20px; }
}


#onboarding-local-business-combined-page .pm-cause-onboarding[data-current-step="5"] .pm-cause-onboarding__terms { margin-top: 24px !important; }
@media (max-width: 639.98px) {
    #onboarding-local-business-combined-page .pm-cause-onboarding__topbar { min-height: 66px !important; }
    #onboarding-local-business-combined-page .pm-cause-onboarding__steps { margin-top: -7.5px; }
    #onboarding-local-business-combined-page .pm-local-business-founding-banner { min-height: 138.5px; }
}


@media (max-width: 639.98px) {
    #onboarding-local-business-combined-page .pm-cause-onboarding__steps,
    #onboarding-local-business-combined-page .pm-cause-onboarding__step,
    #onboarding-local-business-combined-page .pm-cause-onboarding__step-number { height: 28px; }
    #onboarding-local-business-combined-page .pm-cause-onboarding__step-number { width: 28px; }
    #onboarding-local-business-combined-page .pm-cause-onboarding[data-current-step="5"] .pm-cause-onboarding__terms {
        flex-direction: row !important;
        align-items: flex-start;
    }
    #onboarding-local-business-combined-page .pm-cause-onboarding[data-current-step="5"] .pm-cause-onboarding__terms > input {
        flex: 0 0 13px;
        width: 13px;
        height: 13px;
        margin-top: 2px;
    }
    #onboarding-local-business-combined-page .pm-cause-onboarding[data-current-step="5"] .pm-cause-onboarding__terms > span:not(.pm-cause-onboarding__field-error) {
        flex: 1 1 auto;
        width: auto;
    }
}


@media (max-width: 639.98px) {
    #onboarding-local-business-combined-page .pm-cause-onboarding[data-current-step="5"] .pm-cause-onboarding__terms { flex-wrap: nowrap !important; }
    #onboarding-local-business-combined-page .pm-cause-onboarding[data-current-step="5"] .pm-cause-onboarding__terms > span:not(.pm-cause-onboarding__field-error) { min-width: 0; }
}


/* Step 5 expanded state: match the reference by replacing the preview with full-width plans. */
#onboarding-local-business-combined-page .pm-cause-onboarding.is-plan-expanded .pm-cause-onboarding__grid {
    grid-template-columns: minmax(0, 1fr);
    gap: 0;
}
#onboarding-local-business-combined-page .pm-cause-onboarding.is-plan-expanded .pm-cause-onboarding__panel {
    width: 100%;
    max-width: none;
}
#onboarding-local-business-combined-page .pm-cause-onboarding.is-plan-expanded .pm-cause-onboarding__preview {
    display: none;
}
#onboarding-local-business-combined-page .pm-cause-onboarding.is-plan-expanded .pm-local-business-plan-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}
#onboarding-local-business-combined-page .pm-cause-onboarding.is-plan-expanded h1 {
    max-width: 760px;
}
@media (max-width: 1023.98px) {
    #onboarding-local-business-combined-page .pm-cause-onboarding.is-plan-expanded .pm-local-business-plan-grid {
        grid-template-columns: 1fr;
    }
}


/* Billing page parity: centered single-column reference layout. */
#onboarding-local-business-billing-page { background: linear-gradient(135deg, #fff 0%, #f3fbfe 52%, #fff 100%); }
.pm-local-business-billing { min-height: 100vh; background: transparent; }
.pm-local-business-billing__shell {
    width: 100%;
    max-width: 720px;
    margin: 0 auto;
    padding: 32px 24px 48px;
}
.pm-local-business-billing__topbar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    height: auto;
    margin: 0 0 32px;
    padding: 0;
    border: 0;
    background: transparent;
}
.pm-local-business-billing__topbar img { width: auto; height: 40px; }
.pm-local-business-billing__topbar a:last-child {
    display: inline-flex;
    align-items: center;
    min-height: 36px;
    padding: 8px 14px;
    border: 1px solid #e2eaf2;
    border-radius: 999px;
    background: #fff;
    color: #0d2137;
    font-size: 12px;
    font-weight: 700;
}
.pm-local-business-billing__heading { margin: 0; text-align: left; }
.pm-local-business-billing__heading > span { color: #1a8fd1; font-size: 11px; font-weight: 800; line-height: 16.5px; letter-spacing: .05em; }
.pm-local-business-billing__heading h1 { margin: 8px 0 0; color: #0d2137; font-size: 36px; font-weight: 800; line-height: 40px; letter-spacing: -.025em; }
.pm-local-business-billing__heading p { max-width: none; margin: 8px 0 0; color: #5b6b7d; font-size: 14px; font-weight: 400; line-height: 20px; }
.pm-local-business-billing__plan {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    min-height: 90px;
    margin-top: 24px;
    padding: 16px 20px;
    border: 1px solid #e2eaf2;
    border-radius: 16px;
    background: #fff;
}
.pm-local-business-billing__plan span { color: #1a8fd1; font-size: 10px; font-weight: 700; line-height: 15px; letter-spacing: .05em; text-transform: uppercase; }
.pm-local-business-billing__plan h2 { margin: 0; color: #0d2137; font-size: 16px; font-weight: 800; line-height: 24px; }
.pm-local-business-billing__plan p { margin: 0; color: #5b6b7d; font-size: 12px; line-height: 16px; }
.pm-local-business-billing__plan-price { flex: 0 0 auto; text-align: right; }
.pm-local-business-billing__plan-price strong { display: block; color: #0d2137; font-size: 18px; font-weight: 800; line-height: 28px; }
.pm-local-business-billing__plan-price small { display: block; color: #1a8fd1; font-size: 11px; font-weight: 700; line-height: 16px; }
.pm-local-business-billing__hold {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    min-height: 116px;
    margin-top: 16px;
    padding: 16px 20px;
    border-radius: 16px;
    background: #eef6fc;
}
.pm-local-business-billing__hold-icon {
    display: grid;
    place-items: center;
    flex: 0 0 32px;
    width: 32px;
    height: 32px;
    margin-top: 2px;
    border-radius: 12px;
    background: #fff;
    color: #1a8fd1;
    font-size: 18px;
    font-weight: 800;
}
.pm-local-business-billing__hold strong { display: block; color: #0d2137; font-size: 14px; font-weight: 700; line-height: 20px; }
.pm-local-business-billing__hold p { margin: 2px 0 0; color: #33465a; font-size: 13px; font-weight: 400; line-height: 20.8px; }
.pm-local-business-billing__hold b { color: #0d2137; font-weight: 700; }
.pm-local-business-billing__card {
    margin-top: 24px;
    padding: 24px;
    border: 1px solid #e2eaf2;
    border-radius: 22px;
    background: #fff;
    box-shadow: none;
}
.pm-local-business-billing__card h2 {
    display: flex;
    align-items: center;
    gap: 8px;
    margin: 0;
    color: #0d2137;
    font-size: 14px;
    font-weight: 800;
    line-height: 20px;
}
.pm-local-business-billing__card h2 span { color: #1a8fd1; }
.pm-local-business-billing__card h3 { margin: 24px 0 0; color: #0d2137; font-size: 14px; font-weight: 800; line-height: 20px; }
.pm-local-business-billing__card label { margin-top: 16px; color: #0d2137; font-size: 12px; font-weight: 700; line-height: 16px; }
.pm-local-business-billing__card h3 + label,
.pm-local-business-billing__card label + label { margin-top: 12px; }
.pm-local-business-billing__card label small { color: #7b8794; font-size: 12px; font-weight: 500; }
.pm-local-business-billing__card input,
.pm-local-business-billing__card select,
.pm-local-business-billing__stripe {
    display: block;
    width: 100%;
    min-height: 42px;
    margin-top: 4px;
    padding: 10px 14px;
    border: 1px solid #e2eaf2;
    border-radius: 12px;
    background: #fff;
    color: #0d2137;
    font-size: 14px;
    font-weight: 400;
    line-height: 20px;
    outline: none;
}
.pm-local-business-billing__card input:focus,
.pm-local-business-billing__card select:focus,
.pm-local-business-billing__stripe:focus-within { border-color: #1a8fd1; }
.pm-local-business-billing__stripe { padding-top: 12px; }
.pm-local-business-billing__fields { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; margin-top: 12px; }
.pm-local-business-billing__fields label { margin-top: 0; }
.pm-local-business-billing__actions { height: auto; margin-top: 24px; padding: 0; }
.pm-local-business-billing__actions a { display: inline-flex; min-height: 42px; align-items: center; padding: 10px 20px; border: 1px solid #e2eaf2; border-radius: 999px; background: #fff; color: #0d2137; font-size: 14px; font-weight: 700; }
.pm-local-business-billing__actions button { min-height: 42px; padding: 10px 24px; border-radius: 999px; font-size: 14px; font-weight: 700; }
.pm-local-business-billing__notice { margin: 16px 0 0; color: #7b8794; font-size: 12px; line-height: 16px; text-align: center; }
.pm-local-business-billing__secured { display: flex; justify-content: center; gap: 6px; margin: 16px 0 0; color: #7b8794; font-size: 12px; line-height: 16px; }
@media (max-width: 639.98px) {
    .pm-local-business-billing__shell { padding: 24px 16px 40px; }
    .pm-local-business-billing__topbar { margin-bottom: 28px; }
    .pm-local-business-billing__topbar img { height: 28px; }
    .pm-local-business-billing__heading h1 { font-size: 30px; line-height: 36px; }
    .pm-local-business-billing__plan { align-items: flex-start; }
    .pm-local-business-billing__card { padding: 20px 16px; }
    .pm-local-business-billing__fields { grid-template-columns: 1fr; }
}


#onboarding-local-business-combined-page .pm-cause-onboarding[data-current-step="5"] .pm-cause-onboarding__actions {
    height: 57px;
    padding-top: 15px;
}


/* Billing uses the exact locally hosted Inter face and reference weights. */
#onboarding-local-business-billing-page .pm-local-business-billing,
#onboarding-local-business-billing-page .pm-local-business-billing * {
    font-family: "PM Inter V2", Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
}
#onboarding-local-business-billing-page .pm-local-business-billing__heading h1 {
    font-size: 36px !important;
    font-weight: 800 !important;
    line-height: 40px !important;
    letter-spacing: -0.025em !important;
}
#onboarding-local-business-billing-page .pm-local-business-billing__plan h2 {
    font-size: 16px !important;
    font-weight: 800 !important;
    line-height: 24px !important;
}
#onboarding-local-business-billing-page .pm-local-business-billing__card h2 {
    font-size: 14px !important;
    font-weight: 800 !important;
    line-height: 20px !important;
}
#onboarding-local-business-billing-page .pm-local-business-billing__card h3 {
    font-size: 14px !important;
    font-weight: 800 !important;
    line-height: 20px !important;
}
#onboarding-local-business-billing-page .pm-local-business-billing__plan-price strong {
    font-size: 18px !important;
    font-weight: 800 !important;
    line-height: 28px !important;
}
#onboarding-local-business-billing-page .pm-local-business-billing__hold strong,
#onboarding-local-business-billing-page .pm-local-business-billing__hold b,
#onboarding-local-business-billing-page .pm-local-business-billing__card label {
    font-weight: 700 !important;
}
@media (max-width: 639.98px) {
    #onboarding-local-business-billing-page .pm-local-business-billing__heading h1 {
        font-size: 30px !important;
        line-height: 36px !important;
    }
}

/* Step 5 subscription cards: exact compact hierarchy from the v2 reference. */
#onboarding-local-business-combined-page .pm-local-business-billing-toggle__option small {
    display:inline-flex; align-items:center; height:18px; margin-left:8px; padding:0 8px; border-radius:999px;
    background:#e5f3fb; color:#078fc4; font-size:10px; font-weight:800; line-height:18px; text-transform:uppercase; white-space:nowrap;
}
#onboarding-local-business-combined-page .pm-local-business-billing-toggle__option.is-selected small { background:#fff; color:#078fc4; }
#onboarding-local-business-combined-page .pm-local-business-plan-grid.is-compact .pm-local-business-plan-option__normal { display:none !important; }
#onboarding-local-business-combined-page .pm-local-business-plan-grid.is-compact .pm-local-business-plan-option__compact-discount {
    display:flex; align-items:center; gap:8px; margin-top:4px; color:#7b8794; font-size:10px; font-weight:600; line-height:16px;
}
#onboarding-local-business-combined-page .pm-local-business-plan-grid.is-compact .pm-local-business-plan-option__compact-discount b {
    display:inline-flex; align-items:center; min-height:18px; padding:1px 7px; border-radius:999px; background:#159ed4; color:#fff;
    font-size:9px; font-weight:800; line-height:16px;
}
#onboarding-local-business-combined-page .pm-local-business-plan-grid.is-compact .pm-local-business-plan-option:nth-child(2) .pm-local-business-plan-option__compact-sub { display:none; }
#onboarding-local-business-combined-page .pm-local-business-plan-grid.is-compact .pm-local-business-plan-option:nth-child(3) .pm-local-business-plan-option__badge { background:#0d2137; }
#onboarding-local-business-combined-page .pm-cause-onboarding[data-current-step="5"] .pm-local-business-plan-shell__saving {
    width:max-content; max-width:100%; margin:8px auto 0; color:#078fc4; font-size:14px; font-weight:700; line-height:20px;
}
@media (max-width:639.98px) {
    #onboarding-local-business-combined-page .pm-local-business-billing-toggle__option { padding:0 12px !important; }
    #onboarding-local-business-combined-page .pm-local-business-billing-toggle__option small { margin-left:5px; padding:0 5px; font-size:8px; }
}

#onboarding-local-business-combined-page .pm-cause-onboarding[data-current-step="5"] .pm-local-business-billing-toggle {
    display:grid; grid-template-columns:98px 194px; width:300px; max-width:100%; gap:0; margin-inline:auto;
}
#onboarding-local-business-combined-page .pm-cause-onboarding[data-current-step="5"] .pm-local-business-billing-toggle__option {
    display:flex; align-items:center; justify-content:center; width:100%; padding:0 8px;
}
#onboarding-local-business-combined-page .pm-cause-onboarding[data-current-step="5"] .pm-local-business-billing-toggle__option span {
    flex:0 0 auto; width:auto; min-height:32px; padding:6px 10px; background:transparent;
}
#onboarding-local-business-combined-page .pm-cause-onboarding[data-current-step="5"] .pm-local-business-billing-toggle__option.is-selected span { background:transparent; }
#onboarding-local-business-combined-page .pm-cause-onboarding[data-current-step="5"] .pm-local-business-plan-shell__saving { white-space:nowrap; }
@media (max-width:390px) {
    #onboarding-local-business-combined-page .pm-cause-onboarding[data-current-step="5"] .pm-local-business-billing-toggle { grid-template-columns:88px 178px; width:274px; }
}

#onboarding-local-business-combined-page .pm-cause-onboarding[data-current-step="5"] .pm-local-business-billing-toggle__option.is-selected small {
    background:rgba(255,255,255,.16); color:#fff;
}

/* Fuente gorda requested for subscription plan names and headline amounts. */
#onboarding-local-business-combined-page .pm-local-business-plan-option__compact-title,
#onboarding-local-business-combined-page .pm-local-business-plan-option__price,
#onboarding-local-business-combined-page .pm-local-business-plan-option__price [data-pm-plan-price] {
    font-family:"Segoe UI", system-ui, -apple-system, BlinkMacSystemFont, sans-serif !important;
    font-weight:800 !important;
}

/* Full subscription comparison shown after “Show more”. */
#onboarding-local-business-combined-page .pm-local-business-plan-option__expanded-title,
#onboarding-local-business-combined-page .pm-local-business-plan-option__expanded-price-box { display:none; }
#onboarding-local-business-combined-page .pm-cause-onboarding.is-plan-expanded .pm-cause-onboarding__panel > .pm-cause-onboarding__topbar { max-width:1240px; }
#onboarding-local-business-combined-page .pm-cause-onboarding.is-plan-expanded .pm-local-business-plan-grid { gap:16px; margin-top:24px; }
#onboarding-local-business-combined-page .pm-cause-onboarding.is-plan-expanded .pm-local-business-plan-option {
    display:flex; min-height:560px; padding:28px 24px; border:1px solid #dbe6ef; border-radius:18px; background:#fff; box-shadow:none;
}
#onboarding-local-business-combined-page .pm-cause-onboarding.is-plan-expanded .pm-local-business-plan-option:nth-child(3) { border-style:dashed; }
#onboarding-local-business-combined-page .pm-cause-onboarding.is-plan-expanded .pm-local-business-plan-option.is-selected { border:2px solid #159ed4; }
#onboarding-local-business-combined-page .pm-cause-onboarding.is-plan-expanded .pm-local-business-plan-option__radio,
#onboarding-local-business-combined-page .pm-cause-onboarding.is-plan-expanded .pm-local-business-plan-option__compact-title,
#onboarding-local-business-combined-page .pm-cause-onboarding.is-plan-expanded .pm-local-business-plan-option__normal,
#onboarding-local-business-combined-page .pm-cause-onboarding.is-plan-expanded .pm-local-business-plan-option__price,
#onboarding-local-business-combined-page .pm-cause-onboarding.is-plan-expanded .pm-local-business-plan-option__compact-sub,
#onboarding-local-business-combined-page .pm-cause-onboarding.is-plan-expanded .pm-local-business-plan-option__compact-discount,
#onboarding-local-business-combined-page .pm-cause-onboarding.is-plan-expanded .pm-local-business-plan-option__founder,
#onboarding-local-business-combined-page .pm-cause-onboarding.is-plan-expanded .pm-local-business-plan-option__annual { display:none !important; }
#onboarding-local-business-combined-page .pm-cause-onboarding.is-plan-expanded .pm-local-business-plan-option__expanded-title {
    display:block; margin-top:7px; color:#0d2137; font-family:"Segoe UI",system-ui,-apple-system,BlinkMacSystemFont,sans-serif !important;
    font-size:20px; font-weight:800 !important; line-height:26px;
}
#onboarding-local-business-combined-page .pm-cause-onboarding.is-plan-expanded .pm-local-business-plan-option__description {
    display:block; min-height:72px; margin-top:10px; color:#64748b; font-size:14px; font-weight:400; line-height:23px;
}
#onboarding-local-business-combined-page .pm-cause-onboarding.is-plan-expanded .pm-local-business-plan-option__expanded-price-box {
    display:flex; min-height:102px; margin-top:10px; padding:20px; flex-direction:column; justify-content:center;
    border:1px solid #d9e5ef; border-radius:15px; background:#fff;
}
#onboarding-local-business-combined-page .pm-cause-onboarding.is-plan-expanded .pm-local-business-plan-option:nth-child(2) .pm-local-business-plan-option__expanded-price-box { background:#eaf4fb; }
#onboarding-local-business-combined-page .pm-cause-onboarding.is-plan-expanded .pm-local-business-plan-option__expanded-price-box > strong,
#onboarding-local-business-combined-page .pm-cause-onboarding.is-plan-expanded .pm-local-business-expanded-cycle > strong {
    display:block; color:#0d2137; font-family:"Segoe UI",system-ui,-apple-system,BlinkMacSystemFont,sans-serif !important;
    font-size:36px; font-weight:800 !important; line-height:42px;
}
#onboarding-local-business-combined-page .pm-cause-onboarding.is-plan-expanded .pm-local-business-plan-option__expanded-price-box > small { color:#7b8794; font-size:12px; font-weight:600; text-align:center; }
#onboarding-local-business-combined-page .pm-cause-onboarding.is-plan-expanded .pm-local-business-plan-option:first-child .pm-local-business-plan-option__expanded-price-box > strong { text-align:center; }
#onboarding-local-business-combined-page .pm-local-business-expanded-cycle[hidden] { display:none !important; }
#onboarding-local-business-combined-page .pm-local-business-expanded-cycle > small { display:flex; align-items:center; gap:8px; color:#7b8794; font-size:12px; }
#onboarding-local-business-combined-page .pm-local-business-expanded-cycle > small b { padding:3px 8px; border-radius:999px; background:#159ed4; color:#fff; font-size:10px; font-weight:800; text-transform:uppercase; }
#onboarding-local-business-combined-page .pm-local-business-plan-option:nth-child(3) .pm-local-business-expanded-cycle > small b { background:#0d2137; }
#onboarding-local-business-combined-page .pm-local-business-expanded-cycle > strong em { color:#7b8794; font-size:15px; font-style:normal; font-weight:600; }
#onboarding-local-business-combined-page .pm-local-business-expanded-callout {
    display:block; margin-top:8px; padding:8px 12px; border:1px solid #cae1f2; border-radius:10px; background:#fff;
    color:#078fc4; font-size:12px; font-weight:700; line-height:16px;
}
#onboarding-local-business-combined-page .pm-local-business-expanded-foot { display:block; margin-top:10px; color:#0d2137; font-size:11px; font-weight:700; }
#onboarding-local-business-combined-page .pm-cause-onboarding.is-plan-expanded .pm-local-business-plan-option__includes { display:block; margin-top:16px; color:#0d2137; font-size:13px; font-weight:800; }
#onboarding-local-business-combined-page .pm-cause-onboarding.is-plan-expanded .pm-local-business-plan-option__features { display:flex; margin-top:8px; gap:8px; color:#334e68; font-size:14px; line-height:20px; }
@media (max-width:1023.98px) {
    #onboarding-local-business-combined-page .pm-cause-onboarding.is-plan-expanded .pm-local-business-plan-option { min-height:0; }
}

#onboarding-local-business-combined-page [data-pm-expanded-badge] { display:none; }
#onboarding-local-business-combined-page .pm-cause-onboarding.is-plan-expanded [data-pm-compact-badge] { display:none; }
#onboarding-local-business-combined-page .pm-cause-onboarding.is-plan-expanded [data-pm-expanded-badge] { display:inline; }

#onboarding-local-business-combined-page .pm-cause-onboarding.is-plan-expanded .pm-local-business-plan-option__title { display:none !important; }
#onboarding-local-business-combined-page .pm-cause-onboarding.is-plan-expanded .pm-local-business-plan-option:nth-child(3) .pm-local-business-plan-option__badge { background:#0d2137 !important; }
