/*
 * 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);
}

/* 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-sans) !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-sans) !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);
}

.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: 12px;
}

.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-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 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;
}

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: 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.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 {
  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;
  }
}

/* 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-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: 18px 12px !important;
  border-top: 1px solid var(--pm-border) !important;
  background: #f8fdff !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-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 .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: 40px !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__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(3, 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: 288px !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 {
  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;
}

.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;
}

/* 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-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(3, 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;
  min-height: 340px;
  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;
  isolation: isolate;
  min-height: 340px;
  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;
  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 {
  min-height: 420px;
}

.pm-events-featured__media > img,
.pm-events-card__media > img {
  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;
}

.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: 17px;
  border-left: 1px solid var(--pm-border);
  background: linear-gradient(180deg, #ffffff 0%, #f8fcfe 100%);
  padding: 30px 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-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 {
  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;
}

.pm-events-filters span.is-active {
  border-color: var(--pm-navy);
  background: var(--pm-navy);
  color: #ffffff;
}

.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;
  }
}

@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 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;
}

.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;
}

.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: #1b6fc4;
  --pm-cart-blue-dark: #155a9e;
  --pm-cart-navy: #0f2a4a;
  --pm-cart-ink: #1a2b3c;
  --pm-cart-muted: #6b7a8d;
  --pm-cart-line: #e6ebf1;
  --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-segoe) !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-segoe) !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-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: #1b6fc4 !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: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 18px 24px;
  margin-top: 28px;
  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 {
  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 {
  flex: 1 1 220px;
  min-width: 0;
}

.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: #1b6fc4 !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 {
  flex: 1 1 520px;
  min-width: 0;
}

.pm-cart-donate__amounts {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-end;
  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 {
  display: flex;
  flex: 1 0 100%;
  align-items: center;
  gap: 8px;
  margin: -4px 0 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-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-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-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-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: 80px !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__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;
}

.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, 617px) minmax(0, 520px);
  gap: 84px;
  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__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 {
  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-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 {
  padding: 28px;
  border: 2px solid var(--pm-lb-blue);
  border-radius: 20px;
  background: #eaf8fc;
  box-shadow: none;
}

#onboarding-local-business-combined-page .pm-local-business-plan-card .pm-cause-onboarding__launch-badge {
  display: inline-flex;
  margin-bottom: 18px;
  background: var(--pm-lb-blue);
  color: #ffffff;
  text-transform: uppercase;
}

#onboarding-local-business-combined-page .pm-local-business-plan-card h2 {
  margin: 0 !important;
  color: var(--pm-lb-navy) !important;
  font-size: 16px !important;
  line-height: 40px !important;
}

#onboarding-local-business-combined-page .pm-local-business-plan-card h2 strong {
  font-size: 32px;
  font-weight: 900;
}

#onboarding-local-business-combined-page .pm-local-business-plan-card h2 span {
  color: #64748b;
  font-size: 16px;
  font-weight: 800;
}

#onboarding-local-business-combined-page .pm-local-business-plan-card p,
#onboarding-local-business-combined-page .pm-local-business-plan-card li {
  color: #64748b;
  font-size: 14px;
  line-height: 22px;
}

#onboarding-local-business-combined-page .pm-local-business-plan-card ul {
  gap: 8px;
  margin-top: 16px;
}

#onboarding-local-business-combined-page .pm-local-business-plan-card li {
  gap: 8px;
}

#onboarding-local-business-combined-page .pm-local-business-plan-card li > span:first-child {
  color: var(--pm-lb-blue);
}

#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;
}

#onboarding-local-business-combined-page .pm-cause-onboarding__preview {
  justify-content: flex-start;
  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-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;
  }
}

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;
  }
}
