@font-face{font-family:Playfair Display;src:url(../../../fonts/playfair-500.woff2)format("woff2");font-weight:500;font-display:swap}:root{--navy:#1a2b49;--navy-dark:#12203a;--cream:#faf6ef;--gold:#b58a3a;--gold-ink:#8a6b17;--gold-soft:#e6d9b3;--ink:#22222a;--muted:#6b6f7b;--card:#fff;--danger:#b3402a;--radius:14px;--shadow:0 2px 14px #1a2b4914;--serif:Georgia, "Times New Roman", serif;--sans:system-ui, -apple-system, "Segoe UI", sans-serif}*{box-sizing:border-box}body{background:var(--cream);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;margin:0;line-height:1.55}h1,h2,h3{font-family:var(--serif);color:var(--navy);margin:0 0 .5em;font-weight:500;line-height:1.15}h1{font-size:clamp(2rem,5vw,3.2rem)}h2{font-size:clamp(1.4rem,3vw,2rem)}a{color:var(--navy)}img{max-width:100%;display:block}.container{max-width:1100px;margin:0 auto;padding:0 1.25rem}.btn{font-size:1rem;font-family:var(--sans);cursor:pointer;text-align:center;border:0;border-radius:999px;padding:.7rem 1.5rem;text-decoration:none;transition:opacity .15s;display:inline-block}.btn:hover{opacity:.88}.btn-primary{background:var(--navy);color:#fff}.btn-secondary{color:var(--navy);border:1px solid var(--navy);background:0 0}.btn-gold{background:var(--gold);color:#fff}.card{background:var(--card);border-radius:var(--radius);box-shadow:var(--shadow)}.badge{letter-spacing:.06em;text-transform:uppercase;border-radius:999px;padding:.15rem .7rem;font-size:.72rem;font-weight:700;display:inline-block}.badge-pending{background:var(--gold-soft);color:#7a6210}.badge-confirmed{background:var(--navy);color:#fff}.badge-declined{color:var(--muted);background:#eee}input,select,textarea{font:inherit;width:100%;color:var(--ink);background:#fff;border:1px solid #d8d4c9;border-radius:8px;padding:.6rem .8rem}input:focus,select:focus,textarea:focus{outline:2px solid var(--gold);outline-offset:1px}:root{--own-field-bg:#fff;--own-field-text:var(--ink);--own-field-border:1px solid #d8d4c9;--own-field-radius:8px;--own-field-focus:var(--gold)}label{color:var(--navy);margin-bottom:.25rem;font-size:.85rem;font-weight:600;display:block}.error-text{color:var(--danger);font-size:.9rem}
