/* x1-partners — /partners (1001 additional pages). Every rule scoped under .x1-partners. */

/* Hero */
.x1-partners .pt-hero .display {max-width: 14ch;}
.x1-partners .pt-hero-media .photo {object-fit: cover; width: 100%; max-height: 40rem;}

/* Signature: the route from a community introduction to the founder's choice */
.x1-partners .pt-route-sec {padding-top: clamp(3.5rem, 2rem + 5vw, 7rem);}
.x1-partners .pt-k {margin-bottom: var(--stack-m);}
.x1-partners .pt-route {list-style: none; margin: 0; padding: 0; position: relative;
  display: grid; grid-template-columns: minmax(0, .55fr) repeat(4, minmax(0, 1fr)); column-gap: clamp(1rem, .5rem + 1.6vw, 2.25rem);}
.x1-partners .pt-route::before {content: ""; position: absolute; left: 6px; right: 0; top: 6px; height: 1px;
  background: linear-gradient(90deg, rgba(0,0,0,.18) 0 10%, var(--accent) 10% 100%);}
.x1-partners .pt-node {position: relative; z-index: 1; display: block; width: 13px; height: 13px; border-radius: 50%;
  background: var(--accent); box-shadow: 0 0 0 5px var(--bg); margin-bottom: 1.75rem;}
.x1-partners .pt-node-o {background: var(--bg); box-shadow: 0 0 0 5px var(--bg), inset 0 0 0 1.5px var(--muted);}
.x1-partners .pt-node-end {background: var(--ink);}
.x1-partners .pt-start-t {display: block; font: italic 400 1.375rem/1.2 var(--serif); color: var(--muted);}
.x1-partners .pt-stop {display: flex; flex-direction: column;}
.x1-partners .pt-stop > p {font-size: 1.0625rem; line-height: 1.6; text-wrap: pretty;}
.x1-partners .pt-h {font: 400 clamp(1.5rem, 1.2rem + .9vw, 1.9rem)/1.12 var(--serif); letter-spacing: -.012em; color: var(--ink);
  margin: 1.5rem 0 .9rem; text-wrap: balance;}

/* the small card above each stop */
.x1-partners .pt-vis {background: var(--surface); border-radius: 12px; padding: 1rem 1.1rem 1.1rem; min-height: 9.75rem;
  box-shadow: 0 0 0 1px rgba(0,0,0,.06), 0 14px 36px -14px rgba(20,20,20,.16);}
.x1-partners .pt-vis-k {font: 600 var(--fs-eyebrow)/1.4 var(--sans); letter-spacing: var(--track-eyebrow); text-transform: uppercase;
  color: var(--accent); margin-bottom: .8rem;}
.x1-partners .pt-checks {display: grid; gap: .45rem;}
.x1-partners .pt-checks li {display: flex; align-items: center; gap: .5rem; font-size: .9375rem; color: var(--ink); line-height: 1.3;}
.x1-partners .pt-checks li::before {content: ""; flex: none; width: 15px; height: 15px; border-radius: 50%;
  background: #E6F1E9 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4.5 8.3l2.2 2.2 4.8-5' fill='none' stroke='%2324613B' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/100% no-repeat;}
.x1-partners .pt-bar {position: relative; height: 8px; border-radius: 999px; background: var(--tint); overflow: hidden;}
.x1-partners .pt-bar span {position: absolute; inset: 0; border-radius: inherit; background: linear-gradient(90deg, #F4C77A, var(--accent));}
.x1-partners .pt-bar::after {content: ""; position: absolute; right: 0; top: 0; bottom: 0; width: 3px; background: var(--ink); z-index: 1;}
.x1-partners .pt-tags, .x1-partners .pt-fork, .x1-partners .pt-flow {display: flex; flex-wrap: wrap; gap: .4rem; margin-top: .85rem; align-items: center;}
.x1-partners .pt-tags span, .x1-partners .pt-fork span, .x1-partners .pt-flow span:not(.pt-arrow) {font: 500 .8125rem/1.2 var(--sans); padding: .42rem .65rem; border-radius: 999px;
  color: var(--ink); box-shadow: inset 0 0 0 1px rgba(0,0,0,.14);}
.x1-partners .pt-flow {margin-top: 0;}
.x1-partners .pt-flow .pt-arrow {color: var(--muted); font-size: .9rem;}
.x1-partners .pt-flow span.is-law {background: var(--ink); color: #fff; box-shadow: none;}
.x1-partners .pt-fork {margin-top: 0;}
.x1-partners .pt-fork span:first-child {background: var(--ink); color: #fff; box-shadow: none;}

/* Pull line over the photograph */
.x1-partners .pt-aha {min-height: clamp(26rem, 52vh, 36rem);}
.x1-partners .pt-aha .bleed {object-position: 50% 45%;}
.x1-partners .pt-pull {border-left-color: #F4C77A; color: #fff; max-width: 24ch; margin: 0;}
.x1-partners .pt-pull p {color: #fff; max-width: none;}

/* Sharing the offer */
.x1-partners .pt-two {align-items: end; row-gap: var(--stack-m);}
.x1-partners .pt-two > :first-child {grid-column: 1 / span 6;}
.x1-partners .pt-two > :last-child {grid-column: 8 / span 5;}
.x1-partners .pt-two .eyebrow {margin-bottom: var(--stack-s);}
.x1-partners .pt-h2 {max-width: 13ch;}

/* Questions */
.x1-partners .pt-qa-sec {padding-top: 0;}
.x1-partners .pt-qa {align-items: start; row-gap: var(--stack-s); border-top: 1px solid var(--rule); padding-top: var(--stack-l);}
.x1-partners .pt-qa-k {grid-column: 1 / span 3;}
.x1-partners .pt-qa .d29-faq {grid-column: 5 / span 8; border-top: 0;}
.x1-partners .pt-qa .d29-faq details:first-child summary {padding-top: 0;}
.x1-partners .close {padding-top: 0;}

@media (max-width: 1080px){
  .x1-partners .pt-route {grid-template-columns: repeat(2, minmax(0, 1fr)); row-gap: var(--stack-l);}
  .x1-partners .pt-route::before {display: none;}
  .x1-partners .pt-start {display: none;}
  .x1-partners .pt-node {display: none;}
  .x1-partners .pt-vis {min-height: 0;}
}
@media (max-width: 960px){
  .x1-partners .pt-two > :first-child, .x1-partners .pt-two > :last-child,
  .x1-partners .pt-qa-k, .x1-partners .pt-qa .d29-faq {grid-column: 1 / -1;}
  .x1-partners .pt-hero-media .photo {min-height: 0; aspect-ratio: 4 / 5; max-height: 34rem;}
}
@media (max-width: 700px){
  /* the route becomes a vertical rail */
  .x1-partners .pt-route {grid-template-columns: minmax(0, 1fr); row-gap: var(--stack-l); padding-left: 1.75rem;}
  .x1-partners .pt-route::before {display: block; left: 6px; right: auto; top: 8px; bottom: 0; width: 1px; height: auto;
    background: linear-gradient(180deg, var(--accent) 0 92%, transparent);}
  .x1-partners .pt-node {display: block; position: absolute; left: -1.75rem; top: 2px; margin: 0;}
  .x1-partners .pt-stop {position: relative;}
  .x1-partners .pt-start {display: block; position: relative;}
  .x1-partners .pt-route::before {background: linear-gradient(180deg, rgba(0,0,0,.18) 0 2.5rem, var(--accent) 2.5rem 94%, transparent);}
  .x1-partners .pt-aha {min-height: 24rem;}
  .x1-partners .pt-aha .bleed {object-position: 42% 50%;}
}
