/* Season Sponsor interest page */
.spn-page{padding-top:36px;padding-bottom:64px}
.spn-page .eyebrow{margin:0 0 8px;color:var(--royal);font-weight:800;letter-spacing:.12em;text-transform:uppercase;font-size:.78rem}
.spn-page h1{margin:0 0 12px;font-size:clamp(1.8rem,3.4vw,2.6rem);line-height:1.15;color:var(--navy)}
.spn-lead{margin:0 0 28px;max-width:40rem;color:#f3f6fb;font-size:1.05rem;font-weight:600;text-shadow:0 1px 2px rgba(0,0,0,.55)}

.spn-pkg{
  background:linear-gradient(180deg,#13294f,#0b1d3a);
  color:#fff;
  border-radius:16px;
  border:1px solid #2d63d8;
  border-top:4px solid #f0d36c;
  padding:28px 28px 26px;
  box-shadow:0 10px 28px rgba(11,29,58,.18);
  margin-bottom:28px;
}
.spn-pkg-kicker{margin:0 0 6px;color:#f0d36c;font-weight:800;letter-spacing:.14em;text-transform:uppercase;font-size:.72rem}
.spn-pkg h2{margin:0 0 14px;font-size:clamp(1.6rem,2.8vw,2.1rem)}
.spn-pkg ul{margin:0 0 20px;padding:0 0 0 1.15rem}
.spn-pkg li{margin:0 0 10px}
.spn-pkg li .tbd{display:inline-block;margin-left:4px;font-style:italic;color:#c9d4ea;font-size:.92em}
.spn-pkg .btn{display:inline-block;background:#f0d36c;color:#0b1d3a;font-weight:800;text-decoration:none;text-transform:uppercase;letter-spacing:.06em;padding:12px 22px;border-radius:999px;border:0}
.spn-pkg .btn:hover,.spn-pkg .btn:focus{background:#ffe08a;color:#0b1d3a}
.spn-pkg .btn:focus-visible{outline:2px solid #fff;outline-offset:3px}
.spn-pkg-note{margin:14px 0 0;color:#c9d4ea;font-size:.9rem}

.spn-setup{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:28px;scroll-margin-top:88px}
.spn-callout{
  background:#fff;
  border:1px solid #dde2ea;
  border-left:5px solid #1f4fbf;
  border-radius:12px;
  padding:22px 22px 20px;
  box-shadow:0 2px 8px rgba(11,29,58,.07);
}
.spn-callout h2{margin:0 0 10px;font-size:1.15rem;color:var(--navy)}
.spn-callout p{margin:0 0 10px}
.spn-callout p:last-child{margin-bottom:0}
.spn-callout address{font-style:normal;margin:8px 0;line-height:1.5}
.spn-tax{border-left-color:#f0d36c;background:#fffdf6}
.spn-tax-note{font-size:.92rem;color:var(--muted)}
.spn-pay ul{margin:8px 0 12px;padding:0 0 0 1.15rem}
.spn-pay li{margin:0 0 6px}
.spn-pay-warn{font-size:.9rem;color:var(--muted)}

.spn-form-card{
  background:#fff;
  border:1px solid #dde2ea;
  border-radius:16px;
  padding:28px;
  box-shadow:0 2px 8px rgba(11,29,58,.07);
  scroll-margin-top:88px;
}
.spn-form-card h2{margin:0 0 8px;color:var(--navy)}
.spn-form label{display:block;font-weight:700;margin:0 0 14px;color:var(--ink)}
.spn-form .hint{display:block;font-weight:600;color:var(--muted);font-size:.85rem;margin:4px 0 0}
.spn-form input,
.spn-form textarea{
  display:block;
  width:100%;
  margin-top:6px;
  padding:10px 12px;
  border:1px solid #c9d0da;
  border-radius:10px;
  font:inherit;
  color:var(--ink);
  background:#fff;
}
.spn-form input:focus,
.spn-form textarea:focus{outline:2px solid #2d63d8;outline-offset:1px;border-color:#2d63d8}
.spn-form textarea{min-height:96px;resize:vertical}
.spn-form .row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.spn-form button{
  appearance:none;
  border:0;
  background:var(--royal);
  color:#fff;
  font-weight:800;
  letter-spacing:.05em;
  text-transform:uppercase;
  padding:12px 22px;
  border-radius:999px;
  cursor:pointer;
  margin-top:6px;
}
.spn-form button:hover,.spn-form button:focus{background:var(--royal-2)}
.spn-thanks{
  background:#eef6ee;
  border:1px solid #b7d4b7;
  border-radius:12px;
  padding:22px;
  color:#163416;
}
.spn-thanks h3{margin:0 0 8px}
.spn-thanks p{margin:0 0 8px}
.spn-thanks p:last-child{margin-bottom:0}

@media(max-width:800px){
  .spn-setup,
  .spn-form .row{grid-template-columns:1fr}
  .spn-pkg,
  .spn-form-card{padding:22px 18px}
}

.spn-personal-link{
  display:block;
  margin:0 0 28px;
  padding:12px 16px;
  background:#fff;
  color:var(--navy);
  font-size:.95rem;
  font-weight:600;
  text-shadow:none;
  border-radius:12px;
  border:1px solid #dde2ea;
  box-shadow:0 2px 8px rgba(11,29,58,.12);
}
.spn-personal-link a{font-weight:800;color:#1f4fbf}
.spn-personal-link a:hover,.spn-personal-link a:focus{color:#2d63d8}

.spn-pkg-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:4px 0 0}
.spn-pkg .btn-letter{
  background:transparent;
  color:#f0d36c;
  border:1px solid #f0d36c;
}
.spn-pkg .btn-letter:hover,
.spn-pkg .btn-letter:focus{background:rgba(240,211,108,.12);color:#ffe08a}
.spn-questions{margin:14px 0 0;color:#e8eef8;font-size:.92rem}
.spn-questions a{color:#f0d36c;font-weight:700;text-decoration:none}
.spn-questions a:hover,.spn-questions a:focus{text-decoration:underline}
.spn-form-tax{
  background:#fffdf6;
  border:1px solid #dde2ea;
  border-left:5px solid #f0d36c;
  border-radius:12px;
  padding:16px 18px 14px;
  margin:0 0 22px;
}
.spn-form-tax h3{margin:0 0 6px;font-size:1.05rem;color:var(--navy)}
.spn-form-tax p{margin:0 0 8px}
.spn-form-tax p:last-child{margin-bottom:0}
.spn-form input[readonly]{background:#f2f4f8;color:var(--ink);cursor:default}
.spn-form .zip{max-width:10rem}
.spn-form .hint{margin:0 0 16px}
.spn-pkg-note{margin:14px 0 0;color:#c9d4ea;font-size:.9rem}

.spn-form .hp{
  position:absolute;
  left:-9999px;
  height:0;
  overflow:hidden;
}
.spn-error{
  margin:0 0 12px;
  color:#7a1f1f;
  font-weight:700;
}
.spn-form button:disabled{opacity:.7;cursor:wait}
