.sponsor-planner{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(2rem,5vw,6rem);padding-top:clamp(3.5rem,7vw,7rem);padding-bottom:clamp(3.5rem,7vw,7rem);border-top:1px solid rgba(255,255,255,.16);scroll-margin-top:120px}
.sp-intro h2{font-size:clamp(2.6rem,5.1vw,5.5rem);line-height:1.04;letter-spacing:-.035em;margin:.7rem 0 1.5rem;overflow-wrap:anywhere}
.sp-intro h2 em{font-style:normal;color:inherit}
.sp-intro>p:not(.eyebrow){max-width:42ch;line-height:1.65}
.sp-intro .sp-note{font-size:.82rem;color:#c8c6c6;border-left:2px solid currentColor;padding-left:1rem;margin-top:1.7rem}
.sp-workspace{min-width:0;padding:clamp(1.1rem,2.6vw,2rem);border:1px solid rgba(255,255,255,.2);background:rgba(0,0,0,.12);border-radius:8px}
.sp-choices{margin:0 0 1.5rem;padding:0;border:0;min-width:0}
.sp-choices[hidden],.sp-copy[hidden]{display:none}
.sp-choices legend{font-size:.86rem;font-weight:700;margin-bottom:.8rem;padding:0}
.sp-option{position:relative;display:block;margin:.5rem 0;cursor:pointer}
.sp-option input{position:absolute;left:1rem;top:1.2rem;width:18px;height:18px;accent-color:#fff}
.sp-option>span{display:block;min-height:82px;padding:1rem 1rem 1rem 3.1rem;border:1px solid rgba(255,255,255,.2);border-radius:5px;background:rgba(255,255,255,.025);transition:background .15s,border-color .15s}
.sp-option strong{display:block;font-size:1rem;line-height:1.35}
.sp-option small{display:block;margin-top:.3rem;font-size:.8rem;line-height:1.45;color:#d0cece}
.sp-option input:checked+span{border-color:#fff;background:rgba(255,255,255,.08)}
.sp-option input:focus-visible+span{outline:3px solid #fff;outline-offset:3px}
.sp-summary-label{display:block;font-size:.86rem;font-weight:700;margin-bottom:.35rem}
.sp-hint,.sp-route-note{font-size:.78rem;line-height:1.55;color:#d0cece;margin:0 0 .75rem}
.sp-summary{display:block;width:100%;box-sizing:border-box;resize:vertical;min-height:185px;border:1px solid #8293a8;border-radius:5px;background:#111010;color:#fff;padding:1rem;font:inherit;font-size:16px;line-height:1.55}
.sp-summary:focus-visible,.sp-contact:focus-visible,.sp-copy:focus-visible{outline:3px solid #fff;outline-offset:4px}
.sp-actions{display:flex;gap:.7rem;flex-wrap:wrap;margin:1rem 0 .7rem}
.sp-contact,.sp-copy{appearance:none;display:inline-flex;justify-content:center;align-items:center;min-height:48px;padding:.8rem 1.15rem;border:1px solid #fff;border-radius:4px;font:inherit;font-size:.82rem;font-weight:700;line-height:1.35;text-decoration:none;cursor:pointer}
.sp-contact{background:#fff;color:#111010}
.sp-copy{background:transparent;color:#fff}
.sp-contact:hover{background:#eeeded;color:#111010}
.sp-copy:hover{background:rgba(255,255,255,.1)}
.sp-status{font-size:.8rem;line-height:1.5;min-height:1.5em;margin:.5rem 0 0;color:#fff}
@media(max-width:760px){.sponsor-planner{grid-template-columns:minmax(0,1fr);gap:1.8rem}.sp-intro h2{font-size:clamp(2.5rem,11vw,4rem)}.sp-intro>p:not(.eyebrow){max-width:none}.sp-actions>a,.sp-actions>button{flex:1 1 140px}.sp-option>span{padding-right:.8rem}.sp-workspace{padding:1.1rem}}
@media(prefers-reduced-motion:reduce){.sp-option>span{transition:none}}
