/* September-only editorial accents. Shared branding and Midi styles stay intact. */
.september-hero,
.september-section,
.september-fund__inner { width: var(--page); margin-inline: auto; }
.september-hero { display: grid; grid-template-columns: 1.2fr .8fr; align-items: center; gap: 40px; padding-block: 30px 32px; }
.september-hero__copy { position: relative; }
.september-hero__copy::before { content: ""; position: absolute; width: 180px; height: 150px; top: 20px; right: 0; background: radial-gradient(var(--pink) 1.5px, transparent 2px) 0 0 / 10px 10px; opacity: .26; z-index: -1; mask-image: linear-gradient(135deg, #000, transparent); pointer-events: none; }
.september-hero h1 { margin: 14px 0 16px; font: 700 clamp(2.7rem, 4.6vw, 4.4rem)/1.05 var(--body); letter-spacing: -.045em; }
.september-hero h1 span { color: var(--pink-deep); font-family: var(--display); font-size: 1.38em; font-style: italic; line-height: 1.1; }
.september-hero__copy > p:not(.eyebrow) { max-width: 510px; margin-block: 12px; }
.september-lead { font-size: 1.08rem; line-height: 1.55; }
.september-categories { font-weight: 700; letter-spacing: -.025em; }
.september-hero__copy > .september-dispatch { margin-top: -6px; font-size: .8rem; color: var(--pewter); }
.september-hero__copy > .september-appreciation { font-size: .76rem; line-height: 1.55; color: var(--pewter); }
.september-hero .button-row { margin-top: 18px; }
.september-hero__photo { margin: 0; padding: 12px; border: 1px solid var(--pink); transform: rotate(1deg); background: var(--white); }
.september-hero__photo img { width: 100%; height: 390px; object-fit: contain; }
.september-hero__photo figcaption { margin-top: 10px; color: var(--pewter); font: 400 .66rem/1.5 var(--utility); text-align: center; }
.september-section { padding-block: 34px; }
.september-heading { margin-bottom: 20px; }
.september-heading h2 { margin: 8px 0 12px; font: 600 clamp(2.1rem, 3.7vw, 3.25rem)/1.08 var(--display); letter-spacing: -.035em; }
.september-heading > p:not(.eyebrow) { max-width: 720px; }
.september-how { border-block: 1px solid var(--mist); }
.september-steps { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 30px; list-style: none; margin: 0; padding: 0; }
.september-steps h3 { font: 700 1.08rem/1.3 var(--body); letter-spacing: -.03em; margin: 0 0 10px; }
.september-steps p { margin: 0; font-size: .88rem; line-height: 1.65; }
.september-product { display: grid; grid-template-columns: .9fr 1.1fr; border: 1px solid var(--ink); background: var(--white); }
.september-product__photo { display: grid; align-items: center; margin: 0; padding: 18px; background: var(--blush); }
.september-product__photo img { width: 100%; height: 355px; object-fit: contain; }
.september-product__copy { min-width: 0; padding: 24px 28px; }
.september-product__copy h3 { font: 700 clamp(1.5rem, 2.2vw, 2rem)/1.2 var(--body); letter-spacing: -.04em; margin: 10px 0 14px; }
.september-product__copy h3 span { display: block; margin-top: 4px; font: 600 1.65rem/1.15 var(--display); letter-spacing: -.025em; }
.september-product__copy > p { margin: 10px 0; }
.september-specs { font: 500 .82rem/1.8 var(--utility); }
.september-specs span, .september-specs strong { white-space: nowrap; }
.september-specs strong { font: 700 1.65rem/1.2 var(--body); letter-spacing: -.05em; }
.september-product__impact { position: relative; isolation: isolate; padding: 10px 12px; font: 700 .82rem/1.5 var(--body); color: var(--pink-deep); }
.september-product__impact::before { content: ""; position: absolute; inset: 0; border-left: 3px solid var(--pink); background: var(--blush); transform: skewY(-.7deg); z-index: -1; pointer-events: none; }
.september-product__copy .button { margin-top: 4px; }
.september-details { margin-top: 12px; padding-top: 10px; border-top: 1px solid var(--mist); font-size: .82rem; line-height: 1.65; }
.september-details summary { cursor: pointer; font-weight: 700; }
.september-midi { display: grid; grid-template-columns: 110px 1fr auto; align-items: center; gap: 20px; padding: 16px 20px; border: 1px solid var(--mist); margin-top: 18px; }
.september-midi img { width: 110px; height: 155px; object-fit: contain; }
.september-midi h3 { margin: 6px 0; font: 600 1.65rem/1.12 var(--display); }
.september-midi p { font-size: .82rem; margin: 6px 0; line-height: 1.6; }
.september-shop-link { text-align: right; margin: 12px 0 0; }
.september-fund { position: relative; isolation: isolate; color: var(--paper); background: var(--ink); padding-block: 34px; }
.september-fund::before { content: ""; position: absolute; right: 0; top: 0; width: 190px; height: 150px; background: radial-gradient(var(--pink) 1px, transparent 1.7px) 0 0 / 9px 9px; opacity: .14; mask-image: linear-gradient(225deg, #000, transparent 75%); z-index: -1; pointer-events: none; }
.september-fund__inner { display: grid; grid-template-columns: 1fr 1fr; gap: 48px; }
.september-fund h2 { margin: 12px 0 16px; font: 700 clamp(1.7rem, 2.8vw, 2.4rem)/1.16 var(--body); letter-spacing: -.045em; }
.september-fund h2 span { color: var(--pink); }
.september-fund .eyebrow { color: var(--pink); }
.september-fund .venmo-detail strong { color: var(--pink); }
.september-fund p { font-size: .88rem; line-height: 1.6; margin-block: 10px; }
.september-fund .button { margin-block: 4px; }
.september-nominate { border-top: 1px solid #51474b; padding-top: 8px; margin-top: 18px; }
.september-progress { border: 1px solid var(--pink); padding: 14px 18px; margin-bottom: 16px; position: relative; }
.september-progress > strong { display: block; font: 600 1.7rem/1.15 var(--display); }
.september-progress progress { display: block; width: 100%; height: 10px; border: none; border-radius: 0; appearance: none; background: #4c4145; }
.september-progress progress::-webkit-progress-bar { background: #4c4145; }
.september-progress progress::-webkit-progress-value { background: var(--pink); }
.september-progress progress::-moz-progress-bar { background: var(--pink); }
.september-fund .september-details { border-color: #51474b; }
.september-fund .september-small,
.september-small { font-size: .77rem; line-height: 1.65; }
.september-impact { display: grid; grid-template-columns: 1fr 1fr; border-block: 1px solid var(--mist); gap: 24px; margin: 18px 0; padding-block: 18px; }
.september-impact dd { font: 600 2rem/1.2 var(--display); margin: 0 0 6px; color: var(--pink-deep); }
.september-impact dt { font-size: .82rem; }
.september-empty { max-width: 760px; margin: 14px 0 0; font-size: .82rem; line-height: 1.6; color: var(--pewter); }
.september-heroes { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
.september-hero-story { border: 1px solid var(--mist); padding: 20px; }
.september-hero-story img { width: 100%; height: auto; }
.september-hero-story h3 { font: 600 1.75rem var(--display); margin: 14px 0 8px; }
.september-hero-story p { font-size: .85rem; }
.september-hero-story__role { color: var(--pewter); margin-top: 0; }
.september-hero-story__award { color: var(--pink-deep); border-top: 1px solid var(--mist); padding-top: 10px; font-weight: 700; }
.september-page .checkout-field textarea { width: 100%; padding: 12px; border: 1px solid var(--mist); background: var(--white); font: inherit; resize: vertical; }
.september-page .checkout-field--text { grid-template-columns: 1fr; }
.september-page .checkout-field--text input { grid-column: 1; grid-row: auto; width: 100%; font-family: var(--body); }
.september-page .checkout-field--text textarea { font-family: var(--body); font-size: 1rem; letter-spacing: normal; text-transform: none; line-height: 1.5; }
.september-page .checkout-field input:disabled { opacity: .45; }
.september-checkout-note { margin: 0; padding: 12px 16px; background: var(--blush); font-size: .85rem; }
@media (max-width: 900px) {
  .september-hero { gap: 28px; }
  .september-hero__photo img { height: 340px; }
  .september-product__copy { padding: 20px; }
  .september-fund__inner { gap: 32px; }
  .september-midi { grid-template-columns: 100px 1fr; gap: 14px; }
  .september-midi img { width: 100px; height: 150px; }
  .september-midi .button { grid-column: 2; justify-self: start; }
}
@media (max-width: 640px) {
  .september-hero { grid-template-columns: 1fr; padding-block: 20px 24px; gap: 20px; }
  .september-hero h1 { font-size: clamp(2.25rem, 10.8vw, 3.8rem); }
  .september-hero__photo { transform: none; }
  .september-hero__photo img { height: 260px; }
  .september-section { padding-block: 26px; }
  .september-heading { margin-bottom: 18px; }
  .september-steps { grid-template-columns: 1fr; gap: 16px; }
  .september-steps li + li { border-top: 1px solid var(--mist); padding-top: 16px; }
  .september-product { grid-template-columns: 1fr; }
  .september-product__photo { padding: 16px; }
  .september-product__photo img { height: 250px; }
  .september-product__copy { padding: 18px; }
  .september-product .button { width: 100%; }
  .september-midi { grid-template-columns: 84px 1fr; padding: 14px; gap: 12px; align-items: start; }
  .september-midi img { width: 84px; height: 126px; }
  .september-midi h3 { font-size: 1.45rem; }
  .september-midi .button { grid-column: 1 / -1; width: 100%; }
  .september-fund { padding-block: 28px; }
  .september-fund__inner { grid-template-columns: 1fr; gap: 22px; }
  .september-impact { gap: 16px; }
  .september-impact dd { font-size: 1.65rem; }
  .september-heroes { grid-template-columns: 1fr; }
}
