/* Partner recruitment, scoped to the existing United Vision design system. */
.uv-partnership-hero { background: var(--uv-forest-dark); }
.uv-partnership-hero::after { background:linear-gradient(90deg,rgba(3,18,11,.92),rgba(3,18,11,.75) 48%,rgba(3,18,11,.28)),linear-gradient(0deg,rgba(3,18,11,.75),transparent 55%); }
.uv-partnership-intro { display:grid; grid-template-columns:minmax(0,1fr); gap:1.8rem; }
.uv-partnership-hero h1 { font-size:clamp(3rem,4.5vw,4.6rem); line-height:.98; max-width:19ch; }
.uv-partnership-hero .uv-lede { max-width:58ch; font-size:clamp(1rem,1.3vw,1.18rem); line-height:1.55; margin:1.4rem 0 1.6rem; }
.uv-partnership-hero .film-layer video { object-position:62% center; }
.uv-partnership-directory { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); column-gap:1.5rem; padding:0 1rem; border-top:3px solid var(--uv-gold); background:rgba(3,18,11,.8); }
.uv-partnership-directory > p { grid-column:1 / -1; }
.uv-partnership-directory > p { color:var(--uv-gold); font-size:.75rem; letter-spacing:.1em; font-weight:800; text-transform:uppercase; margin:1.1rem 0 .5rem; }
.uv-partnership-directory a { display:grid; grid-template-columns:2rem minmax(0,1fr) 1rem; gap:.8rem; padding:1.3rem 0; border-bottom:1px solid rgba(255,255,255,.24); transition:background .2s,color .2s; }
.uv-partnership-directory a:hover { background:rgba(255,255,255,.05); color:var(--uv-gold); }
.uv-partnership-number { color:var(--uv-gold); font-family:var(--serif); font-style:italic; font-size:1.25rem; }
.uv-partnership-directory strong { display:block; font-size:clamp(1.15rem,1.7vw,1.55rem); line-height:1.2; }
.uv-partnership-directory small { display:block; margin-top:.45rem; color:#c7d6ce; font-size:.95rem; line-height:1.5; }
.uv-partnership-section { padding-block:clamp(2.6rem,4.6vw,4.5rem); }
.uv-partnership-heading { margin-bottom:2rem; }
.uv-partnership-heading h2,.uv-partnership-foundation h2 { margin:.7rem 0 1rem; font-family:var(--display); font-weight:590; font-size:clamp(2.2rem,3.4vw,3.65rem); letter-spacing:-.05em; line-height:1.04; text-wrap:balance; }
.uv-partnership-heading > p:not(.chapter-label) { max-width:72ch; color:var(--uv-muted); }
.uv-partnership-section .chapter-label { color:var(--uv-forest); margin:0; }
.uv-partnership-paths { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); border-top:1px solid var(--uv-line); border-left:1px solid var(--uv-line); }
.uv-partnership-path { display:flex; flex-direction:column; min-width:0; padding:clamp(1.2rem,2vw,1.8rem); border-right:1px solid var(--uv-line); border-bottom:1px solid var(--uv-line); }
.uv-partnership-path:nth-child(2) { background:var(--uv-paper-light); }
.uv-partnership-kicker { display:flex; align-items:center; gap:.7rem; margin:0 0 1.25rem; color:var(--uv-forest); font-size:.72rem; line-height:1.35; font-weight:850; letter-spacing:.06em; text-transform:uppercase; }
.uv-partnership-kicker > span { color:var(--uv-forest); font-family:var(--serif); font-size:1.4rem; font-style:italic; font-weight:500; }
.uv-partnership-path h3 { margin:0 0 1rem; font-family:var(--display); font-size:clamp(1.8rem,2.25vw,2.55rem); line-height:1.05; letter-spacing:-.04em; }
.uv-partnership-path > p:not(.uv-partnership-kicker) { color:var(--uv-muted); font-size:.98rem; line-height:1.55; }
.uv-partnership-benefits { margin:.4rem 0 1.3rem; padding:0; list-style:none; }
.uv-partnership-benefits li { padding:.85rem 0; border-top:1px solid var(--uv-line); }
.uv-partnership-benefits strong,.uv-partnership-benefits span { display:block; }
.uv-partnership-benefits strong { font-size:1rem; color:var(--uv-forest); margin-bottom:.3rem; }
.uv-partnership-benefits span { color:var(--uv-muted); font-size:.94rem; line-height:1.5; }
.uv-partnership-path > .uv-partnership-customer { margin:auto 0 1rem; padding:1rem; background:#e9eee6; border-left:3px solid var(--uv-green); color:var(--uv-forest); font-size:.9rem; }
.uv-partnership-customer strong { display:block; margin-bottom:.4rem; font-size:.72rem; letter-spacing:.08em; text-transform:uppercase; }
.uv-partnership-link { display:inline-flex; align-items:center; justify-content:space-between; gap:.8rem; min-height:44px; color:var(--uv-forest); font-size:.88rem; font-weight:800; text-decoration:underline; text-underline-offset:.25em; }
.uv-partnership-link:hover { text-decoration-thickness:2px; }
.uv-partnership-scope { margin:1.15rem 0 0; max-width:115ch; color:var(--uv-muted); font-size:.86rem; line-height:1.6; }
.uv-partnership-foundation { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.15fr); gap:clamp(2rem,6vw,6rem); align-items:center; margin-bottom:1.6rem; }
.uv-partnership-foundation > div > p:not(.product-eyebrow) { color:#c7d6ce; line-height:1.65; }
.uv-partnership-foundation .uv-partnership-link { color:var(--uv-gold); }
.uv-partnership-principles { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:0 clamp(1.2rem,3vw,3rem); margin:0; }
.uv-partnership-principles > div { padding:1.2rem 0; border-top:1px solid rgba(255,255,255,.24); }
.uv-partnership-principles dt { color:white; font-size:1.08rem; font-weight:800; }
.uv-partnership-principles dd { color:#c7d6ce; margin:.4rem 0 0; font-size:.96rem; line-height:1.55; }
.uv-partnership-engagement-note { margin:1rem 0 0; padding:1.2rem 1.4rem; border-left:3px solid var(--uv-gold); background:rgba(255,255,255,.05); color:#c7d6ce; font-size:.96rem; line-height:1.55; }
.uv-partnership-engagement-note strong { display:block; color:var(--uv-gold); margin-bottom:.4rem; }
.uv-partnership-logos { grid-template-columns:repeat(6,minmax(0,1fr)); border-top:1px solid var(--uv-line); }
.uv-partnership-logos figure { min-height:130px; padding:1rem; }
.uv-partnership-logos figcaption { font-size:.65rem; }
.uv-partnership-faq-layout { display:grid; grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr); gap:clamp(2rem,5vw,5rem); align-items:start; }
.uv-partnership-faq-layout .uv-faq summary { font-size:clamp(1.2rem,1.7vw,1.5rem); line-height:1.3; letter-spacing:-.02em; }
.uv-partnership-faq-layout .uv-faq summary:focus-visible { outline:3px solid var(--uv-gold); outline-offset:3px; }
.uv-partnership-faq-layout .uv-faq-answer { font-size:1rem; }
.uv-partnership-form-shell { gap:clamp(2rem,5vw,5rem); }
.uv-partnership-discussion { padding:0; margin:1.7rem 0; list-style:none; counter-reset:discussion; }
.uv-partnership-discussion li { position:relative; counter-increment:discussion; padding:1rem 0 1rem 2.7rem; border-top:1px solid var(--uv-line); }
.uv-partnership-discussion li::before { content:counter(discussion,decimal-leading-zero); position:absolute; left:0; top:1rem; color:var(--uv-forest); font-family:var(--serif); font-style:italic; }
.uv-partnership-discussion strong,.uv-partnership-discussion span { display:block; }
.uv-partnership-discussion span { color:var(--uv-muted); margin-top:.35rem; line-height:1.55; font-size:.96rem; }
.uv-partnership-form-shell .uv-form-panel h3 { margin:0 0 .8rem; font-family:var(--display); font-size:clamp(1.65rem,2.4vw,2.35rem); line-height:1.1; letter-spacing:-.035em; }
.uv-partnership-form-shell .uv-form-note { color:#e0e9e3; font-size:.93rem; line-height:1.55; margin-bottom:1.5rem; }
.uv-partnership-field-hint { color:#e0e9e3; font-size:.85rem; line-height:1.5; margin:.5rem 0 0; }
.uv-partnership-form-shell .uv-field label { font-size:.75rem; }
.uv-partnership-form-shell .uv-check label { font-size:.83rem; }
.uv-partnership-form-shell input,.uv-partnership-form-shell select,.uv-partnership-form-shell textarea { font-size:1rem; }
.uv-partnership-form-shell .button { width:100%; }
/* Give the invitation and directory distinct breathing room on normal desktops.
   A minimum, never a fixed height, lets zoom/large text grow in normal flow. */
@media (min-width:1101px) {
  .uv-standalone .uv-page-hero.uv-partnership-hero > .container { display:flex; flex-direction:column; min-height:min(100svh,64rem); padding-top:calc(var(--uv-header-height,142px) + clamp(1rem,6.6667svh - 1.5rem,3rem)); padding-bottom:clamp(1rem,6.6667svh - 1.5rem,3rem); }
  .uv-partnership-hero .uv-breadcrumbs { margin-bottom:clamp(.6rem,4.5svh - 1.125rem,2rem); }
  .uv-partnership-intro { flex:1; grid-template-rows:1fr auto; gap:clamp(1rem,6.6667svh - 1.5rem,3rem); }
  .uv-partnership-intro > div { align-self:center; }
  .uv-partnership-hero .product-eyebrow { margin-bottom:clamp(.65rem,3.2svh - .55rem,1.25rem); }
  .uv-partnership-hero h1 { max-width:25ch; font-size:clamp(2.6rem,min(5.15vw,11svh - 1.525rem),5rem); line-height:1.02; letter-spacing:-.04em; }
  .uv-partnership-hero .uv-lede { max-width:72ch; margin:clamp(.85rem,2.9333svh - .25rem,1.4rem) 0 clamp(1rem,2.6667svh,1.5rem); font-size:clamp(1rem,min(1.4vw,1.3333svh + .5rem),1.25rem); line-height:1.55; }
  .uv-partnership-directory { padding:0 1.25rem; column-gap:1.75rem; }
  .uv-partnership-directory > p { margin:1rem 0 .4rem; }
  .uv-partnership-directory a { padding:clamp(.8rem,2.0444svh,1.15rem) 0; }
  .uv-partnership-directory strong { font-size:clamp(1.25rem,1.6vw,1.5rem); }
  .uv-partnership-directory small { margin-top:.5rem; font-size:1rem; line-height:1.5; }
}
/* Short desktop windows keep the directory visible without compressing tall screens. */
@media (min-width:1101px) and (max-height:760px) {
  .uv-partnership-hero h1 { max-width:29ch; }
  .uv-partnership-hero .uv-lede { max-width:86ch; line-height:1.5; }
  .uv-partnership-directory > p { margin:.8rem 0 .3rem; }
  .uv-partnership-directory strong { font-size:clamp(1.15rem,1.55vw,1.4rem); }
  .uv-partnership-directory small { margin-top:.35rem; font-size:.95rem; line-height:1.45; }
}
@media (max-width:1100px) {
  .uv-partnership-intro { grid-template-columns:minmax(0,1fr); gap:2rem; }
  .uv-partnership-hero h1 { max-width:20ch; }
  .uv-partnership-directory { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); column-gap:1.4rem; }
  .uv-partnership-directory > p { grid-column:1 / -1; }
  .uv-partnership-directory a { grid-template-columns:minmax(0,1fr) 1rem; gap:.5rem; padding:1rem 0; }
  .uv-partnership-directory .uv-partnership-number { display:none; }
  .uv-partnership-paths { grid-template-columns:minmax(0,1fr); }
  .uv-partnership-path { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.3fr); column-gap:2rem; }
  .uv-partnership-kicker,.uv-partnership-path > h3,.uv-partnership-path > p,.uv-partnership-path > a { grid-column:1; }
  .uv-partnership-benefits { grid-column:2; grid-row:1 / 4; margin:0; }
  .uv-partnership-path > .uv-partnership-customer { grid-column:1 / -1; margin:1rem 0 .5rem; }
  .uv-partnership-path > .uv-partnership-link { grid-column:1 / -1; }
  .uv-partnership-logos { grid-template-columns:repeat(3,minmax(0,1fr)); }
}
@media (max-width:820px) {
  .uv-partnership-foundation,.uv-partnership-faq-layout { grid-template-columns:minmax(0,1fr); gap:1.5rem; }
  .uv-partnership-foundation { gap:0; }
  .uv-partnership-principles { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .uv-partnership-faq-layout .uv-partnership-heading { margin-bottom:0; }
}
@media (max-width:600px) {
  .uv-partnership-hero h1 { font-size:clamp(2.7rem,10.7vw,3.8rem); }
  .uv-partnership-hero .uv-lede { margin:1.2rem 0; }
  .uv-partnership-intro { gap:1.6rem; }
  .uv-partnership-directory { display:block; }
  .uv-partnership-directory a { padding:.85rem 0; }
  .uv-partnership-directory small { display:none; }
  .uv-partnership-path { display:flex; }
  .uv-partnership-principles { grid-template-columns:minmax(0,1fr); }
  .uv-partnership-path h3 { font-size:2rem; }
  .uv-partnership-kicker { margin-bottom:.8rem; }
  .uv-partnership-benefits { margin:.3rem 0 1rem; }
  .uv-partnership-logos { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .uv-partnership-heading h2 br { display:none; }
}
