/* PNP mobile brand layer.
   The LEANS-derived mobile geometry remains intact; this file restores the
   PNP desktop palette and surface language below the approved hero. */

@media (max-width: 1080px) {
  body.pnp-ux-parity:is(.home-page, .about-page, .catalog-page, .vendors-page, .partners-page, .contacts-page) {
    --pnp-brand-deep: #081426;
    --pnp-brand-navy: #202c47;
    --pnp-brand-panel: #121f35;
    --pnp-brand-panel-2: #172640;
    --pnp-brand-burgundy: #6d2039;
    --pnp-brand-burgundy-light: #8b2a4b;
    --pnp-brand-blue-grey: #768fb0;
    --pnp-brand-pink: #d6a8b9;
    --pnp-brand-white: #fefefe;
    --pnp-brand-muted: rgba(237, 243, 252, .72);
    --pnp-brand-line: rgba(118, 143, 176, .24);
    background: var(--pnp-brand-deep) !important;
    color: var(--pnp-brand-white) !important;
  }

  body.pnp-ux-parity:is(.home-page, .about-page, .catalog-page, .vendors-page, .partners-page, .contacts-page) > .page {
    background:
      radial-gradient(circle at 88% 14%, rgba(109, 32, 57, .14), transparent 28%),
      radial-gradient(circle at 8% 38%, rgba(118, 143, 176, .12), transparent 31%),
      linear-gradient(155deg, #081426 0%, #111d33 52%, #202c47 100%) !important;
  }

  body.pnp-ux-parity:is(.home-page, .about-page, .vendors-page, .partners-page, .contacts-page) .section:not(.hero) {
    color: var(--pnp-brand-white) !important;
  }

  body.pnp-ux-parity:is(.home-page, .about-page, .vendors-page, .partners-page, .contacts-page) .section:not(.hero) :is(.section-head h2, .section-head h3, .section-eyebrow, .eyebrow) {
    color: var(--pnp-brand-white) !important;
    text-shadow: none !important;
  }

  body.pnp-ux-parity:is(.home-page, .about-page, .vendors-page, .partners-page, .contacts-page) .section:not(.hero) :is(.section-lead, .section-head p) {
    color: var(--pnp-brand-muted) !important;
  }

  /* Homepage */
  html body.home-page.pnp-ux-parity #clients {
    border-block-color: var(--pnp-brand-line) !important;
    background:
      linear-gradient(90deg, rgba(118, 143, 176, .055) 1px, transparent 1px),
      linear-gradient(0deg, rgba(118, 143, 176, .055) 1px, transparent 1px),
      radial-gradient(circle at 88% 10%, rgba(109, 32, 57, .24), transparent 31%),
      linear-gradient(145deg, #111d33 0%, #182740 55%, #0b1729 100%) !important;
    background-size: 58px 58px, 58px 58px, auto, auto !important;
  }

  html body.home-page.pnp-ux-parity #clients .role-entry-head :is(h2, .eyebrow) {
    color: var(--pnp-brand-white) !important;
  }

  html body.home-page.pnp-ux-parity #clients .role-entry-grid {
    border: 1px solid rgba(118, 143, 176, .20) !important;
    background: rgba(8, 20, 38, .50) !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .04), 0 20px 48px rgba(0, 0, 0, .24) !important;
  }

  html body.home-page.pnp-ux-parity #clients .role-entry-card,
  html body.home-page.pnp-ux-parity #clients .role-entry-card:last-child {
    border-color: rgba(118, 143, 176, .26) !important;
    background: radial-gradient(circle at 94% 6%, rgba(118, 143, 176, .13), transparent 34%), linear-gradient(135deg, #202c47, #121f35) !important;
    color: var(--pnp-brand-white) !important;
    box-shadow: inset 3px 0 0 rgba(214, 168, 185, .78), 0 9px 22px rgba(0, 0, 0, .18) !important;
  }

  html body.home-page.pnp-ux-parity #clients .role-entry-card:not(:last-child) {
    border-bottom-color: rgba(118, 143, 176, .26) !important;
  }

  html body.home-page.pnp-ux-parity #clients .role-entry-card :is(h3, .role-entry-mobile-summary) {
    color: var(--pnp-brand-white) !important;
  }

  html body.home-page.pnp-ux-parity #clients .role-entry-card .role-entry-mobile-summary {
    opacity: .68 !important;
  }

  html body.home-page.pnp-ux-parity #clients .role-entry-mobile-icon {
    position: relative !important;
    isolation: isolate !important;
    border-color: rgba(214, 168, 185, .42) !important;
    border-radius: 13px !important;
    background:
      radial-gradient(circle at 74% 24%, rgba(255, 255, 255, .18) 0 2px, transparent 2.5px),
      linear-gradient(145deg, var(--pnp-brand-burgundy-light), var(--pnp-brand-burgundy)) !important;
    color: var(--pnp-brand-white) !important;
    box-shadow:
      inset 0 1px 0 rgba(255, 255, 255, .18),
      inset 0 0 0 1px rgba(8, 20, 38, .16),
      0 8px 18px rgba(35, 5, 18, .28) !important;
  }

  html body.home-page.pnp-ux-parity #clients .role-entry-mobile-icon::after {
    content: "";
    position: absolute;
    z-index: -1;
    right: -3px;
    bottom: -3px;
    width: 10px;
    height: 10px;
    border: 2px solid var(--pnp-brand-panel);
    border-radius: 4px;
    background: var(--pnp-brand-pink);
    box-shadow: 0 2px 8px rgba(0, 0, 0, .28);
  }

  html body.home-page.pnp-ux-parity #clients .role-entry-mobile-icon svg {
    width: 22px !important;
    height: 22px !important;
    stroke-width: 1.55 !important;
  }

  html body.home-page.pnp-ux-parity #clients .role-entry-mobile-icon .icon-detail {
    stroke: var(--pnp-brand-pink) !important;
    stroke-width: 1.7 !important;
  }

  html body.home-page.pnp-ux-parity .home-directions-section {
    border-block: 1px solid rgba(118, 143, 176, .16) !important;
    background: radial-gradient(circle at 12% 8%, rgba(118, 143, 176, .13), transparent 30%), linear-gradient(180deg, #081426 0%, #0e1a2d 100%) !important;
  }

  html body.home-page.pnp-ux-parity .home-directions-section :is(.section-eyebrow, .home-supply-kicker, .section-head h2, .section-head p, .link-more) {
    color: var(--pnp-brand-white) !important;
  }

  html body.home-page.pnp-ux-parity .home-directions-section .home-supply-card {
    border-color: rgba(118, 143, 176, .34) !important;
    background-color: var(--pnp-brand-panel) !important;
    box-shadow: 0 16px 34px rgba(0, 0, 0, .30) !important;
  }

  html body.home-page.pnp-ux-parity .home-brands-section {
    border-block: 1px solid rgba(118, 143, 176, .16) !important;
    background: radial-gradient(circle at 90% 18%, rgba(109, 32, 57, .18), transparent 30%), linear-gradient(145deg, #172640 0%, #111d33 58%, #0b1729 100%) !important;
  }

  html body.home-page.pnp-ux-parity .home-brands-section :is(.section-head h2, .section-head p, .section-eyebrow, .link-more) {
    color: var(--pnp-brand-white) !important;
  }

  html body.home-page.pnp-ux-parity .home-brand-filter-tab {
    border-color: rgba(118, 143, 176, .34) !important;
    background: rgba(8, 20, 38, .62) !important;
    color: rgba(254, 254, 254, .84) !important;
    box-shadow: none !important;
  }

  html body.home-page.pnp-ux-parity .home-brand-filter-tab:is([aria-selected="true"], :hover, :focus-visible) {
    border-color: rgba(214, 168, 185, .58) !important;
    background: linear-gradient(135deg, var(--pnp-brand-burgundy-light), var(--pnp-brand-burgundy)) !important;
    color: var(--pnp-brand-white) !important;
  }

  html body.home-page.pnp-ux-parity .home-partner-logo-carousel {
    border-color: rgba(118, 143, 176, .28) !important;
    background: rgba(8, 20, 38, .52) !important;
    box-shadow: 0 18px 44px rgba(0, 0, 0, .22) !important;
  }

  html body.home-page.pnp-ux-parity .home-partner-logo-carousel .partner-logo-nav {
    border-color: rgba(254, 254, 254, .22) !important;
    background: var(--pnp-brand-navy) !important;
    color: var(--pnp-brand-white) !important;
  }

  html body.home-page.pnp-ux-parity #homeRequest {
    border-block: 1px solid rgba(118, 143, 176, .18) !important;
    background: radial-gradient(circle at 8% 12%, rgba(109, 32, 57, .24), transparent 26%), linear-gradient(155deg, #081426 0%, #111d33 55%, #202c47 100%) !important;
  }

  html body.home-page.pnp-ux-parity #homeRequest .home-request-router-head :is(h2, p, .home-request-router-kicker) {
    color: var(--pnp-brand-white) !important;
  }

  html body.home-page.pnp-ux-parity #homeRequest .home-request-stage,
  html body.home-page.pnp-ux-parity #homeRequest .home-request-route {
    border-color: rgba(118, 143, 176, .28) !important;
    background: linear-gradient(135deg, #202c47, #121f35) !important;
    color: var(--pnp-brand-white) !important;
    box-shadow: inset 3px 0 0 rgba(214, 168, 185, .72), 0 8px 20px rgba(0, 0, 0, .18) !important;
  }

  html body.home-page.pnp-ux-parity #homeRequest .home-request-stage :is(strong, small),
  html body.home-page.pnp-ux-parity #homeRequest .home-request-route :is(small, strong, .home-request-route-action) {
    color: var(--pnp-brand-white) !important;
  }

  html body.home-page.pnp-ux-parity #homeRequest :is(.home-request-stage small, .home-request-route small) {
    opacity: .65 !important;
  }

  html body.home-page.pnp-ux-parity #homeRequest .home-request-stage:is(.is-active, [aria-selected="true"]) {
    border-color: rgba(214, 168, 185, .56) !important;
    background: linear-gradient(135deg, var(--pnp-brand-burgundy-light), var(--pnp-brand-burgundy)) !important;
  }

  html body.home-page.pnp-ux-parity #homeRequest .home-request-route-node {
    border-color: rgba(214, 168, 185, .48) !important;
    background: var(--pnp-brand-burgundy) !important;
    color: var(--pnp-brand-white) !important;
  }

  html body.home-page.pnp-ux-parity .home-request-form-band,
  html body.contacts-page.pnp-ux-parity .contacts-request-section {
    border-top: 1px solid rgba(118, 143, 176, .18) !important;
    background: linear-gradient(90deg, rgba(118, 143, 176, .045) 1px, transparent 1px), linear-gradient(0deg, rgba(118, 143, 176, .045) 1px, transparent 1px), linear-gradient(150deg, #111d33 0%, #081426 100%) !important;
    background-size: 54px 54px, 54px 54px, auto !important;
  }

  html body.home-page.pnp-ux-parity :is(#home-request-form, #home-mobile-request-form),
  html body.contacts-page.pnp-ux-parity article#request-form.contact-request-card {
    border-color: rgba(118, 143, 176, .30) !important;
    background: radial-gradient(circle at 92% 6%, rgba(109, 32, 57, .20), transparent 30%), linear-gradient(145deg, #202c47 0%, #121f35 100%) !important;
    color: var(--pnp-brand-white) !important;
    box-shadow: 0 24px 64px rgba(0, 0, 0, .32) !important;
  }

  html body.pnp-ux-parity:is(.home-page, .contacts-page) :is(#home-request-form, #home-mobile-request-form, article#request-form.contact-request-card) :is(.home-request-head h2, .home-request-kicker, .field label, .field-label, .field-optional, .quick-consent, .quick-consent a, .form-consent-check, .form-consent-check span, .form-consent-check a, .cooperation-role-field legend, .home-request-reassurance, small) {
    color: var(--pnp-brand-white) !important;
  }

  html body.pnp-ux-parity:is(.home-page, .contacts-page) :is(#home-request-form, #home-mobile-request-form, article#request-form.contact-request-card) :is(input:not([type="checkbox"]):not([type="radio"]):not([type="file"]), textarea, select, .upload-box) {
    border-color: rgba(118, 143, 176, .42) !important;
    background: rgba(254, 254, 254, .96) !important;
    color: var(--pnp-brand-deep) !important;
  }

  html body.pnp-ux-parity:is(.home-page, .contacts-page) :is(#home-request-form, #home-mobile-request-form, article#request-form.contact-request-card) :is(input, textarea)::placeholder {
    color: rgba(32, 44, 71, .52) !important;
  }

  html body.pnp-ux-parity:is(.home-page, .contacts-page) :is(#home-request-form, #home-mobile-request-form, article#request-form.contact-request-card) .contact-request-tab {
    border-color: rgba(118, 143, 176, .34) !important;
    background: rgba(8, 20, 38, .42) !important;
    color: rgba(254, 254, 254, .78) !important;
  }

  html body.pnp-ux-parity:is(.home-page, .contacts-page) :is(#home-request-form, #home-mobile-request-form, article#request-form.contact-request-card) .contact-request-tab:is(.is-active, [aria-selected="true"]) {
    border-color: rgba(214, 168, 185, .56) !important;
    background: linear-gradient(135deg, var(--pnp-brand-burgundy-light), var(--pnp-brand-burgundy)) !important;
    color: var(--pnp-brand-white) !important;
  }

  html body.pnp-ux-parity:is(.home-page, .contacts-page) :is(#home-request-form, #home-mobile-request-form, article#request-form.contact-request-card) .cooperation-role-option span {
    border-color: rgba(118, 143, 176, .34) !important;
    background: rgba(8, 20, 38, .46) !important;
    color: var(--pnp-brand-white) !important;
  }

  html body.pnp-ux-parity:is(.home-page, .contacts-page) :is(#home-request-form, #home-mobile-request-form, article#request-form.contact-request-card) .cooperation-role-option input:checked + span {
    border-color: rgba(214, 168, 185, .54) !important;
    background: var(--pnp-brand-burgundy) !important;
  }

  /* Internal pages */
  html body.pnp-ux-parity:is(.vendors-page, .partners-page, .contacts-page, .solutions-index-page) .section {
    border-color: rgba(118, 143, 176, .16) !important;
    background: radial-gradient(circle at 88% 12%, rgba(109, 32, 57, .12), transparent 27%), linear-gradient(150deg, #111d33 0%, #081426 100%) !important;
  }

  html body.partners-page.pnp-ux-parity .partners-results-grid {
    color: var(--pnp-brand-white) !important;
  }

  html body.partners-page.pnp-ux-parity .partner-card {
    border-color: rgba(118, 143, 176, .26) !important;
    background: linear-gradient(145deg, #202c47, #121f35) !important;
    color: var(--pnp-brand-white) !important;
    box-shadow: 0 14px 34px rgba(0, 0, 0, .24) !important;
  }

  html body.partners-page.pnp-ux-parity .partner-card :is(.partner-title, h2, h3, p, span, .link-more) {
    color: var(--pnp-brand-white) !important;
  }

  html body.partners-page.pnp-ux-parity .partner-card :is(p, span) {
    opacity: .72 !important;
  }

  html body.partners-page.pnp-ux-parity .partner-logo-tile,
  html body.partners-page.pnp-ux-parity .logo-tile {
    border-color: rgba(118, 143, 176, .26) !important;
    background: linear-gradient(145deg, #ffffff, #edf2f8) !important;
  }

  html body.vendors-page.pnp-ux-parity .vendor-master-card {
    border-color: rgba(118, 143, 176, .28) !important;
    background: linear-gradient(145deg, #202c47, #121f35) !important;
    color: var(--pnp-brand-white) !important;
    box-shadow: 0 22px 58px rgba(0, 0, 0, .28) !important;
  }

  html body.vendors-page.pnp-ux-parity .vendor-master-copy {
    background: linear-gradient(145deg, rgba(109, 32, 57, .54), rgba(32, 44, 71, .96)) !important;
    color: var(--pnp-brand-white) !important;
  }

  html body.vendors-page.pnp-ux-parity .vendor-master-copy :is(h2, h3, p, .soft-label),
  html body.vendors-page.pnp-ux-parity .vendor-master-panel :is(label, .vendor-count) {
    color: var(--pnp-brand-white) !important;
  }

  html body.vendors-page.pnp-ux-parity .vendor-master-panel,
  html body.vendors-page.pnp-ux-parity .all-manufacturer-cloud,
  html body.vendors-page.pnp-ux-parity #vendorRows .vendor-row {
    border-color: rgba(118, 143, 176, .26) !important;
    background: rgba(8, 20, 38, .58) !important;
    color: var(--pnp-brand-white) !important;
  }

  html body.vendors-page.pnp-ux-parity #vendorRows .vendor-row :is(h2, h3, p, b, span, small, .link-more) {
    color: var(--pnp-brand-white) !important;
  }

  html body.vendors-page.pnp-ux-parity #vendorRows .vendor-rows-page-current {
    border-color: rgba(236, 124, 163, .72) !important;
    background: linear-gradient(145deg, #9b2850 0%, #6d2039 68%, #45233a 100%) !important;
    color: var(--pnp-brand-white) !important;
    opacity: 1 !important;
    -webkit-text-fill-color: var(--pnp-brand-white) !important;
    box-shadow:
      0 0 0 3px rgba(155, 40, 80, .14),
      0 9px 20px rgba(35, 5, 18, .26),
      inset 0 1px 0 rgba(254, 254, 254, .12) !important;
  }

  html body.vendors-page.pnp-ux-parity .vendor-master-panel :is(input, select, .vendor-select-button) {
    border-color: rgba(118, 143, 176, .38) !important;
    background: rgba(254, 254, 254, .96) !important;
    color: var(--pnp-brand-deep) !important;
  }

  html body.contacts-page.pnp-ux-parity .contact-mini {
    border: 1px solid rgba(118, 143, 176, .28) !important;
    background: linear-gradient(145deg, #202c47, #121f35) !important;
    color: var(--pnp-brand-white) !important;
    box-shadow: 0 18px 44px rgba(0, 0, 0, .24) !important;
  }

  html body.contacts-page.pnp-ux-parity .contact-mini :is(h2, h3, .contact-line, .contact-line span, .contact-line a, .contact-line b) {
    border-color: rgba(118, 143, 176, .22) !important;
    color: var(--pnp-brand-white) !important;
  }

  html body.contacts-page.pnp-ux-parity .contact-line span:first-child {
    color: var(--pnp-brand-pink) !important;
  }

  /* Catalog */
  html body.catalog-page.pnp-ux-parity .catalog-desktop-v2,
  html body.catalog-page.pnp-ux-parity .catalog-desktop-v2::before {
    background: radial-gradient(circle at 92% 8%, rgba(109, 32, 57, .14), transparent 26%), linear-gradient(150deg, #111d33 0%, #081426 100%) !important;
    color: var(--pnp-brand-white) !important;
  }

  html body.catalog-page.pnp-ux-parity :is(.catalog-v2-frame, .catalog-v2-workspace) {
    background: transparent !important;
  }

  html body.catalog-page.pnp-ux-parity :is(.catalog-v2-index, .catalog-v2-toolbar, .catalog-v2-content, .catalog-v2-search-results) {
    border-color: rgba(118, 143, 176, .28) !important;
    background: rgba(8, 20, 38, .78) !important;
    color: var(--pnp-brand-white) !important;
    box-shadow: 0 16px 38px rgba(0, 0, 0, .22) !important;
  }

  html body.catalog-page.pnp-ux-parity :is(.catalog-v2-toolbar h1, .catalog-v2-index-head button, .catalog-v2-index-head button small, .catalog-v2-index-head button strong, .catalog-v2-content-head h2, .catalog-v2-kicker, .catalog-v2-breadcrumbs, .catalog-v2-breadcrumbs a, .catalog-v2-breadcrumbs span, .catalog-v2-back) {
    color: var(--pnp-brand-white) !important;
  }

  html body.catalog-page.pnp-ux-parity .catalog-v2-search-field,
  html body.catalog-page.pnp-ux-parity .catalog-v2-search-field input {
    border-color: rgba(118, 143, 176, .34) !important;
    background: rgba(254, 254, 254, .98) !important;
    color: var(--pnp-brand-deep) !important;
  }

  html body.catalog-page.pnp-ux-parity .catalog-v2-search-button {
    border-color: rgba(214, 168, 185, .42) !important;
    background: linear-gradient(145deg, var(--pnp-brand-burgundy-light), var(--pnp-brand-burgundy)) !important;
    color: var(--pnp-brand-white) !important;
  }

  html body.catalog-page.pnp-ux-parity .catalog-v2-direction-card {
    border-color: rgba(118, 143, 176, .28) !important;
    background-color: var(--pnp-brand-panel) !important;
    color: var(--pnp-brand-white) !important;
    box-shadow: 0 14px 30px rgba(0, 0, 0, .28) !important;
  }

  html body.catalog-page.pnp-ux-parity :is(.catalog-v2-system-card, .catalog-v2-product-card, .catalog-v2-product-hero, .catalog-v2-passport, .catalog-v2-passport-panel, .catalog-v2-request-guide, .catalog-v2-type-row, .catalog-mini-request) {
    border-color: rgba(118, 143, 176, .28) !important;
    background: linear-gradient(145deg, #202c47, #121f35) !important;
    color: var(--pnp-brand-white) !important;
  }

  html body.catalog-page.pnp-ux-parity :is(.catalog-v2-system-card, .catalog-v2-product-card, .catalog-v2-product-hero, .catalog-v2-passport, .catalog-v2-passport-panel, .catalog-v2-request-guide, .catalog-v2-type-row, .catalog-mini-request) :is(h2, h3, p, b, small, span, a) {
    color: var(--pnp-brand-white) !important;
  }

  /* About */
  html body.about-page.pnp-ux-parity .section {
    border-color: rgba(118, 143, 176, .16) !important;
    background: radial-gradient(circle at 90% 12%, rgba(109, 32, 57, .12), transparent 28%), linear-gradient(150deg, #111d33 0%, #081426 100%) !important;
  }

  html body.about-page.pnp-ux-parity .section :is(.glass, .panel, article) {
    border-color: rgba(118, 143, 176, .26) !important;
    background: linear-gradient(145deg, rgba(32, 44, 71, .96), rgba(18, 31, 53, .96)) !important;
    color: var(--pnp-brand-white) !important;
  }

  html body.about-page.pnp-ux-parity .section :is(h2, h3, p, b, span, li, a) {
    color: var(--pnp-brand-white) !important;
  }
}

/* Review corrections: keep inactive controls readable and give the mobile hero
   the intended editorial rhythm without moving its fixed action buttons. */
@media (max-width: 1080px) {
  html body.home-page.pnp-ux-parity #homeRequest button.home-request-stage:not(.is-active):not([aria-selected="true"]) {
    border-color: rgba(118, 143, 176, .42) !important;
    background: linear-gradient(145deg, rgba(32, 44, 71, .98), rgba(18, 31, 53, .98)) !important;
    color: #fefefe !important;
    opacity: 1 !important;
  }

  html body.home-page.pnp-ux-parity #homeRequest button.home-request-stage:not(.is-active):not([aria-selected="true"]) .home-request-stage-copy strong {
    color: #fefefe !important;
    opacity: 1 !important;
  }

  html body.home-page.pnp-ux-parity #homeRequest button.home-request-stage:not(.is-active):not([aria-selected="true"]) .home-request-stage-copy small {
    color: rgba(254, 254, 254, .72) !important;
    opacity: 1 !important;
  }

  html body.home-page.pnp-ux-parity #homeRequest button.home-request-stage:not(.is-active):not([aria-selected="true"]) .home-request-stage-node {
    border-color: rgba(254, 254, 254, .30) !important;
    background: #fefefe !important;
    color: #202c47 !important;
  }

  html body.home-page.pnp-ux-parity #homeRequest button.home-request-stage:is(.is-active, [aria-selected="true"]) {
    border-color: rgba(214, 168, 185, .56) !important;
    background: linear-gradient(145deg, #9a294e, #7d1f40) !important;
    color: #fefefe !important;
  }

  html body.pnp-ux-parity:is(.home-page, .contacts-page) :is(
    article#home-request-form.home-request-card,
    article#home-mobile-request-form.home-mobile-request-card,
    article#request-form.contact-request-card
  ) button.contact-request-tab:not(.is-active):not([aria-selected="true"]) {
    border: 1px solid rgba(118, 143, 176, .38) !important;
    background: rgba(8, 20, 38, .72) !important;
    color: rgba(254, 254, 254, .88) !important;
    opacity: 1 !important;
    -webkit-text-fill-color: rgba(254, 254, 254, .88) !important;
  }

  html body.pnp-ux-parity:is(.home-page, .contacts-page) :is(
    article#home-request-form.home-request-card,
    article#home-mobile-request-form.home-mobile-request-card,
    article#request-form.contact-request-card
  ) button.contact-request-tab:is(.is-active, [aria-selected="true"]) {
    border-color: rgba(214, 168, 185, .44) !important;
    background: linear-gradient(145deg, #9a294e, #7d1f40) !important;
    color: #fefefe !important;
    -webkit-text-fill-color: #fefefe !important;
  }
}

@media (max-width: 680px) {
  html body.home-page.pnp-ux-parity section#top-mobile.hero-v13 .home-mobile-hero-content {
    justify-content: flex-start !important;
  }

  html body.home-page.pnp-ux-parity section#top-mobile.hero-v13 .home-mobile-hero-content > h1 {
    display: flex !important;
    flex-direction: column !important;
    gap: clamp(8px, 1.7vw, 12px) !important;
    width: 100% !important;
    max-width: none !important;
    margin: clamp(150px, 20svh, 220px) 0 0 !important;
  }

  html body.home-page.pnp-ux-parity section#top-mobile.hero-v13 .home-mobile-hero-line {
    width: max-content !important;
    max-width: 100% !important;
    margin: 0 !important;
    font-size: clamp(42px, 10.5vw, 64px) !important;
    font-weight: 700 !important;
    line-height: .92 !important;
  }

  html body.home-page.pnp-ux-parity section#top-mobile.hero-v13 .home-mobile-hero-content > h1::after {
    margin-top: clamp(6px, 1.5vw, 10px) !important;
  }

  html body.home-page.pnp-ux-parity section#top-mobile.hero-v13 .hero-subtitle {
    margin-top: clamp(14px, 2.5svh, 24px) !important;
  }
}

@media (max-width: 680px) and (max-height: 850px) {
  html body.home-page.pnp-ux-parity section#top-mobile.hero-v13 .home-mobile-hero-content > h1 {
    gap: 7px !important;
    margin-top: clamp(108px, 15svh, 128px) !important;
  }

  html body.home-page.pnp-ux-parity section#top-mobile.hero-v13 .home-mobile-hero-line {
    font-size: clamp(39px, 10vw, 48px) !important;
  }
}

/* Mobile search fields v20: one PNP search surface across Catalog and Vendors.
   Match the approved dark inset fields used by the request form while keeping
   each page's existing search button, results and filtering logic intact. */
@media (max-width: 680px) {
  html body.catalog-page.pnp-ux-parity .catalog-v2-search-field {
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
  }

  html body.catalog-page.pnp-ux-parity .catalog-v2-search-field input#catalogV2Search,
  html body.vendors-page.pnp-ux-parity .vendor-search-control input#vendorSearch {
    box-sizing: border-box !important;
    min-width: 0 !important;
    min-height: 48px !important;
    padding: 12px 14px !important;
    border: 1px solid rgba(255, 255, 255, .20) !important;
    border-radius: 7px !important;
    outline: 0 !important;
    background: rgba(5, 17, 31, .45) !important;
    color: #fff !important;
    caret-color: #fff !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .06) !important;
    font-size: 16px !important;
    font-weight: 400 !important;
    -webkit-text-fill-color: #fff !important;
  }

  html body.catalog-page.pnp-ux-parity .catalog-v2-search-field input#catalogV2Search::placeholder,
  html body.vendors-page.pnp-ux-parity .vendor-search-control input#vendorSearch::placeholder {
    color: rgba(255, 255, 255, .44) !important;
    opacity: 1 !important;
    -webkit-text-fill-color: rgba(255, 255, 255, .44) !important;
  }

  html body.catalog-page.pnp-ux-parity .catalog-v2-search-field input#catalogV2Search:focus,
  html body.vendors-page.pnp-ux-parity .vendor-search-control input#vendorSearch:focus {
    border-color: rgba(214, 168, 185, .72) !important;
    background: rgba(5, 17, 31, .62) !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .08), 0 0 0 3px rgba(109, 32, 57, .16) !important;
  }

  html body.catalog-page.pnp-ux-parity .catalog-v2-search-field input#catalogV2Search::-webkit-search-cancel-button {
    width: 20px !important;
    height: 20px !important;
    margin: 0 !important;
    border: 0 !important;
    border-radius: 50% !important;
    -webkit-appearance: none !important;
    appearance: none !important;
    background: center / 20px 20px no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Ccircle cx='10' cy='10' r='9' fill='%236d2039'/%3E%3Cpath d='M6.7 6.7l6.6 6.6m0-6.6l-6.6 6.6' fill='none' stroke='%23fefefe' stroke-width='1.8' stroke-linecap='round'/%3E%3C/svg%3E") !important;
    opacity: 0 !important;
    filter: none !important;
    pointer-events: none !important;
    cursor: pointer !important;
    transform: scale(.76) !important;
    transition: opacity .16s ease, transform .16s ease !important;
  }

  html body.catalog-page.pnp-ux-parity .catalog-v2-search-field input#catalogV2Search:is(:hover, :focus)::-webkit-search-cancel-button {
    opacity: 1 !important;
    pointer-events: auto !important;
    transform: scale(1) !important;
  }

  /* Keep live catalog results on an opaque, isolated layer. Without this,
     headings and cards below the toolbar show through the result rows. */
  html body.catalog-page.pnp-ux-parity .catalog-v2-toolbar {
    position: relative !important;
    z-index: 80 !important;
    overflow: visible !important;
  }

  html body.catalog-page.pnp-ux-parity .catalog-v2-search {
    position: relative !important;
    z-index: 2 !important;
  }

  html body.catalog-page.pnp-ux-parity .catalog-v2-search-field input#catalogV2Search {
    background: #071426 !important;
  }

  html body.catalog-page.pnp-ux-parity .catalog-v2-search-results {
    z-index: 90 !important;
    isolation: isolate !important;
    overflow-x: hidden !important;
    border-color: rgba(118, 143, 176, .38) !important;
    background: #081426 !important;
    opacity: 1 !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    box-shadow: 0 24px 70px rgba(0, 0, 0, .58) !important;
  }

  html body.catalog-page.pnp-ux-parity .catalog-v2-search-result {
    position: relative !important;
    z-index: 1 !important;
    background: #0c1a2d !important;
  }

  html body.catalog-page.pnp-ux-parity .catalog-v2-search-result + .catalog-v2-search-result {
    margin-top: 4px !important;
  }

  html body.catalog-page.pnp-ux-parity :is(.catalog-v2-directions, .catalog-v2-content) {
    position: relative !important;
    z-index: 1 !important;
  }
}

/* Mobile catalog detail v21: preserve readable dark product rows in every
   pointer/keyboard state and bring the inline request summary back into the
   burgundy PNP system used by the approved mobile request form. */
@media (max-width: 680px) {
  html body.catalog-page.pnp-ux-parity .catalog-v2-passport .catalog-v2-type-row {
    border-color: rgba(118, 143, 176, .34) !important;
    background:
      radial-gradient(circle at 100% 0%, rgba(118, 143, 176, .12), transparent 44%),
      linear-gradient(145deg, #202c47 0%, #121f35 100%) !important;
    color: #fefefe !important;
    box-shadow: inset 2px 0 0 rgba(214, 168, 185, .72), 0 8px 20px rgba(0, 0, 0, .18) !important;
    transition: border-color .18s ease, background .18s ease, box-shadow .18s ease !important;
  }

  html body.catalog-page.pnp-ux-parity .catalog-v2-passport .catalog-v2-type-row:hover,
  html body.catalog-page.pnp-ux-parity .catalog-v2-passport .catalog-v2-type-row:focus-visible {
    border-color: rgba(239, 107, 156, .76) !important;
    outline: 0 !important;
    background:
      radial-gradient(circle at 92% 0%, rgba(255, 255, 255, .12), transparent 38%),
      linear-gradient(135deg, #7f294b 0%, #4a233d 48%, #1b2943 100%) !important;
    color: #fefefe !important;
    box-shadow: inset 3px 0 0 #ef6b9c, 0 12px 26px rgba(35, 6, 20, .26) !important;
  }

  html body.catalog-page.pnp-ux-parity .catalog-v2-passport .catalog-v2-type-row.is-selected,
  html body.catalog-page.pnp-ux-parity .catalog-v2-passport .catalog-v2-type-row[aria-pressed="true"] {
    border-color: rgba(255, 163, 196, .78) !important;
    background:
      radial-gradient(circle at 92% 0%, rgba(255, 255, 255, .14), transparent 38%),
      linear-gradient(135deg, #a32855 0%, #6d2039 56%, #202c47 100%) !important;
    color: #fefefe !important;
    box-shadow: inset 3px 0 0 #ff8ab4, 0 12px 28px rgba(42, 7, 23, .30) !important;
  }

  html body.catalog-page.pnp-ux-parity .catalog-v2-passport .catalog-v2-type-row:is(:hover, :focus-visible, .is-selected, [aria-pressed="true"]) :is(b, small) {
    color: #fefefe !important;
    -webkit-text-fill-color: #fefefe !important;
  }

  html body.catalog-page.pnp-ux-parity .catalog-v2-passport .catalog-v2-type-row:is(:hover, :focus-visible, .is-selected, [aria-pressed="true"]) i {
    border-color: rgba(255, 255, 255, .30) !important;
    background: rgba(5, 17, 31, .46) !important;
    color: #fefefe !important;
  }

  html body.catalog-page.pnp-ux-parity .catalog-v2-product .catalog-mini-request {
    border: 1px solid rgba(236, 124, 163, .58) !important;
    border-radius: 16px !important;
    background:
      radial-gradient(circle at 92% 4%, rgba(255, 255, 255, .11), transparent 30%),
      radial-gradient(circle at 12% 100%, rgba(216, 48, 112, .14), transparent 34%),
      linear-gradient(150deg, #9b2850 0%, #6d2039 38%, #421f38 68%, #202c47 100%) !important;
    background-size: auto !important;
    color: #fefefe !important;
    box-shadow: 0 24px 58px rgba(0, 0, 0, .34) !important;
  }

  html body.catalog-page.pnp-ux-parity .catalog-v2-product .catalog-mini-request::after {
    height: 3px !important;
    background: linear-gradient(90deg, #ef6b9c 0%, #d6a8b9 48%, transparent 92%) !important;
  }

  html body.catalog-page.pnp-ux-parity .catalog-v2-product .catalog-mini-request .mini-request-head h3 {
    color: #fefefe !important;
  }

  html body.catalog-page.pnp-ux-parity .catalog-v2-product .catalog-mini-request .mini-request-head .soft-label {
    border-color: rgba(255, 255, 255, .20) !important;
    background: rgba(5, 17, 31, .42) !important;
    color: #fefefe !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .06) !important;
  }

  html body.catalog-page.pnp-ux-parity .catalog-v2-product .catalog-mini-request .mini-request-head .soft-label b {
    background: #d83070 !important;
    color: #fefefe !important;
  }

  html body.catalog-page.pnp-ux-parity .catalog-v2-product .catalog-mini-request .mini-request-head .btn.ghost {
    border-color: rgba(255, 255, 255, .24) !important;
    background: rgba(5, 17, 31, .45) !important;
    color: #fefefe !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .06) !important;
  }

  html body.catalog-page.pnp-ux-parity .catalog-v2-product .catalog-mini-request .mini-request-head .btn.ghost:is(:hover, :focus-visible) {
    border-color: rgba(255, 186, 211, .56) !important;
    background: rgba(5, 17, 31, .66) !important;
    color: #fefefe !important;
  }

  html body.catalog-page.pnp-ux-parity .catalog-v2-product .catalog-mini-request .mini-request-selected-list {
    border-color: rgba(255, 255, 255, .20) !important;
    background: rgba(5, 17, 31, .40) !important;
    color: rgba(255, 255, 255, .72) !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .05) !important;
  }

  html body.catalog-page.pnp-ux-parity .catalog-v2-product .catalog-mini-request .mini-request-selected-list b {
    color: #f3bed1 !important;
  }

  html body.catalog-page.pnp-ux-parity .catalog-v2-product .catalog-mini-request .mini-request-selected-list span {
    border-color: rgba(255, 255, 255, .18) !important;
    background: linear-gradient(135deg, rgba(32, 44, 71, .92), rgba(5, 17, 31, .72)) !important;
    color: #fefefe !important;
    box-shadow: inset 2px 0 0 #d83070 !important;
  }

  html body.catalog-page.pnp-ux-parity .catalog-v2-product .catalog-mini-request .request-item-remove {
    border-color: rgba(255, 255, 255, .22) !important;
    background: rgba(109, 32, 57, .72) !important;
    color: #fefefe !important;
  }

  html body.catalog-page.pnp-ux-parity .catalog-v2-product .catalog-mini-request .mini-request-actions .btn.light {
    border: 0 !important;
    border-radius: 7px !important;
    background: linear-gradient(135deg, #d83070 0%, #a32855 54%, #7d2445 100%) !important;
    color: #fefefe !important;
    box-shadow: 0 12px 28px rgba(42, 7, 23, .30), inset 0 1px 0 rgba(255, 255, 255, .12) !important;
  }
}

/* Mobile vendor controls v22: deliberate PNP action hierarchy instead of
   high-glare white controls. Primary actions are burgundy; secondary actions
   and filters use the same dark inset surface as the approved form fields. */
@media (max-width: 680px) {
  html body.vendors-page.pnp-ux-parity .vendor-master-actions .btn {
    position: relative !important;
    overflow: hidden !important;
    border-radius: 8px !important;
    color: #fefefe !important;
    transition: border-color .18s ease, background .18s ease, box-shadow .18s ease, transform .18s ease !important;
  }

  html body.vendors-page.pnp-ux-parity .vendor-master-actions .btn.light {
    border: 1px solid rgba(255, 163, 196, .48) !important;
    background:
      radial-gradient(circle at 100% 0%, rgba(255, 255, 255, .14), transparent 40%),
      linear-gradient(135deg, #d83070 0%, #a32855 54%, #7d2445 100%) !important;
    color: #fefefe !important;
    box-shadow: 0 12px 26px rgba(42, 7, 23, .28), inset 0 1px 0 rgba(255, 255, 255, .13) !important;
  }

  html body.vendors-page.pnp-ux-parity .vendor-master-actions .btn.ghost {
    border: 1px solid rgba(118, 143, 176, .44) !important;
    background:
      radial-gradient(circle at 100% 0%, rgba(118, 143, 176, .16), transparent 42%),
      linear-gradient(145deg, #202c47 0%, #121f35 100%) !important;
    color: #fefefe !important;
    box-shadow: inset 3px 0 0 rgba(214, 168, 185, .74), 0 10px 24px rgba(0, 0, 0, .20) !important;
  }

  html body.vendors-page.pnp-ux-parity .vendor-master-actions .btn.light:is(:hover, :focus-visible) {
    border-color: rgba(255, 205, 223, .76) !important;
    background:
      radial-gradient(circle at 100% 0%, rgba(255, 255, 255, .18), transparent 40%),
      linear-gradient(135deg, #e23d7c 0%, #b52e61 56%, #84264a 100%) !important;
    color: #fefefe !important;
    transform: translateY(-1px) !important;
  }

  html body.vendors-page.pnp-ux-parity .vendor-master-actions .btn.ghost:is(:hover, :focus-visible) {
    border-color: rgba(239, 107, 156, .68) !important;
    background:
      radial-gradient(circle at 100% 0%, rgba(255, 255, 255, .10), transparent 42%),
      linear-gradient(135deg, #54243f 0%, #202c47 62%, #121f35 100%) !important;
    color: #fefefe !important;
    box-shadow: inset 3px 0 0 #ef6b9c, 0 12px 26px rgba(20, 4, 13, .24) !important;
    transform: translateY(-1px) !important;
  }

  html body.vendors-page.pnp-ux-parity .vendor-mobile-filter-toggle {
    border: 1px solid rgba(118, 143, 176, .40) !important;
    background:
      radial-gradient(circle at 100% 0%, rgba(118, 143, 176, .14), transparent 42%),
      linear-gradient(145deg, #202c47 0%, #172640 100%) !important;
    color: #fefefe !important;
    box-shadow: inset 3px 0 0 rgba(214, 168, 185, .72), 0 9px 22px rgba(0, 0, 0, .18) !important;
  }

  html body.vendors-page.pnp-ux-parity .vendor-toolbar-main.is-mobile-filters-open .vendor-mobile-filter-toggle {
    border-color: rgba(239, 107, 156, .64) !important;
    background:
      radial-gradient(circle at 100% 0%, rgba(255, 255, 255, .10), transparent 40%),
      linear-gradient(135deg, #54243f 0%, #202c47 60%, #121f35 100%) !important;
    color: #fefefe !important;
    box-shadow: inset 3px 0 0 #ef6b9c, 0 12px 26px rgba(20, 4, 13, .22) !important;
  }

  html body.vendors-page.pnp-ux-parity .vendor-master-panel .vendor-select-button {
    border: 1px solid rgba(118, 143, 176, .42) !important;
    background:
      radial-gradient(circle at 100% 0%, rgba(118, 143, 176, .12), transparent 42%),
      linear-gradient(145deg, rgba(32, 44, 71, .96), rgba(8, 20, 38, .96)) !important;
    color: #fefefe !important;
    box-shadow: inset 3px 0 0 rgba(214, 168, 185, .76), inset 0 1px 0 rgba(255, 255, 255, .06), 0 8px 20px rgba(0, 0, 0, .18) !important;
  }

  html body.vendors-page.pnp-ux-parity .vendor-master-panel .vendor-select-button:is(:hover, :focus-visible) {
    border-color: rgba(239, 107, 156, .68) !important;
    background:
      radial-gradient(circle at 100% 0%, rgba(255, 255, 255, .09), transparent 40%),
      linear-gradient(135deg, #4d233b 0%, #202c47 58%, #121f35 100%) !important;
    color: #fefefe !important;
    box-shadow: inset 3px 0 0 #ef6b9c, 0 10px 24px rgba(20, 4, 13, .22) !important;
  }

  html body.vendors-page.pnp-ux-parity .vendor-master-panel .vendor-custom-select.is-open .vendor-select-button {
    border-color: rgba(255, 163, 196, .72) !important;
    background:
      radial-gradient(circle at 94% 0%, rgba(255, 255, 255, .12), transparent 38%),
      linear-gradient(135deg, #7f294b 0%, #4a233d 48%, #1b2943 100%) !important;
    color: #fefefe !important;
    box-shadow: inset 3px 0 0 #ef6b9c, 0 14px 30px rgba(35, 6, 20, .28) !important;
  }

  html body.vendors-page.pnp-ux-parity .vendor-master-panel :is(.vendor-select-menu, .vendor-suggestions) {
    border-color: rgba(239, 107, 156, .40) !important;
    background:
      radial-gradient(circle at 100% 0%, rgba(109, 32, 57, .24), transparent 34%),
      linear-gradient(145deg, #202c47 0%, #081426 100%) !important;
    box-shadow: 0 18px 44px rgba(0, 0, 0, .38) !important;
  }

  html body.vendors-page.pnp-ux-parity .vendor-advanced-filters .vendor-actions-field .btn.vendor-submit {
    border: 1px solid rgba(255, 163, 196, .38) !important;
    background: linear-gradient(135deg, #a32855 0%, #7d2445 58%, #6d2039 100%) !important;
    color: #fefefe !important;
    box-shadow: 0 10px 22px rgba(42, 7, 23, .24), inset 0 1px 0 rgba(255, 255, 255, .10) !important;
  }

  html body.vendors-page.pnp-ux-parity .vendor-advanced-filters .vendor-actions-field .btn.vendor-clear {
    border: 1px solid rgba(118, 143, 176, .42) !important;
    background:
      radial-gradient(circle at 100% 0%, rgba(118, 143, 176, .14), transparent 42%),
      linear-gradient(145deg, #202c47 0%, #121f35 100%) !important;
    color: #fefefe !important;
    box-shadow: inset 3px 0 0 rgba(214, 168, 185, .72), 0 9px 20px rgba(0, 0, 0, .18) !important;
  }

  html body.vendors-page.pnp-ux-parity .vendor-advanced-filters .vendor-actions-field .btn.vendor-clear:is(:hover, :focus-visible) {
    border-color: rgba(239, 107, 156, .66) !important;
    background: linear-gradient(135deg, #54243f 0%, #202c47 64%, #121f35 100%) !important;
    color: #fefefe !important;
  }

  html body.pnp-ux-parity footer.site-footer.shared-desktop-footer .site-footer-partner-button,
  html body.pnp-ux-parity footer.site-footer.shared-desktop-footer .site-footer-partner-button:hover,
  html body.pnp-ux-parity footer.site-footer.shared-desktop-footer .site-footer-partner-button:focus-visible {
    min-height: 44px !important;
    padding-inline: 18px !important;
    border: 1px solid rgba(255, 163, 196, .54) !important;
    border-radius: 7px !important;
    background:
      radial-gradient(circle at 100% 0%, rgba(255, 255, 255, .14), transparent 40%),
      linear-gradient(135deg, #d83070 0%, #a32855 54%, #7d2445 100%) !important;
    color: #fefefe !important;
    box-shadow: 0 12px 28px rgba(42, 7, 23, .30), inset 0 1px 0 rgba(255, 255, 255, .12) !important;
  }

  html body.pnp-ux-parity footer.site-footer.shared-desktop-footer .site-footer-partner-button:hover,
  html body.pnp-ux-parity footer.site-footer.shared-desktop-footer .site-footer-partner-button:focus-visible {
    border-color: rgba(255, 214, 228, .80) !important;
    background:
      radial-gradient(circle at 100% 0%, rgba(255, 255, 255, .18), transparent 40%),
      linear-gradient(135deg, #e23d7c 0%, #b52e61 56%, #84264a 100%) !important;
    transform: translateY(-1px) !important;
  }
}

/* Mobile review v9: approved borderless hero actions, unambiguous brand tabs,
   and the established dark PNP request form on Home and Contacts. */
@media (max-width: 680px) {
  html body.home-page.pnp-ux-parity #top-mobile .hero-actions .btn:first-child {
    border: 0 !important;
    background: linear-gradient(135deg, #9d2e54 0%, #6d2039 100%) !important;
    box-shadow: 0 14px 30px rgba(34, 6, 20, .28), inset 0 1px 0 rgba(254, 254, 254, .12) !important;
  }

  html body.home-page.pnp-ux-parity #top-mobile .hero-actions .btn.ghost {
    border: 0 !important;
    background: #fefefe !important;
    color: #202c47 !important;
    box-shadow: 0 14px 30px rgba(1, 8, 17, .24) !important;
  }

  html body.home-page.pnp-ux-parity .home-brand-filter-tabs {
    gap: 8px !important;
  }

  html body.home-page.pnp-ux-parity .home-brand-filter-tab,
  html body.home-page.pnp-ux-parity .home-brand-filter-tab:not([aria-selected="true"]):hover,
  html body.home-page.pnp-ux-parity .home-brand-filter-tab:not([aria-selected="true"]):focus-visible {
    min-height: 60px !important;
    border: 1px solid rgba(118, 143, 176, .38) !important;
    border-radius: 10px !important;
    background:
      radial-gradient(circle at 100% 0%, rgba(118, 143, 176, .12), transparent 42%),
      linear-gradient(145deg, rgba(32, 44, 71, .94), rgba(8, 20, 38, .96)) !important;
    color: rgba(254, 254, 254, .90) !important;
    box-shadow: inset 0 1px 0 rgba(254, 254, 254, .06), 0 8px 20px rgba(0, 0, 0, .16) !important;
  }

  html body.home-page.pnp-ux-parity .home-brand-filter-tab:not([aria-selected="true"]):focus-visible {
    border-color: rgba(214, 168, 185, .72) !important;
    outline: 2px solid rgba(214, 168, 185, .24) !important;
    outline-offset: 2px !important;
  }

  html body.home-page.pnp-ux-parity .home-brand-filter-tab[aria-selected="true"] {
    border-color: rgba(214, 168, 185, .58) !important;
    background:
      radial-gradient(circle at 100% 0%, rgba(254, 254, 254, .15), transparent 38%),
      linear-gradient(135deg, #a7335d 0%, #7c2444 58%, #6d2039 100%) !important;
    color: #fefefe !important;
    box-shadow: inset 3px 0 0 #d6a8b9, inset 0 1px 0 rgba(254, 254, 254, .12), 0 12px 28px rgba(42, 7, 23, .28) !important;
  }

  html body.pnp-ux-parity:is(.home-page, .contacts-page) :is(
    #home-request-form,
    #home-mobile-request-form,
    article#request-form.contact-request-card
  ) {
    border: 1px solid rgba(224, 101, 145, .54) !important;
    border-radius: 16px !important;
    background:
      radial-gradient(circle at 92% 4%, rgba(255, 255, 255, .12), transparent 30%),
      radial-gradient(circle at 12% 100%, rgba(216, 48, 112, .15), transparent 34%),
      linear-gradient(150deg, #9b2850 0%, #6d2039 35%, #421f38 66%, #202c47 100%) !important;
    background-size: auto !important;
    color: #fefefe !important;
    box-shadow: 0 24px 58px rgba(0, 0, 0, .34) !important;
  }

  html body.pnp-ux-parity:is(.home-page, .contacts-page) :is(
    #home-request-form,
    #home-mobile-request-form,
    article#request-form.contact-request-card
  )::before {
    height: 3px !important;
    border-radius: 16px 16px 0 0 !important;
    background: linear-gradient(90deg, #ef6b9c 0%, #d6a8b9 48%, transparent 92%) !important;
  }

  html body.pnp-ux-parity:is(.home-page, .contacts-page) :is(
    #home-request-form,
    #home-mobile-request-form,
    article#request-form.contact-request-card
  ) .contact-request-tabs {
    border: 1px solid rgba(254, 254, 254, .16) !important;
    background: rgba(31, 12, 27, .50) !important;
    box-shadow: inset 0 1px 0 rgba(254, 254, 254, .05) !important;
  }

  html body.pnp-ux-parity:is(.home-page, .contacts-page) :is(
    #home-request-form,
    #home-mobile-request-form,
    article#request-form.contact-request-card
  ) .contact-request-tab,
  html body.pnp-ux-parity:is(.home-page, .contacts-page) :is(
    #home-request-form,
    #home-mobile-request-form,
    article#request-form.contact-request-card
  ) .contact-request-tab:not(.is-active):not([aria-selected="true"]):hover {
    border-color: transparent !important;
    background: transparent !important;
    color: rgba(254, 254, 254, .72) !important;
    box-shadow: none !important;
  }

  html body.pnp-ux-parity:is(.home-page, .contacts-page) :is(
    #home-request-form,
    #home-mobile-request-form,
    article#request-form.contact-request-card
  ) .contact-request-tab:is(.is-active, [aria-selected="true"]) {
    border-color: rgba(255, 186, 211, .46) !important;
    background: linear-gradient(135deg, #d83070 0%, #b92f62 100%) !important;
    color: #fefefe !important;
    box-shadow: 0 8px 22px rgba(68, 8, 32, .28) !important;
  }

  html body.pnp-ux-parity:is(.home-page, .contacts-page) :is(
    #home-request-form,
    #home-mobile-request-form,
    article#request-form.contact-request-card
  ) :is(
    .home-request-head h2,
    .home-request-kicker,
    .field label,
    .field-label,
    .field-optional,
    .quick-consent,
    .quick-consent span,
    .form-consent-check,
    .form-consent-check span,
    .cooperation-role-field legend,
    .home-request-reassurance,
    [data-file-label]
  ) {
    color: #fefefe !important;
    text-shadow: none !important;
  }

  html body.pnp-ux-parity:is(.home-page, .contacts-page) :is(
    #home-request-form,
    #home-mobile-request-form,
    article#request-form.contact-request-card
  ) .home-request-kicker {
    color: #f6bfd3 !important;
  }

  html body.pnp-ux-parity:is(.home-page, .contacts-page) :is(
    #home-request-form,
    #home-mobile-request-form,
    article#request-form.contact-request-card
  ) :is(input:not([type="checkbox"]):not([type="radio"]):not([type="file"]), textarea, select) {
    border-color: rgba(254, 254, 254, .22) !important;
    background: rgba(35, 12, 31, .68) !important;
    color: #fefefe !important;
    box-shadow: inset 0 1px 0 rgba(254, 254, 254, .04) !important;
  }

  html body.pnp-ux-parity:is(.home-page, .contacts-page) :is(
    #home-request-form,
    #home-mobile-request-form,
    article#request-form.contact-request-card
  ) :is(input, textarea)::placeholder {
    color: rgba(254, 254, 254, .48) !important;
  }

  html body.pnp-ux-parity:is(.home-page, .contacts-page) :is(
    #home-request-form,
    #home-mobile-request-form,
    article#request-form.contact-request-card
  ) :is(input:not([type="checkbox"]):not([type="radio"]):not([type="file"]), textarea, select):focus {
    border-color: rgba(240, 166, 193, .82) !important;
    background: rgba(25, 9, 24, .80) !important;
    outline: 3px solid rgba(216, 48, 112, .16) !important;
    box-shadow: none !important;
  }

  html body.pnp-ux-parity:is(.home-page, .contacts-page) :is(
    #home-request-form,
    #home-mobile-request-form,
    article#request-form.contact-request-card
  ) .upload-box {
    border-color: rgba(254, 254, 254, .28) !important;
    background: rgba(35, 12, 31, .46) !important;
    color: #fefefe !important;
    box-shadow: inset 0 1px 0 rgba(254, 254, 254, .04) !important;
  }

  html body.pnp-ux-parity:is(.home-page, .contacts-page) :is(
    #home-request-form,
    #home-mobile-request-form,
    article#request-form.contact-request-card
  ) .cooperation-role-option span {
    border-color: rgba(254, 254, 254, .20) !important;
    background: rgba(35, 12, 31, .48) !important;
    color: rgba(254, 254, 254, .78) !important;
  }

  html body.pnp-ux-parity:is(.home-page, .contacts-page) :is(
    #home-request-form,
    #home-mobile-request-form,
    article#request-form.contact-request-card
  ) .cooperation-role-option input:checked + span {
    border-color: rgba(255, 186, 211, .62) !important;
    background: rgba(205, 55, 110, .48) !important;
    color: #fefefe !important;
  }

  html body.pnp-ux-parity:is(.home-page, .contacts-page) :is(
    #home-request-form,
    #home-mobile-request-form,
    article#request-form.contact-request-card
  ) :is(.quick-consent a, .form-consent-check a) {
    color: #ffc0d5 !important;
  }

  html body.pnp-ux-parity:is(.home-page, .contacts-page) :is(
    #home-request-form,
    #home-mobile-request-form,
    article#request-form.contact-request-card
  ) .quick-request-submit,
  html body.pnp-ux-parity:is(.home-page, .contacts-page) :is(
    #home-request-form,
    #home-mobile-request-form,
    article#request-form.contact-request-card
  ) .quick-request-submit:is(:hover, :focus-visible) {
    border: 0 !important;
    background: linear-gradient(135deg, #d83070 0%, #df477f 100%) !important;
    color: #fefefe !important;
    box-shadow: 0 16px 42px rgba(73, 16, 39, .36) !important;
  }
}

@media (max-width: 680px) {
  html body.pnp-ux-parity .header-mobile-contact-actions .header-contact-dropdown {
    display: flex !important;
    flex-direction: column !important;
  }

  html body.pnp-ux-parity .header-mobile-contact-actions .header-contact-direct-list {
    display: grid !important;
    order: 1 !important;
    gap: 4px !important;
    margin: 0 0 8px !important;
    padding: 0 0 8px !important;
    border-bottom: 1px solid rgba(254, 254, 254, .16) !important;
  }

  html body.pnp-ux-parity .header-mobile-contact-actions .header-contact-direct-list .header-contact-item {
    display: flex !important;
  }

  html body.pnp-ux-parity .header-mobile-contact-actions .header-contact-support-list {
    order: 2 !important;
    margin: 0 !important;
    padding: 0 !important;
    border-bottom: 0 !important;
  }
}

@media (max-width: 1080px) {
  html body.pnp-ux-parity .header-mobile-contact-actions .header-contact-support-item {
    border-color: rgba(118, 143, 176, .34) !important;
    background:
      radial-gradient(circle at 100% 0, rgba(214, 168, 185, .12), transparent 42%),
      linear-gradient(135deg, rgba(32, 44, 71, .98), rgba(8, 20, 38, .98)) !important;
    color: #fefefe !important;
    box-shadow: inset 3px 0 0 rgba(214, 168, 185, .72), 0 8px 18px rgba(1, 8, 17, .18) !important;
  }

  html body.pnp-ux-parity .header-mobile-contact-actions .header-contact-support-item:is(:hover, :focus-visible) {
    border-color: rgba(214, 168, 185, .58) !important;
    background:
      radial-gradient(circle at 100% 0, rgba(254, 254, 254, .10), transparent 44%),
      linear-gradient(135deg, rgba(109, 32, 57, .96), rgba(52, 32, 57, .98)) !important;
    color: #fefefe !important;
    box-shadow: inset 3px 0 0 #d6a8b9, 0 10px 24px rgba(73, 16, 39, .28) !important;
  }
}

@media (max-width: 680px) {
  /* Preserve the explicitly approved first screen. */
  html body.home-page.pnp-ux-parity #top-mobile.hero-v13 {
    background-color: #081426 !important;
  }

  html body.home-page.pnp-ux-parity :is(#clients, .home-directions-section, .home-brands-section, #homeRequest, .home-request-form-band) {
    padding-block: 42px !important;
  }

  html body.home-page.pnp-ux-parity #clients .role-entry-head h2,
  html body.home-page.pnp-ux-parity .home-supply-gallery-head h2,
  html body.home-page.pnp-ux-parity .home-brand-section-head h2,
  html body.home-page.pnp-ux-parity #homeRequest .home-request-router-head h2,
  html body.pnp-ux-parity:is(.vendors-page, .partners-page, .contacts-page, .solutions-index-page) .section-head h2 {
    color: var(--pnp-brand-white) !important;
  }

  html body.home-page.pnp-ux-parity #clients .role-entry-grid {
    padding: 12px !important;
  }

  html body.catalog-page.pnp-ux-parity .catalog-v2-index-head {
    border: 1px solid rgba(118, 143, 176, .28) !important;
    background: linear-gradient(145deg, #202c47, #121f35) !important;
  }

  html body.catalog-page.pnp-ux-parity :is(.catalog-v2-index-head-action, .catalog-v2-tree-toggle, .catalog-v2-tree-marker) {
    color: var(--pnp-brand-pink) !important;
  }

  html body.catalog-page.pnp-ux-parity .catalog-v2-tree-row {
    padding-left: 10px !important;
  }

  html body.catalog-page.pnp-ux-parity .catalog-v2-index-list {
    background:
      radial-gradient(circle at 92% 8%, rgba(109, 32, 57, .18), transparent 34%),
      linear-gradient(180deg, #0b182a 0%, #081426 100%) !important;
  }

  html body.catalog-page.pnp-ux-parity .catalog-v2-tree-children {
    border-left-color: rgba(214, 168, 185, .48) !important;
  }

  html body.catalog-page.pnp-ux-parity .catalog-v2-tree-link,
  html body.catalog-page.pnp-ux-parity .catalog-v2-tree-link small {
    color: rgba(237, 243, 252, .82) !important;
  }

  html body.catalog-page.pnp-ux-parity .catalog-v2-tree-toggle,
  html body.catalog-page.pnp-ux-parity .catalog-v2-tree-marker {
    border-color: rgba(118, 143, 176, .46) !important;
    background: rgba(32, 44, 71, .72) !important;
    color: var(--pnp-brand-pink) !important;
    box-shadow: inset 0 1px 0 rgba(254, 254, 254, .06) !important;
  }

  html body.catalog-page.pnp-ux-parity .catalog-v2-tree-row:is(:hover, :focus-within) {
    border-color: rgba(214, 168, 185, .42) !important;
    background: rgba(109, 32, 57, .22) !important;
  }

  html body.catalog-page.pnp-ux-parity .catalog-v2-tree-item.is-selected > .catalog-v2-tree-row {
    border-color: rgba(236, 124, 163, .68) !important;
    background:
      radial-gradient(circle at 92% 12%, rgba(254, 254, 254, .10), transparent 30%),
      linear-gradient(135deg, #8b2a4b 0%, #6d2039 62%, #45233a 100%) !important;
    box-shadow:
      inset 3px 0 0 #ec7ca3,
      0 10px 24px rgba(31, 5, 16, .28) !important;
  }

  html body.catalog-page.pnp-ux-parity .catalog-v2-tree-item.is-selected > .catalog-v2-tree-row > .catalog-v2-tree-link,
  html body.catalog-page.pnp-ux-parity .catalog-v2-tree-item.is-selected > .catalog-v2-tree-row > .catalog-v2-tree-link small {
    color: var(--pnp-brand-white) !important;
  }

  html body.catalog-page.pnp-ux-parity .catalog-v2-tree-item.is-selected > .catalog-v2-tree-row > :is(.catalog-v2-tree-toggle, .catalog-v2-tree-marker) {
    border-color: rgba(254, 254, 254, .40) !important;
    background: var(--pnp-brand-navy) !important;
    color: var(--pnp-brand-white) !important;
    box-shadow: 0 5px 14px rgba(8, 20, 38, .34) !important;
  }

  html body.vendors-page.pnp-ux-parity #vendorDirections .vendor-direction-card .link-more,
  html body.vendors-page.pnp-ux-parity #vendorDirections .vendor-direction-card .link-more:is(:hover, :focus-visible) {
    width: fit-content !important;
    min-height: 0 !important;
    justify-self: start !important;
    justify-content: flex-start !important;
    margin-top: auto !important;
    padding: 3px 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    color: rgba(214, 168, 185, .86) !important;
    font-size: 9px !important;
    font-weight: 600 !important;
    line-height: 1.15 !important;
    letter-spacing: .035em !important;
    text-decoration: none !important;
    text-shadow: none !important;
    box-shadow: none !important;
    backdrop-filter: none !important;
  }

  html body.vendors-page.pnp-ux-parity #vendorDirections .vendor-direction-card .link-more:is(:hover, :focus-visible) {
    color: var(--pnp-brand-white) !important;
    transform: translateX(2px) !important;
  }
}

/* Cascade hardening for legacy high-specificity mobile rules. */
@media (max-width: 1080px) {
  html body.home-page.pnp-ux-parity #clients .role-entry-grid .role-entry-card:nth-child(n) {
    border-color: rgba(118, 143, 176, .26) !important;
    background: radial-gradient(circle at 94% 6%, rgba(118, 143, 176, .13), transparent 34%), linear-gradient(135deg, #202c47, #121f35) !important;
    color: var(--pnp-brand-white) !important;
    box-shadow: inset 3px 0 0 rgba(214, 168, 185, .78), 0 9px 22px rgba(0, 0, 0, .18) !important;
  }

  html body.home-page.pnp-ux-parity article#home-request-form.home-request-card,
  html body.home-page.pnp-ux-parity article#home-mobile-request-form.home-mobile-request-card,
  html body.contacts-page.pnp-ux-parity article#request-form.home-request-card.contact-request-card {
    border-color: rgba(214, 168, 185, .38) !important;
    background: radial-gradient(circle at 104% -6%, rgba(214, 168, 185, .16), transparent 34%), linear-gradient(150deg, #6d2039 0%, #342039 32%, #202c47 66%, #121f35 100%) !important;
    color: #fefefe !important;
    box-shadow: 0 24px 58px rgba(0, 0, 0, .32) !important;
  }

  html body.home-page.pnp-ux-parity article#home-request-form.home-request-card .contact-request-tabs,
  html body.home-page.pnp-ux-parity article#home-mobile-request-form.home-mobile-request-card .contact-request-tabs,
  html body.contacts-page.pnp-ux-parity article#request-form.contact-request-card .contact-request-tabs {
    border-color: rgba(254, 254, 254, .12) !important;
    background: rgba(5, 15, 29, .34) !important;
    box-shadow: inset 0 1px 0 rgba(254, 254, 254, .04) !important;
  }

  html body.home-page.pnp-ux-parity article#home-request-form.home-request-card :is(.home-request-head h2, .home-request-kicker, .field label, .field-label, .field-optional, .quick-consent, .quick-consent a, .home-request-reassurance, [data-file-label]),
  html body.home-page.pnp-ux-parity article#home-mobile-request-form.home-mobile-request-card :is(.home-request-head h2, .home-request-kicker, .field label, .field-label, .field-optional, .quick-consent, .quick-consent a, .home-request-reassurance, [data-file-label]),
  html body.contacts-page.pnp-ux-parity article#request-form.contact-request-card :is(.home-request-head h2, .home-request-kicker, .field label, .field-label, .field-optional, .quick-consent, .quick-consent a, .home-request-reassurance, [data-file-label]) {
    color: #fefefe !important;
  }

  html body.home-page.pnp-ux-parity article#home-request-form.home-request-card .home-request-kicker,
  html body.home-page.pnp-ux-parity article#home-mobile-request-form.home-mobile-request-card .home-request-kicker,
  html body.contacts-page.pnp-ux-parity article#request-form.contact-request-card .home-request-kicker {
    color: var(--pnp-brand-pink) !important;
  }

  html body.home-page.pnp-ux-parity section#homeRequest,
  html body.home-page.pnp-ux-parity section.home-request-form-band,
  html body.vendors-page.pnp-ux-parity section#allManufacturers,
  html body.vendors-page.pnp-ux-parity section#vendorRowsSection,
  html body.partners-page.pnp-ux-parity main > section.section,
  html body.contacts-page.pnp-ux-parity section.contacts-request-section {
    background: radial-gradient(circle at 88% 12%, rgba(109, 32, 57, .14), transparent 27%), linear-gradient(150deg, #111d33 0%, #081426 100%) !important;
  }

  html body.catalog-page.pnp-ux-parity .catalog-v2-index-head > button {
    border-color: rgba(118, 143, 176, .30) !important;
    background: linear-gradient(145deg, #202c47, #121f35) !important;
    color: #fefefe !important;
    box-shadow: inset 3px 0 0 var(--pnp-brand-burgundy), 0 10px 22px rgba(0, 0, 0, .18) !important;
  }

  html body.catalog-page.pnp-ux-parity .catalog-v2-index-head > button :is(small, strong, span) {
    color: #fefefe !important;
  }

  html body.pnp-ux-parity footer.site-footer.shared-desktop-footer,
  html body.pnp-ux-parity footer.site-footer.shared-desktop-footer .site-footer-container {
    background: #081426 !important;
    color: #fefefe !important;
  }

  html body.pnp-ux-parity footer.site-footer.shared-desktop-footer .site-footer-cta {
    border-color: rgba(118, 143, 176, .28) !important;
    background: linear-gradient(145deg, #172640, #121f35) !important;
  }

  html body.home-page.pnp-ux-parity footer.site-footer.shared-desktop-footer {
    border-top-color: rgba(118, 143, 176, .18) !important;
    background: #081426 !important;
    color: #fefefe !important;
  }

  html body.home-page.pnp-ux-parity footer.site-footer.shared-desktop-footer .site-footer-cta {
    border-color: rgba(118, 143, 176, .28) !important;
    background: radial-gradient(circle at 96% 4%, rgba(118, 143, 176, .18), transparent 34%), linear-gradient(145deg, #172640, #121f35) !important;
    box-shadow: 0 18px 44px rgba(0, 0, 0, .24) !important;
  }

  html body.home-page.pnp-ux-parity footer.site-footer.shared-desktop-footer .site-footer-cta :is(h2, p, .site-footer-selection, .site-footer-eyebrow) {
    color: #fefefe !important;
  }

  html body.home-page.pnp-ux-parity footer.site-footer.shared-desktop-footer .site-footer-eyebrow {
    color: #d6a8b9 !important;
  }

  html body.home-page.pnp-ux-parity footer.site-footer.shared-desktop-footer .site-footer-button--secondary {
    border-color: rgba(118, 143, 176, .34) !important;
    background: linear-gradient(135deg, #202c47, #172640) !important;
    color: #fefefe !important;
    box-shadow: inset 3px 0 0 rgba(109, 32, 57, .82) !important;
  }

  html body.home-page.pnp-ux-parity footer.site-footer.shared-desktop-footer .site-footer-button--secondary :is(strong, small) {
    color: #fefefe !important;
  }

  html body.home-page.pnp-ux-parity footer.site-footer.shared-desktop-footer .site-footer-partner-cta {
    border-color: rgba(214, 168, 185, .28) !important;
    background: linear-gradient(135deg, rgba(109, 32, 57, .44), rgba(32, 44, 71, .74)) !important;
  }

  html body.home-page.pnp-ux-parity footer.site-footer.shared-desktop-footer .site-footer-partner-cta :is(h2, p) {
    color: #fefefe !important;
  }

  html body.home-page.pnp-ux-parity footer.site-footer.shared-desktop-footer .site-footer-main {
    border: 1px solid rgba(118, 143, 176, .20) !important;
    background: #121f35 !important;
    color: #fefefe !important;
  }

  html body.home-page.pnp-ux-parity footer.site-footer.shared-desktop-footer :is(.site-footer-tagline, .site-footer-description, .site-footer-address, .site-footer-contact-link, .site-footer-link, .site-footer-group summary, .site-footer-bottom, .site-footer-legal a) {
    color: #fefefe !important;
  }

  html body.home-page.pnp-ux-parity footer.site-footer.shared-desktop-footer :is(.site-footer-group, .site-footer-bottom) {
    border-color: rgba(118, 143, 176, .22) !important;
  }
}

/* Shared mobile header: internal pages use the exact approved homepage shell. */
@media (max-width: 680px) {
  html body.pnp-ux-parity .topbar > .container.topbar-inner {
    /* Match the controls' right clearance to the visible logo artwork,
       accounting for the transparent 86/816 inset in the source PNG. */
    max-width: calc(100% - 18.5px) !important;
  }

  html body.pnp-ux-parity:is(.vendors-page, .partners-page, .contacts-page, .catalog-page, .solutions-index-page):not(.home-mobile-header-scrolled):not(.home-mobile-menu-open):not(.home-mobile-contact-open) .topbar {
    border-bottom-color: transparent !important;
    background: transparent !important;
    box-shadow: none !important;
    backdrop-filter: none !important;
  }

  html body.pnp-ux-parity:is(.vendors-page, .partners-page, .contacts-page, .catalog-page, .solutions-page) .header-mobile-contact-actions .header-contact-toggle,
  html body.pnp-ux-parity:is(.vendors-page, .partners-page, .contacts-page, .catalog-page, .solutions-page) #menuBtn.menu-btn {
    border: 1px solid rgba(254, 254, 254, .86) !important;
    border-radius: 8px !important;
    background: rgba(8, 20, 38, .28) !important;
    color: #fefefe !important;
    box-shadow: inset 0 0 0 1px rgba(254, 254, 254, .08), 0 8px 22px rgba(1, 8, 17, .18) !important;
    backdrop-filter: blur(5px) !important;
  }

  html body.pnp-ux-parity:is(.vendors-page, .partners-page, .contacts-page, .catalog-page, .solutions-page) .header-mobile-contact-actions .header-contact-toggle:focus-visible,
  html body.pnp-ux-parity:is(.vendors-page, .partners-page, .contacts-page, .catalog-page, .solutions-page) #menuBtn.menu-btn:focus-visible {
    outline: 2px solid rgba(254, 254, 254, .82) !important;
    outline-offset: 2px !important;
  }

  /* Internal first screens follow the approved homepage text grid exactly. */
  html body.pnp-ux-parity:is(.vendors-page, .partners-page, .contacts-page, .solutions-index-page) .hero.hero-small.pnp-mobile-standard-hero > .container {
    padding: calc(var(--home-mobile-header-height) + env(safe-area-inset-top) + 18px)
      var(--home-mobile-gutter)
      max(48px, calc(env(safe-area-inset-bottom) + 28px)) !important;
  }

  html body.pnp-ux-parity:is(.vendors-page, .partners-page, .contacts-page, .solutions-index-page) .hero.hero-small.pnp-mobile-standard-hero h1 {
    display: flex !important;
    flex-direction: column !important;
    gap: clamp(8px, 1.7vw, 12px) !important;
    width: 100% !important;
    max-width: none !important;
    margin: clamp(150px, 20svh, 220px) 0 0 !important;
  }

  html body.pnp-ux-parity:is(.vendors-page, .partners-page, .contacts-page, .solutions-index-page) .hero.hero-small.pnp-mobile-standard-hero .pnp-mobile-hero-line,
  html body.pnp-ux-parity:is(.vendors-page, .partners-page, .contacts-page, .solutions-index-page) .hero.hero-small.pnp-mobile-standard-hero h1 .pnp-mobile-hero-line.accent-word {
    width: max-content !important;
    max-width: 100% !important;
    margin: 0 !important;
    font-size: clamp(42px, 10.5vw, 64px) !important;
    line-height: .92 !important;
    text-shadow: 0 4px 18px rgba(0, 0, 0, .34) !important;
  }

  html body.pnp-ux-parity:is(.vendors-page, .partners-page, .contacts-page, .solutions-index-page) .hero.hero-small.pnp-mobile-standard-hero h1::after {
    margin-top: clamp(6px, 1.5vw, 10px) !important;
  }

  html body.pnp-ux-parity:is(.vendors-page, .partners-page, .contacts-page, .solutions-index-page) .hero.hero-small.pnp-mobile-standard-hero .hero-subtitle {
    max-width: 310px !important;
    margin-top: clamp(14px, 2.5svh, 24px) !important;
    font-size: clamp(16px, 4.05vw, 18px) !important;
    font-weight: 450 !important;
    line-height: 1.42 !important;
    letter-spacing: -.01em !important;
    text-shadow: 0 3px 14px rgba(0, 0, 0, .44) !important;
  }
}

@media (max-width: 680px) and (max-height: 850px) {
  html body.pnp-ux-parity:is(.vendors-page, .partners-page, .contacts-page, .solutions-index-page) .hero.hero-small.pnp-mobile-standard-hero h1 {
    gap: 7px !important;
    margin-top: clamp(108px, 15svh, 128px) !important;
  }

  html body.pnp-ux-parity:is(.vendors-page, .partners-page, .contacts-page, .solutions-index-page) .hero.hero-small.pnp-mobile-standard-hero .pnp-mobile-hero-line,
  html body.pnp-ux-parity:is(.vendors-page, .partners-page, .contacts-page, .solutions-index-page) .hero.hero-small.pnp-mobile-standard-hero h1 .pnp-mobile-hero-line.accent-word {
    font-size: clamp(39px, 10vw, 48px) !important;
  }
}

/* Final form surface wins over the legacy cascade-hardening block above. */
@media (max-width: 680px) {
  html body.pnp-ux-parity:is(.home-page, .contacts-page) :is(
    #home-request-form,
    #home-mobile-request-form,
    article#request-form.contact-request-card
  ) {
    border-color: rgba(224, 101, 145, .54) !important;
    background:
      radial-gradient(circle at 92% 4%, rgba(255, 255, 255, .12), transparent 30%),
      radial-gradient(circle at 12% 100%, rgba(216, 48, 112, .15), transparent 34%),
      linear-gradient(150deg, #9b2850 0%, #6d2039 35%, #421f38 66%, #202c47 100%) !important;
    box-shadow: 0 24px 58px rgba(0, 0, 0, .34) !important;
  }

  html body.pnp-ux-parity:is(.home-page, .contacts-page) :is(
    #home-request-form,
    #home-mobile-request-form,
    article#request-form.contact-request-card
  ) .contact-request-tabs {
    border-color: rgba(254, 254, 254, .16) !important;
    background: rgba(31, 12, 27, .50) !important;
    box-shadow: inset 0 1px 0 rgba(254, 254, 254, .05) !important;
  }
}

/* Mobile workflow v14: preserve the desktop timeline geometry on narrow
   screens. The rail runs below each node and beneath its dark isolation ring,
   so the visible line stops cleanly at the ring instead of touching the circle. */
@media (max-width: 680px) {
  html body.home-page.pnp-ux-parity #homeRequest .home-request-stage-tabs {
    position: relative !important;
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 0 !important;
    width: 100% !important;
    margin: 0 0 12px !important;
    padding: 10px 4px 8px !important;
    overflow: visible !important;
    border: 1px solid rgba(118, 143, 176, .30) !important;
    border-radius: 14px !important;
    background:
      linear-gradient(rgba(118, 143, 176, .045) 1px, transparent 1px),
      linear-gradient(90deg, rgba(118, 143, 176, .045) 1px, transparent 1px),
      linear-gradient(145deg, rgba(8, 26, 48, .82), rgba(20, 35, 60, .70)) !important;
    background-size: 30px 30px, 30px 30px, auto !important;
    box-shadow: inset 0 1px 0 rgba(254, 254, 254, .045), 0 12px 28px rgba(0, 0, 0, .18) !important;
    isolation: isolate !important;
  }

  html body.home-page.pnp-ux-parity #homeRequest .home-request-stage-rail {
    position: absolute !important;
    z-index: 2 !important;
    top: 25px !important;
    right: calc(12.5% + 3px) !important;
    left: calc(12.5% + 3px) !important;
    display: block !important;
    height: 2px !important;
    border-radius: 999px !important;
    background: rgba(126, 158, 197, .44) !important;
    box-shadow: 0 0 10px rgba(70, 132, 198, .14) !important;
    opacity: 1 !important;
    pointer-events: none !important;
  }

  html body.home-page.pnp-ux-parity #homeRequest .home-request-stage-rail::after {
    inset: -3px 0 !important;
    background: linear-gradient(90deg, transparent, rgba(126, 182, 237, .14), transparent) !important;
    filter: none !important;
  }

  html body.home-page.pnp-ux-parity #homeRequest .home-request-stage-rail-fill {
    display: block !important;
    background: linear-gradient(90deg, #9e2852, #c94470 68%, #e18ba8) !important;
    box-shadow: 0 0 9px rgba(201, 68, 113, .42) !important;
    opacity: .94 !important;
  }

  html body.home-page.pnp-ux-parity #homeRequest .home-request-stage-runner {
    display: block !important;
    width: 12px !important;
    height: 12px !important;
    border: 2px solid #e1789b !important;
    background: #fff7fa !important;
    box-shadow: 0 0 0 3px rgba(225, 120, 155, .14), 0 0 18px rgba(222, 76, 128, .68) !important;
  }

  html body.home-page.pnp-ux-parity #homeRequest .home-request-stage {
    position: relative !important;
    z-index: auto !important;
    box-sizing: border-box !important;
    display: grid !important;
    grid-template-columns: 1fr !important;
    grid-template-rows: 34px minmax(0, auto) !important;
    place-items: start center !important;
    gap: 5px !important;
    width: 100% !important;
    min-width: 0 !important;
    min-height: 82px !important;
    margin: 0 !important;
    padding: 0 3px 7px !important;
    border: 0 !important;
    border-radius: 10px !important;
    background: transparent !important;
    color: rgba(235, 242, 251, .78) !important;
    text-align: center !important;
    box-shadow: none !important;
    transform: none !important;
  }

  html body.home-page.pnp-ux-parity #homeRequest .home-request-stage:hover {
    border: 0 !important;
    background: rgba(79, 112, 151, .10) !important;
    color: #fefefe !important;
    box-shadow: none !important;
  }

  html body.home-page.pnp-ux-parity #homeRequest .home-request-stage::after {
    position: absolute !important;
    z-index: 4 !important;
    right: 20% !important;
    bottom: 0 !important;
    left: 20% !important;
    height: 2px !important;
    border-radius: 999px !important;
    background: transparent !important;
    content: "" !important;
    box-shadow: none !important;
  }

  html body.home-page.pnp-ux-parity #homeRequest .home-request-stage:is(.is-active, [aria-selected="true"]) {
    border: 0 !important;
    background: linear-gradient(180deg, rgba(159, 45, 87, .10), rgba(63, 91, 129, .04)) !important;
    color: #fefefe !important;
    box-shadow: none !important;
  }

  /* Match the desktop state treatment. These selectors deliberately mirror
     the earlier mobile readability rules so the timeline, not four cards,
     remains the final presentation. */
  html body.home-page.pnp-ux-parity #homeRequest button.home-request-stage:not(.is-active):not([aria-selected="true"]) {
    border: 0 !important;
    background: transparent !important;
    color: rgba(235, 242, 251, .78) !important;
    box-shadow: none !important;
  }

  html body.home-page.pnp-ux-parity #homeRequest button.home-request-stage:is(.is-active, [aria-selected="true"]) {
    border: 0 !important;
    background: linear-gradient(180deg, rgba(159, 45, 87, .16), rgba(63, 91, 129, .08)) !important;
    color: #fefefe !important;
    box-shadow: inset 0 0 0 1px rgba(226, 112, 154, .18) !important;
  }

  html body.home-page.pnp-ux-parity #homeRequest .home-request-stage:is(.is-active, [aria-selected="true"])::after {
    background: linear-gradient(90deg, transparent, #c94470 18%, #e18ba8 82%, transparent) !important;
    box-shadow: 0 0 9px rgba(201, 68, 113, .42) !important;
  }

  html body.home-page.pnp-ux-parity #homeRequest .home-request-stage-node,
  html body.home-page.pnp-ux-parity #homeRequest .home-request-stage:is(.is-active, [aria-selected="true"]) .home-request-stage-node {
    position: relative !important;
    z-index: 3 !important;
    top: auto !important;
    left: auto !important;
    display: grid !important;
    place-items: center !important;
    width: 30px !important;
    height: 30px !important;
    border: 1px solid rgba(153, 187, 225, .52) !important;
    border-radius: 50% !important;
    background: #0c223c !important;
    color: rgba(235, 242, 251, .94) !important;
    font-family: Inter, "Segoe UI", system-ui, -apple-system, BlinkMacSystemFont, Arial, sans-serif !important;
    font-size: 8px !important;
    font-weight: 850 !important;
    line-height: normal !important;
    box-shadow: 0 0 0 5px rgba(12, 34, 60, .96), 0 0 12px rgba(40, 91, 143, .18) !important;
    transform: none !important;
  }

  html body.home-page.pnp-ux-parity #homeRequest .home-request-stage.is-complete .home-request-stage-node {
    border-color: rgba(223, 103, 147, .78) !important;
    background: linear-gradient(145deg, rgba(135, 38, 73, .96), rgba(74, 33, 61, .98)) !important;
    color: #ffd7e5 !important;
    box-shadow: 0 0 0 5px rgba(12, 34, 60, .96), 0 0 15px rgba(216, 75, 128, .26) !important;
  }

  html body.home-page.pnp-ux-parity #homeRequest button.home-request-stage:not(.is-active):not([aria-selected="true"]) .home-request-stage-node {
    border-color: rgba(153, 187, 225, .52) !important;
    background: #0c223c !important;
    color: rgba(235, 242, 251, .94) !important;
    box-shadow: 0 0 0 5px rgba(12, 34, 60, .96), 0 0 12px rgba(40, 91, 143, .18) !important;
  }

  html body.home-page.pnp-ux-parity #homeRequest button.home-request-stage:not(.is-active):not([aria-selected="true"]).is-complete .home-request-stage-node {
    border-color: rgba(223, 103, 147, .78) !important;
    background: #0c223c !important;
    color: #ffd7e5 !important;
    box-shadow: 0 0 0 5px rgba(12, 34, 60, .96), 0 0 15px rgba(216, 75, 128, .26) !important;
  }

  html body.home-page.pnp-ux-parity #homeRequest .home-request-stage:is(.is-active, [aria-selected="true"]) .home-request-stage-node {
    border-color: rgba(255, 205, 223, .96) !important;
    background: linear-gradient(145deg, #ad315e, #7d2346) !important;
    color: #fefefe !important;
    box-shadow: 0 0 0 5px rgba(12, 34, 60, .96), 0 0 22px rgba(225, 83, 136, .62) !important;
  }

  html body.home-page.pnp-ux-parity #homeRequest .home-request-stage-copy {
    position: relative !important;
    z-index: 3 !important;
    display: grid !important;
    min-width: 0 !important;
    justify-items: center !important;
    gap: 3px !important;
  }

  html body.home-page.pnp-ux-parity #homeRequest .home-request-stage-copy strong {
    display: block !important;
    color: inherit !important;
    font-size: 11.5px !important;
    font-weight: 750 !important;
    line-height: 1.1 !important;
    text-align: center !important;
  }

  html body.home-page.pnp-ux-parity #homeRequest .home-request-stage-copy small,
  html body.home-page.pnp-ux-parity #homeRequest .home-request-stage:is(.is-active, [aria-selected="true"]) .home-request-stage-copy small {
    display: block !important;
    margin: 0 !important;
    overflow: visible !important;
    color: rgba(220, 231, 246, .72) !important;
    font-size: clamp(8px, 2.2vw, 9.5px) !important;
    font-weight: 550 !important;
    line-height: 1.15 !important;
    white-space: normal !important;
    text-align: center !important;
    text-overflow: clip !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
    hyphens: none !important;
  }

  html body.home-page.pnp-ux-parity #homeRequest .home-request-stage:focus-visible {
    outline: 2px solid rgba(214, 168, 185, .82) !important;
    outline-offset: -2px !important;
  }
}

/* The request CTA uses the desktop PNP treatment verbatim. Earlier mobile
   rules made it hotter pink and rounded it into a different component. */
@media (max-width: 680px) {
  html body.pnp-ux-parity:is(.home-page, .contacts-page) :is(
    #home-request-form,
    #home-mobile-request-form,
    article#request-form.contact-request-card
  ) .home-request-actions > button.quick-request-submit.btn[type="submit"],
  html body.pnp-ux-parity:is(.home-page, .contacts-page) :is(
    #home-request-form,
    #home-mobile-request-form,
    article#request-form.contact-request-card
  ) .home-request-actions > button.quick-request-submit.btn[type="submit"]:hover {
    border: 1px solid rgba(255, 220, 232, .78) !important;
    border-radius: 3px !important;
    background: linear-gradient(135deg, var(--cta-primary-start) 0%, var(--cta-primary-mid) 54%, var(--cta-primary-end) 100%) !important;
    color: #fff !important;
    box-shadow: 0 18px 42px var(--cta-primary-shadow), inset 0 1px 0 rgba(255, 255, 255, .2) !important;
  }

  html body.pnp-ux-parity:is(.home-page, .contacts-page) :is(
    #home-request-form,
    #home-mobile-request-form,
    article#request-form.contact-request-card
  ) .home-request-actions > button.quick-request-submit.btn[type="submit"]:focus-visible {
    border-color: #ffe1eb !important;
    background: linear-gradient(135deg, var(--cta-primary-hover) 0%, var(--cta-primary-mid) 54%, var(--cta-primary-end) 100%) !important;
    box-shadow: 0 22px 54px var(--cta-primary-shadow), 0 0 0 4px var(--cta-primary-ring) !important;
    outline: none !important;
  }
}

@media (max-width: 680px) and (hover: hover) {
  html body.pnp-ux-parity:is(.home-page, .contacts-page) :is(
    #home-request-form,
    #home-mobile-request-form,
    article#request-form.contact-request-card
  ) .home-request-actions > button.quick-request-submit.btn[type="submit"]:hover {
    border-color: #ffe1eb !important;
    background: linear-gradient(135deg, var(--cta-primary-hover) 0%, var(--cta-primary-mid) 54%, var(--cta-primary-end) 100%) !important;
    box-shadow: 0 22px 54px var(--cta-primary-shadow), 0 0 0 4px var(--cta-primary-ring) !important;
  }
}

/* Mobile request form v14: measured from the active pnp1.ru form at 390px.
   Keep this as one authoritative component so typography, surfaces and states
   cannot drift independently in Home and Contacts. */
@media (max-width: 680px) {
  html body.pnp-ux-parity:is(.home-page, .contacts-page) :is(
    #home-request-form,
    #home-mobile-request-form,
    article#request-form.contact-request-card
  ) {
    border: 1px solid rgba(236, 124, 163, .58) !important;
    border-radius: 16px !important;
    background:
      radial-gradient(circle at 88% 8%, rgba(255, 255, 255, .12), transparent 30%),
      linear-gradient(145deg, #9b2850, #792646 58%, #2d324d) !important;
    color: #fefefe !important;
    box-shadow: 0 24px 64px rgba(40, 10, 24, .34) !important;
    padding: 21px 17px 19px !important;
    font-family: Inter, "Segoe UI", system-ui, -apple-system, BlinkMacSystemFont, Arial, sans-serif !important;
  }

  html body.pnp-ux-parity:is(.home-page, .contacts-page) :is(
    #home-request-form,
    #home-mobile-request-form,
    article#request-form.contact-request-card
  )::before {
    background: linear-gradient(90deg, #ff86b1, #cc3f6e 48%, transparent 90%) !important;
  }

  html body.pnp-ux-parity:is(.home-page, .contacts-page) :is(
    #home-request-form,
    #home-mobile-request-form,
    article#request-form.contact-request-card
  ) :is(button, input, textarea, label, span, a, small) {
    font-family: Inter, "Segoe UI", system-ui, -apple-system, BlinkMacSystemFont, Arial, sans-serif !important;
  }

  html body.pnp-ux-parity:is(.home-page, .contacts-page) :is(
    #home-request-form,
    #home-mobile-request-form,
    article#request-form.contact-request-card
  ) .contact-request-tabs {
    gap: 4px !important;
    min-height: 52px !important;
    margin: 0 0 18px !important;
    padding: 4px !important;
    border: 1px solid rgba(255, 255, 255, .20) !important;
    border-radius: 8px !important;
    background: rgba(31, 12, 27, .46) !important;
    box-shadow: none !important;
  }

  html body.pnp-ux-parity:is(.home-page, .contacts-page) :is(
    #home-request-form,
    #home-mobile-request-form,
    article#request-form.contact-request-card
  ) .contact-request-tab,
  html body.pnp-ux-parity:is(.home-page, .contacts-page) :is(
    #home-request-form,
    #home-mobile-request-form,
    article#request-form.contact-request-card
  ) .contact-request-tab:not(.is-active):not([aria-selected="true"]) {
    min-height: 42px !important;
    padding: 9px 8px !important;
    border: 1px solid transparent !important;
    border-radius: 6px !important;
    background: transparent !important;
    color: rgba(255, 255, 255, .68) !important;
    box-shadow: none !important;
    font-size: 11.5px !important;
    font-weight: 800 !important;
    line-height: normal !important;
    -webkit-text-fill-color: currentColor !important;
  }

  html body.pnp-ux-parity:is(.home-page, .contacts-page) :is(
    #home-request-form,
    #home-mobile-request-form,
    article#request-form.contact-request-card
  ) .contact-request-tab:is(.is-active, [aria-selected="true"]) {
    min-height: 42px !important;
    padding: 9px 8px !important;
    border: 1px solid rgba(255, 186, 211, .44) !important;
    border-radius: 6px !important;
    background: #c8376d !important;
    color: #fff !important;
    box-shadow: 0 8px 22px rgba(68, 8, 32, .24) !important;
    font-size: 11.5px !important;
    font-weight: 800 !important;
    line-height: normal !important;
    -webkit-text-fill-color: #fff !important;
  }

  html body.pnp-ux-parity:is(.home-page, .contacts-page) :is(
    #home-request-form,
    #home-mobile-request-form,
    article#request-form.contact-request-card
  ) .home-request-head {
    margin: 0 !important;
    color: #fefefe !important;
  }

  html body.pnp-ux-parity:is(.home-page, .contacts-page) :is(
    #home-request-form,
    #home-mobile-request-form,
    article#request-form.contact-request-card
  ) .home-request-kicker {
    margin: 0 !important;
    color: #f3bed1 !important;
    font-size: 11px !important;
    font-weight: 900 !important;
    line-height: normal !important;
    letter-spacing: 1.54px !important;
  }

  html body.pnp-ux-parity:is(.home-page, .contacts-page) :is(
    #home-request-form,
    #home-mobile-request-form,
    article#request-form.contact-request-card
  ) .home-request-head h2 {
    margin: 7px 0 8px !important;
    color: #fefefe !important;
    font-size: 32px !important;
    font-weight: 700 !important;
    line-height: 1.04 !important;
    letter-spacing: -1.408px !important;
  }

  html body.pnp-ux-parity:is(.home-page, .contacts-page) :is(
    #home-request-form,
    #home-mobile-request-form,
    article#request-form.contact-request-card
  ) form.quick-request-form {
    gap: 13px !important;
    margin-top: 17px !important;
  }

  html body.pnp-ux-parity:is(.home-page, .contacts-page) :is(
    #home-request-form,
    #home-mobile-request-form,
    article#request-form.contact-request-card
  ) .field {
    gap: 8px !important;
  }

  html body.pnp-ux-parity:is(.home-page, .contacts-page) :is(
    #home-request-form,
    #home-mobile-request-form,
    article#request-form.contact-request-card
  ) :is(.field > label, .field-label) {
    color: #fff !important;
    font-size: 12px !important;
    font-weight: 900 !important;
    line-height: normal !important;
    letter-spacing: 1.92px !important;
  }

  html body.pnp-ux-parity:is(.home-page, .contacts-page) :is(
    #home-request-form,
    #home-mobile-request-form,
    article#request-form.contact-request-card
  ) .field-label {
    color: rgba(255, 255, 255, .82) !important;
    letter-spacing: 1.2px !important;
  }

  html body.pnp-ux-parity:is(.home-page, .contacts-page) :is(
    #home-request-form,
    #home-mobile-request-form,
    article#request-form.contact-request-card
  ) .field-optional {
    color: rgba(255, 255, 255, .55) !important;
    font-size: 10px !important;
    font-weight: 700 !important;
    line-height: normal !important;
    letter-spacing: .2px !important;
  }

  html body.pnp-ux-parity:is(.home-page, .contacts-page) :is(
    #home-request-form,
    #home-mobile-request-form,
    article#request-form.contact-request-card
  ) :is(input:not([type="hidden"]):not([type="file"]):not([type="checkbox"]), textarea, select) {
    min-height: 48px !important;
    padding: 14px 15px !important;
    border: 1px solid rgba(255, 255, 255, .20) !important;
    border-radius: 7px !important;
    background: rgba(5, 17, 31, .45) !important;
    color: #fff !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .06) !important;
    font-size: 16px !important;
    font-weight: 400 !important;
  }

  html body.pnp-ux-parity:is(.home-page, .contacts-page) :is(
    #home-request-form,
    #home-mobile-request-form,
    article#request-form.contact-request-card
  ) textarea {
    min-height: 82px !important;
  }

  html body.pnp-ux-parity:is(.home-page, .contacts-page) :is(
    #home-request-form,
    #home-mobile-request-form,
    article#request-form.contact-request-card
  ) :is(input, textarea)::placeholder {
    color: rgba(255, 255, 255, .44) !important;
    opacity: 1 !important;
  }

  html body.pnp-ux-parity:is(.home-page, .contacts-page) :is(
    #home-request-form,
    #home-mobile-request-form,
    article#request-form.contact-request-card
  ) .upload-box {
    width: fit-content !important;
    min-width: 0 !important;
    min-height: 48px !important;
    padding: 10px 13px !important;
    border: 1px solid rgba(255, 255, 255, .30) !important;
    border-radius: 11px !important;
    background: rgba(5, 17, 31, .28) !important;
    color: #fff !important;
    box-shadow: none !important;
    font-size: 12px !important;
    font-weight: 900 !important;
    line-height: 1.35 !important;
    letter-spacing: 1.92px !important;
  }

  html body.pnp-ux-parity:is(.home-page, .contacts-page) :is(
    #home-request-form,
    #home-mobile-request-form,
    article#request-form.contact-request-card
  ) .upload-box-icon {
    width: 20px !important;
    height: 20px !important;
    color: #fff !important;
    stroke: currentColor !important;
  }

  html body.pnp-ux-parity:is(.home-page, .contacts-page) :is(
    #home-request-form,
    #home-mobile-request-form,
    article#request-form.contact-request-card
  ) .quick-consent {
    grid-template-columns: 18px minmax(0, 1fr) !important;
    gap: 9px !important;
    color: rgba(255, 255, 255, .68) !important;
    font-size: 11.5px !important;
    font-weight: 400 !important;
    line-height: 1.4 !important;
  }

  html body.pnp-ux-parity:is(.home-page, .contacts-page) :is(
    #home-request-form,
    #home-mobile-request-form,
    article#request-form.contact-request-card
  ) .quick-consent input[type="checkbox"] {
    width: 18px !important;
    min-width: 18px !important;
    height: 18px !important;
    min-height: 18px !important;
    margin-top: 1px !important;
    background: #fff !important;
  }

  html body.pnp-ux-parity:is(.home-page, .contacts-page) :is(
    #home-request-form,
    #home-mobile-request-form,
    article#request-form.contact-request-card
  ) .quick-consent span {
    color: rgba(255, 255, 255, .68) !important;
    font-size: 11px !important;
    font-weight: 400 !important;
    line-height: 1.42 !important;
  }

  html body.pnp-ux-parity:is(.home-page, .contacts-page) :is(
    #home-request-form,
    #home-mobile-request-form,
    article#request-form.contact-request-card
  ) .quick-consent a {
    color: #f0a2bd !important;
    font-size: 11px !important;
    font-weight: 850 !important;
    line-height: 1.42 !important;
  }

  html body.pnp-ux-parity:is(.home-page, .contacts-page) :is(
    #home-request-form,
    #home-mobile-request-form,
    article#request-form.contact-request-card
  ) .home-request-actions {
    gap: 8px !important;
  }

  html body.pnp-ux-parity:is(.home-page, .contacts-page) :is(
    #home-request-form,
    #home-mobile-request-form,
    article#request-form.contact-request-card
  ) .home-request-actions > button.quick-request-submit.btn[type="submit"],
  html body.pnp-ux-parity:is(.home-page, .contacts-page) :is(
    #home-request-form,
    #home-mobile-request-form,
    article#request-form.contact-request-card
  ) .home-request-actions > button.quick-request-submit.btn[type="submit"]:hover {
    min-height: 52px !important;
    padding: 14px 22px !important;
    border: 0 !important;
    border-radius: 3px !important;
    background: linear-gradient(135deg, #a32850 0%, #c93c6a 54%, #cc3f6e 100%) !important;
    color: #fff !important;
    box-shadow: 0 18px 42px rgba(163, 40, 80, .58), inset 0 1px 0 rgba(255, 255, 255, .20) !important;
    font-size: 13px !important;
    font-weight: 850 !important;
    line-height: normal !important;
    letter-spacing: .13px !important;
  }

  html body.pnp-ux-parity:is(.home-page, .contacts-page) :is(
    #home-request-form,
    #home-mobile-request-form,
    article#request-form.contact-request-card
  ) .home-request-reassurance {
    display: none !important;
  }
}

/* Mobile request form v15: specificity guard for legacy parity selectors.
   These rules intentionally repeat only the states that older component
   selectors can otherwise override after the production-matched v14 layer. */
@media (max-width: 680px) {
  html body.home-page.pnp-ux-parity article#home-request-form.home-request-card,
  html body.home-page.pnp-ux-parity article#home-mobile-request-form.home-mobile-request-card,
  html body.contacts-page.pnp-ux-parity article#request-form.home-request-card.contact-request-card {
    border: 1px solid rgba(236, 124, 163, .58) !important;
    border-radius: 16px !important;
    background:
      radial-gradient(circle at 88% 8%, rgba(255, 255, 255, .12), transparent 30%),
      linear-gradient(145deg, #9b2850, #792646 58%, #2d324d) !important;
    color: #fefefe !important;
    box-shadow: 0 24px 64px rgba(40, 10, 24, .34) !important;
    padding: 21px 17px 19px !important;
    font-family: Inter, "Segoe UI", system-ui, -apple-system, BlinkMacSystemFont, Arial, sans-serif !important;
  }

  html body.home-page.pnp-ux-parity article#home-request-form.home-request-card::before,
  html body.home-page.pnp-ux-parity article#home-mobile-request-form.home-mobile-request-card::before,
  html body.contacts-page.pnp-ux-parity article#request-form.home-request-card.contact-request-card::before {
    background: linear-gradient(90deg, #ff86b1, #cc3f6e 48%, transparent 90%) !important;
  }

  html body.home-page.pnp-ux-parity article#home-request-form.home-request-card button.contact-request-tab:not(.is-active):not([aria-selected="true"]),
  html body.home-page.pnp-ux-parity article#home-mobile-request-form.home-mobile-request-card button.contact-request-tab:not(.is-active):not([aria-selected="true"]),
  html body.contacts-page.pnp-ux-parity article#request-form.contact-request-card button.contact-request-tab:not(.is-active):not([aria-selected="true"]) {
    border: 1px solid transparent !important;
    background: transparent !important;
    color: rgba(255, 255, 255, .68) !important;
    box-shadow: none !important;
    opacity: 1 !important;
    -webkit-text-fill-color: rgba(255, 255, 255, .68) !important;
  }

  html body.home-page.pnp-ux-parity article#home-request-form.home-request-card button.contact-request-tab:is(.is-active, [aria-selected="true"]),
  html body.home-page.pnp-ux-parity article#home-mobile-request-form.home-mobile-request-card button.contact-request-tab:is(.is-active, [aria-selected="true"]),
  html body.contacts-page.pnp-ux-parity article#request-form.contact-request-card button.contact-request-tab:is(.is-active, [aria-selected="true"]) {
    border: 1px solid rgba(255, 186, 211, .44) !important;
    background: #c8376d !important;
    color: #fff !important;
    box-shadow: 0 8px 22px rgba(68, 8, 32, .24) !important;
    -webkit-text-fill-color: #fff !important;
  }

  html body.home-page.pnp-ux-parity article#home-request-form.home-request-card span.home-request-kicker,
  html body.home-page.pnp-ux-parity article#home-mobile-request-form.home-mobile-request-card span.home-request-kicker,
  html body.contacts-page.pnp-ux-parity article#request-form.contact-request-card span.home-request-kicker {
    color: #f3bed1 !important;
  }

  html body.home-page.pnp-ux-parity article#home-request-form.home-request-card label.upload-box[for][class],
  html body.home-page.pnp-ux-parity article#home-mobile-request-form.home-mobile-request-card label.upload-box[for][class],
  html body.contacts-page.pnp-ux-parity article#request-form.contact-request-card label.upload-box[for][class] {
    width: fit-content !important;
    min-width: 0 !important;
    min-height: 48px !important;
    padding: 10px 13px !important;
    border: 1px solid rgba(255, 255, 255, .30) !important;
    border-radius: 11px !important;
    background: rgba(5, 17, 31, .28) !important;
    color: #fff !important;
    box-shadow: none !important;
    -webkit-text-fill-color: #fff !important;
  }

  html body.home-page.pnp-ux-parity article#home-request-form.home-request-card .field textarea[name]:not([hidden]),
  html body.home-page.pnp-ux-parity article#home-mobile-request-form.home-mobile-request-card .field textarea[name]:not([hidden]),
  html body.contacts-page.pnp-ux-parity article#request-form.contact-request-card .field textarea[name]:not([hidden]) {
    min-height: 82px !important;
  }
}
