    
    button,
    input,
    textarea,
    select {
      font-family: Georgia, "Times New Roman", serif;
    }


:root {
      --tc-green: #2f6b32;
      --tc-green-dark: #1f4d22;
      --gold: #c8a44d;
      --cream: #fffaf0;
      --dark: #1f2a24;
      --muted: #6b7280;
      --available: #2f6b32;
      --pending: #f2c84b;
      --sold: #d7261e;
      --selected: #28d15f;
      --gray-seat: #8c8c8c;
      --floor-light: #f2dfbf;
      --floor-mid: #e0b777;
      --floor-dark: #c58a47;
      --section-bg: rgba(255, 246, 225, .52);
      --section-border: rgba(255,255,255,.62);
      --bellini-green-950: #063c2a;
      --bellini-green-900: #074b35;
      --bellini-green-800: #0a5a40;
      --bellini-green-700: #176448;
      --bellini-mint-50: #f8fbf9;
      --bellini-mint-100: #f1f7f3;
      --bellini-border: #d8e5dd;
      --bellini-gold: #c9a45a;
      --bellini-gold-soft: #dcc58d;
      --bellini-charcoal: #333a36;
      --bellini-muted: #66706a;
      --bellini-gray-seat: #a8aaa9;
      --bellini-pending: #d3a532;
      --bellini-paid: #9e342f;
      --partners-primary: #34483A;
      --partners-secondary: #4B5B46;
      --partners-accent: #B38A52;
      --partners-background: #F4EFE6;
      --partners-surface: #E7DED0;
      --partners-text: #292B29;
      --partners-muted: #4B5B46;
    }

    * { box-sizing: border-box; }

      body {
        margin: 0;
        background: #fff;
        color: var(--dark);
        font-family: Arial, Helvetica, sans-serif;
        overflow-x: hidden;
      }

      body.program-partners {
        --tc-green: var(--partners-primary);
        --tc-green-dark: var(--partners-primary);
        --gold: var(--partners-accent);
        --cream: var(--partners-background);
        --dark: var(--partners-text);
        --muted: var(--partners-muted);
        --available: var(--partners-background);
        --pending: var(--partners-accent);
        --sold: #706970;
        --selected: var(--partners-primary);
        --bellini-green-950: #26362B;
        --bellini-green-900: #2D4033;
        --bellini-green-800: #34483A;
        --bellini-green-700: #4B5B46;
        --bellini-mint-50: #F4EFE6;
        --bellini-mint-100: #E7DED0;
        --bellini-border: #d6c5b2;
        --bellini-gold: var(--partners-accent);
        --bellini-gold-soft: #d1b386;
        --bellini-charcoal: var(--partners-text);
        --bellini-muted: var(--partners-muted);
        --bellini-gray-seat: #8a8388;
        --bellini-pending: var(--partners-accent);
        --bellini-paid: #4B5B46;
        --floor-light: #F4EFE6;
        --floor-mid: #E7DED0;
        --floor-dark: #bfa98f;
        --section-bg: rgba(232,222,210,.68);
        --section-border: rgba(179,138,82,.34);
        background: var(--partners-background);
      }

    .mobile-note {
      display: none;
      border: 1px solid var(--gold);
      background: #fff8e6;
      color: var(--tc-green-dark);
      border-radius: 12px;
      padding: 10px 12px;
      text-align: center;
      font-weight: 800;
      font-size: 13px;
      margin-bottom: 12px;
    }

    .page {
      width: min(100%, 1540px);
      margin: 0 auto;
      padding: 0 18px 28px;
    }

    .hero {
      position: relative;
      border: 0;
      border-radius: 0;
      background:
        radial-gradient(circle at 50% 18%, rgba(200,164,77,.08), transparent 28%),
        linear-gradient(180deg, #fff 0%, #fffdf8 100%);
      text-align: center;
      padding: 0 18px 24px;
      margin: 0 -18px 14px;
      overflow: hidden;
    }

    .hero::before {
      content: "";
      display: block;
      height: 18px;
      margin: 0 -18px 14px;
      background: linear-gradient(90deg, #063c25, var(--tc-green-dark), #063c25);
    }

    .hero h1 {
      margin: 0;
      color: var(--tc-green-dark);
      font-family: Georgia, "Times New Roman", serif;
      font-size: clamp(18px, 1.8vw, 26px);
      line-height: 1.05;
      letter-spacing: .18em;
      text-transform: uppercase;
    }

    .hero-titlebar {
      padding: 0 18px 12px;
      text-align: center;
    }

    .tc-crest {
      display: block;
      width: clamp(66px, 7vw, 92px);
      height: auto;
      margin: 0 auto 10px;
      filter: drop-shadow(0 8px 12px rgba(31,42,36,.16));
    }

    .hero-rule {
      display: flex;
      align-items: center;
      justify-content: center;
      gap: 12px;
      width: min(520px, 84%);
      margin: 14px auto 0;
      color: var(--gold);
    }

    .hero-rule::before,
    .hero-rule::after {
      content: "";
      height: 1px;
      flex: 1;
      background: linear-gradient(90deg, transparent, rgba(200,164,77,.9));
    }

    .hero-rule::after {
      background: linear-gradient(90deg, rgba(200,164,77,.9), transparent);
    }

    .hero-rule span {
      width: 9px;
      height: 9px;
      border: 1px solid var(--gold);
      transform: rotate(45deg);
      background: #fffdf8;
    }

      .hero p {
        margin: 0;
        font-size: 15px;
        color: #173b1b;
      }

      .program-partners .hero {
        background:
          radial-gradient(circle at 50% 16%, rgba(208,164,77,.12), transparent 30%),
          linear-gradient(180deg, #fff 0%, var(--partners-background) 100%);
      }

      .program-partners .hero::before {
        background: linear-gradient(90deg, #34483A, #4B5B46, #34483A);
      }

      .program-partners .hero h1,
      .program-partners .legacy-intro h2,
      .program-partners .legacy-copy-section h3,
      .program-partners .legacy-opportunity h3,
      .program-partners .quantity-copy h3,
      .program-partners .reservation-form h3 {
        color: var(--partners-primary);
      }

      .program-partners .legacy-subhead,
      .program-partners .legacy-signature {
        color: var(--partners-secondary);
      }

      .program-partners .legacy-lede,
      .program-partners .legacy-copy-section p,
      .program-partners .legacy-opportunity p,
      .program-partners .legacy-note,
      .program-partners .quantity-copy p,
      .program-partners .reservation-form-subtitle {
        color: var(--partners-text);
      }

    .legacy-intro {
      max-width: 900px;
      margin: 0 auto;
      padding: 6px 0 0;
      display: grid;
      justify-items: center;
      row-gap: 14px;
      text-align: center;
    }

    .legacy-intro h2 {
      width: 100%;
      max-width: 900px;
      margin: 0 auto 4px;
      color: var(--tc-green-dark);
      font-family: Georgia, "Times New Roman", serif;
      font-size: clamp(29px, 3.65vw, 48px);
      line-height: 1.14;
      letter-spacing: 0;
      text-transform: none;
      text-wrap: balance;
    }

    .legacy-subhead {
      width: 100%;
      max-width: 900px;
      margin: 0 auto;
      color: #b06f09;
      font-family: Arial, Helvetica, sans-serif;
      font-size: clamp(13px, 1.45vw, 18px);
      font-weight: 900;
      letter-spacing: 0;
      line-height: 1.35;
      text-transform: none;
    }

    .legacy-short-rule {
      width: 42px;
      height: 1px;
      margin: 2px auto;
      background: var(--gold);
    }

    .stewards-intro h2 {
      letter-spacing: .08em;
      text-transform: uppercase;
    }

    .legacy-lede {
      width: 100%;
      max-width: 900px;
      margin: 0 auto;
      color: #202b24;
      font-size: clamp(16px, 1.55vw, 19px);
      line-height: 1.58;
      text-wrap: balance;
    }

    .legacy-copy-stack {
      display: grid;
      gap: 18px;
      width: 100%;
      max-width: 900px;
      margin: 0 auto;
      text-align: center;
    }

    .legacy-copy-section {
      text-align: center;
    }

    .legacy-copy-section h3 {
      margin: 0 0 8px;
      color: var(--tc-green-dark);
      font-family: Georgia, "Times New Roman", serif;
      font-size: clamp(18px, 1.75vw, 23px);
      line-height: 1.2;
      font-weight: 900;
      letter-spacing: 0;
      text-transform: none;
    }

    .legacy-copy-section p {
      max-width: 900px;
      margin: 0 auto;
    }

    .legacy-copy-section p + p {
      margin-top: 10px;
    }

    .legacy-divider {
      width: min(100%, 360px);
      margin: 0 auto;
      border-top: 1px solid rgba(200,164,77,.6);
    }

    .legacy-seat-price {
      color: var(--tc-green-dark) !important;
      font-family: Georgia, "Times New Roman", serif;
      font-size: clamp(20px, 2vw, 26px) !important;
      font-weight: 900;
    }

    .legacy-copy-section p,
    .legacy-opportunity p,
    .legacy-note {
      color: #202b24;
      font-size: 15px;
      line-height: 1.55;
      text-align: center;
      text-wrap: balance;
    }

    .legacy-copy-section strong,
    .legacy-lede strong,
    .legacy-opportunity strong,
    .legacy-note strong {
      color: var(--tc-green-dark);
      font-weight: 900;
    }

    .legacy-signature {
      width: 100%;
      max-width: 900px;
      margin: 2px auto 0;
      color: var(--tc-green-dark);
      font-family: Georgia, "Times New Roman", serif;
      font-size: clamp(24px, 3vw, 34px);
      font-weight: 900;
      line-height: 1.15;
      text-align: center;
    }

    .legacy-commitment {
      width: 100%;
      max-width: 900px;
      margin: 0 auto;
      color: #33443a;
      font-size: 14px;
      line-height: 1.5;
      text-align: center;
    }

    .legacy-opportunity {
      width: 100%;
      max-width: 900px;
      margin: 4px auto 0;
      padding-top: 18px;
      border-top: 1px solid rgba(200,164,77,.6);
      text-align: center;
    }

    .legacy-opportunity h3 {
      margin: 0 0 6px;
      color: var(--tc-green-dark);
      font-family: Georgia, "Times New Roman", serif;
      font-size: clamp(25px, 3vw, 36px);
      line-height: 1.15;
    }

    .legacy-opportunity p {
      max-width: 900px;
      margin: 0 auto;
      text-wrap: balance;
    }

    .legacy-opportunity p + p {
      margin-top: 4px;
    }

    .partners-campaign-copy {
      row-gap: 16px;
    }

    .partners-highlight,
    .partners-support-copy {
      max-width: 820px;
      margin: 0 auto;
      color: var(--partners-text);
      font-size: clamp(16px, 1.45vw, 18px);
      line-height: 1.55;
      text-align: center;
      text-wrap: balance;
    }

    .partners-highlight {
      color: var(--partners-primary);
      font-family: Georgia, "Times New Roman", serif;
      font-size: clamp(19px, 2vw, 25px);
    }

    .partners-support-copy strong,
    .partners-highlight strong {
      color: inherit;
    }

    .partners-campaign-copy .legacy-copy-stack {
      gap: 0;
      margin-top: 10px;
    }

    .partners-ways,
    .partners-participation-section {
      padding: 24px 0;
      border-top: 1px solid rgba(208,164,77,.55);
    }

    .partners-ways h3 {
      font-size: clamp(26px, 3vw, 36px);
    }

    .partners-participation-section h3 {
      font-size: clamp(23px, 2.5vw, 31px);
    }

    .partners-participation-section h4 {
      margin: 16px 0 7px;
      color: var(--partners-secondary);
      font-family: Georgia, "Times New Roman", serif;
      font-size: clamp(18px, 1.8vw, 22px);
      line-height: 1.2;
    }

    .partners-term {
      color: var(--partners-secondary) !important;
      font-size: 17px !important;
    }

    .partners-list-label {
      margin-top: 14px !important;
      font-weight: 800;
    }

    .partners-benefits,
    .partners-naming-tiers {
      width: min(100%, 660px);
      margin: 10px auto 14px;
      padding: 0;
      color: var(--partners-text);
      font-size: 15px;
      line-height: 1.5;
      text-align: left;
    }

    .partners-benefits {
      padding-left: 22px;
    }

    .partners-benefits li + li {
      margin-top: 6px;
    }

    .partners-benefit-tbd {
      color: #4B5B46;
    }

    .partners-naming-tiers {
      list-style: none;
      border-top: 1px solid rgba(52,72,58,.16);
      border-bottom: 1px solid rgba(52,72,58,.16);
    }

    .partners-naming-tiers li {
      display: flex;
      align-items: baseline;
      justify-content: space-between;
      gap: 20px;
      padding: 9px 4px;
    }

    .partners-naming-tiers li + li {
      border-top: 1px solid rgba(52,72,58,.1);
    }

    .partners-naming-tiers span {
      color: var(--partners-secondary);
      font-weight: 800;
      text-align: right;
    }

    .partners-action {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      min-height: 42px;
      margin-top: 16px;
      padding: 10px 18px;
      border: 1px solid var(--partners-primary);
      border-radius: 5px;
      background: var(--partners-primary);
      color: #fff;
      font-size: 14px;
      font-weight: 800;
      text-decoration: none;
      box-shadow: 0 6px 14px rgba(52,72,58,.12);
    }

    .partners-action:hover,
    .partners-action:focus-visible {
      background: #2A3A30;
      box-shadow: 0 8px 18px rgba(52,72,58,.18);
    }

    .partners-chair-naming .legacy-note {
      max-width: 760px;
      margin-top: 14px;
      color: #59625d;
      font-size: 14px;
    }

    .legacy-note {
      width: 100%;
      max-width: 900px;
      margin: 0 auto;
      padding-top: 12px;
      border-top: 1px solid rgba(200,164,77,.45);
      color: #202b24;
      font-size: 13px;
      text-align: center;
    }

    .quantity-card {
      width: min(100%, 760px);
      border: 1.5px solid rgba(200,164,77,.78);
      border-radius: 12px;
      background: rgba(255,255,255,.94);
      padding: 11px 12px;
      margin: -6px auto 14px;
      display: grid;
      grid-template-columns: auto minmax(240px, 1fr) auto;
      gap: 14px;
      align-items: center;
      box-shadow: 0 8px 22px rgba(31,42,36,.06);
    }

    .quantity-chair-icon {
      display: block;
      width: 34px;
      height: 34px;
      object-fit: contain;
    }

    .quantity-copy h3 {
      margin: 0 0 4px;
      color: var(--tc-green-dark);
      font-family: Georgia, "Times New Roman", serif;
      font-size: clamp(18px, 1.8vw, 22px);
    }

    .quantity-copy p {
      margin: 0;
      color: #3b4a3f;
      font-size: 14px;
      line-height: 1.4;
    }

    .quantity-control {
      display: flex;
      gap: 10px;
      align-items: center;
      justify-content: flex-end;
      flex-wrap: wrap;
    }

    .quantity-control label {
      color: var(--tc-green-dark);
      font-weight: 900;
      font-size: 14px;
    }

    .quantity-control select {
      min-width: 160px;
      border: 1.5px solid rgba(200,164,77,.72);
      border-radius: 10px;
      background: #fff;
      color: var(--tc-green-dark);
      padding: 10px 12px;
      font-size: 16px;
      font-weight: 800;
      cursor: pointer;
    }

    .office-message,
    .limit-message {
      display: none !important;
      border-radius: 10px;
      padding: 11px 12px;
      font-size: 14px;
      line-height: 1.45;
      font-weight: 700;
    }

    .office-message {
      grid-column: 1 / -1;
      border: 1px solid #e0a72e;
      background: #fff8e6;
      color: #66430b;
    }

    .limit-message {
      border: 1px solid #e0a72e;
      background: #fff8e6;
      color: #66430b;
      margin-bottom: 14px;
      text-align: center;
      font-weight: 800;
    }

    .office-message.is-visible,
    .limit-message.is-visible {
      display: block !important;
    }

    .legend {
      display: flex;
      justify-content: center;
      align-items: center;
      gap: 14px 24px;
      flex-wrap: wrap;
      width: fit-content;
      max-width: 100%;
      margin: 0 auto 14px;
      padding: 10px 14px;
      border: 1px solid rgba(7,75,53,.13);
      border-radius: 8px;
      background: #fff;
      color: #415045;
      box-shadow: 0 3px 10px rgba(7,75,53,.045);
      font-size: 13px;
      font-weight: 800;
    }

    .legend span {
      display: inline-flex;
      align-items: center;
      gap: 7px;
    }

    .dot {
      width: 17px;
      height: 12px;
      border-radius: 4px 4px 6px 6px;
      border: 1px solid rgba(31,42,36,.34);
      box-shadow:
        inset 0 2px 2px rgba(255,255,255,.3),
        inset 0 -2px 3px rgba(0,0,0,.15);
    }

    .dot.available { background: var(--available); }
    .dot.membership { background: #b58b34; }
    .dot.leadership { background: #292B29; }
    .dot.pending { background: var(--pending); }
    .dot.sold { background: var(--sold); }

    .partners-leadership-note {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 24px;
      margin: 0 0 14px;
      padding: 18px 20px;
      border-top: 2px solid var(--partners-accent);
      border-bottom: 1px solid rgba(52,72,58,.18);
      background: rgba(244,246,249,.82);
    }

    .partners-leadership-note h3 {
      margin: 0 0 5px;
      color: var(--partners-primary);
      font-family: Georgia, "Times New Roman", serif;
      font-size: 20px;
      letter-spacing: 0;
    }

    .partners-leadership-note p {
      max-width: 820px;
      margin: 0;
      color: var(--partners-text);
      font-size: 14px;
      line-height: 1.5;
    }

    .partners-leadership-note a {
      flex: 0 0 auto;
      padding: 10px 14px;
      border: 1px solid var(--partners-primary);
      border-radius: 4px;
      color: var(--partners-primary);
      font-size: 13px;
      font-weight: 800;
      text-decoration: none;
    }

    .partners-leadership-note a:hover,
    .partners-leadership-note a:focus-visible {
      background: var(--partners-primary);
      color: #fff;
    }

    .app-shell {
      display: grid;
      grid-template-columns: 1fr;
      gap: 0;
      align-items: start;
    }

    .seat-map-section {
      min-width: 0;
      container-type: inline-size;
    }

    .chosen-panel {
      width: 100%;
      margin: 0 0 14px;
      border-radius: 12px;
      background: #fff;
      box-shadow: 0 8px 24px rgba(0,0,0,.12);
      overflow: hidden;
      position: relative;
      z-index: 1;
    }

    .chosen-title {
      background:
        linear-gradient(180deg, var(--bellini-green-800), var(--bellini-green-900));
      color: #fff;
      padding: 14px 16px;
      font-weight: 900;
      text-transform: uppercase;
      display: flex;
      align-items: center;
      justify-content: center;
      gap: 8px;
      letter-spacing: .02em;
    }

    .chosen-body { padding: 14px; }

    .chosen-count {
      text-align: center;
      color: var(--tc-green-dark);
      font-size: 13px;
      margin-bottom: 12px;
      font-weight: 700;
    }

    .chosen-empty {
      text-align: center;
      color: var(--muted);
      font-size: 14px;
      line-height: 1.45;
      padding: 12px 6px;
    }

    .chosen-list {
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
      gap: 10px;
    }

    .chosen-empty {
      grid-column: 1 / -1;
    }

    .chosen-card {
      border-left: 4px solid var(--tc-green);
      border-radius: 8px;
      background: #fff;
      box-shadow: 0 3px 12px rgba(0,0,0,.12);
      padding: 12px 12px 10px;
      position: relative;
    }

    .chosen-card strong {
      display: block;
      color: var(--tc-green-dark);
      font-size: 16px;
      margin-bottom: 6px;
    }

    .chosen-card small {
      display: block;
      color: #1f2a24;
      font-size: 12px;
      line-height: 1.35;
      margin-bottom: 8px;
    }

    .chosen-card b {
      color: var(--tc-green-dark);
      font-size: 14px;
    }

    .remove-chair {
      position: absolute;
      top: 8px;
      right: 8px;
      width: 18px;
      height: 18px;
      border: none;
      border-radius: 4px;
      background: #9ab29b;
      color: white;
      cursor: pointer;
      font-weight: 900;
      line-height: 1;
    }

    .total-box {
      margin-top: 14px;
      border: 1px solid #b5d6b2;
      border-radius: 10px;
      background: linear-gradient(135deg, #f7fff4, #e9f6e5);
      padding: 14px;
      color: var(--tc-green-dark);
      font-weight: 900;
      display: none !important;
      justify-content: space-between;
      align-items: center;
    }

    .total-box.is-visible {
      display: flex !important;
    }


    .reservation-panel {
      position: relative;
      margin-top: 20px;
      border: 1px solid rgba(7,75,53,.18);
      border-radius: 14px;
      background:
        radial-gradient(circle at 12% 8%, rgba(201,164,90,.10), transparent 30%),
        linear-gradient(135deg, #ffffff 0%, #fbfdfb 46%, #f2f8f4 100%);
      padding: clamp(18px, 2.4vw, 28px);
      box-shadow:
        0 18px 44px rgba(7,75,53,.09),
        inset 0 0 0 1px rgba(255,255,255,.72);
      overflow: hidden;
    }

    .reservation-panel::before {
      content: "";
      position: absolute;
      left: 0;
      right: 0;
      top: 0;
      height: 5px;
      background: linear-gradient(90deg, var(--bellini-green-950), var(--bellini-green-700), var(--bellini-green-950));
    }

    .reservation-form {
      position: relative;
      z-index: 1;
      margin: 0;
      display: grid;
      gap: 16px;
    }

    .reservation-form h3 {
      margin: 0;
      color: var(--tc-green-dark);
      font-family: Georgia, "Times New Roman", serif;
      font-size: clamp(26px, 2.7vw, 34px);
      line-height: 1.12;
      text-align: left;
    }

    .reservation-form h3::after {
      content: "";
      display: block;
      width: 76px;
      height: 2px;
      margin-top: 10px;
      background: linear-gradient(90deg, var(--bellini-gold), rgba(201,164,90,0));
    }

    .reservation-form-subtitle {
      margin: -6px 0 0;
      max-width: 760px;
      color: var(--bellini-muted);
      font-size: 14px;
      line-height: 1.45;
      font-weight: 700;
    }

    .reservation-input-grid {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 12px;
    }

    .reservation-form input,
    .reservation-form select,
    .reservation-form textarea {
      width: 100%;
      border: 1px solid #d1d5db;
      border-radius: 8px;
      padding: 11px 12px;
      font-size: 14px;
      font-family: inherit;
      background: rgba(255,255,255,.96);
      color: var(--dark);
      box-shadow: inset 0 1px 2px rgba(7,75,53,.04);
      transition: border-color .15s ease, box-shadow .15s ease, background .15s ease;
    }

    .reservation-form input:focus,
    .reservation-form select:focus,
    .reservation-form textarea:focus {
      border-color: rgba(7,75,53,.52);
      background: #fff;
      box-shadow:
        0 0 0 3px rgba(7,75,53,.10),
        inset 0 1px 2px rgba(7,75,53,.03);
      outline: none;
    }

    .reservation-form textarea {
      min-height: 88px;
      resize: vertical;
    }

    .affiliation-year-field[hidden] {
      display: none !important;
    }


    .inscription-help {
      border: 1px solid rgba(7,75,53,.20);
      background: rgba(255,255,255,.86);
      color: var(--tc-green-dark);
      border-radius: 10px;
      padding: 11px 14px;
      font-size: 13px;
      line-height: 1.35;
      font-weight: 800;
      text-align: center;
      box-shadow: inset 4px 0 0 rgba(201,164,90,.82);
    }

    .inscription-fields {
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
      gap: 14px;
    }

    .inscription-empty {
      border: 1px dashed rgba(7,75,53,.25);
      border-radius: 10px;
      padding: 18px 14px;
      color: var(--bellini-muted);
      text-align: center;
      font-size: 13px;
      line-height: 1.35;
      background: rgba(255,255,255,.74);
    }

    .inscription-seat-card {
      border: 1px solid rgba(7,75,53,.16);
      border-radius: 12px;
      background: #fff;
      padding: 0;
      overflow: hidden;
      box-shadow: 0 12px 24px rgba(7,75,53,.08);
    }

    .inscription-seat-card label {
      display: block;
      color: var(--tc-green-dark);
      font-size: 12px;
      font-weight: 900;
      margin: 12px 14px 6px;
    }

    .inscription-seat-title {
      display: flex;
      justify-content: space-between;
      gap: 8px;
      align-items: center;
      margin: 0 0 10px;
      padding: 10px 14px;
      background: linear-gradient(180deg, var(--bellini-green-800), var(--bellini-green-950));
      color: #fff;
      font-weight: 900;
      font-size: 16px;
      font-family: Georgia, "Times New Roman", serif;
      box-shadow: inset 0 -1px 0 rgba(255,255,255,.12);
    }

    .inscription-seat-title span {
      color: rgba(255,255,255,.84);
      font-size: 11px;
      font-weight: 700;
      text-align: right;
      font-family: Arial, Helvetica, sans-serif;
    }

    .dedication-select,
    .chair-inscription-input {
      width: calc(100% - 28px);
      border: 1px solid rgba(7,75,53,.18);
      border-radius: 8px;
      padding: 9px 10px;
      font-size: 13px;
      font-family: inherit;
      background: #fff;
      margin: 0 14px 9px;
      transition: border-color .15s ease, box-shadow .15s ease;
    }

    .dedication-select:focus,
    .chair-inscription-input:focus {
      border-color: rgba(7,75,53,.55);
      box-shadow: 0 0 0 3px rgba(7,75,53,.10);
      outline: none;
    }

    .chair-inscription-input {
      min-height: 68px;
      resize: vertical;
      margin-bottom: 0;
    }

    .inscription-sample {
      display: grid;
      gap: 8px;
      margin-top: 11px;
      padding: 11px 14px 14px;
      border-top: 1px solid rgba(47,107,50,.13);
      background: linear-gradient(180deg, rgba(248,251,249,.44), #fff);
    }

    .inscription-sample-heading {
      color: #9a6817;
      font-size: 11px;
      font-weight: 900;
      text-transform: uppercase;
      letter-spacing: .04em;
    }

    .mini-inscription-plaque {
      width: min(100%, 260px);
      max-width: 260px;
      aspect-ratio: 10 / 3.3;
      box-shadow:
        inset 0 1px 4px rgba(255,255,255,.7),
        inset 0 -4px 10px rgba(43,50,55,.14),
        0 8px 16px rgba(31,42,36,.12);
    }

    .mini-inscription-plaque .plaque-engraving {
      inset: 19% 18%;
      gap: 2px;
    }

    .mini-inscription-plaque .plaque-engraving span {
      font-size: 9px;
    }

    .mini-inscription-plaque .plaque-engraving strong {
      font-size: 15px;
    }

    .mini-inscription-plaque .plaque-engraving strong.is-medium {
      font-size: 13px;
    }

    .mini-inscription-plaque .plaque-engraving strong.is-long {
      font-size: 11px;
      line-height: 1.08;
    }

    #reserve-btn {
      background: linear-gradient(180deg, var(--bellini-green-800), var(--bellini-green-950));
      color: white;
      border: 1px solid rgba(201,164,90,.74);
      border-radius: 10px;
      padding: 14px 18px;
      font-size: 15px;
      font-weight: 900;
      cursor: pointer;
      transition: .15s ease;
      justify-self: start;
      min-width: 220px;
      box-shadow: 0 12px 22px rgba(7,75,53,.22);
    }

    #reserve-btn:hover {
      background: linear-gradient(180deg, var(--bellini-green-700), var(--bellini-green-950));
      transform: translateY(-1px);
      box-shadow: 0 16px 26px rgba(7,75,53,.25);
    }

    #reserve-btn:disabled {
      opacity: .65;
      cursor: not-allowed;
      transform: none;
    }

    .reservation-locked-note {
      margin-top: 10px;
      border: 1px solid #e0a72e;
      background: #fff8e6;
      color: #66430b;
      border-radius: 10px;
      padding: 10px 12px;
      font-size: 13px;
      line-height: 1.4;
      font-weight: 700;
      text-align: center;
    }

    .reservation-result {
      display: none;
      border-radius: 10px;
      padding: 12px;
      font-size: 14px;
      line-height: 1.4;
      font-weight: 700;
      text-align: center;
    }

    .reservation-result.success {
      display: block;
      border: 1px solid rgba(200,164,77,.72);
      background:
        linear-gradient(135deg, rgba(255,250,240,.96) 0%, rgba(239,250,236,.98) 100%);
      color: var(--tc-green-dark);
      padding: 18px;
      box-shadow: 0 16px 30px rgba(31,77,34,.12);
      text-align: left;
    }

    .reservation-result.error {
      display: block;
      border: 1px solid #f1a4a4;
      background: #fff1f1;
      color: #8a1f1f;
    }

    .success-card {
      display: grid;
      gap: 14px;
      max-width: 780px;
      margin: 0 auto;
      text-align: center;
    }

    .success-kicker {
      display: inline-flex;
      justify-self: center;
      align-items: center;
      gap: 8px;
      color: var(--tc-green-dark);
      font-family: Georgia, "Times New Roman", serif;
      font-size: 21px;
      line-height: 1.2;
      font-weight: 900;
    }

    .success-kicker::before,
    .success-kicker::after {
      content: "";
      width: 34px;
      height: 1px;
      background: linear-gradient(90deg, transparent, var(--gold));
    }

    .success-kicker::after {
      background: linear-gradient(90deg, var(--gold), transparent);
    }

    .reservation-code-card {
      display: grid;
      gap: 6px;
      justify-items: center;
      border: 2px solid var(--gold);
      border-radius: 12px;
      background:
        linear-gradient(180deg, #fff 0%, #fff8e6 100%);
      padding: 16px 18px;
      box-shadow: inset 0 0 0 1px rgba(255,255,255,.72), 0 12px 24px rgba(102,67,11,.10);
    }

    .reservation-code-label {
      color: #66430b;
      font-size: 12px;
      font-weight: 900;
      letter-spacing: .12em;
      text-transform: uppercase;
    }

    .reservation-code-value {
      display: inline-block;
      border: 1px solid rgba(31,77,34,.2);
      border-radius: 10px;
      background: #fff;
      color: var(--tc-green-dark);
      padding: 8px 18px;
      font-family: Georgia, "Times New Roman", serif;
      font-size: clamp(28px, 4vw, 40px);
      line-height: 1;
      font-weight: 900;
      letter-spacing: 0;
      box-shadow: 0 8px 16px rgba(31,77,34,.10);
    }

    .reservation-code-help {
      color: var(--muted);
      font-size: 12px;
      font-weight: 700;
    }

    .success-detail-grid {
      display: grid;
      grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr);
      gap: 10px;
    }

    .success-detail {
      border: 1px solid rgba(47,107,50,.18);
      border-radius: 10px;
      background: rgba(255,255,255,.78);
      padding: 12px;
      color: var(--tc-green-dark);
      box-shadow: 0 8px 18px rgba(31,77,34,.07);
    }

    .success-detail-label {
      display: block;
      margin-bottom: 7px;
      color: #66430b;
      font-size: 12px;
      font-weight: 900;
      text-transform: uppercase;
    }

    .success-detail-value {
      font-size: 14px;
      line-height: 1.4;
      font-weight: 900;
      overflow-wrap: anywhere;
    }

    .submitted-inscription-list {
      display: grid;
      gap: 8px;
    }

    .submitted-inscription-line {
      display: grid;
      gap: 2px;
      padding-bottom: 8px;
      border-bottom: 1px solid rgba(47,107,50,.12);
    }

    .submitted-inscription-line:last-child {
      padding-bottom: 0;
      border-bottom: 0;
    }

    .submitted-inscription-type {
      color: #66430b;
      font-size: 12px;
      font-weight: 900;
    }

    .submitted-inscription-text {
      font-family: Georgia, "Times New Roman", serif;
      font-size: 16px;
      line-height: 1.2;
      font-weight: 900;
      overflow-wrap: anywhere;
    }

    .success-note {
      margin: 0;
      color: var(--tc-green-dark);
      font-size: 14px;
      line-height: 1.45;
      font-weight: 800;
    }

    .success-warning {
      border: 1px solid #e0a72e;
      border-radius: 10px;
      background: #fff8e6;
      color: #66430b;
      padding: 10px 12px;
    }

    .success-payment-actions {
      display: grid;
      justify-items: center;
      gap: 8px;
    }


    .payment-link-button {
      display: inline-block;
      margin-top: 0;
      background: linear-gradient(180deg, var(--bellini-green-800), var(--bellini-green-950));
      color: #fff;
      border: 1px solid rgba(201,164,90,.72);
      border-radius: 999px;
      padding: 11px 18px;
      text-decoration: none;
      font-weight: 900;
      cursor: pointer;
      box-shadow: 0 8px 18px rgba(47,107,50,.24);
    }

    .payment-link-button:hover {
      background: linear-gradient(180deg, var(--bellini-green-700), var(--bellini-green-950));
    }

    .payment-embed {
      display: none;
      margin-top: 16px;
      border: 1px solid rgba(7,75,53,.20);
      border-radius: 14px;
      background: #fff;
      overflow: hidden;
      box-shadow: 0 16px 34px rgba(7,75,53,.12);
    }

    .payment-embed.is-visible {
      display: block;
    }

    .payment-embed-header {
      display: flex;
      justify-content: space-between;
      align-items: center;
      gap: 12px;
      padding: 12px 14px;
      background: linear-gradient(180deg, #f8fbf9, #eef6f1);
      border-bottom: 1px solid rgba(7,75,53,.16);
      color: var(--tc-green-dark);
      font-weight: 900;
    }

    .payment-embed iframe {
      display: block;
      width: 100%;
      height: min(78vh, 820px);
      min-height: 640px;
      border: 0;
      background: #fff;
    }

    .payment-embed-fallback {
      padding: 12px 14px;
      border-top: 1px solid #e5e7eb;
      color: var(--muted);
      font-size: 13px;
      line-height: 1.4;
      text-align: center;
    }

    .payment-loading,
    .payment-blocked {
      padding: 18px;
      color: var(--tc-green-dark);
      font-size: 14px;
      line-height: 1.5;
      text-align: center;
      font-weight: 800;
    }

    .payment-blocked {
      color: #8a1f17;
      background: #fff8f8;
    }

    .payment-local-warning {
      padding: 34px 18px;
      background: #fff8e6;
      color: #5c3b0b;
      text-align: center;
      line-height: 1.5;
      font-weight: 700;
    }

    .payment-local-warning a {
      color: var(--tc-green-dark);
      font-weight: 900;
    }


    .help-box {
      margin-top: 16px;
      border: 1px solid rgba(7,75,53,.18);
      border-radius: 10px;
      background: rgba(255,255,255,.82);
      color: var(--tc-green-dark);
      padding: 15px;
      text-align: center;
      line-height: 1.45;
      font-size: 14px;
      font-weight: 700;
      box-shadow: inset 4px 0 0 rgba(201,164,90,.82);
    }

    .theater-scroll {
      width: 100%;
      overflow-x: hidden;
      overflow-y: hidden;
      padding: 0;
      margin: 0;
      border: 1px solid rgba(7,75,53,.14);
      border-radius: 14px;
      background:
        radial-gradient(
          circle at 50% 45%,
          rgba(219,237,226,.36) 0%,
          rgba(248,251,249,.55) 42%,
          rgba(255,255,255,1) 78%
        );
      box-shadow: 0 12px 28px rgba(7,75,53,.055);
    }

    .theater-scroll::-webkit-scrollbar {
      height: 10px;
    }

    .theater-scroll::-webkit-scrollbar-track {
      background: #eef5f1;
      border-radius: 999px;
    }

    .theater-scroll::-webkit-scrollbar-thumb {
      background: #1f6a4c;
      border-radius: 999px;
    }

    .theater-frame {
      contain: layout style;
      transform: translateZ(0);
      position: relative;
      --entrance-bar-height: clamp(52px, 5.8cqw, 78px);
      width: 100%;
      min-height: clamp(330px, 67cqw, 840px);
      aspect-ratio: 1.48 / 1;
      border: 0;
      outline: 0;
      border-radius: 14px;
      overflow: hidden;
      background:
        radial-gradient(circle at 50% 45%, rgba(219,237,226,.36) 0%, rgba(248,251,249,.55) 42%, rgba(255,255,255,1) 78%);
      box-shadow: none;
    }

    .back-wall {
      position: absolute;
      left: 2.3%;
      right: 2.3%;
      top: 2.4%;
      height: var(--entrance-bar-height);
      border-radius: 12px;
      background:
        linear-gradient(180deg, var(--bellini-green-800) 0%, var(--bellini-green-900) 52%, var(--bellini-green-950) 100%);
      border: 0;
      box-shadow:
        0 11px 22px rgba(4,52,36,.14),
        inset 0 1px 0 rgba(255,255,255,.09);
      overflow: hidden;
      z-index: 1;
    }

    .back-wall::before,
    .back-wall::after {
      content: "";
      position: absolute;
      width: 70px;
      height: 1px;
      top: 50%;
      opacity: 1;
      pointer-events: none;
      background:
        linear-gradient(90deg, transparent, rgba(201,164,90,.65));
    }

    .back-wall::before {
      left: 18px;
    }

    .back-wall::after {
      right: 18px;
      transform: rotate(180deg);
    }

    .door,
    .door::before,
    .door::after,
    .door-line,
    .door-knob {
      display: none !important;
    }

    .entrance-box {
      position: absolute;
      top: calc(2.4% + (var(--entrance-bar-height) - 46px) / 2);
      min-width: 118px;
      height: 46px;
      background:
        rgba(255,255,255,.04);
      border: 1px solid rgba(220,197,141,.9);
      border-radius: 7px;
      box-shadow:
        inset 0 0 0 1px rgba(255,255,255,.05);
      color: #fff;
      font-size: 12px;
      font-weight: 700;
      letter-spacing: .07em;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 8px;
      z-index: 5;
    }

    .entrance-icon {
      display: block;
      width: 20px;
      height: 20px;
      flex: 0 0 auto;
      object-fit: contain;
    }

    .entrance-left {
      left: 27.6%;
    }

    .entrance-right {
      right: 27.6%;
    }

    .bellini-stage {
      position: absolute;
      left: 50%;
      bottom: -1.8%;
      transform: translateX(-50%);
      width: 92%;
      height: clamp(82px, 8.7cqw, 130px);
      margin: 0 auto;
      color: #06452f;
      filter:
        drop-shadow(
          0 10px 10px
          rgba(6, 60, 42, 0.14)
        );
      z-index: 4;
      pointer-events: none;
    }

    .bellini-stage-shape {
      position: absolute;
      inset: 0;
      width: 100%;
      height: 100%;
      display: block;
    }

    .bellini-stage-title {
      position: absolute;
      left: 50%;
      top: 47%;
      transform: translateX(-50%);
      display: flex;
      align-items: center;
      justify-content: center;
      gap: 20px;
      width: 55%;
      color: #ffffff;
      font-family: Georgia, "Times New Roman", serif;
      font-size: clamp(16px, 1.75cqw, 26px);
      font-weight: 700;
      letter-spacing: 0.12em;
      line-height: 1;
      text-shadow: 0 2px 7px rgba(0,0,0,.24);
      z-index: 2;
    }

    .bellini-stage-line {
      flex: 1;
      max-width: 145px;
      height: 1px;
      background:
        linear-gradient(
          90deg,
          transparent,
          rgba(201, 164, 90, 0.95)
        );
    }

    .bellini-stage-line:last-child {
      transform: rotate(180deg);
    }

    .seat-card {
      contain: layout paint style;
      transform: translateZ(0);
      position: absolute;
      z-index: 6;
      background: rgba(255,255,255,.94);
      border: 1px solid rgba(7,75,53,.13);
      border-radius: 10px;
      box-shadow:
        0 8px 24px rgba(7,75,53,.045),
        0 2px 5px rgba(7,75,53,.025);
      padding: clamp(3px, .7cqw, 8px) clamp(3px, .55cqw, 6px);
      display: flex;
      align-items: center;
      justify-content: center;
      overflow: hidden;
    }

    .seat-card.top-left { left: 1.4%; top: 15.2%; width: 26%; height: 28%; }
    .seat-card.top-center { left: 28%; top: 15.2%; width: 44%; height: 28%; }
    .seat-card.top-right { right: 1.4%; top: 15.2%; width: 26%; height: 28%; }

    .seat-card.front-left { left: 1.8%; top: 48%; width: 25.7%; height: 31%; opacity: .88; }
    .seat-card.front-center { left: 28%; top: 48%; width: 44%; height: 31%; opacity: .88; }
    .seat-card.front-right { right: 1.8%; top: 48%; width: 25.7%; height: 31%; opacity: .88; }

    .seat-grid {
      contain: layout style;
      width: 100%;
      display: grid;
      gap: clamp(1.6px, .33cqw, 4px);
      align-content: center;
      justify-content: center;
    }

    .seat-row {
      display: flex;
      justify-content: center;
      gap: clamp(.2px, .08cqw, .8px);
      min-height: 0;
    }

    .seat {
      position: relative;
      flex: 0 0 auto;
      width: clamp(6px, 1.65cqw, 20px);
      height: clamp(5.5px, 1.48cqw, 18px);
      border-radius: clamp(3px, .5cqw, 7px) clamp(3px, .5cqw, 7px) clamp(4px, .65cqw, 9px) clamp(4px, .65cqw, 9px);
      background:
        linear-gradient(180deg, rgba(255,255,255,.34), rgba(0,0,0,.13)),
        #3f7759;
      border: 1px solid #2d6146;
      box-shadow:
        inset 0 2px 1px rgba(255,255,255,.28),
        inset 0 -3px 3px rgba(0,0,0,.18),
        0 1px 2px rgba(11,74,51,.22);
      color: #fffbe8;
      font-size: clamp(3px, .84cqw, 9.5px);
      font-weight: 900;
      display: flex;
      align-items: center;
      justify-content: center;
      cursor: pointer;
      user-select: none;
      text-shadow: 0 1px 1px rgba(0,0,0,.55);
      transition: transform .12s ease, box-shadow .12s ease, outline-color .12s ease;
    }

    .seat.committed,
    .seat.pending_payment,
    .seat.pending {
      background:
        linear-gradient(180deg, rgba(255,255,255,.34), rgba(0,0,0,.12)),
        var(--bellini-pending);
      border-color: #b88b1e;
      color: #263129;
      cursor: not-allowed;
      text-shadow: none;
    }

    .seat.paid,
    .seat.pledged,
    .seat.named,
    .seat.unavailable,
    .seat.sold {
      background:
        linear-gradient(180deg, rgba(255,255,255,.28), rgba(0,0,0,.16)),
        var(--bellini-paid);
      border-color: #7f2825;
      cursor: not-allowed;
    }

    .seat.partner-seat {
      background:
        linear-gradient(180deg, rgba(255,255,255,.28), rgba(0,0,0,.16)),
        var(--bellini-gray-seat);
      color: #fff;
      cursor: not-allowed;
      text-shadow: 0 1px 2px rgba(0,0,0,.45);
      border-color: #969897;
    }

    .seat.program-disabled-seat {
      background:
        linear-gradient(180deg, rgba(255,255,255,.25), rgba(0,0,0,.13)),
        #a9acae;
      border-color: #969a9d;
      color: #fff;
      cursor: not-allowed;
      opacity: .72;
      text-shadow: 0 1px 2px rgba(0,0,0,.38);
    }

    .program-partners .seat-card.top-left,
    .program-partners .seat-card.top-center,
    .program-partners .seat-card.top-right {
      background: rgba(247,248,246,.76);
      border-color: rgba(98,91,98,.22);
      box-shadow: 0 5px 14px rgba(32,39,51,.04);
    }

    .program-partners .seat-card.top-left .seat-grid,
    .program-partners .seat-card.top-center .seat-grid,
    .program-partners .seat-card.top-right .seat-grid {
      filter: grayscale(1);
      opacity: .62;
    }

    .program-partners .seat-card.front-left,
    .program-partners .seat-card.front-right {
      opacity: .82;
      background: rgba(232,234,236,.92);
      border-color: rgba(98,91,98,.28);
      box-shadow: inset 0 0 0 1px rgba(255,255,255,.48);
    }

    .program-partners .seat-card.front-left .seat-grid,
    .program-partners .seat-card.front-right .seat-grid {
      filter: grayscale(1) blur(1.4px);
      opacity: .3;
    }

    .program-partners .seat-card.front-left::after,
    .program-partners .seat-card.front-right::after {
      content: "NOT AVAILABLE YET";
      position: absolute;
      inset: 0;
      z-index: 2;
      display: grid;
      place-items: center;
      color: #4B5B46;
      font-size: clamp(7px, 1.05cqw, 12px);
      font-weight: 900;
      letter-spacing: 0;
      text-align: center;
      text-shadow: 0 1px 0 rgba(255,255,255,.9);
      pointer-events: none;
    }

    .program-partners .seat-card.front-center {
      opacity: 1;
      background: rgba(255,255,255,.98);
      border: 2px solid rgba(208,164,77,.72);
      box-shadow:
        0 0 0 5px rgba(208,164,77,.13),
        0 14px 28px rgba(52,72,58,.12);
    }

    .program-partners .seat.partners-seat.available {
      background:
        linear-gradient(180deg, rgba(255,255,255,.34), rgba(0,0,0,.13)),
        var(--partners-primary);
      border-color: #4B5B46;
    }

    .program-partners .seat.partners-seat.membership-package-seat.available {
      background:
        linear-gradient(180deg, rgba(255,255,255,.38), rgba(0,0,0,.14)),
        #b58b34;
      border-color: #80601d;
      color: #fff;
    }

    .program-partners .seat.partners-seat.membership-package-seat.selected {
      background:
        linear-gradient(180deg, rgba(255,255,255,.36), rgba(0,0,0,.12)),
        #86651f;
      border-color: #62480e;
      outline-color: #e1bd69;
    }

    .program-partners .seat.partners-seat.membership-package-seat.membership-package-unavailable {
      background:
        linear-gradient(180deg, rgba(255,255,255,.22), rgba(0,0,0,.12)),
        #9b9da0;
      border-color: #7d7f82;
      cursor: not-allowed;
      opacity: .68;
    }

    .program-partners .seat.partners-seat.selected {
      outline-color: var(--partners-accent);
      background:
        linear-gradient(180deg, rgba(255,255,255,.38), rgba(0,0,0,.1)),
        var(--partners-secondary);
      box-shadow:
        inset 0 2px 1px rgba(255,255,255,.28),
        inset 0 -3px 3px rgba(0,0,0,.18),
        0 0 0 4px rgba(208,164,77,.22),
        0 4px 10px rgba(52,72,58,.24);
    }

    .program-partners .seat.partners-seat.program-reserved-seat {
      background:
        repeating-linear-gradient(
          135deg,
          rgba(255,255,255,.18) 0,
          rgba(255,255,255,.18) 3px,
          rgba(0,0,0,.08) 3px,
          rgba(0,0,0,.08) 6px
        ),
        #7d8389;
      border-color: #646a70;
      color: #fff;
      cursor: not-allowed;
      opacity: .9;
      outline: 1px solid rgba(208,164,77,.72);
      outline-offset: 1px;
      transform: none;
      box-shadow:
        inset 0 2px 1px rgba(255,255,255,.24),
        inset 0 -3px 3px rgba(0,0,0,.16);
    }

    .program-partners .seat.partners-seat.leadership-inquiry-seat {
      background:
        linear-gradient(180deg, rgba(255,255,255,.18), rgba(0,0,0,.14)),
        #292B29;
      border-color: #c49a45;
      color: #fff;
      cursor: help;
      opacity: 1;
      outline: 1px solid rgba(208,164,77,.76);
      outline-offset: 1px;
      transform: none;
    }

    .program-partners .seat.program-disabled-seat.available:hover {
      transform: none;
      box-shadow:
        inset 0 2px 1px rgba(255,255,255,.2),
        inset 0 -3px 3px rgba(0,0,0,.14);
    }

    .seat.selected {
      outline: 2px solid var(--gold);
      outline-offset: 1px;
      background:
        linear-gradient(180deg, rgba(255,255,255,.38), rgba(0,0,0,.1)),
        #164b31;
      transform: translateZ(0) translateY(-1px) scale(1.06);
      z-index: 30;
      box-shadow:
        inset 0 2px 1px rgba(255,255,255,.28),
        inset 0 -3px 3px rgba(0,0,0,.18),
        0 0 0 4px rgba(255,248,218,.52),
        0 4px 10px rgba(11,74,51,.24);
    }

    .seat.available:hover {
      transform: translateZ(0) translateY(-1px) scale(1.08);
      z-index: 40;
      box-shadow:
        inset 0 2px 1px rgba(255,255,255,.28),
        inset 0 -3px 3px rgba(0,0,0,.18),
        0 0 0 3px rgba(200,164,77,.2),
        0 4px 8px rgba(11,74,51,.24);
    }

    .seat.interaction-disabled {
      pointer-events: none !important;
      opacity: .7;
    }

    .partner-overlay {
      position: absolute;
      left: 50%;
      right: auto;
      top: 54.5%;
      transform: translateX(-50%);
      width: min(760px, calc(100% - 80px));
      min-height: clamp(132px, 15.2cqw, 205px);
      border: 1px solid rgba(7,75,53,.62);
      border-radius: 12px;
      background: rgba(255,255,255,.985);
      backdrop-filter: blur(5px);
      box-shadow:
        0 18px 36px rgba(6,60,42,.11),
        0 4px 10px rgba(6,60,42,.06);
      z-index: 10;
      display: flex;
      align-items: center;
      justify-content: center;
      padding: clamp(20px, 2.3cqw, 30px) clamp(26px, 3.3cqw, 44px) clamp(18px, 2cqw, 26px);
      text-align: center;
    }

    .partner-overlay[hidden] {
      display: none !important;
    }

    .partner-overlay-inner { max-width: 610px; }

    .partner-overlay h3 {
      margin: 0;
      color: var(--bellini-green-900);
      font-family: Georgia, "Times New Roman", serif;
      font-size: clamp(30px, 2.5vw, 40px);
      font-weight: 700;
      line-height: 1.05;
    }

    .partner-overlay h3::before {
      content: "";
      display: block;
      width: 42px;
      height: 42px;
      margin: -12px auto 10px;
      border: 1px solid rgba(7,75,53,.25);
      border-radius: 50%;
      background:
        var(--bellini-mint-50)
        url("school-crest-transparent.png")
        center / 70% auto no-repeat;
      box-shadow:
        inset 0 0 0 4px rgba(255,255,255,.72),
        0 8px 16px rgba(11,74,51,.1);
    }

    .partner-overlay p {
      max-width: 610px;
      margin: 12px auto 0;
      color: #59625d;
      font-size: 15px;
      line-height: 1.45;
      font-weight: 500;
    }

    .partner-divider {
      display: block;
      width: 58%;
      max-width: 400px;
      height: 1px;
      margin: 16px auto 18px;
      position: relative;
      background:
        linear-gradient(90deg, transparent, rgba(201,164,90,.8), transparent);
    }

    .partner-divider::after {
      content: "";
      position: absolute;
      width: 7px;
      height: 7px;
      left: 50%;
      top: 50%;
      transform: translate(-50%, -50%) rotate(45deg);
      background: var(--bellini-gold);
    }

    .partner-button {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      min-height: 42px;
      background:
        linear-gradient(180deg, var(--bellini-green-800), var(--bellini-green-900));
      color: #fff;
      border: 0;
      border-radius: 6px;
      min-width: min(100%, 380px);
      padding: 0 30px;
      text-decoration: none;
      font-size: 15px;
      font-weight: 700;
      box-shadow: 0 6px 14px rgba(7,75,53,.14);
      transition: transform .12s ease, box-shadow .12s ease;
    }

    .partner-button:hover {
      transform: translateY(-1px);
      box-shadow: 0 8px 16px rgba(7,75,53,.18);
    }

    .partner-button-disabled {
      cursor: default;
    }

    .partner-button-disabled:hover {
      transform: none;
      box-shadow: 0 6px 14px rgba(7,75,53,.14);
    }

    /* Partners view: retain the back rows as context while prioritizing Front Center. */
    .program-partners .theater-frame {
      min-height: clamp(330px, 58cqw, 720px);
      aspect-ratio: 1.72 / 1;
    }

    .program-partners .seat-card.top-left,
    .program-partners .seat-card.top-center,
    .program-partners .seat-card.top-right {
      top: 14.5%;
      height: 16.5%;
      background: transparent;
      border-color: transparent;
      box-shadow: none;
      opacity: .48;
    }

    .program-partners .seat-card.top-left .seat-grid,
    .program-partners .seat-card.top-center .seat-grid,
    .program-partners .seat-card.top-right .seat-grid {
      filter: grayscale(1) blur(.35px);
      opacity: .32;
    }

    .program-partners .seat-card.front-left,
    .program-partners .seat-card.front-center,
    .program-partners .seat-card.front-right {
      top: 36%;
      height: 43%;
    }

    .program-partners .partner-overlay {
      top: 14%;
      width: min(650px, calc(100% - 170px));
      min-height: 17.5%;
      padding: clamp(9px, 1.05cqw, 14px) clamp(18px, 2.4cqw, 32px);
      border-color: rgba(52,72,58,.34);
      border-radius: 8px;
      background: rgba(255,255,255,.93);
      box-shadow: 0 10px 24px rgba(52,72,58,.1);
      backdrop-filter: blur(2px);
    }

    .program-partners .partner-overlay-inner {
      max-width: 570px;
    }

    .program-partners .partner-overlay h3 {
      color: var(--partners-primary);
      font-size: clamp(20px, 2cqw, 29px);
      line-height: 1;
    }

    .program-partners .partner-overlay h3::before {
      display: none;
    }

    .program-partners .partner-overlay p {
      margin-top: 6px;
      color: #292B29;
      font-size: clamp(12px, 1.08cqw, 15px);
      line-height: 1.3;
    }

    .program-partners .partner-divider {
      width: 42%;
      margin: 7px auto 8px;
    }

    .program-partners .partner-button {
      min-width: 0;
      min-height: 34px;
      padding: 7px 18px;
      background: var(--partners-primary);
      font-size: clamp(11px, 1.05cqw, 14px);
    }

    .seat.missing-seat {
      background: rgba(238,245,241,.38);
      border: 1px dashed rgba(93,110,100,.32);
      box-shadow: none;
      cursor: default;
      pointer-events: none;
      opacity: .45;
    }

    .seat-row::before {
      content: attr(data-row);
      width: clamp(4px, .7cqw, 10px);
      margin-right: clamp(1px, .16cqw, 2px);
      color: rgba(11,74,51,.72);
      font-size: clamp(4px, .84cqw, 10px);
      font-weight: 900;
      display: inline-flex;
      align-items: center;
      justify-content: flex-end;
      flex: 0 0 auto;
    }

    .tooltip {
      position: fixed;
      left: 0;
      top: 0;
      display: none;
      transform: translate(-9999px, -9999px);
      will-change: transform;
      background: rgba(31,31,31,.95);
      color: white;
      border-radius: 7px;
      padding: 10px 12px;
      font-size: 12px;
      font-weight: 700;
      pointer-events: none;
      z-index: 9999;
      box-shadow: 0 10px 24px rgba(0,0,0,.25);
      min-width: 112px;
      text-align: center;
    }

    .tooltip strong {
      display: block;
      font-size: 14px;
      margin-bottom: 4px;
    }

    .summary-line {
      display: none;
      margin-top: 12px;
      text-align: center;
      color: var(--tc-green-dark);
      font-weight: 800;
      font-size: 13px;
    }

    .plaque-preview-panel {
      margin-top: 2px;
      border: 1px solid rgba(7,75,53,.18);
      border-radius: 14px;
      background:
        radial-gradient(circle at 16% 16%, rgba(201,164,90,.08), transparent 34%),
        linear-gradient(135deg, #ffffff 0%, #fbfdfb 52%, #f1f7f3 100%);
      padding: clamp(16px, 2vw, 22px);
      box-shadow:
        0 14px 28px rgba(7,75,53,.08),
        inset 0 0 0 1px rgba(255,255,255,.72);
    }

    .plaque-preview-heading {
      display: grid;
      gap: 5px;
      margin-bottom: 12px;
      color: var(--tc-green-dark);
      text-align: center;
    }

    .plaque-preview-heading h3 {
      margin: 0;
      font-family: Georgia, "Times New Roman", serif;
      font-size: clamp(24px, 2.4vw, 31px);
      line-height: 1.15;
    }

    .plaque-preview-heading p {
      margin: 0;
      color: #4c5b50;
      font-size: 14px;
      line-height: 1.4;
      font-weight: 700;
    }

    .plaque-preview-layout {
      display: grid;
      grid-template-columns: 1fr;
      gap: 12px;
      align-items: start;
      max-width: 720px;
      margin: 0 auto;
    }

    .plaque-sample-area,
    .plaque-placement-area {
      min-width: 0;
      border: 1px solid rgba(7,75,53,.16);
      border-radius: 12px;
      background: rgba(255,255,255,.88);
      box-shadow: 0 12px 24px rgba(7,75,53,.08);
    }

    .plaque-sample-area {
      display: grid;
      align-content: start;
      align-self: stretch;
      gap: 14px;
      padding: 18px;
    }

    .plaque-mini-label {
      color: #9a6817;
      font-size: 12px;
      font-weight: 900;
      text-transform: uppercase;
      letter-spacing: .06em;
    }

    .plaque-scale-row {
      display: flex;
      justify-content: space-between;
      gap: 12px;
      align-items: center;
      flex-wrap: wrap;
    }

    .plaque-dimensions {
      border: 1px solid rgba(124,134,141,.46);
      border-radius: 999px;
      background: #f5f7f8;
      color: #3d474d;
      padding: 7px 11px;
      font-size: 13px;
      font-weight: 900;
    }

    .engraved-plaque {
      position: relative;
      width: min(100%, 500px);
      margin: 0 auto;
      aspect-ratio: 10 / 3;
      border: 1px solid #8c969c;
      border-radius: 999px;
      overflow: hidden;
      background:
        linear-gradient(115deg, #7f878d 0%, #d7dde0 16%, #ffffff 31%, #a5adb2 52%, #eef1f2 74%, #747d83 100%);
      box-shadow:
        inset 0 1px 5px rgba(255,255,255,.7),
        inset 0 -5px 12px rgba(43,50,55,.16),
        0 18px 30px rgba(31,42,36,.18);
    }

    .engraved-plaque::before {
      content: "";
      position: absolute;
      inset: 0;
      background:
        repeating-linear-gradient(0deg, rgba(255,255,255,.16) 0 1px, rgba(42,49,54,.08) 1px 2px),
        linear-gradient(90deg, transparent 0%, rgba(255,255,255,.62) 44%, transparent 62%);
      mix-blend-mode: screen;
      pointer-events: none;
    }

    .plaque-screw {
      position: absolute;
      top: 50%;
      width: 7.5%;
      aspect-ratio: 1;
      transform: translateY(-50%);
      border-radius: 999px;
      background:
        radial-gradient(circle at 35% 35%, #ffffff 0 16%, #8d969c 18% 48%, #222a2f 52% 100%);
      box-shadow: inset 0 1px 2px rgba(255,255,255,.55), 0 1px 3px rgba(0,0,0,.25);
    }

    .plaque-screw.left { left: 7%; }
    .plaque-screw.right { right: 7%; }

    .plaque-engraving {
      position: absolute;
      inset: 20% 17%;
      display: grid;
      align-content: center;
      justify-items: center;
      gap: 4px;
      color: rgba(36,43,48,.74);
      text-align: center;
      text-shadow: 0 1px 0 rgba(255,255,255,.54);
    }

    .plaque-engraving span {
      font-size: clamp(10px, 1.15vw, 13px);
      font-weight: 800;
    }

    .plaque-engraving strong {
      max-width: 100%;
      font-family: Georgia, "Times New Roman", serif;
      font-size: clamp(18px, 2.45vw, 30px);
      line-height: 1.05;
      font-weight: 900;
      overflow-wrap: anywhere;
    }

    .plaque-engraving strong.is-medium {
      font-size: clamp(16px, 2.1vw, 25px);
    }

    .plaque-engraving strong.is-long {
      font-size: clamp(13px, 1.7vw, 20px);
      line-height: 1.12;
    }

    .plaque-preview-note {
      margin: 0;
      color: var(--bellini-muted);
      font-size: 13px;
      line-height: 1.4;
      font-weight: 700;
      text-align: center;
    }

    .plaque-placement-area {
      position: relative;
      overflow: hidden;
      width: min(100%, 460px);
      min-height: 0;
      aspect-ratio: 4 / 3;
      margin: 0 auto;
      background: #1f2a24;
    }

    .plaque-placement-area img {
      display: block;
      width: 100%;
      height: 100%;
      min-height: 0;
      object-fit: cover;
      object-position: center 72%;
    }

    .plaque-location-outline {
      position: absolute;
      left: 51.5%;
      top: 70%;
      width: 21.5%;
      height: 13.5%;
      border: 2px solid #e6edf0;
      border-radius: 999px;
      transform: rotate(-36deg);
      box-shadow:
        0 0 0 999px rgba(31,42,36,.06),
        0 0 18px rgba(230,237,240,.82);
      pointer-events: none;
    }

    .plaque-placement-caption {
      position: absolute;
      left: 3%;
      right: auto;
      top: 52%;
      bottom: auto;
      width: 47%;
      min-height: 42%;
      border: 1px solid rgba(255,255,255,.4);
      border-radius: 10px;
      background: rgba(31,77,34,.88);
      color: #fff;
      padding: 10px 12px;
      display: flex;
      align-items: center;
      justify-content: center;
      font-size: 13px;
      line-height: 1.35;
      font-weight: 800;
      text-align: center;
      box-shadow: 0 8px 18px rgba(0,0,0,.22);
    }

    .plaque-material-inset {
      position: absolute;
      top: 14px;
      left: 14px;
      width: 86px;
      aspect-ratio: 1;
      border: 2px solid rgba(255,255,255,.78);
      border-radius: 10px;
      overflow: hidden;
      background: #fff;
      box-shadow: 0 10px 20px rgba(0,0,0,.24);
    }

    .plaque-material-inset img {
      width: 100%;
      height: 100%;
      min-height: 0;
      object-fit: cover;
    }

    
    @media (max-width: 1200px) {
      .page {
        padding: 12px;
      }

      .app-shell {
        grid-template-columns: 1fr;
      }

      .chosen-panel {
        position: static;
      }

      .chosen-list {
        display: grid;
        grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
      }

      .quantity-card {
        grid-template-columns: auto minmax(240px, 1fr) auto;
      }

      .theater-frame {
        width: 100%;
        min-height: clamp(330px, 67cqw, 840px);
        aspect-ratio: 1.48 / 1;
      }
    }

    @media (max-width: 900px) {
      .mobile-note {
        display: block;
      }

      .hero {
        padding: 0 14px 20px;
        margin: 0 -12px 12px;
      }

      .hero::before {
        height: 16px;
        margin: 0 -14px 12px;
      }

      .hero h1 {
        font-size: clamp(16px, 4vw, 22px);
        letter-spacing: .14em;
      }

      .hero-titlebar {
        padding: 0 14px 10px;
      }

      .tc-crest {
        width: 64px;
        margin-bottom: 9px;
      }

      .legacy-intro {
        padding: 4px 8px 0;
        row-gap: 12px;
      }

      .legacy-intro h2 {
        font-size: clamp(22px, 6.5vw, 36px);
      }

      .legacy-subhead {
        font-size: 13px;
        letter-spacing: 0;
      }

      .legacy-lede {
        margin: 0 auto;
        font-size: 15px;
      }

      .legacy-copy-section p,
      .legacy-commitment,
      .legacy-opportunity p,
      .legacy-note {
        font-size: 14px;
      }

      .legacy-opportunity {
        padding-top: 15px;
      }

      .quantity-card {
        grid-template-columns: auto minmax(0, 1fr);
        padding: 14px;
      }

      .quantity-control {
        grid-column: 1 / -1;
        justify-content: stretch;
      }

      .quantity-control select {
        width: 100%;
      }

      .reservation-panel {
        padding: 14px;
      }

      .plaque-preview-panel {
        padding: 14px;
      }

      .plaque-preview-layout {
        grid-template-columns: 1fr;
      }

      .reservation-input-grid {
        grid-template-columns: 1fr;
      }

      #reserve-btn {
        justify-self: stretch;
        width: 100%;
      }

      .reservation-result.success {
        padding: 14px;
      }

      .success-detail-grid {
        grid-template-columns: 1fr;
      }

      .legend {
        gap: 14px;
        font-size: 13px;
      }

      .theater-frame {
        --entrance-bar-height: clamp(42px, 5.6cqw, 62px);
        width: 100%;
        min-height: clamp(320px, 68cqw, 760px);
        aspect-ratio: 1.48 / 1;
      }

      .seat-card {
        padding: clamp(3px, .65cqw, 7px) clamp(3px, .5cqw, 5px);
      }

      .seat-card.top-left { left: 1.4%; top: 15.2%; width: 26%; height: 28%; }
      .seat-card.top-center { left: 28%; top: 15.2%; width: 44%; height: 28%; }
      .seat-card.top-right { right: 1.4%; top: 15.2%; width: 26%; height: 28%; }

      .seat-card.front-left { left: 1.8%; top: 48%; width: 25.7%; height: 31%; }
      .seat-card.front-center { left: 28%; top: 48%; width: 44%; height: 31%; }
      .seat-card.front-right { right: 1.8%; top: 48%; width: 25.7%; height: 31%; }

      .entrance-box {
        min-width: 88px;
        height: 42px;
        font-size: 9px;
        border-width: 1px;
      }

      .entrance-icon {
        width: 17px;
        height: 17px;
      }

      .entrance-left { left: 20.5%; }
      .entrance-right { right: 20.5%; }

      .bellini-stage {
        width: 96%;
        height: clamp(70px, 10.8cqw, 110px);
        bottom: -1.4%;
      }

      .bellini-stage-title {
        top: 48%;
        width: 68%;
        gap: 14px;
        font-size: clamp(13px, 2vw, 21px);
      }

      .partner-overlay {
        left: 50%;
        right: auto;
        width: calc(100% - 36px);
        top: 55.5%;
        min-height: auto;
        padding: 24px;
      }

      .partner-overlay h3 {
        font-size: 22px;
      }

      .partner-overlay h3::before {
        width: 36px;
        height: 36px;
        margin-top: -34px;
      }

      .partner-overlay p {
        font-size: 12px;
      }

      .partner-divider {
        margin: 12px auto 14px;
      }

      .partner-button {
        padding: 9px 13px;
        font-size: 12px;
      }
    }

    @media (max-width: 600px) {
      .page {
        padding: 8px;
      }

      .partners-leadership-note {
        align-items: stretch;
        flex-direction: column;
        gap: 12px;
        padding: 16px;
      }

      .partners-leadership-note a {
        align-self: flex-start;
      }

      .hero {
        margin-left: -8px;
        margin-right: -8px;
        padding-left: 8px;
        padding-right: 8px;
      }

      .hero::before {
        height: 14px;
        margin-left: -8px;
        margin-right: -8px;
      }

      .hero h1 {
        font-size: 15px;
        letter-spacing: .12em;
      }

      .tc-crest {
        width: 58px;
      }

      .hero p {
        font-size: 13px;
      }

      .legacy-intro {
        padding: 4px 6px 0;
        row-gap: 11px;
      }

      .legacy-intro h2 {
        font-size: 22px;
      }

      .legacy-subhead {
        font-size: 12px;
      }

      .legacy-copy-section p {
        text-align: center;
      }

      .legacy-signature {
        font-size: 23px;
      }

      .legacy-note {
        padding: 0;
      }

      .quantity-card {
        grid-template-columns: 1fr;
        text-align: center;
      }

      .quantity-chair-icon {
        justify-self: center;
      }

      .quantity-copy h3 {
        font-size: 19px;
      }

      .quantity-control {
        display: grid;
        grid-template-columns: 1fr;
      }

      .quantity-control select {
        width: 100%;
      }

      .chosen-title {
        padding: 12px;
      }

      .chosen-body {
        padding: 12px;
      }

      .plaque-preview-heading h3 {
        font-size: 21px;
      }

      .plaque-preview-heading p {
        font-size: 13px;
      }

      .plaque-sample-area {
        align-self: stretch;
        padding: 14px;
      }

      .plaque-scale-row {
        justify-content: center;
        text-align: center;
      }

      .engraved-plaque {
        aspect-ratio: 10 / 3.2;
      }

      .plaque-engraving {
        inset: 18% 18%;
      }

      .plaque-placement-area {
        width: min(100%, 430px);
        aspect-ratio: 1 / 1;
      }

      .plaque-material-inset {
        width: 72px;
      }

      .success-kicker {
        font-size: 18px;
      }

      .success-kicker::before,
      .success-kicker::after {
        width: 20px;
      }

      .reservation-code-card {
        padding: 14px 12px;
      }

      .reservation-code-value {
        max-width: 100%;
        font-size: 28px;
        letter-spacing: .05em;
        overflow-wrap: anywhere;
      }

      .theater-frame {
        --entrance-bar-height: 34px;
        width: 100%;
        min-height: 300px;
        aspect-ratio: 1.48 / 1;
      }

      .back-wall {
        height: var(--entrance-bar-height);
      }

      .seat-card {
        padding: 3px;
      }

      .seat-card.top-left { left: 1.4%; top: 15.2%; width: 26%; height: 28%; }
      .seat-card.top-center { left: 28%; top: 15.2%; width: 44%; height: 28%; }
      .seat-card.top-right { right: 1.4%; top: 15.2%; width: 26%; height: 28%; }

      .seat-card.front-left { left: 1.8%; top: 48%; width: 25.7%; height: 31%; }
      .seat-card.front-center { left: 28%; top: 48%; width: 44%; height: 31%; }
      .seat-card.front-right { right: 1.8%; top: 48%; width: 25.7%; height: 31%; }

      .entrance-box {
        min-width: 64px;
        height: 32px;
        font-size: 7px;
        top: calc(2.4% + (var(--entrance-bar-height) - 32px) / 2);
      }

      .entrance-icon {
        width: 13px;
        height: 13px;
      }

      .entrance-left { left: 18%; }
      .entrance-right { right: 18%; }

      .bellini-stage {
        width: 97%;
        height: 58px;
        bottom: -1%;
      }

      .bellini-stage-title {
        top: 48%;
        width: 72%;
        gap: 8px;
        font-size: 10px;
      }

      .bellini-stage-line {
        max-width: 42px;
      }

      .partner-overlay {
        left: 50%;
        right: auto;
        width: calc(100% - 24px);
        top: 56%;
        min-height: 82px;
        padding: 20px 9px 10px;
      }

      .partner-overlay h3 {
        font-size: 18px;
        margin-bottom: 6px;
      }

      .partner-overlay h3::before {
        width: 30px;
        height: 30px;
        margin-top: -26px;
        margin-bottom: 6px;
      }

      .partner-overlay p {
        display: none;
      }

      .partner-divider {
        width: 48%;
        margin: 8px auto 10px;
      }

      .partner-button {
        padding: 8px 10px;
        font-size: 10px;
      }

      .summary-line {
        font-size: 11px;
      }
    }

    @media (orientation: landscape) and (max-width: 900px) {
      .mobile-note {
        display: none;
      }

      .theater-frame {
        width: 100%;
        min-height: clamp(330px, 62cqw, 620px);
        aspect-ratio: 1.48 / 1;
      }
    }

    /* Partners in the Arts visual identity: warm, editorial, and donor-focused. */
    body.program-partners {
      background: #F4EFE6;
      color: #292B29;
    }

    .program-partners .page {
      background: #F4EFE6;
    }

    .program-partners .mobile-note {
      border-color: #B38A52;
      background: #E7DED0;
      color: #292B29;
    }

    .program-partners .hero {
      background: linear-gradient(180deg, #F4EFE6 0%, #F4EFE6 68%, rgba(232,222,210,.72) 100%);
    }

    .program-partners .hero::before {
      background: #34483A;
      box-shadow: inset 0 -2px 0 rgba(179,138,82,.72);
    }

    .program-partners .hero h1 {
      color: #292B29;
    }

    .program-partners .legacy-intro h2,
    .program-partners .legacy-copy-section h3,
    .program-partners .quantity-copy h3,
    .program-partners .reservation-form h3,
    .program-partners .plaque-preview-heading h3,
    .program-partners .partners-leadership-note h3 {
      color: #34483A;
    }

    .program-partners .legacy-subhead,
    .program-partners .partners-participation-section h4,
    .program-partners .plaque-mini-label {
      color: #4B5B46;
    }

    .program-partners .hero p,
    .program-partners .legacy-lede,
    .program-partners .legacy-copy-section p,
    .program-partners .partners-highlight,
    .program-partners .partners-support-copy,
    .program-partners .legacy-note,
    .program-partners .quantity-copy p,
    .program-partners .reservation-form-subtitle {
      color: #292B29;
    }

    .program-partners .hero-rule,
    .program-partners .legacy-short-rule {
      color: #B38A52;
    }

    .program-partners .hero-rule::before,
    .program-partners .hero-rule::after,
    .program-partners .legacy-short-rule {
      background-color: #B38A52;
    }

    .program-partners .hero-rule span {
      border-color: #B38A52;
      background: #F4EFE6;
    }

    .program-partners .partners-highlight {
      color: #34483A;
    }

    .program-partners .partners-ways {
      border-color: rgba(179,138,82,.62);
    }

    .program-partners .partners-participation-section {
      margin-top: 18px;
      padding: clamp(24px, 3vw, 34px);
      border: 1px solid rgba(179,138,82,.62);
      border-radius: 6px;
      background: rgba(232,222,210,.5);
      box-shadow: 0 12px 30px rgba(43,39,48,.055);
    }

    .program-partners .partners-term {
      margin: 12px auto 16px;
      color: #34483A !important;
    }

    .program-partners .partners-term strong {
      display: flex;
      align-items: center;
      justify-content: center;
      gap: 10px 16px;
      flex-wrap: wrap;
    }

    .program-partners .partners-term span {
      display: inline-flex;
      align-items: center;
      min-height: 30px;
      font-size: 16px;
    }

    .program-partners .partners-term span + span::before {
      content: "";
      width: 1px;
      height: 22px;
      margin-right: 16px;
      background: rgba(75,91,70,.48);
    }

    .program-partners .partners-term .partners-price {
      font-family: Georgia, "Times New Roman", serif;
      font-size: clamp(30px, 3vw, 42px);
      line-height: 1;
    }

    .program-partners .partners-benefits,
    .program-partners .partners-naming-tiers {
      color: #292B29;
    }

    .program-partners .partners-benefits li::marker {
      color: #4B5B46;
    }

    .program-partners .partners-benefit-tbd {
      color: #34483A;
    }

    .program-partners .partners-naming-tiers {
      border-color: rgba(179,138,82,.54);
      background: rgba(243,238,230,.72);
    }

    .program-partners .partners-naming-tiers li + li {
      border-color: rgba(179,138,82,.28);
    }

    .program-partners .partners-naming-tiers strong {
      color: #292B29;
    }

    .program-partners .partners-naming-tiers span {
      color: #34483A;
      font-size: 16px;
    }

    .program-partners .partners-chair-naming .legacy-note {
      border-color: rgba(179,138,82,.5);
      color: #4B5B46;
    }

    .program-partners .partners-action,
    .program-partners .partner-button,
    .program-partners #reserve-btn,
    .program-partners .payment-link-button {
      border: 1px solid #B38A52;
      background: #34483A;
      color: #F4EFE6;
      box-shadow: 0 10px 22px rgba(52,72,58,.16);
    }

    .program-partners .partners-action:hover,
    .program-partners .partners-action:focus-visible,
    .program-partners .partner-button:hover,
    .program-partners .partner-button:focus-visible,
    .program-partners #reserve-btn:hover,
    .program-partners #reserve-btn:focus-visible,
    .program-partners .payment-link-button:hover,
    .program-partners .payment-link-button:focus-visible {
      border-color: #B38A52;
      background: #2A3A30;
      color: #F4EFE6;
      box-shadow: 0 12px 26px rgba(52,72,58,.22);
    }

    .program-partners #seat-selection {
      scroll-margin-top: 18px;
    }

    .program-partners .quantity-card {
      border-color: rgba(179,138,82,.72);
      border-radius: 6px;
      background: #E7DED0;
      box-shadow: 0 10px 24px rgba(43,39,48,.07);
    }

    .program-partners .quantity-control label {
      color: #292B29;
    }

    .program-partners .quantity-control select {
      border-color: #B38A52;
      border-radius: 5px;
      background: #F4EFE6;
      color: #292B29;
    }

    .program-partners .quantity-control select:focus-visible,
    .program-partners .reservation-form input:focus,
    .program-partners .reservation-form select:focus,
    .program-partners .reservation-form textarea:focus,
    .program-partners .dedication-select:focus,
    .program-partners .chair-inscription-input:focus {
      border-color: #4B5B46;
      outline: 2px solid rgba(179,138,82,.5);
      outline-offset: 1px;
      background: #F4EFE6;
      box-shadow: none;
    }

    .program-partners .office-message,
    .program-partners .limit-message,
    .program-partners .reservation-locked-note,
    .program-partners .success-warning,
    .program-partners .payment-local-warning {
      border-color: #B38A52;
      background: #E7DED0;
      color: #292B29;
    }

    .program-partners .partners-leadership-note {
      border-top-color: #B38A52;
      border-bottom-color: rgba(179,138,82,.42);
      background: rgba(232,222,210,.72);
    }

    .program-partners .partners-leadership-note p {
      color: #292B29;
    }

    .program-partners .partners-leadership-note a {
      border-color: #B38A52;
      background: #F4EFE6;
      color: #34483A;
    }

    .program-partners .partners-leadership-note a:hover,
    .program-partners .partners-leadership-note a:focus-visible {
      background: #34483A;
      color: #F4EFE6;
    }

    .program-partners .chosen-panel {
      border: 1px solid rgba(179,138,82,.5);
      border-radius: 6px;
      background: #E7DED0;
      box-shadow: 0 10px 24px rgba(43,39,48,.08);
    }

    .program-partners .chosen-title,
    .program-partners .inscription-seat-title {
      background: #34483A;
      color: #F4EFE6;
    }

    .program-partners .chosen-count,
    .program-partners .chosen-card strong,
    .program-partners .chosen-card b,
    .program-partners .inscription-seat-card label {
      color: #34483A;
    }

    .program-partners .chosen-empty,
    .program-partners .chosen-card small {
      color: #292B29;
    }

    .program-partners .chosen-card,
    .program-partners .inscription-seat-card {
      border-color: rgba(179,138,82,.58);
      border-left-color: #B38A52;
      background: #F4EFE6;
      box-shadow: 0 7px 16px rgba(43,39,48,.08);
    }

    .program-partners .remove-chair {
      background: #34483A;
      color: #F4EFE6;
    }

    .program-partners .total-box {
      border-color: #B38A52;
      background: #F4EFE6;
      color: #34483A;
    }

    .program-partners .legend {
      border-color: rgba(179,138,82,.48);
      background: #E7DED0;
      color: #292B29;
      box-shadow: 0 5px 14px rgba(43,39,48,.06);
    }

    .program-partners .dot.available {
      border: 2px solid #4B5B46;
      background: #F4EFE6;
    }

    .program-partners .dot.membership {
      border-color: #4B5B46;
      background: repeating-linear-gradient(135deg, #B38A52 0 4px, #4B5B46 4px 7px);
    }

    .program-partners .dot.leadership {
      border-color: #B38A52;
      background: #292B29;
    }

    .program-partners .dot.pending {
      border: 2px dashed #4B5B46;
      background: #B38A52;
    }

    .program-partners .dot.sold {
      border-color: #4B5B46;
      background: repeating-linear-gradient(135deg, #8b8489 0 4px, #4B5B46 4px 7px);
    }

    .program-partners .theater-scroll,
    .program-partners .theater-frame {
      border-color: rgba(179,138,82,.42);
      background: linear-gradient(180deg, #E7DED0 0%, #F4EFE6 46%, #F4EFE6 100%);
      box-shadow: 0 12px 28px rgba(43,39,48,.07);
    }

    .program-partners .theater-scroll::-webkit-scrollbar-track {
      background: #E7DED0;
    }

    .program-partners .theater-scroll::-webkit-scrollbar-thumb {
      background: #4B5B46;
    }

    .program-partners .back-wall {
      background: #34483A;
      box-shadow: 0 10px 22px rgba(52,72,58,.14), inset 0 -2px 0 rgba(179,138,82,.62);
    }

    .program-partners .back-wall::before,
    .program-partners .back-wall::after,
    .program-partners .bellini-stage-line {
      background: linear-gradient(90deg, transparent, rgba(179,138,82,.9));
    }

    .program-partners .entrance-box {
      border-color: #B38A52;
      background: rgba(243,238,230,.08);
      color: #F4EFE6;
    }

    .program-partners .bellini-stage {
      color: #34483A;
      filter: drop-shadow(0 10px 10px rgba(52,72,58,.14));
    }

    .program-partners .bellini-stage-title {
      color: #F4EFE6;
    }

    .program-partners .seat-card.top-left,
    .program-partners .seat-card.top-center,
    .program-partners .seat-card.top-right {
      background: transparent;
      border-color: transparent;
    }

    .program-partners .seat-card.front-left,
    .program-partners .seat-card.front-right {
      background: rgba(232,222,210,.88);
      border-color: rgba(75,91,70,.34);
    }

    .program-partners .seat-card.front-left::after,
    .program-partners .seat-card.front-right::after {
      color: #4B5B46;
      text-shadow: 0 1px 0 #F4EFE6;
    }

    .program-partners .seat-card.front-center {
      background: rgba(243,238,230,.97);
      border-color: #B38A52;
      box-shadow: 0 0 0 5px rgba(179,138,82,.13), 0 14px 28px rgba(43,39,48,.11);
    }

    .program-partners .seat-row::before {
      color: #4B5B46;
    }

    .program-partners .seat.partners-seat.available {
      border: 1px solid #4B5B46;
      background: linear-gradient(180deg, #F4EFE6, #E7DED0);
      color: #292B29;
      text-shadow: none;
      box-shadow: inset 0 -2px 2px rgba(75,91,70,.13), 0 1px 2px rgba(43,39,48,.13);
    }

    .program-partners .seat.partners-seat.membership-package-seat.available {
      border: 1px solid #7f522d;
      background: repeating-linear-gradient(135deg, #B38A52 0 5px, #a97841 5px 8px);
      color: #292B29;
      text-shadow: 0 1px 0 rgba(243,238,230,.42);
    }

    .program-partners .seat.partners-seat.available:hover {
      border-color: #34483A;
      outline: 2px solid #B38A52;
      outline-offset: 1px;
      box-shadow: 0 4px 10px rgba(52,72,58,.18);
    }

    .program-partners .seat.partners-seat.selected,
    .program-partners .seat.partners-seat.membership-package-seat.selected {
      border-color: #26362B;
      outline: 2px solid #B38A52;
      outline-offset: 1px;
      background: #34483A;
      color: #F4EFE6;
      text-shadow: none;
      box-shadow: 0 0 0 4px rgba(179,138,82,.2), 0 5px 11px rgba(52,72,58,.24);
    }

    .program-partners .seat.committed,
    .program-partners .seat.pending_payment,
    .program-partners .seat.pending {
      border: 2px dashed #4B5B46;
      background: #B38A52;
      color: #292B29;
      text-shadow: none;
    }

    .program-partners .seat.paid,
    .program-partners .seat.pledged,
    .program-partners .seat.named,
    .program-partners .seat.unavailable,
    .program-partners .seat.sold,
    .program-partners .seat.partners-seat.membership-package-seat.membership-package-unavailable {
      border-color: #4B5B46;
      background: repeating-linear-gradient(135deg, #8b8489 0 4px, #706970 4px 7px);
      color: #F4EFE6;
      text-shadow: none;
      opacity: .72;
    }

    .program-partners .seat.partners-seat.program-reserved-seat {
      border-color: #4B5B46;
      outline-color: #B38A52;
      background: repeating-linear-gradient(135deg, #827a7f 0 4px, #4B5B46 4px 7px);
      color: #F4EFE6;
    }

    .program-partners .seat.partners-seat.leadership-inquiry-seat {
      border-color: #B38A52;
      outline-color: #B38A52;
      background: #292B29;
      color: #F4EFE6;
    }

    .program-partners .seat.missing-seat {
      border-color: rgba(98,91,98,.38);
      background: rgba(232,222,210,.36);
    }

    .program-partners .partner-overlay {
      border-color: rgba(179,138,82,.72);
      background: rgba(243,238,230,.95);
      box-shadow: 0 10px 24px rgba(43,39,48,.1);
    }

    .program-partners .partner-overlay h3 {
      color: #34483A;
    }

    .program-partners .partner-overlay p {
      color: #292B29;
    }

    .program-partners .partner-divider {
      background: linear-gradient(90deg, transparent, #B38A52, transparent);
    }

    .program-partners .partner-divider::after {
      background: #B38A52;
    }

    .program-partners .reservation-panel,
    .program-partners .plaque-preview-panel {
      border-color: rgba(179,138,82,.5);
      background: linear-gradient(180deg, #E7DED0 0%, #F4EFE6 100%);
      box-shadow: 0 16px 34px rgba(43,39,48,.08), inset 0 0 0 1px rgba(243,238,230,.72);
    }

    .program-partners .reservation-panel::before {
      background: linear-gradient(90deg, #34483A, #B38A52, #34483A);
    }

    .program-partners .reservation-form input,
    .program-partners .reservation-form select,
    .program-partners .reservation-form textarea,
    .program-partners .dedication-select,
    .program-partners .chair-inscription-input {
      border-color: rgba(75,91,70,.45);
      background: #F4EFE6;
      color: #292B29;
      box-shadow: inset 0 1px 2px rgba(43,39,48,.04);
    }

    .program-partners .inscription-help,
    .program-partners .help-box {
      border-color: rgba(179,138,82,.5);
      background: rgba(243,238,230,.78);
      color: #292B29;
      box-shadow: inset 4px 0 0 #B38A52;
    }

    .program-partners .inscription-empty {
      border-color: rgba(75,91,70,.5);
      background: rgba(243,238,230,.6);
      color: #4B5B46;
    }

    .program-partners .inscription-seat-title span {
      color: rgba(243,238,230,.84);
    }

    .program-partners .inscription-sample {
      border-color: rgba(179,138,82,.3);
      background: #E7DED0;
    }

    .program-partners .inscription-sample-heading,
    .program-partners .success-detail-label,
    .program-partners .submitted-inscription-type,
    .program-partners .reservation-code-label {
      color: #4B5B46;
    }

    .program-partners .reservation-result.success,
    .program-partners .reservation-code-card,
    .program-partners .success-detail,
    .program-partners .payment-embed {
      border-color: rgba(179,138,82,.66);
      background: #F4EFE6;
      color: #292B29;
      box-shadow: 0 12px 26px rgba(43,39,48,.08);
    }

    .program-partners .reservation-result.error,
    .program-partners .payment-blocked {
      border-color: rgba(52,72,58,.42);
      background: #E7DED0;
      color: #34483A;
    }

    .program-partners .success-kicker,
    .program-partners .success-note,
    .program-partners .reservation-code-value,
    .program-partners .success-detail {
      color: #34483A;
    }

    .program-partners .reservation-code-value {
      border-color: rgba(179,138,82,.52);
      background: #E7DED0;
    }

    .program-partners .payment-embed-header {
      border-color: rgba(179,138,82,.42);
      background: #E7DED0;
      color: #34483A;
    }

    .program-partners .payment-embed iframe {
      background: #F4EFE6;
    }

    .program-partners .plaque-preview-note,
    .program-partners .plaque-scale-row,
    .program-partners .plaque-placement-area {
      border-color: rgba(179,138,82,.42);
      background-color: #F4EFE6;
      color: #292B29;
    }

    .program-partners .plaque-placement-caption {
      border-color: rgba(179,138,82,.72);
      background: rgba(52,72,58,.9);
      color: #F4EFE6;
    }

    .program-partners .tooltip {
      border: 1px solid #B38A52;
      background: rgba(43,39,48,.97);
      color: #F4EFE6;
    }

    .program-partners a:focus-visible,
    .program-partners button:focus-visible,
    .program-partners select:focus-visible,
    .program-partners input:focus-visible,
    .program-partners textarea:focus-visible {
      outline: 3px solid rgba(179,138,82,.68);
      outline-offset: 2px;
    }

    @media (max-width: 600px) {
      .program-partners .partners-participation-section {
        padding: 22px 14px;
      }

      .program-partners .partners-term strong {
        gap: 5px;
      }

      .program-partners .partners-term span {
        width: 100%;
        justify-content: center;
      }

      .program-partners .partners-term span + span::before {
        display: none;
      }

      .program-partners .partners-action {
        width: 100%;
      }

      .program-partners .partners-naming-tiers li {
        gap: 12px;
      }
    }

    /* Olive editorial refinement for Partners in the Arts. */
    body.program-partners {
      --partners-primary: #34483A;
      --partners-secondary: #4B5B46;
      --partners-sage: #A8B19B;
      --partners-background: #F4EFE6;
      --partners-surface: #E7DED0;
      --partners-accent: #B38A52;
      --partners-text: #292B29;
      --partners-muted: #4B5B46;
      color-scheme: light;
      background: #F4EFE6;
    }

    .program-partners *,
    .program-partners *::before,
    .program-partners *::after {
      letter-spacing: 0;
    }

    .program-partners button,
    .program-partners input,
    .program-partners textarea,
    .program-partners select,
    .program-partners .partners-action,
    .program-partners .partner-button,
    .program-partners .legend,
    .program-partners .chosen-panel,
    .program-partners .seat {
      font-family: Arial, Helvetica, sans-serif;
    }

    .program-partners .hero {
      padding-bottom: clamp(28px, 4vw, 50px);
      background: #F4EFE6;
    }

    .program-partners .hero::before {
      height: 12px;
      background: #34483A;
      box-shadow: inset 0 -2px 0 #B38A52;
    }

    .program-partners .hero-titlebar {
      padding-bottom: 18px;
    }

    .program-partners .hero h1,
    .program-partners .legacy-intro h2 {
      color: #34483A;
    }

    .program-partners .legacy-intro h2 {
      font-size: clamp(38px, 6vw, 68px);
      line-height: 1.02;
    }

    .program-partners .legacy-subhead {
      color: #4B5B46;
      font-family: Arial, Helvetica, sans-serif;
      font-size: clamp(16px, 2vw, 20px);
      font-weight: 800;
    }

    .program-partners .legacy-short-rule {
      width: 72px;
      background: #B38A52;
    }

    .program-partners .partners-highlight {
      max-width: 720px;
      padding-left: 18px;
      border-left: 3px solid #B38A52;
      color: #34483A;
      text-align: left;
    }

    .program-partners .partners-support-copy {
      max-width: 780px;
    }

    .program-partners .partners-ways {
      padding: 24px 0 10px;
      border-color: rgba(179,138,82,.62);
    }

    .program-partners .partners-participation-section {
      position: relative;
      overflow: hidden;
      border: 1px solid rgba(179,138,82,.58);
      border-left: 4px solid #B38A52;
      background: #E7DED0;
      box-shadow: 0 12px 28px rgba(52,72,58,.07);
    }

    .program-partners .partners-chair-naming {
      border-left-color: #34483A;
      background: #F4EFE6;
      box-shadow: inset 0 0 0 1px rgba(168,177,155,.2), 0 12px 28px rgba(52,72,58,.06);
    }

    .program-partners .partners-opportunity-label {
      display: flex;
      align-items: center;
      gap: 10px;
      margin-bottom: 10px;
      color: #4B5B46;
      font-family: Arial, Helvetica, sans-serif;
      font-size: 12px;
      font-weight: 900;
      text-transform: uppercase;
    }

    .program-partners .partners-opportunity-label::before {
      content: "";
      width: 28px;
      height: 2px;
      background: #B38A52;
    }

    .program-partners .partners-chair-naming .partners-opportunity-label::before {
      background: #34483A;
    }

    .program-partners .partners-term {
      padding: 14px 0;
      border-top: 1px solid rgba(179,138,82,.42);
      border-bottom: 1px solid rgba(179,138,82,.42);
      color: #4B5B46 !important;
    }

    .program-partners .partners-term .partners-price {
      color: #34483A;
    }

    .program-partners .partners-term span + span::before {
      background: rgba(75,91,70,.44);
    }

    .program-partners .partners-benefits li::marker {
      color: #B38A52;
    }

    .program-partners .partners-benefit-tbd {
      color: #4B5B46;
    }

    .program-partners .partners-naming-tiers {
      border-color: rgba(179,138,82,.58);
      background: rgba(231,222,208,.66);
    }

    .program-partners .partners-naming-tiers li + li {
      border-color: rgba(179,138,82,.28);
    }

    .program-partners .partners-naming-tiers strong {
      color: #292B29;
    }

    .program-partners .partners-naming-tiers span {
      color: #34483A;
      font-size: 17px;
      font-weight: 900;
    }

    .program-partners .partners-action,
    .program-partners .partner-button,
    .program-partners #reserve-btn,
    .program-partners .payment-link-button {
      border-color: #B38A52;
      background: #34483A;
      color: #F4EFE6;
      box-shadow: 0 9px 20px rgba(52,72,58,.16);
    }

    .program-partners .partners-action:hover,
    .program-partners .partners-action:focus-visible,
    .program-partners .partner-button:hover,
    .program-partners .partner-button:focus-visible,
    .program-partners #reserve-btn:hover,
    .program-partners #reserve-btn:focus-visible,
    .program-partners .payment-link-button:hover,
    .program-partners .payment-link-button:focus-visible {
      border-color: #B38A52;
      background: #26362B;
      color: #F4EFE6;
      box-shadow: 0 12px 24px rgba(52,72,58,.2);
    }

    .program-partners .quantity-card,
    .program-partners .chosen-panel,
    .program-partners .legend,
    .program-partners .partners-leadership-note {
      border-color: rgba(179,138,82,.56);
      background: #E7DED0;
      box-shadow: 0 8px 20px rgba(52,72,58,.06);
    }

    .program-partners .quantity-control select,
    .program-partners .partners-leadership-note a {
      border-color: #B38A52;
      background: #F4EFE6;
      color: #34483A;
    }

    .program-partners .partners-leadership-note a:hover,
    .program-partners .partners-leadership-note a:focus-visible {
      background: #34483A;
      color: #F4EFE6;
    }

    .program-partners .chosen-title,
    .program-partners .inscription-seat-title {
      background: #34483A;
      color: #F4EFE6;
    }

    .program-partners .chosen-count,
    .program-partners .chosen-card strong,
    .program-partners .chosen-card b,
    .program-partners .inscription-seat-card label,
    .program-partners .total-box {
      color: #34483A;
    }

    .program-partners .chosen-card,
    .program-partners .inscription-seat-card,
    .program-partners .total-box {
      border-color: rgba(179,138,82,.54);
      background: #F4EFE6;
    }

    .program-partners .remove-chair {
      background: #34483A;
      color: #F4EFE6;
    }

    .program-partners .dot.available {
      border-color: #4B5B46;
      background: #F4EFE6;
    }

    .program-partners .dot.membership {
      border-color: #4B5B46;
      background: repeating-linear-gradient(135deg, #A8B19B 0 4px, #E7DED0 4px 7px);
    }

    .program-partners .dot.leadership {
      border-color: #B38A52;
      background: #292B29;
    }

    .program-partners .dot.pending {
      border-color: #4B5B46;
      background: #B38A52;
    }

    .program-partners .dot.sold {
      border-color: #4B5B46;
      background: repeating-linear-gradient(135deg, #7B817A 0 4px, #59645A 4px 7px);
    }

    .program-partners .theater-scroll,
    .program-partners .theater-frame {
      border-color: rgba(179,138,82,.4);
      background: #E7DED0;
      box-shadow: 0 12px 28px rgba(52,72,58,.07);
    }

    .program-partners .back-wall {
      background: #34483A;
      color: #34483A;
      filter: drop-shadow(0 9px 9px rgba(52,72,58,.16));
    }

    .program-partners .bellini-stage {
      background: transparent;
      color: #34483A;
      filter: drop-shadow(0 9px 9px rgba(52,72,58,.16));
    }

    .program-partners .entrance-box {
      border-color: #B38A52;
      background: rgba(244,239,230,.08);
      color: #F4EFE6;
    }

    .program-partners .seat-card.front-left,
    .program-partners .seat-card.front-right {
      border-color: rgba(75,91,70,.3);
      background: rgba(168,177,155,.22);
    }

    .program-partners .seat-card.front-center {
      border-color: #B38A52;
      background: rgba(244,239,230,.98);
      box-shadow: 0 0 0 5px rgba(179,138,82,.12), 0 14px 28px rgba(52,72,58,.11);
    }

    .program-partners .seat.partners-seat.available {
      border-color: #768372;
      background: #F4EFE6;
      color: #292B29;
      box-shadow: inset 0 -2px 2px rgba(75,91,70,.12), 0 1px 2px rgba(41,43,41,.13);
    }

    .program-partners .seat.partners-seat.membership-package-seat.available {
      border-color: #4B5B46;
      background: repeating-linear-gradient(135deg, #A8B19B 0 5px, #E7DED0 5px 8px);
      color: #292B29;
      text-shadow: 0 1px 0 rgba(244,239,230,.6);
    }

    .program-partners .seat.partners-seat.available:hover {
      border-color: #B38A52;
      outline-color: #B38A52;
      box-shadow: 0 4px 10px rgba(52,72,58,.18);
    }

    .program-partners .seat.partners-seat.selected,
    .program-partners .seat.partners-seat.membership-package-seat.selected {
      border-color: #26362B;
      outline-color: #B38A52;
      background: #34483A;
      color: #F4EFE6;
      box-shadow: 0 0 0 4px rgba(179,138,82,.2), 0 5px 11px rgba(52,72,58,.24);
    }

    .program-partners .seat.committed,
    .program-partners .seat.pending_payment,
    .program-partners .seat.pending {
      border-color: #4B5B46;
      background: #B38A52;
      color: #292B29;
    }

    .program-partners .seat.paid,
    .program-partners .seat.pledged,
    .program-partners .seat.named,
    .program-partners .seat.unavailable,
    .program-partners .seat.sold,
    .program-partners .seat.partners-seat.membership-package-seat.membership-package-unavailable,
    .program-partners .seat.partners-seat.program-reserved-seat {
      border-color: #4B5B46;
      background: repeating-linear-gradient(135deg, #7B817A 0 4px, #59645A 4px 7px);
      color: #F4EFE6;
    }

    .program-partners .seat.partners-seat.leadership-inquiry-seat {
      border-color: #B38A52;
      outline-color: #B38A52;
      background: #292B29;
      color: #F4EFE6;
    }

    .program-partners .partner-overlay {
      border-color: rgba(179,138,82,.68);
      background: rgba(244,239,230,.96);
      box-shadow: 0 10px 24px rgba(52,72,58,.1);
    }

    .program-partners .partner-overlay h3,
    .program-partners .payment-embed-header,
    .program-partners .success-kicker,
    .program-partners .success-note,
    .program-partners .reservation-code-value {
      color: #34483A;
    }

    .program-partners .partner-divider {
      background: #B38A52;
    }

    .program-partners .partner-divider::after {
      background: #B38A52;
    }

    .program-partners .reservation-panel,
    .program-partners .plaque-preview-panel {
      border-color: rgba(179,138,82,.48);
      background: #F4EFE6;
      box-shadow: 0 16px 34px rgba(52,72,58,.08), inset 0 0 0 1px rgba(244,239,230,.74);
    }

    .program-partners .reservation-panel::before {
      background: #B38A52;
    }

    .program-partners .reservation-form input,
    .program-partners .reservation-form select,
    .program-partners .reservation-form textarea,
    .program-partners .dedication-select,
    .program-partners .chair-inscription-input {
      border-color: rgba(75,91,70,.42);
      background: #FFFDF8;
      color: #292B29;
    }

    .program-partners .inscription-help,
    .program-partners .help-box {
      border-color: rgba(179,138,82,.48);
      background: #E7DED0;
      color: #292B29;
      box-shadow: inset 4px 0 0 #B38A52;
    }

    .program-partners .reservation-result.success,
    .program-partners .reservation-code-card,
    .program-partners .success-detail,
    .program-partners .payment-embed,
    .program-partners .reservation-code-value {
      border-color: rgba(179,138,82,.62);
      background: #F4EFE6;
      color: #292B29;
    }

    .program-partners .plaque-placement-caption {
      border-color: rgba(179,138,82,.72);
      background: rgba(52,72,58,.94);
      color: #F4EFE6;
    }

    .program-partners .tooltip {
      border-color: #B38A52;
      background: rgba(41,43,41,.97);
      color: #F4EFE6;
    }

    .program-partners a:focus-visible,
    .program-partners button:focus-visible,
    .program-partners select:focus-visible,
    .program-partners input:focus-visible,
    .program-partners textarea:focus-visible {
      outline-color: rgba(179,138,82,.82);
    }

    @media (max-width: 600px) {
      .program-partners .legacy-intro h2 {
        font-size: 40px;
      }

      .program-partners .partners-highlight {
        padding-left: 14px;
      }

      .program-partners .partners-opportunity-label {
        justify-content: center;
      }
    }
  
