.give-dialog{width:min(520px,calc(100vw - 24px));max-height:calc(100dvh - 24px);padding:28px;border:1px solid #ffffff16;border-radius:24px;background:linear-gradient(150deg,#142e46,#0b192e);color:#fff;overflow:auto;overscroll-behavior:contain;scroll-padding:64px 20px 24px;box-shadow:0 28px 100px #0009}
.give-dialog::backdrop{background:#020812b8;backdrop-filter:blur(6px)}
.give-dialog[open]{animation:give-rise .45s cubic-bezier(.22,1,.36,1) both}.give-dialog[open]::backdrop{animation:give-backdrop .3s ease both}.give-dialog.give-closing[open]{animation:give-leave .18s ease-in both}
.give-dialog [hidden]{display:none!important}.give-tools{position:sticky;top:0;z-index:3;height:0;display:flex;justify-content:flex-end;pointer-events:none}.give-close{pointer-events:auto;border:0;border-radius:50%;width:36px;height:36px;display:grid;place-items:center;background:#1a3a51;color:#fff;cursor:pointer;transform:translate(12px,-12px)}.give-close svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}
.give-brand{display:block;width:78px;height:52px;object-fit:contain;margin:0 auto 12px}.give-heading{text-align:center;margin:0;font-size:clamp(1.5rem,5vw,1.9rem);line-height:1.15;letter-spacing:-.035em}.give-intro{text-align:center;color:#b7cbdc;font-size:.9rem;line-height:1.5;margin:10px auto 0;max-width:30ch}
.give-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin:24px 0 0}.give-choice{position:relative;min-height:116px;padding:18px 6px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;border:0;background:transparent;color:#fff;font:inherit;font-size:.82rem;font-weight:700;cursor:pointer}.give-choice:not(:last-child){border-right:1px solid #ffffff20}.give-choice>img,.give-choice>.give-heart{width:48px;height:48px;object-fit:contain;fill:none;stroke:#19d3c5;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;transition:transform .25s ease}.give-choice span:after{content:'↗';margin-left:5px;color:#91b9c9}.give-choice:hover>img,.give-choice:hover>.give-heart{transform:translateY(-4px)}.give-choice:hover{color:#7fe7dd}.give-choice:before{content:'';display:none;position:absolute;top:2px;right:3px;width:14px;height:14px;border:1.5px solid #87a1b6;border-radius:50%;font-size:10px;line-height:14px;text-align:center;color:#071225}.give-choice[aria-pressed=true]:before{content:'✓';background:#19d3c5;border-color:#19d3c5}
.give-dialog:not(.give-editing)[open] .give-choice>*{animation:give-rise .45s cubic-bezier(.22,1,.36,1) both}.give-dialog:not(.give-editing) .give-choice:nth-child(1)>*{animation-delay:.08s}.give-dialog:not(.give-editing) .give-choice:nth-child(2)>*{animation-delay:.16s}.give-dialog:not(.give-editing) .give-choice:nth-child(3)>*{animation-delay:.24s}
.give-editing .give-brand{width:56px;height:38px;margin-bottom:8px}.give-editing .give-heading{font-size:1.15rem}.give-editing .give-intro{display:none}.give-editing .give-options{margin-top:16px;padding-bottom:10px;border-bottom:1px solid #ffffff24}.give-editing .give-choice{min-height:72px;padding:9px 4px;gap:7px;font-size:.72rem;color:#a7bdcf}.give-editing .give-choice>img,.give-editing .give-choice>.give-heart{width:30px;height:30px}.give-editing .give-choice:before{display:block}.give-editing .give-choice[aria-pressed=true]{color:#b9fff0;box-shadow:inset 0 -2px #19d3c5}.give-editing .give-choice span:after{content:none}
.give-form{margin-top:20px}.give-form-title{font-size:1.45rem;line-height:1.2;margin:0 0 14px;letter-spacing:-.025em}.give-back{padding:0;border:0;background:none;color:#9bded8;cursor:pointer;font-size:.75rem;margin:0 0 16px}.give-form fieldset{border:0;padding:0;margin:0 0 18px}.give-form legend,.give-field{font-size:.85rem;color:#d8e5f6}.give-frequency{display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:4px;margin-top:8px;border-radius:12px;background:#061326}.give-frequency button{border:0;border-radius:8px;background:transparent;color:#a7bdcf;min-height:42px;font:inherit;font-size:.85rem;cursor:pointer}.give-frequency button[aria-pressed=true]{background:#21465b;color:#fff;box-shadow:0 2px 6px #0002}.give-amounts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:8px}.give-amounts button{padding:10px 3px;min-height:44px;border:1px solid #ffffff30;background:none;color:#c5d8e6;border-radius:10px;font:inherit;font-size:.88rem;cursor:pointer}.give-amounts button[aria-pressed=true]{color:#baffef;background:#19d3c514;border-color:#19d3c5}.give-field{display:block;margin:0 0 16px}.give-field input{width:100%;min-height:48px;display:block;margin-top:7px;padding:12px 14px;border:1px solid #ffffff30;border-radius:12px;background:#061326;color:#fff;font:inherit;font-size:16px;scroll-margin-block:24px}.give-money{position:relative;margin-top:8px}.give-money span{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:#92b6c8;font-size:1rem}.give-money input{padding-left:32px}.give-small{font-size:.77rem;line-height:1.6;color:#a8bed0;margin:10px 0 16px}.give-check{display:flex;align-items:flex-start;gap:10px;font-size:.78rem;line-height:1.55;color:#c3d6e5;margin:16px 0}.give-check input{flex:none;width:18px;height:18px;margin-top:2px;accent-color:#19d3c5}.give-summary{padding:14px 0;margin:0 0 10px;border-top:1px solid #ffffff22;display:flex;align-items:baseline;justify-content:space-between;gap:10px;color:#b9cddd;font-size:.82rem}.give-summary strong{color:#fff;font-size:1.4rem;letter-spacing:-.025em}.give-submit{width:100%;min-height:48px;border:0;border-radius:999px;padding:12px 18px;background:linear-gradient(110deg,#ffb627,#ffe49b);color:#091427;font:inherit;font-weight:800;cursor:pointer}.give-submit:disabled{opacity:.5;cursor:default}.give-stripe{text-align:center;font-size:.71rem;color:#9bb3c6;margin:10px 0 0}.give-status{font-size:.82rem;line-height:1.5;margin:14px 0 0;color:#ffd596}.give-status:empty{display:none}.give-mode{display:block;width:max-content;max-width:100%;margin:14px auto 0;padding:5px 9px;border:1px solid #ffb62755;border-radius:6px;color:#ffe19b;background:#ffb6270c;font-size:.68rem;letter-spacing:.035em;font-weight:700;text-align:center}.give-result{text-align:center;margin:24px 0 8px}.give-result svg{display:block;width:64px;height:64px;margin:0 auto 20px;fill:none;stroke:#19d3c5;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.give-result h3{font-size:1.5rem;margin:0 0 12px}.give-result p{color:#c0d3e2;font-size:.9rem;line-height:1.6}.give-support{color:#9be9dd;text-decoration:underline;text-underline-offset:3px}.give-footer-link{display:inline-block;color:#9bded8;text-decoration:underline;text-underline-offset:3px;margin-top:12px}.give-dialog button:focus-visible,.give-dialog a:focus-visible,.give-dialog input:focus-visible{outline:2px solid #19d3c5;outline-offset:3px}.give-dialog button:active:not(:disabled){filter:brightness(.94)}
@keyframes give-rise{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}@keyframes give-leave{to{opacity:0;transform:translateY(20px)}}@keyframes give-backdrop{from{opacity:0}to{opacity:1}}
@media(max-width:600px){.give-dialog[open]{position:fixed;top:calc(var(--give-view-top,0px) + 12px);bottom:auto;margin:0 auto;max-height:calc(var(--give-view-height,100dvh) - 24px);padding:24px 20px;padding-bottom:max(24px,env(safe-area-inset-bottom))}.give-choice{font-size:.76rem}.give-heading{padding:0 12px}.give-editing .give-choice{font-size:.69rem}}
@media(prefers-reduced-motion:reduce){.give-dialog[open],.give-dialog[open]::backdrop,.give-dialog.give-closing[open],.give-dialog .give-choice>*{animation:none!important;transition:none!important}.give-choice:hover>img,.give-choice:hover>.give-heart{transform:none}}
.give-profile{font-size:.8rem;line-height:1.5;color:#9be4d7;margin:0 0 16px}.give-vendor-quote{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin:16px 0;color:#bad4e6}.give-vendor-quote strong{font-size:1.5rem;color:white}.give-vendor-quote[hidden]{display:none}.registration-next{margin-top:24px;padding-top:22px;border-top:1px solid #ffffff26}.registration-next .registration-step{color:#ffda8b;font-size:.75rem;margin-bottom:12px}.registration-next button{display:block;width:100%;margin:10px 0}.registration-next .registration-skip{border:0;background:none;color:#a8c8db;cursor:pointer;padding:10px}.registration-vendor-key{margin:18px 0}.registration-vendor-key input{display:block;width:100%;background:#061326;color:#badcd8;border:1px solid #ffffff30;border-radius:8px;padding:10px;font-size:12px}.registration-vendor-key small{display:block;color:#abc2d4;margin-bottom:8px}

.give-contact legend{margin-bottom:14px}.give-contact-names{display:grid;grid-template-columns:1fr 1fr;gap:12px}.give-fiscal{display:flex;gap:12px;border-top:1px solid #ffffff20;margin-top:22px;padding-top:18px;color:#adbdcf;font-size:.72rem;line-height:1.5}.give-fiscal>img{width:56px;height:42px;object-fit:contain;flex:none}.give-fiscal strong{display:block;color:#d8e6f5;font-size:.76rem}.give-fiscal p{margin:4px 0 8px}.give-fiscal a{color:#9be9dd;text-underline-offset:3px}.give-paying{width:min(680px,calc(100vw - 24px))}.give-paying .give-heading{font-size:1.2rem}.give-paying .give-intro{display:none}.give-checkout{margin-top:22px}.give-checkout>div{background:white;border-radius:12px;overflow:hidden;min-height:360px}.give-checkout iframe{width:100%!important}.give-profile{padding:12px;border-left:2px solid #19d3c5;background:#19d3c509}.give-dialog .give-fiscal[hidden]{display:none}@media(max-width:380px){.give-contact-names{grid-template-columns:1fr;gap:0}}

/* One RSVP step, followed directly by optional giving. */
.give-rsvp-saved{margin:18px 0 22px;padding:15px 0;border-block:1px solid #ffffff20;line-height:1.5}.give-rsvp-saved .give-step{display:block;color:#ffda8b;font-size:.66rem;letter-spacing:.1em;margin-bottom:7px}.give-rsvp-saved strong{display:block;font-size:.95rem;color:#baffef}.give-rsvp-confirm{font-size:.78rem;color:#bad0df;margin:7px 0 0}.give-skip{display:block;width:100%;border:0;background:none;color:#b4ccd9;padding:14px 6px;margin:6px 0 0;font:inherit;font-size:.82rem;cursor:pointer;text-decoration:underline;text-underline-offset:4px}.give-tax{border-top:1px solid #ffffff20;margin-top:20px;padding-top:16px;font-size:.71rem;line-height:1.55;color:#a8bed0}.give-tax summary{cursor:pointer;color:#b5cedb}.give-tax p{margin:10px 0}.give-tax a{color:#9be9dd;text-underline-offset:3px}.give-form{margin-top:22px}.give-editing .give-brand{width:68px;height:46px}.give-editing .give-heading{font-size:1.4rem}.give-editing .give-form-title{font-size:1.1rem}.give-dialog .give-options[hidden]{display:none!important}


.give-dialog .give-checkout{padding:0}

/* Minimal white giving screen. Identity and checkout behavior stay connected. */
.give-dialog{box-sizing:border-box;background:#fff;color:#142c43;border:0;width:min(480px,calc(100vw - 24px));padding:26px 28px;border-radius:22px;color-scheme:light;box-shadow:0 24px 90px #06132655}
.give-dialog *{box-sizing:border-box}.give-close{background:#f0f3f5;color:#344a5c}.give-editing .give-brand{width:60px;height:40px;margin:0 auto 14px}.give-editing .give-heading{font-size:1.55rem;padding:0 15px;line-height:1.2}.give-heading{color:#142c43}.give-intro{display:none}
.give-sr-only,.give-form-title,.give-frequency-section legend,.give-summary,.give-contact legend,.give-contact>.give-small{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.give-form{margin-top:24px}.give-form fieldset{margin-bottom:18px}.give-form legend,.give-field{color:#43586a;font-size:.85rem}.give-frequency{margin:0;background:#f0f3f5;border-radius:12px;padding:4px;gap:4px}.give-frequency button{color:#526676;min-height:44px}.give-frequency button[aria-pressed=true]{background:#fff;color:#142c43;box-shadow:0 1px 6px #142c4320;font-weight:700}
.give-amounts{gap:8px;margin-top:10px}.give-amounts button{border:1px solid #dce4e9;color:#344d60;min-height:48px;background:#fff}.give-amounts button[aria-pressed=true]{border-color:#087e83;background:#edf9f8;color:#07666c;font-weight:700}.give-field input{background:#fff;border:1px solid #d5dfe6;border-radius:10px;color:#142c43;margin-top:6px;min-height:48px;padding:12px}.give-field input::placeholder{color:#6b7b88;opacity:1}.give-contact .give-field input{margin-top:0}.give-field{margin-bottom:12px}.give-contact-names{gap:10px}.give-money span{color:#526676}.give-money input{padding-left:30px}.give-small,.give-repeat-note{color:#617282}.give-repeat-note{font-size:.74rem;line-height:1.5;margin:0 0 16px}.give-check{color:#526676;font-size:.77rem;line-height:1.45;margin:15px 0 20px;gap:9px}.give-check input{accent-color:#087e83;width:18px;height:18px;margin-top:0}.give-submit{background:#142f49;color:#fff;min-height:50px;border-radius:12px;font-size:.9rem}.give-submit:hover:not(:disabled){background:#204460}.give-stripe{color:#71808c;font-size:.7rem;margin-top:12px}.give-form>.give-small{margin:8px 0 0;text-align:center;font-size:.7rem}.give-support,.give-tax a{color:#526676}.give-status{color:#9c401b}.give-mode{color:#865e10;background:#fff6df;border-color:#ead79b}
.give-profile{display:flex;align-items:center;justify-content:space-between;gap:10px;background:#eff8f5;border:0;border-radius:9px;padding:11px 12px;color:#316759;font-size:.77rem;margin:0 0 18px}.give-profile .give-back{margin:0;white-space:nowrap;font-size:.76rem;color:#316759;text-decoration:underline;text-underline-offset:3px}.give-rsvp-saved{margin:18px 0 0;padding:0;border:0;text-align:center}.give-rsvp-saved .give-step{display:none}.give-rsvp-saved strong{color:#31715f;font-weight:600;font-size:.82rem}.give-rsvp-confirm{color:#617282;font-size:.75rem}.give-skip{color:#526676;margin:6px 0 0;padding:13px 4px;font-size:.8rem}.give-tax{border-color:#e5ebef;color:#617282;font-size:.71rem;margin-top:18px;padding-top:14px}.give-tax summary{color:#617282}.give-extra{margin:0 0 16px;color:#617282;font-size:.78rem}.give-extra summary{cursor:pointer;width:max-content}.give-extra .give-field{margin-top:10px}.give-extra .give-field>span{display:none}.give-back{color:#087e83}.give-vendor-quote{color:#526676}.give-vendor-quote strong{color:#142c43}.give-result p{color:#526676}.give-dialog button:focus-visible,.give-dialog a:focus-visible,.give-dialog input:focus-visible,.give-dialog summary:focus-visible{outline:2px solid #087e83;outline-offset:3px}.give-form-title:focus{outline:none}.give-paying{width:min(680px,calc(100vw - 24px))}.give-paying>.give-brand,.give-paying>.give-rsvp-saved,.give-paying>.give-tax{display:none}.give-checkout{margin-top:18px}
@media(max-width:600px){.give-dialog[open]{padding:24px 20px;padding-bottom:max(22px,env(safe-area-inset-bottom));max-height:calc(var(--give-view-height,100dvh) - 24px)}.give-editing .give-heading{font-size:1.45rem}.give-editing .give-brand{margin-bottom:12px}.give-form{margin-top:22px}}
@media(max-width:380px){.give-contact-names{grid-template-columns:1fr 1fr;gap:8px}.give-submit{font-size:.84rem}}

/* Friends of the Festival: compact purpose and business attribution. */
.give-dialog:not(.give-paying) .give-intro{display:block;color:#617282;font-size:.84rem;line-height:1.5;max-width:42ch;margin:12px auto 0}.give-editing .give-heading{font-size:1.45rem;max-width:29ch;margin-inline:auto}.give-recognition-note{display:block;font-size:.69rem;line-height:1.45;color:#71808c;margin-top:5px}.give-extra summary{max-width:100%;width:auto}.give-extra .give-field>span{display:block;font-size:.78rem}.give-extra input{margin-top:6px}
@media(max-width:600px){.give-editing .give-heading{font-size:1.35rem}.give-dialog:not(.give-paying) .give-intro{font-size:.8rem}}

.give-editing .give-heading{white-space:pre-line;padding-inline:0;font-size:clamp(1.05rem,4.8vw,1.45rem);max-width:none}

/* Direct donations need email only; keep the remaining fields and help quiet. */
.give-business .give-field input{margin-top:0}.give-business .give-field{margin-bottom:18px}.give-links{display:flex;align-items:center;justify-content:center;gap:16px;margin:14px 0 0;font-size:.72rem;line-height:1.4;flex-wrap:wrap}.give-links a{white-space:nowrap}.give-agent{margin:17px auto 0;text-align:center;color:#617282;font-size:.71rem;line-height:1.5}.give-agent small{display:block;font-size:.68rem;color:#71808c;margin-top:2px}.give-stripe{margin-top:10px}.give-submit{margin-top:0}

.give-frequency button[aria-pressed=true],.give-amounts button[aria-pressed=true]{background:#087f95;border-color:#087f95;color:#fff;box-shadow:none;font-weight:700}.give-frequency button[aria-pressed=true]:hover,.give-amounts button[aria-pressed=true]:hover{background:#077287}.give-dialog button:focus-visible,.give-dialog a:focus-visible,.give-dialog input:focus-visible{outline-color:#087f95}

.give-form .give-contact{margin-bottom:0}

.give-tax .give-agent{text-align:left;margin:12px 0}.give-tax .give-agent small{display:block}
