/* BOY Register — event registration section. Inherits theme tokens (--ink2, --olive-l, --bone, --clay, --cond, --head, --body). */
#register{scroll-margin-top:var(--navh,120px)}
form.regform{display:block} /* the theme's .form is a two-column grid; this form lays itself out */
.regwrap{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(300px,1fr);gap:clamp(22px,3vw,46px);align-items:start}
@media(max-width:900px){.regwrap{grid-template-columns:1fr}}

/* tiers */
.regtiers{border-top:1px solid rgba(243,239,229,.16)}
.tier{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 0;border-bottom:1px solid rgba(243,239,229,.16)}
.tier .tinfo{min-width:0}
.tier h3{color:var(--bone,#F3EFE5)}
.tier .tprice{font-family:var(--head,Anton,Impact,sans-serif);font-size:clamp(24px,2.6vw,34px);line-height:1;color:var(--olive-l,#8AAE74);margin-top:6px}
.tier .small{margin-top:6px;max-width:52ch}
.tier .chip{margin-top:10px}
.tier .chip.soldout{border-color:rgba(243,239,229,.24);color:rgba(243,239,229,.4)}
.tier.isout{opacity:.55}

.tqty{display:flex;align-items:center;gap:0;flex:0 0 auto;border:2px solid rgba(243,239,229,.24);background:rgba(243,239,229,.05)}
.tqty button{width:44px;min-height:44px;background:none;border:0;color:var(--bone,#F3EFE5);font-family:var(--cond,'Barlow Condensed',sans-serif);font-size:22px;line-height:1;cursor:pointer}
.tqty button:hover:not([disabled]){background:rgba(243,239,229,.10)}
.tqty button[disabled]{opacity:.35;cursor:not-allowed}
.tqty input{width:64px;min-height:44px;text-align:center;background:transparent;border:0;border-left:1px solid rgba(243,239,229,.18);border-right:1px solid rgba(243,239,229,.18);color:var(--bone,#F3EFE5);font-family:var(--cond,'Barlow Condensed',sans-serif);font-size:19px;font-weight:600;-moz-appearance:textfield}
.tqty input::-webkit-outer-spin-button,.tqty input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.tqty input:focus{outline:2px solid var(--olive-l,#8AAE74);outline-offset:-2px}
@media(max-width:520px){.tier{flex-wrap:wrap}.tqty{margin-left:auto}}

/* summary + contact */
.regsummary{position:sticky;top:calc(var(--navh,120px) + 16px)}
@media(max-width:900px){.regsummary{position:static}}
.regline{display:flex;justify-content:space-between;gap:14px;font-size:15px;color:rgba(243,239,229,.82);padding:6px 0}
.regtotalrow{display:flex;justify-content:space-between;align-items:baseline;gap:12px;border-top:1px solid rgba(243,239,229,.16);padding-top:14px}
.regtotal{font-family:var(--head,Anton,Impact,sans-serif);font-size:34px;line-height:1;color:var(--bone,#F3EFE5)}
.regfields{display:flex;flex-direction:column;gap:14px}
.card.regsummary .btn{align-self:stretch}
.regsummary .paychips{display:flex;gap:8px;flex-wrap:wrap}
.regnotready{border:1px dashed rgba(243,239,229,.3);padding:18px;color:rgba(243,239,229,.8)}
.reglegal{margin-top:clamp(20px,2.4vw,32px);max-width:78ch}

/* submit spinner (mirrors the donate/forms pattern) */
.regsubmit{position:relative}
.regsubmit[disabled]{opacity:.5;cursor:not-allowed;transform:none}
.regsubmit .bw-spinner{position:absolute;inset:0;margin:auto;width:22px;height:22px;border:3px solid rgba(255,255,255,.35);border-top-color:#fff;border-radius:50%;opacity:0;animation:bw-spin .8s linear infinite}
.regsubmit.loading .reglabel{opacity:.35}
.regsubmit.loading .bw-spinner{opacity:1}

/* thank-you */
.regthanks-items{list-style:none;max-width:420px;margin:0 auto;padding:0}
.regthanks-items li{display:flex;justify-content:space-between;gap:14px;padding:8px 0;border-bottom:1px solid rgba(243,239,229,.14);font-size:15px;color:rgba(243,239,229,.82)}
