/* JR Home 1.4.0: horizontal collaborations, native PDF layers. */
.jr-bio-teaser .jr-proof {
  --jr-proof-blue: #1664d6;
  --jr-proof-paper: #f3f0eb;
  --jr-proof-ink: #07090c;
  position: relative;
  background: var(--jr-proof-ink);
  color: var(--jr-proof-paper);
  padding-top: clamp(56px, 6.5vw, 104px);
}
.jr-proof__shell { width: min(calc(100% - 112px), 1320px); margin-inline: auto; }
.jr-proof__header { margin-bottom: clamp(24px, 3vw, 48px); }
.jr-bio-teaser .jr-proof__eyebrow { margin: 0 0 22px !important; padding: 0; color: var(--jr-proof-blue) !important; font-size: 12px !important; font-weight: 800; letter-spacing: .19em; line-height: 1.5 !important; text-transform: uppercase; }
.jr-bio-teaser .jr-proof__title { margin: 0 !important; padding: 0; color: var(--jr-proof-paper) !important; font-size: clamp(46px, 6.3vw, 100px) !important; line-height: .98 !important; font-weight: 900 !important; letter-spacing: -.065em !important; }
.jr-proof__title-mask { display: block; }
.jr-proof__title em { font-style: italic; }
.jr-bio-teaser .jr-proof__intro { margin: 22px 0 0 !important; padding: 0; color: var(--jr-proof-paper) !important; font-size: clamp(17px, 1.55vw, 22px) !important; font-weight: 400; line-height: 1.5 !important; }
.jr-proof__row { position: relative; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.06fr); align-items: center; gap: clamp(38px, 6vw, 92px); padding: 32px 0; min-width: 0; border-bottom: 1px solid rgba(243,240,235,.14); }
.jr-proof__row:last-child { border-bottom: 0; padding-bottom: 52px; }
.jr-proof__row--brands .jr-proof__copy { grid-column: 1; grid-row: 1; }
.jr-proof__row--brands .jr-proof__scene { grid-column: 2; grid-row: 1; }
.jr-proof__copy { min-width: 0; padding-block: 16px; }
.jr-proof__number { display: block; margin-bottom: 15px; font-size: 13px; font-weight: 800; letter-spacing: .12em; color: var(--jr-proof-blue); }
.jr-bio-teaser .jr-proof__copy h3 { margin: 0 !important; padding: 0; color: var(--jr-proof-paper) !important; font-size: clamp(32px, 3.25vw, 54px) !important; font-weight: 850 !important; line-height: 1.04 !important; letter-spacing: -.045em !important; overflow-wrap: break-word; }
.jr-bio-teaser .jr-proof__copy p { margin: 22px 0 0 !important; padding: 0; max-width: 43ch; color: var(--jr-proof-paper) !important; font-size: clamp(17px, 1.4vw, 21px) !important; line-height: 1.55 !important; letter-spacing: -.014em; }
.jr-proof__copy strong { font-weight: 600; }
.jr-bio-teaser .jr-proof__link { position: relative; display: inline-flex; align-items: center; gap: 20px; min-height: 48px; margin-top: 20px; color: var(--jr-proof-paper) !important; font-weight: 700; font-size: 16px; line-height: 1.5; }
.jr-proof__link > span { position: relative; padding-bottom: 5px; }
.jr-proof__link > span::after { content: ''; position: absolute; height: 2px; inset: auto 10% 0 0; background: var(--jr-proof-blue); transition: right .25s ease; }
.jr-proof__link svg { color: var(--jr-proof-blue); width: 22px; height: 22px; flex: 0 0 22px; transition: transform .25s ease; }
.jr-proof a:focus-visible { outline: 3px solid var(--jr-proof-blue); outline-offset: 6px; border-radius: 2px; }
.jr-proof__scene { position: relative; margin: 0; padding: 0; width: 100%; min-width: 0; isolation: isolate; aspect-ratio: 810 / 560; }
.jr-proof__scene--brands { width: min(100%, 430px); justify-self: center; aspect-ratio: 1; }
.jr-proof__scene--mexico { width: min(100%, 470px); justify-self: center; aspect-ratio: 740 / 690; }
.jr-proof__layer,.jr-proof__circle-position { position: absolute; display: block; }
.jr-proof__depth,.jr-proof__part,.jr-proof__host-body,.jr-proof__host-hand { position: relative; display: block; width: 100%; height: 100%; }
.jr-proof__depth--circle { transform: translateY(var(--jr-proof-circle-y,0px)); }
.jr-proof__depth--prop { transform: translateY(var(--jr-proof-prop-y,0px)); }
.jr-proof__depth--person { transform: translateY(var(--jr-proof-person-y,0px)); }
.jr-proof__circle-position { aspect-ratio: 1; z-index: 0; }
.jr-proof__circle { display: block; width: 100%; height: 100%; background: var(--jr-proof-blue); border-radius: 50%; }
.jr-bio-teaser .jr-proof__layer img { display: block; width: 100% !important; height: 100% !important; max-width: none; object-fit: contain; margin: 0; padding: 0; border: 0; box-shadow: none; }
.jr-proof__scene--hollywood .jr-proof__circle-position { left: .7407%; top: 1.9643%; width: 56.7901%; }
.jr-proof__layer--hill { left: 8.5185%; top: 31.4286%; width: 89.8765%; height: 52.6786%; z-index: 1; }
.jr-proof__layer--visitor { left: 4.6914%; top: 35%; width: 28.5185%; height: 61.7857%; z-index: 2; }
.jr-proof__scene--brands .jr-proof__circle-position { left: 5.098%; top: 4.3137%; width: 90.1961%; }
.jr-proof__layer--billboard { left: 25.8824%; top: 29.0196%; width: 56.0784%; height: 65.4902%; z-index: 1; }
.jr-proof__layer--billboard-face { left: 25.8824%; top: 5.2941%; width: 52.7451%; height: 55.4902%; z-index: 2; }
.jr-proof__scene--mexico .jr-proof__circle-position { left: 34.4595%; top: 9.7101%; width: 62.1622%; }
.jr-proof__layer--host { left: 26.4865%; top: 4.3478%; width: 29.4595%; height: 86.5217%; z-index: 1; }
.jr-proof__layer--table { left: 3.2432%; top: 47.5362%; width: 83.7838%; height: 46.3768%; z-index: 2; }
/* Two complementary clips of the same original layer make one articulated hand. */
.jr-proof__host-body { clip-path: polygon(0 0,100% 0,100% 100%,0 100%,0 30%,56% 30%,56% 7%,0 7%); }
.jr-proof__host-hand { position: absolute; inset: 0; clip-path: polygon(0 7%,56% 7%,56% 30%,0 30%); transform-origin: 56% 28%; }
.jr-proof__contact { position: relative; padding: clamp(28px, 3.3vw, 50px) 0; background: var(--jr-proof-paper); color: var(--jr-proof-ink); }
.jr-proof__contact-row { display: flex; justify-content: space-between; align-items: center; gap: 28px; }
.jr-bio-teaser .jr-proof__contact h3 { margin: 0 !important; padding: 0; color: var(--jr-proof-ink) !important; font-size: clamp(28px, 3.6vw, 54px) !important; line-height: 1.08 !important; font-weight: 900; letter-spacing: -.05em; }
.jr-bio-teaser .jr-proof__contact-row p { color: var(--jr-proof-ink) !important; margin: 14px 0 0 !important; padding: 0; font-size: 17px !important; line-height: 1.5 !important; max-width: 52ch; }
.jr-bio-teaser .jr-proof__button { display: inline-flex; align-items: center; justify-content: center; flex: 0 0 auto; gap: 24px; min-height: 60px; padding: 18px 30px; border-radius: 999px; background: var(--jr-proof-blue); color: #fff !important; font-size: 16px; font-weight: 750; line-height: 1.4; }
.jr-proof__button svg { width: 22px; height: 22px; transition: transform .25s ease; }
.jr-bio-teaser .jr-proof__route-wrap .jr-home-routes { display: flex; flex-wrap: wrap; gap: 12px 28px; margin: 26px 0 0; padding-top: 20px; border-top: 1px solid rgba(7,9,12,.16); }
.jr-bio-teaser .jr-proof__route-wrap .jr-home-routes a { display: inline-flex; padding: 0; margin: 0; border: 0; gap: 8px; min-height: 32px; color: var(--jr-proof-ink); }
.jr-proof__route-wrap .jr-home-routes strong { font-size: 12px; font-weight: 700; line-height: 1.5; letter-spacing: 0; }
.jr-proof__route-wrap .jr-home-routes__number,.jr-proof__route-wrap .jr-home-routes__description,.jr-proof__route-wrap .jr-home-routes svg { display: none; }
.jr-bio-teaser .jr-proof__route-wrap .jr-home-routes a:focus-visible { outline: 3px solid var(--jr-proof-blue); outline-offset: 4px; }
@media(hover:hover) and (pointer:fine) {
  .jr-proof__link:hover > span::after { right: 0; }
  .jr-proof__link:hover svg,.jr-proof__button:hover svg { transform: translate(3px,-3px); }
  .jr-bio-teaser .jr-proof__route-wrap a:hover { color: var(--jr-proof-blue); }
}
/* Everything is visible until the observer is successfully initialized. */
.jr-proof.is-motion-ready [data-jr-proof-reveal]:not(.is-visible) { opacity: 0; }
.jr-proof.is-motion-ready .jr-proof__header.is-visible { animation: jrProofCopy .65s both; }
.jr-proof.is-motion-ready .jr-proof__row.is-visible .jr-proof__circle { animation: jrProofCircle .65s cubic-bezier(.2,.8,.25,1) both; }
.jr-proof.is-motion-ready .jr-proof__row.is-visible .jr-proof__part--prop { animation: jrProofProp .65s cubic-bezier(.2,.8,.25,1) .08s both; }
.jr-proof.is-motion-ready .jr-proof__row.is-visible .jr-proof__part--person { animation: jrProofLand .8s cubic-bezier(.2,.8,.25,1) .16s both; transform-origin: 50% 95%; }
.jr-proof.is-motion-ready .jr-proof__row--brands.is-visible .jr-proof__part--person { animation-name: jrProofPeek; transform-origin: 50% 82%; }
.jr-proof.is-motion-ready .jr-proof__row--mexico.is-visible .jr-proof__host-hand { animation: jrProofHand .45s ease-in-out .48s both; }
.jr-proof.is-motion-ready .jr-proof__row.is-visible .jr-proof__copy > * { animation: jrProofCopy .6s cubic-bezier(.2,.8,.25,1) .12s both; }
.jr-proof.is-motion-ready .jr-proof__row.is-visible .jr-proof__copy > h3 { animation-delay: .18s; }
.jr-proof.is-motion-ready .jr-proof__row.is-visible .jr-proof__copy > p { animation-delay: .24s; }
.jr-proof.is-motion-ready .jr-proof__row.is-visible .jr-proof__copy > a { animation-delay: .3s; }
/* Release completed animation layers; depth remains on the outer wrappers. */
.jr-proof.is-motion-ready .jr-proof__row.is-assembled .jr-proof__part,
.jr-proof.is-motion-ready .jr-proof__row.is-assembled .jr-proof__circle,
.jr-proof.is-motion-ready .jr-proof__row.is-assembled .jr-proof__host-hand,
.jr-proof.is-motion-ready .jr-proof__row.is-assembled .jr-proof__copy > * { animation: none; }
.jr-proof__row:focus-within .jr-proof__copy > * { animation: none !important; }
@keyframes jrProofCircle { from { opacity: 0; transform: scale(.82); } to { opacity: 1; transform: scale(1); } }
@keyframes jrProofProp { from { opacity: 0; transform: translateY(22px); } to { opacity: 1; transform: translateY(0); } }
@keyframes jrProofCopy { from { opacity: 0; transform: translateY(14px); } to { opacity: 1; transform: translateY(0); } }
@keyframes jrProofLand { 0% { opacity: 0; transform: translateY(-24px) rotate(-3deg); } 60% { opacity: 1; transform: translateY(4px) scale(1.025,.98); } 82% { transform: translateY(-3px); } 100% { opacity: 1; transform: translateY(0) rotate(0) scale(1); } }
@keyframes jrProofPeek { 0% { opacity: 0; transform: translateY(24px) rotate(-5deg); } 72% { opacity: 1; transform: translateY(-2px) rotate(1deg); } 100% { opacity: 1; transform: translateY(0) rotate(0); } }
@keyframes jrProofHand { 0%,100% { transform: rotate(0); } 45% { transform: rotate(-3deg); } 75% { transform: rotate(1deg); } }
@media(max-width:1000px) {
  .jr-proof__shell { width: calc(100% - 64px); }
  .jr-proof__row { gap: 36px; }
  .jr-proof__scene--brands { max-width: 350px; }
  .jr-proof__scene--mexico { max-width: 340px; }
}
@media(max-width:760px) {
  .jr-proof__shell { width: calc(100% - 40px); }
  .jr-bio-teaser .jr-proof__title { font-size: clamp(38px,8.2vw,62px) !important; line-height: 1.03 !important; letter-spacing: -.055em !important; }
  .jr-proof__title-mask { display: inline; }
  .jr-proof__title-mask + .jr-proof__title-mask::before { content: ' '; }
  .jr-proof__row { display: flex; flex-direction: column; gap: 12px; align-items: stretch; padding: 32px 0 38px; }
  .jr-proof__scene { order: 0; width: min(100%,460px); align-self: center; }
  .jr-proof__scene--brands { width: min(90%,310px); }
  .jr-proof__scene--mexico { width: min(94%,330px); }
  .jr-proof__copy { order: 1; padding: 0; }
  .jr-proof__number { margin-bottom: 12px; }
  .jr-bio-teaser .jr-proof__copy h3 { font-size: clamp(30px,7.5vw,44px) !important; }
  .jr-bio-teaser .jr-proof__copy p { font-size: 17px !important; margin-top: 16px !important; }
  .jr-proof__link { margin-top: 16px; }
  .jr-proof__contact-row { align-items: flex-start; flex-direction: column; gap: 22px; }
  .jr-bio-teaser .jr-proof__contact h3 { font-size: clamp(30px,8vw,44px) !important; }
  .jr-bio-teaser .jr-proof__button { min-height: 54px; }
  .jr-bio-teaser .jr-proof__route-wrap .jr-home-routes { column-gap: 20px; row-gap: 4px; }
  .jr-proof.is-motion-ready .jr-proof__row.is-visible .jr-proof__part--person { animation-name: jrProofProp; }
  .jr-proof.is-motion-ready .jr-proof__row--mexico.is-visible .jr-proof__host-hand { animation: none; }
}
@media(prefers-reduced-motion:reduce) {
  .jr-proof.is-motion-ready [data-jr-proof-reveal]:not(.is-visible) { opacity: 1; }
  .jr-proof *, .jr-proof *::before, .jr-proof *::after { animation: none !important; transition: none !important; }
  .jr-proof__depth { transform: none !important; }
  .jr-proof__link:hover svg,.jr-proof__button:hover svg { transform: none; }
}
