/* Registration page — builds on ../css/styles.css */
.reg-hero-sub{font-size:clamp(18px,1.8vw,22px);color:var(--on-dark);margin:10px 0 0;max-width:36em}
.reg-pills{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}
.reg-pill{font-family:var(--font-display);font-size:12.5px;letter-spacing:.14em;text-transform:uppercase;padding:8px 14px;border:1px solid rgba(201,154,62,.6);color:var(--gold-light);background:rgba(11,20,40,.45)}
.reg-pill.warn{border-color:#E6A46A;color:#F4C9A0}
.reg-layout{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:clamp(24px,4vw,48px);align-items:start}
.reg-h{font-family:var(--font-display);font-size:clamp(20px,2.2vw,26px);color:var(--primary);margin:10px 0 0;padding-bottom:8px;border-bottom:1px solid var(--line)}
.reg-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.reg-sub{font-weight:500;font-size:14.5px}
.reg-fee{border:1px solid var(--gold);background:#fff;padding:16px 18px}
.reg-fee .fee-name{font-family:var(--font-display);font-weight:700;color:var(--primary);font-size:17px}
.reg-fee .fee-note{font-size:15px;color:var(--ink-muted)}
.reg-fee .fee-price{font-family:var(--font-display);font-size:30px;font-weight:700;color:var(--gold-muted);margin-top:4px}
.reg-fieldset{border:0;padding:0;margin:0;display:grid;gap:10px;min-width:0}
.reg-chips{display:flex;flex-wrap:wrap;gap:8px}
.reg-chip{min-height:44px;min-width:64px;padding:0 16px;border:1px solid #CDBB93;background:#FFFDF8;font:600 16px var(--font-display);color:var(--primary);cursor:pointer}
.reg-chip[aria-pressed="true"]{background:var(--primary);border-color:var(--primary);color:var(--gold-light)}
.reg-radio,.reg-check{display:flex;gap:12px;align-items:flex-start;padding:12px 14px;border:1px solid #CDBB93;background:#FFFDF8;cursor:pointer;font-size:17px;line-height:1.4}
.reg-radio+.reg-radio{margin-top:8px}
.reg-radio input,.reg-check input{width:22px;height:22px;margin-top:2px;accent-color:var(--primary);flex:none}
.reg-check{border:0;background:transparent;padding:4px 0}
.reg-total{display:flex;justify-content:space-between;align-items:baseline;border-top:2px solid var(--primary);border-bottom:1px solid var(--line);padding:14px 0;font-family:var(--font-display);color:var(--primary)}
.reg-total span{font-size:15px;letter-spacing:.18em;text-transform:uppercase}
.reg-total strong{font-size:34px}
.reg-privacy{font-size:14px;color:var(--ink-muted);margin:6px 0 0}
.reg-submit-err{font-weight:600}
.reg-demo,.reg-closed{padding:12px 14px;margin-bottom:18px;border:1px solid var(--gold);background:#FFF6DD;font-size:15.5px}
.reg-closed{border-color:var(--red-accent);background:#FBEAE7}
.reg-card{padding:clamp(22px,3vw,32px)}
.reg-card p{margin:.4em 0}
.reg-hotel{background:var(--parchment);border:1px solid var(--line);margin-top:20px}
.reg-hotel h3{font-size:20px;color:var(--primary)}
.reg-hotel dl{margin:14px 0 0;display:grid;grid-template-columns:auto 1fr;gap:6px 14px;font-size:16px}
.reg-hotel dt{font-family:var(--font-display);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--gold-muted);padding-top:3px}
.reg-hotel dd{margin:0}
.reg-hotel .past{color:var(--red-accent);font-weight:600}
.reg-contact{font-size:15.5px;margin-top:16px}
.reg-done{padding:6px 0}
.reg-ref{font-family:var(--font-display);letter-spacing:.12em;color:var(--primary);background:#fff;border:1px solid var(--gold);padding:2px 10px}
.reg-summary{display:grid;grid-template-columns:auto 1fr;gap:8px 18px;margin:18px 0;padding:18px;background:#fff;border:1px solid var(--line)}
.reg-summary dt{font-family:var(--font-display);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--gold-muted)}
.reg-summary dd{margin:0;word-break:break-word}
.reg-pay-note{padding:14px 16px;border-left:4px solid var(--gold);background:#FFF6DD}
.reg-footer{padding:28px 0;background:var(--primary-deep);color:var(--on-dark-muted);font-size:14.5px;text-align:center}
.reg-footer a{color:var(--gold-light)}
@media (max-width:960px){.reg-layout{grid-template-columns:1fr}}
@media print{.utility,.site-nav,.page-hero,.reg-side,.reg-footer,.btn-row{display:none!important}.form-panel{border:0;padding:0}}
.ring-card .section-label{color:var(--gold-light)}.ring-card a{color:var(--gold-light)}
