/* Page 45 support presentation only; native WPForms owns validation/payment. */
body.page-id-45 #sponsorships.sgff-support-panel {
    --support-burgundy: var(--sgff-burgundy, #6b2233);
    --support-gold: var(--sgff-gold, #c2a052);
    color: #342a28;
    background: #fff;
    border: 0;
    box-shadow: none;
    padding-block: 1.5rem;
    scroll-margin-block-start: 7rem;
}
body.page-id-45 #sponsorships.sgff-support-panel * { box-sizing: border-box; }
body.page-id-45 #sponsorships .sgff-support-grid { display: grid; grid-template-columns: minmax(0, 3fr) minmax(0, 2fr); gap: 0; align-items: stretch; }
body.page-id-45 #sponsorships .sgff-support-primary { min-width: 0; padding-inline-end: clamp(1.5rem, 3vw, 2.5rem); text-align: center; }
body.page-id-45 #sponsorships .sgff-support-intro { padding-block: clamp(2rem, 4vw, 3rem); margin: 0 auto 1rem; max-width: 58ch; background: transparent; border: 0; box-shadow: none; text-align: center; }
body.page-id-45 #sponsorships .sgff-support-intro p { margin: 0; font-size: 1rem; font-weight: 400; line-height: 1.7; text-decoration: none; }
body.page-id-45 #sponsorships .sgff-support-intro p + p { margin-block-start: 1.5rem; }
body.page-id-45 #sponsorships .sgff-support-recognition { min-width: 0; padding: 2rem 0 0 clamp(1.5rem, 3vw, 2.5rem); background: transparent; border: 0; border-inline-start: 1px solid var(--support-gold); box-shadow: none; text-align: center; }
body.page-id-45 #sponsorships .sgff-support-recognition h3 { margin: 0 0 1.5rem; font-size: 1.3rem; line-height: 1.4; color: var(--support-burgundy); text-align: center; }
body.page-id-45 #sponsorships .sgff-support-viewport { max-height: min(30rem, 65vh); overflow-y: auto; overscroll-behavior-y: contain; scrollbar-gutter: stable both-edges; scroll-behavior: auto; overflow-anchor: none; }
body.page-id-45 #sponsorships .sgff-support-roll { display: flow-root; margin: 0; padding: 0; }
/* Identical contiguous cycles: no margins can collapse outside a cycle. */
body.page-id-45 #sponsorships .sgff-support-group { margin: 0; padding: .75rem 0; border: 0; }
body.page-id-45 #sponsorships .sgff-support-group h4 { margin: 0; padding: .5rem .35rem; color: var(--support-burgundy); font-size: 1rem; line-height: 1.4; border: 0; text-align: center; }
body.page-id-45 #sponsorships .sgff-support-names { list-style: none; padding: 0; margin: 0; }
body.page-id-45 #sponsorships .sgff-support-names li { padding: .85rem .35rem; margin: 0; border: 0; line-height: 1.5; overflow-wrap: anywhere; text-align: center; }
body.page-id-45 #sponsorships .sgff-support-dedication { display: block; margin-block-start: .25rem; font-size: .875rem; font-weight: 400; line-height: 1.5; color: #665650; text-align: center; }
body.page-id-45 #sponsorships .sgff-support-empty { padding-block: 1rem; line-height: 1.6; }
body.page-id-45 #sponsorships .sgff-support-motion { display: block; min-height: 44px; padding: .4rem .7rem; margin: 0 auto .5rem; font: inherit; font-size: .875rem; color: var(--support-burgundy); background: transparent; border: 1px solid var(--support-burgundy); border-radius: 3px; cursor: pointer; }
body.page-id-45 #sponsorships .sgff-support-cycle-copy { pointer-events: none; }
body.page-id-45 #sponsorships [hidden] { display: none !important; }
body.page-id-45 #sponsorships.sgff-support-panel :is(input, button, a, [tabindex]):focus-visible { outline: 3px solid var(--support-burgundy); outline-offset: 3px; }
body.page-id-45 #sponsorships .wpforms-container { margin: 0 auto; text-align: center; }
body.page-id-45 #sponsorships .wpforms-form .wpforms-field { padding: 0; margin: 0 0 1.25rem; text-align: center; }
body.page-id-45 #sponsorships .wpforms-form .wpforms-field:empty { display: none; }
body.page-id-45 #sponsorships .wpforms-form .wpforms-field-label { display: block; margin: 0 0 .4rem; font-size: 1rem; font-weight: 600; color: #342a28; text-align: center; }
body.page-id-45 #sponsorships .wpforms-form .wpforms-field-row { margin-inline: auto; }
body.page-id-45 #sponsorships .wpforms-form input:is([type="text"], [type="email"], [type="tel"], [type="number"]), body.page-id-45 #sponsorships .wpforms-form textarea, body.page-id-45 #sponsorships .wpforms-form select { min-height: 46px; width: 100%; max-width: 100%; padding: .65rem .75rem; font-size: 16px; border: 1px solid #a68d78; border-radius: 3px; background: #fff; color: #342a28; text-align: start; }
body.page-id-45 #sponsorships .wpforms-form .wpforms-field-sublabel { text-align: start; }
body.page-id-45 #sponsorships .wpforms-form .wpforms-field-description { font-size: .875rem; line-height: 1.5; margin: .4rem 0 0; color: #665650; text-align: center; }
body.page-id-45 #sponsorships .wpforms-form .wpforms-field ul { width: fit-content; max-width: 100%; margin: 0 auto; padding: 0; list-style: none; text-align: start; }
body.page-id-45 #sponsorships .wpforms-form .wpforms-field li { display: flex; align-items: center; min-height: 48px; gap: .65rem; margin: 0 !important; padding: 0 !important; }
body.page-id-45 #sponsorships .wpforms-form input:is([type="radio"], [type="checkbox"]) { flex: 0 0 20px; width: 20px; height: 20px; margin: 0; accent-color: var(--support-burgundy); }
body.page-id-45 #sponsorships .wpforms-form .wpforms-field li label { display: flex; align-items: center; min-height: 48px; margin: 0; cursor: pointer; text-align: start; }
body.page-id-45 #sponsorships .wpforms-form .wpforms-submit-container { text-align: center; }
body.page-id-45 #sponsorships .wpforms-form .wpforms-submit { min-height: 48px; padding: .8rem 1.25rem; font: inherit; font-weight: 600; background: var(--support-burgundy); color: #fff; border: 1px solid var(--support-burgundy); border-radius: 3px; cursor: pointer; }
body.page-id-45 #sponsorships .wpforms-form .wpforms-submit:disabled { opacity: .6; cursor: default; }
@media (max-width: 900px) {
    body.page-id-45 #sponsorships .sgff-support-grid { grid-template-columns: minmax(0, 1fr); }
    body.page-id-45 #sponsorships .sgff-support-primary { padding-inline-end: 0; }
    body.page-id-45 #sponsorships .sgff-support-recognition { border-inline-start: 0; border-block-start: 1px solid var(--support-gold); margin-block-start: 2rem; padding: 2rem 0 0; }
    body.page-id-45 #sponsorships .sgff-support-viewport { max-height: min(24rem, 60vh); }
}
@media (prefers-reduced-motion: reduce) {
    body.page-id-45 #sponsorships .sgff-support-viewport { scroll-behavior: auto; }
}
