/* The closed September 8 review affects only partners and materials. */
.story-page .story-lead { position:relative; border-left:0; }
.story-page .story-lead::before { content:""; position:absolute; top:6px; bottom:6px; left:0; width:3px; border-radius:3px; background:var(--color-orange); }
.partners-page { margin-bottom:0; }
.partners-page .story-hero { min-height:560px; padding:54px 48px; display:flex; flex-direction:column; isolation:isolate; }
.partner-hero-photo { position:absolute; inset:-5px; width:calc(100% + 10px); height:calc(100% + 10px); object-fit:cover; object-position:center; filter:blur(2.5px); z-index:-2; }
.partners-page .story-hero::before { content:""; position:absolute; inset:0; z-index:-1; background:linear-gradient(90deg,rgba(5,8,53,.9) 0%,rgba(5,8,53,.73) 40%,rgba(1,22,137,.2) 74%,rgba(5,8,53,.12) 100%),linear-gradient(0deg,rgba(5,8,53,.75),transparent 48%); }
.partners-page .story-hero__copy { max-width:760px; min-height:452px; display:flex; flex-direction:column; align-items:flex-start; }
.partners-page .story-hero .section-kicker { margin-bottom:18px; }
.partners-page .story-hero .partner-corner-grid { top:54px; z-index:2; }
.partners-page .story-lead { max-width:675px; font-size:18px; line-height:1.5; }
.partners-page .story-actions { gap:16px; margin-top:auto; padding-top:38px; }
.partner-secondary { color:var(--color-blue); background:var(--color-white); border:1px solid rgba(255,255,255,.72); box-shadow:var(--shadow-low); }
.partner-secondary:hover { background:#edf0fb; }
.partners-page .partner-responsibility { position:relative; z-index:1; margin-top:48px; }
.partners-page .partner-responsibility p { color:white; }
.partners-page .partner-route { list-style:none; gap:0; padding:40px 24px 30px; margin:0; background:white; border:1px solid rgba(5,8,53,.08); border-radius:var(--radius-lg); }
.partners-page .partner-route li { padding:0 24px; border:0; border-radius:0; background:transparent; box-shadow:none; }
.partners-page .partner-route .process-step__marker { font:12px var(--font-display); margin-bottom:30px; }
.partners-page .partner-route .process-step__stage { margin:0 0 10px; font-size:12px; }
.partners-page .partner-route h3 { margin:0 0 20px; }
.partners-page .partner-route li>p:last-child { color:var(--color-ink); font-size:16px; line-height:1.6; }
.partners-page .partner-route .process-step:not(:last-of-type)::after { left:64px; right:-24px; border-radius:2px; }
.partners-page #partner-terms { position:relative; }
.partner-corner-grid { position:absolute; top:48px; right:48px; pointer-events:none; }
.partners-page #partner-terms .story-heading { padding-right:112px; }
.partners-page .partner-payment p { font:400 18px/1.6 var(--font-body); color:white; }
.partners-page .faq__lead { margin:24px 0 0; }
.partners-page .partner-directions { grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; }
.partners-page .partner-directions .story-card { padding:32px; display:flex; flex-direction:column; }
.partners-page .partner-directions .story-card h3 { font-size:22px; line-height:1.22; }
.partners-page .partner-directions .story-card>p { margin:20px 0 24px; font-size:16px; line-height:1.6; }
.partners-page .partner-directions .faq__link { margin-top:auto; }
.partners-page .story-list li::before { width:8px; height:8px; border-radius:2px; }
.partners-page .partner-support .story-heading p:last-child { max-width:490px; }
.partner-registration .contact__shell { position:relative; background:radial-gradient(circle at 12% 18%,rgba(230,72,0,.12),transparent 36%),linear-gradient(135deg,var(--color-navy),var(--color-blue)); }
.partner-form-grid { position:absolute; left:64px; bottom:64px; pointer-events:none; }
.partners-page .partner-registration h2 { color:white; font-size:40px; line-height:1.12; }
.partners-page .partner-registration .contact__intro>p:last-of-type { margin-top:26px; max-width:390px; }
.partner-form { width:100%; }
.partner-form fieldset { min-width:0; border:0; margin:0; padding:0; }
.partner-form legend { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.partner-form textarea { display:block; width:100%; resize:vertical; min-height:88px; padding:14px 16px; border:1px solid #bfc3d8; border-radius:var(--radius-sm); background:white; color:var(--color-navy); font:15px/1.4 var(--font-body); }
.partner-form textarea:focus-visible { outline:3px solid rgba(1,22,137,.22); outline-offset:2px; border-color:var(--color-blue); }
.partner-optional { color:var(--color-muted); font-size:11px; margin-left:6px; }
.partner-form .contact-form__agreements { margin-top:18px; }
.partner-form .contact-form__submit { margin-top:24px; }
.partner-form .contact-form__message:not(:empty) { margin-top:16px; }
.materials-page .materials-video__status { margin-top:32px; padding:24px; border:0; border-radius:var(--radius-md); background:white; color:var(--color-ink); gap:0; box-shadow:var(--shadow-low); }
.materials-page .materials-video__status strong { color:var(--color-navy); font:500 20px/1.4 var(--font-body); }
.materials-page .materials-video__status p { color:var(--color-muted); font-size:15px; line-height:1.5; margin-top:8px; }
.materials-page .materials-video__byline { margin-top:28px; }
.materials-page .materials-video__byline span { display:inline-block; margin-top:8px; font-size:14px; line-height:1.6; color:#e3e5f2; }
.partner-calculator { display:grid; grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr); gap:64px; padding:54px 48px; border-radius:var(--radius-lg); background:var(--color-navy); color:white; }
.partner-calculator__copy .section-kicker { color:#f1b49a; }
.partner-calculator__copy h2 { color:white; font-size:40px; margin:10px 0 24px; }
.partner-calculator__copy>p:not(.section-kicker) { color:rgba(255,255,255,.78); font-size:17px; line-height:1.5; }
.partner-calculator__copy ul { list-style:none; margin:28px 0; padding:0; display:grid; gap:16px; }
.partner-calculator__copy li { position:relative; padding-left:22px; font-size:17px; line-height:1.5; }
.partner-calculator__copy li::before { content:""; position:absolute; left:0; top:.52em; width:8px; height:8px; border-radius:2px; background:var(--color-orange); }
.partner-calculator__copy .partner-calculator__note { font-size:14px!important; }
.partner-calculator__card { margin:0; padding:30px; border-radius:var(--radius-md); background:white; box-shadow:0 18px 50px rgba(0,0,0,.2); }
.partner-calculator__card fieldset { min-width:0; border:0; margin:0; padding:0; display:grid; grid-template-columns:1fr 1fr; gap:20px; }
.partner-calculator__card label { display:flex; flex-direction:column; justify-content:space-between; gap:8px; color:var(--color-muted); font-size:13px; line-height:1.5; }
.partner-calculator__type { grid-column:1/-1; }
.partner-calculator__card select,.partner-calculator__card input { width:100%; height:54px; padding:0 14px; border:1px solid var(--color-line); border-radius:var(--radius-sm); background:#f8f8fa; color:var(--color-ink); font:17px var(--font-body); }
.partner-calculator__card select { font-size:16px; padding-right:46px; appearance:none; background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='m1 1.5 5 5 5-5' fill='none' stroke='%23050835' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); background-repeat:no-repeat; background-position:right 20px center; background-size:12px 8px; }
.partner-calculator__card input[aria-invalid="true"] { border-color:#ad1d1d; }
.partner-calculator__card :is(input,select):focus-visible { outline:3px solid rgba(1,22,137,.22); outline-offset:2px; }
.partner-calculator__result { grid-column:1/-1; padding:22px; min-height:132px; display:grid; align-content:center; border:1px solid var(--color-line); border-radius:var(--radius-md); background:#eef0f8; }
.partner-calculator__result span,.partner-calculator__result small { color:var(--color-muted); font-size:13px; line-height:1.5; }
.partner-calculator__result strong { margin:2px 0; color:var(--color-blue); font:38px/1.2 var(--font-display); }
.partner-calculator__card .button { grid-column:1/-1; text-align:center; }
.partner-calculator__card noscript { color:var(--color-ink); }
@media (max-width:1199px) {
  .partner-form-grid { display:none; }
  .partners-page .partner-directions { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .partner-registration .contact__shell { grid-template-columns:1fr; gap:32px; }
  .partner-calculator { grid-template-columns:1fr; gap:32px; }
  .partners-page .partner-route { grid-template-columns:1fr; padding:32px; }
  .partners-page .partner-route li { padding:0 0 32px 64px; }
  .partners-page .partner-route .process-step__marker { position:absolute; top:0; left:0; }
  .partners-page .partner-route .process-step:not(:last-of-type)::after { left:19px; right:auto; top:48px; bottom:8px; width:2px; height:auto; }
}
@media (max-width:767px) {
  .partners-page .story-hero { padding:40px 24px; min-height:620px; }
  .partners-page .story-hero__copy { max-width:100%; }
  .partners-page .story-hero h1 { font-size:34px; }
  .partners-page .story-actions { align-items:stretch; flex-direction:column; }
  .partners-page .partner-directions { grid-template-columns:1fr; }
  .partners-page .partner-directions br { display:none; }
  .partner-registration .contact__shell { padding:32px 24px; }
  .partner-calculator { padding:32px 24px; }
  .partner-calculator__card fieldset { grid-template-columns:1fr; }
  .partners-page .story-hero .partner-corner-grid { display:none; }
  .partner-corner-grid { top:24px; right:24px; }
  .partner-form { padding:24px; }
  .partner-form .contact-form__fields { grid-template-columns:1fr; }
  .partners-page #partner-terms .story-heading { padding-right:0; padding-top:48px; }
  .partners-page .partner-registration h2 { font-size:30px; }
}
