/* Partners 3.10.24: content-driven A/B heroes, scoped to the landing shell. */
.ptz-landing-shell[data-ptz-variant^="partners-"] {
  --ptz-page-gutter: 21px;
}

.ptz-landing-shell[data-ptz-variant^="partners-"] .ptz-container {
  padding-inline: var(--ptz-page-gutter);
}
.ptz-landing-shell[data-ptz-variant^="partners-"] .ptz-footer__contact .ptz-footer__link {
  display: inline-flex;
  min-height: 44px;
  align-items: center;
}

.ptz-landing-shell .ptz-partners {
  --partners-max: 1500px;
  background:
    radial-gradient(circle at 12% 14%, color-mix(in srgb, var(--ptz-accent) 10%, transparent), transparent 28rem),
    var(--ptz-bg);
}

.ptz-landing-shell .ptz-partners :where(h1, h2, h3, p) { text-wrap: pretty; }
.ptz-landing-shell .ptz-partners .ptz-container { max-width: var(--partners-max); }
.ptz-landing-shell .ptz-partners h1 { margin: 0 0 24px; font-size: clamp(3.5rem, 7vw, 7.7rem); line-height: .91; letter-spacing: -.065em; }
.ptz-landing-shell .ptz-partners h1 span,
.ptz-landing-shell .ptz-partners a:not(.ptz-button):hover { color: var(--ptz-accent); }
.ptz-landing-shell .ptz-partners h2 { margin: 0 0 18px; font-size: clamp(2.2rem, 4.1vw, 4.6rem); }
.ptz-landing-shell .ptz-partners h3 { margin: 0 0 12px; font-size: clamp(1.35rem, 2vw, 2rem); }

.ptz-landing-shell .ptz-partners-hero { position: relative; min-height: 0; height: auto; overflow: clip; }
.ptz-landing-shell .ptz-partners-hero__grid { display: grid; min-height: 0; height: auto; grid-template-columns: minmax(0, 1.04fr) minmax(380px, .76fr); gap: clamp(34px, 6vw, 92px); align-items: start; align-content: start; padding-block: 0 clamp(36px, 3vw, 48px); }
.ptz-landing-shell .ptz-partners-hero__copy { max-width: 850px; }
.ptz-landing-shell .ptz-partners-lede { max-width: 720px; margin-bottom: 30px; color: var(--ptz-muted); font-size: clamp(1.08rem, 1.55vw, 1.35rem); line-height: 1.55; }
.ptz-landing-shell .ptz-partners-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-bottom: 20px; }
.ptz-landing-shell .ptz-partners-trust { margin: 0; color: var(--ptz-muted); font-size: .91rem; }
.ptz-landing-shell .ptz-partners-hero__media { position: relative; margin: 0; min-height: 570px; overflow: hidden; border: 1px solid var(--ptz-line); border-radius: 30px 4px 30px 4px; background: var(--ptz-surface); box-shadow: var(--ptz-shadow); }
.ptz-landing-shell .ptz-partners-hero__media::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, transparent 56%, rgba(7,9,10,.88)); pointer-events: none; }
.ptz-landing-shell .ptz-partners-hero__media img { width: 100%; height: 100%; min-height: 570px; object-fit: cover; }
.ptz-landing-shell .ptz-partners-hero__media figcaption { position: absolute; z-index: 1; inset: auto 24px 22px; margin: 0; color: #f9fafb; font-size: .9rem; }

.ptz-landing-shell .ptz-partners-hero--b { min-height: 0; height: auto; isolation: isolate; color: #f9fafb; background: #0a0b0d; }
.ptz-landing-shell .ptz-partners-hero__backdrop,
.ptz-landing-shell .ptz-partners-hero__shade { position: absolute; inset: 0; width: 100%; height: 100%; }
.ptz-landing-shell .ptz-partners-hero__backdrop { z-index: -2; object-fit: cover; object-position: center 42%; filter: saturate(.76) contrast(1.07); }
.ptz-landing-shell .ptz-partners-hero__shade { z-index: -1; background: linear-gradient(90deg, rgba(5,7,8,.95) 0%, rgba(5,7,8,.78) 47%, rgba(5,7,8,.36) 100%); }
.ptz-landing-shell .ptz-partners-hero__editorial { display: grid; min-height: 0; height: auto; grid-template-columns: minmax(0, .92fr) minmax(360px, .58fr); gap: clamp(48px, 9vw, 150px); align-items: start; align-content: start; padding-block: 0 clamp(36px, 3vw, 48px); }
.ptz-landing-shell .ptz-partners-hero__editorial > div:first-child { max-width: 780px; }
.ptz-landing-shell .ptz-partners-hero--b h1 { color: #f9fafb; font-family: Georgia, 'Times New Roman', serif; font-weight: 500; }
.ptz-landing-shell .ptz-partners-hero--b h1 span,
.ptz-landing-shell .ptz-partners-hero--b .ptz-kicker { color: #c8f135; }
.ptz-landing-shell .ptz-partners-hero--b .ptz-partners-trust { color: #d5d9df; }
.ptz-landing-shell .ptz-partners-hero__editorial > div:first-child > p:not(.ptz-kicker,.ptz-partners-trust) { max-width: 670px; color: #d5d9df; font-size: 1.16rem; }
.ptz-landing-shell .ptz-partners-chooser { border-top: 3px solid #f9fafb; }
.ptz-landing-shell .ptz-partners-chooser > p { margin: 0; padding: 17px 0 13px; color: #c8ced7; font-size: .78rem; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.ptz-landing-shell .ptz-partners-chooser a { display: grid; min-height: 82px; grid-template-columns: 34px 1fr; align-content: center; gap: 2px 12px; padding: 12px 4px; border-bottom: 1px solid rgba(249,250,251,.22); color: #f9fafb; }
.ptz-landing-shell .ptz-partners-chooser a > span { grid-row: 1 / span 2; color: #c8f135; font-size: .76rem; }
.ptz-landing-shell .ptz-partners-chooser small { color: #b7bdc8; }

.ptz-landing-shell .ptz-partners-section { padding-block: clamp(70px, 7vw, 112px); scroll-margin-top: 84px; }
.ptz-landing-shell .ptz-partners-heading { display: grid; max-width: 1200px; grid-template-columns: minmax(0, 1fr) minmax(300px, .55fr); gap: 28px 64px; align-items: end; margin-bottom: 42px; }
.ptz-landing-shell .ptz-partners-heading .ptz-kicker { grid-column: 1 / -1; margin-bottom: -8px; }
.ptz-landing-shell .ptz-partners-heading h2 { margin-bottom: 0; }
.ptz-landing-shell .ptz-partners-heading > p:last-child { margin: 0 0 6px; color: var(--ptz-muted); }
.ptz-landing-shell .ptz-partners-modes { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border-block: 1px solid var(--ptz-line); }
.ptz-landing-shell .ptz-partners-modes article { display: flex; min-width: 0; flex-direction: column; padding: 34px clamp(24px, 3vw, 44px) 38px; border-right: 1px solid var(--ptz-line); }
.ptz-landing-shell .ptz-partners-modes article:last-child { border-right: 0; }
.ptz-landing-shell .ptz-partners-modes article > span { margin-bottom: 50px; color: var(--ptz-accent); font-weight: 800; }
.ptz-landing-shell .ptz-partners-modes article > p { flex: 1; color: var(--ptz-muted); }
.ptz-landing-shell .ptz-partners-modes article > a { display: inline-flex; min-height: 44px; align-items: center; gap: 10px; margin-top: 18px; font-weight: 800; text-decoration: underline; text-decoration-color: var(--ptz-accent); text-underline-offset: 6px; }

.ptz-landing-shell .ptz-partners-criteria { max-width: none; border-block: 1px solid var(--ptz-line); background: var(--ptz-surface-alt); }
.ptz-landing-shell .ptz-partners-criteria__grid { display: grid; grid-template-columns: 1fr .76fr .58fr; gap: clamp(34px, 6vw, 90px); align-items: start; }
.ptz-landing-shell .ptz-partners-criteria__grid > div:first-child > p:last-child { max-width: 680px; color: var(--ptz-muted); }
.ptz-landing-shell .ptz-partners-criteria dl { margin: 0; border-top: 2px solid var(--ptz-text); }
.ptz-landing-shell .ptz-partners-criteria dl div { padding: 17px 0; border-bottom: 1px solid var(--ptz-line); }
.ptz-landing-shell .ptz-partners-criteria dt { color: var(--ptz-accent); font-size: .82rem; font-weight: 850; text-transform: uppercase; }
.ptz-landing-shell .ptz-partners-criteria dd { margin: 4px 0 0; color: var(--ptz-muted); }
.ptz-landing-shell .ptz-partners-criteria aside { padding: 26px; border: 1px solid var(--ptz-line-strong); background: var(--ptz-bg); }
.ptz-landing-shell .ptz-partners-criteria aside strong { display: block; margin-bottom: 8px; color: var(--ptz-accent); }
.ptz-landing-shell .ptz-partners-criteria aside strong:not(:first-child) { margin-top: 22px; }
.ptz-landing-shell .ptz-partners-criteria aside ul { margin: 0; padding-left: 19px; color: var(--ptz-muted); }

.ptz-landing-shell .ptz-partners-proposal { display: grid; grid-template-columns: minmax(0, .76fr) minmax(480px, .74fr); gap: clamp(42px, 8vw, 128px); align-items: start; }
.ptz-landing-shell .ptz-partners-proposal__copy { position: sticky; top: 104px; }
.ptz-landing-shell .ptz-partners-proposal__copy > p:not(.ptz-kicker) { color: var(--ptz-muted); }
.ptz-landing-shell .ptz-partners-response { display: grid; gap: 4px; margin: 28px 0; padding: 18px 20px; border-left: 4px solid var(--ptz-accent); background: var(--ptz-surface); }
.ptz-landing-shell .ptz-partners-response span { color: var(--ptz-muted); }
.ptz-landing-shell .ptz-partners-proposal__copy a { text-decoration: underline; text-decoration-color: var(--ptz-accent); text-underline-offset: 4px; }
.ptz-landing-shell .ptz-partners-form { display: grid; gap: 18px; padding: clamp(24px, 4vw, 44px); border: 1px solid var(--ptz-line); background: var(--ptz-surface); box-shadow: var(--ptz-shadow); }
.ptz-landing-shell .ptz-partners-form__row { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.ptz-landing-shell .ptz-partners-form label:not(.ptz-partners-check) { display: grid; gap: 7px; color: var(--ptz-text); font-size: .9rem; font-weight: 750; }
.ptz-landing-shell .ptz-partners-form :where(input, select, textarea) { width: 100%; min-height: 48px; padding: 11px 13px; border: 1px solid var(--ptz-line); border-radius: 7px; background: var(--ptz-bg); color: var(--ptz-text); font: inherit; font-weight: 500; }
.ptz-landing-shell .ptz-partners-form textarea { min-height: 132px; resize: vertical; }
.ptz-landing-shell .ptz-partners-form :where(input, select, textarea):focus-visible { outline: 3px solid color-mix(in srgb, var(--ptz-accent) 70%, transparent); outline-offset: 2px; border-color: var(--ptz-accent); }
.ptz-landing-shell .ptz-partners-check { display: grid; min-height: 44px; grid-template-columns: 20px 1fr; gap: 11px; align-items: start; color: var(--ptz-muted); font-size: .84rem; cursor: pointer; }
.ptz-landing-shell .ptz-partners-check input { width: 18px; height: 18px; margin: 3px 0 0; accent-color: var(--ptz-accent); }
.ptz-landing-shell .ptz-partners-check a { color: var(--ptz-text); text-decoration: underline; }
.ptz-landing-shell .ptz-partners-form button { width: 100%; }
.ptz-landing-shell .ptz-partners-form__status { min-height: 26px; margin: 0; color: var(--ptz-muted); font-size: .9rem; }
.ptz-landing-shell .ptz-partners-form__status[data-state="error"] { color: #d84a4a; }
.ptz-landing-shell[data-ptz-theme="dark"] .ptz-partners-form__status[data-state="error"] { color: #ff9f9f; }
.ptz-landing-shell .ptz-partners-form__status[data-state="success"] { color: var(--ptz-accent); font-weight: 800; }

@media (max-width: 1050px) {
  .ptz-landing-shell .ptz-partners-hero__grid,
  .ptz-landing-shell .ptz-partners-hero__editorial,
  .ptz-landing-shell .ptz-partners-criteria__grid,
  .ptz-landing-shell .ptz-partners-proposal { grid-template-columns: 1fr; }
  .ptz-landing-shell .ptz-partners-hero__media { min-height: 430px; }
  .ptz-landing-shell .ptz-partners-hero__media img { min-height: 430px; }
  .ptz-landing-shell .ptz-partners-hero__grid,
  .ptz-landing-shell .ptz-partners-hero__editorial { min-height: 0; height: auto; align-content: start; padding-bottom: clamp(32px, 4vw, 40px); }
  .ptz-landing-shell .ptz-partners-chooser { max-width: 680px; }
  .ptz-landing-shell .ptz-partners-criteria__grid aside { max-width: 680px; }
  .ptz-landing-shell .ptz-partners-proposal__copy { position: static; }
}

@media (max-width: 760px) {
  .ptz-landing-shell .ptz-partners h1 { font-size: clamp(2.55rem, 11vw, 4.4rem); }
  .ptz-landing-shell .ptz-partners h2 { font-size: clamp(2.05rem, 10vw, 3.25rem); }
  .ptz-landing-shell .ptz-partners-hero { min-height: 0; height: auto; }
  .ptz-landing-shell .ptz-partners-hero__grid { padding-block: 0 clamp(24px, 7vw, 32px); }
  .ptz-landing-shell .ptz-partners-hero__media { min-height: 360px; }
  .ptz-landing-shell .ptz-partners-hero__media img { min-height: 360px; }
  .ptz-landing-shell .ptz-partners-hero--b { min-height: 0; height: auto; }
  .ptz-landing-shell .ptz-partners-hero__editorial { padding-block: 0 clamp(24px, 7vw, 32px); }
  .ptz-landing-shell .ptz-partners-hero__editorial > div:first-child { min-width: 0; }
  .ptz-landing-shell .ptz-partners-hero--b h1 { font-size: clamp(2.75rem, 12vw, 4.2rem); letter-spacing: -.04em; }
  .ptz-landing-shell .ptz-partners-hero__shade { background: linear-gradient(180deg, rgba(5,7,8,.92) 0%, rgba(5,7,8,.68) 55%, rgba(5,7,8,.94) 100%); }
  .ptz-landing-shell .ptz-partners-heading { grid-template-columns: 1fr; }
  .ptz-landing-shell .ptz-partners-modes { grid-template-columns: 1fr; }
  .ptz-landing-shell .ptz-partners-modes article { border-right: 0; border-bottom: 1px solid var(--ptz-line); }
  .ptz-landing-shell .ptz-partners-modes article:last-child { border-bottom: 0; }
  .ptz-landing-shell .ptz-partners-modes article > span { margin-bottom: 24px; }
  .ptz-landing-shell .ptz-partners-form__row { grid-template-columns: 1fr; }
  .ptz-landing-shell .ptz-partners-actions .ptz-button { width: 100%; }
}

@media (prefers-reduced-motion: reduce) {
  .ptz-landing-shell .ptz-partners * { scroll-behavior: auto !important; transition-duration: .01ms !important; }
}
