@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Libre+Baskerville:wght@400;700&display=swap";:root{font-family:DM Sans,system-ui,sans-serif;color:#252833;background:#fbf7f1;font-synthesis:none;--plum:#702f46;--plum-dark:#512033;--rose:#ead6d3;--sage:#71866f;--terracotta:#b76042;--cream:#fbf7f1;--surface:#fffdf9;--border:#dfd5cc;--muted:#687078;--focus:#315fa8}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:radial-gradient(circle at 0 10%,rgba(234,214,211,.55),transparent 23rem),radial-gradient(circle at 100% 18%,rgba(206,217,200,.5),transparent 24rem),var(--cream)}body:before,body:after{content:"";position:fixed;width:210px;height:260px;pointer-events:none;opacity:.25;background:no-repeat center/contain url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 180 240'%3E%3Cg fill='none' stroke='%2371866f' stroke-width='2'%3E%3Cpath d='M18 230C46 170 70 107 143 22'/%3E%3Cpath d='M43 180c-29-3-34-25-35-36 23 2 38 15 35 36Zm28-45c-24-13-20-35-15-45 20 10 27 27 15 45Zm31-47c-9-24 7-39 16-44 10 20 4 37-16 44Zm-58 91c27-5 40 14 43 24-22 7-39-2-43-24Zm28-49c27-5 40 14 43 24-22 7-39-2-43-24Zm32-43c26-1 36 20 37 30-23 3-38-8-37-30Z'/%3E%3C/g%3E%3C/svg%3E")}body:before{left:-35px;top:80px;transform:rotate(-14deg)}body:after{right:-40px;bottom:-15px;transform:scaleX(-1) rotate(-8deg)}button,input,select,textarea{font:inherit}.site-header{height:58px;border-bottom:1px solid rgba(112,47,70,.16);display:flex;align-items:center;justify-content:center;background:#fffdf9d1;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#293844;font-family:Libre Baskerville,serif}.site-header strong{width:min(1320px,calc(100% - 48px));font-size:18px}.app-shell{width:min(1320px,calc(100% - 48px));margin:auto;padding:24px 0 48px}.event-intro{text-align:center;padding:4px 0 18px}.event-intro h1,.success-page h1{font:700 clamp(2rem,4vw,3.25rem)/1.12 "Libre Baskerville",serif;color:var(--plum);margin:0 0 12px}.event-intro p{font:400 18px Libre Baskerville,serif;color:var(--plum-dark);margin:0 0 8px}.event-intro>div{display:flex;flex-wrap:wrap;justify-content:center;gap:10px 24px;color:#45505a}.event-intro span{display:flex;align-items:center;gap:7px}.event-intro svg{width:17px;color:var(--plum)}.top-tools{display:flex;align-items:center;gap:20px}.progress{display:flex;align-items:flex-start;justify-content:space-between;flex:1;padding:8px 0 20px}.progress-step{flex:1;text-align:center;position:relative;color:#6b6d70;font-size:13px}.progress-step:before{content:"";position:absolute;height:1px;background:#cfc5bd;left:-50%;right:50%;top:15px}.progress-step:first-child:before{display:none}.progress-step span{width:31px;height:31px;border:1px solid #c9bdb5;background:var(--cream);border-radius:50%;display:grid;place-items:center;margin:0 auto 6px;position:relative;z-index:1}.progress-step em{font-style:normal}.progress-step.active{color:var(--plum);font-weight:700}.progress-step.active span{background:var(--plum);color:#fff;border-color:var(--plum)}.progress-step.done span{background:var(--sage);color:#fff;border-color:var(--sage)}.progress-step.done:before,.progress-step.active:before{background:var(--sage)}.discard{border:0;background:none;color:var(--plum);display:flex;align-items:center;gap:6px;cursor:pointer;padding:10px}.content-layout{display:grid;grid-template-columns:minmax(0,2.2fr) minmax(290px,1fr);gap:18px;align-items:start}.form-surface,.summary-card,.fee-schedule{background:#fffdf9f0;border:1px solid var(--border);border-radius:9px;box-shadow:0 8px 30px #492d260d}.form-surface{padding:28px}.section-heading{display:flex;justify-content:space-between;align-items:flex-start;border-bottom:1px solid #ece2da;margin-bottom:24px;padding-bottom:18px}.section-heading h2,.summary-title h2,.fee-schedule h2,.confirmation-payment h2{font:700 1.65rem Libre Baskerville,serif;color:var(--plum);margin:0 0 7px}.section-heading p{margin:0;color:var(--muted)}.section-heading>svg{color:var(--sage);width:29px;height:29px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.field{display:flex;flex-direction:column;gap:7px;font-weight:600;font-size:14px}.field b,fieldset b{color:#a33c3c}.field small,.field-note{font-weight:400;color:var(--muted);line-height:1.35}.field textarea{min-height:96px;resize:vertical}.field input,.field select,.field textarea,.age-output{width:100%;border:1px solid #cfc7c0;border-radius:7px;background:#fff;padding:12px 13px;min-height:47px;color:#242833;transition:.16s border,.16s box-shadow}.field input:focus,.field select:focus,.field textarea:focus{outline:0;border-color:var(--focus);box-shadow:0 0 0 3px #315fa82b}.age-output{display:flex;align-items:center;background:#f6f3f0}.age-output.invalid{color:#a33c3c;border-color:#bd6e6e}.attendee-editor{border:1px solid var(--border);border-radius:8px;padding:20px;margin-bottom:17px;background:#fffefa}.attendee-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:17px}.attendee-head h3,section>h3{font:700 1.1rem Libre Baskerville,serif;color:var(--plum);margin:0}.icon-button{border:0;background:none;color:#9a3c4f;cursor:pointer;display:flex;gap:6px;align-items:center}.attendee-grid .field:last-child{grid-column:1/-1}.inline-error{color:#a33c3c;font-size:14px;margin:12px 0 0}.add-button{border:1px solid var(--plum);color:var(--plum);background:transparent;border-radius:7px;padding:12px 18px;font-weight:700;display:flex;align-items:center;gap:8px;cursor:pointer}.add-button svg{width:19px}.optional{font:400 12px DM Sans,sans-serif;background:#eee7e0;color:#67605b;padding:3px 7px;border-radius:10px}.sidebar{display:grid;gap:15px}.summary-card,.fee-schedule{padding:22px}.summary-title{display:flex;gap:9px;align-items:center;margin-bottom:17px}.summary-title svg{color:var(--sage)}.summary-title h2,.fee-schedule h2{font-size:1.22rem;margin:0}.summary-card>p{display:flex;gap:10px;padding:14px 0;margin:0;border-top:1px solid #eee4dc}.summary-card>p svg{color:var(--sage);width:20px}.summary-card>p span{display:flex;flex-direction:column}.summary-card small{color:var(--muted);margin-top:3px}.fee-schedule>div:not(.summary-title){display:flex;justify-content:space-between;gap:12px;padding:11px 12px;border-top:1px solid #eadfd8}.fee-schedule>div span{display:flex;flex-direction:column}.fee-schedule small{color:var(--muted);margin-top:3px}.fee-schedule b{color:var(--plum);font-size:18px}.fee-schedule .current-tier{background:#f4e7e4;border-radius:6px;border-top-color:transparent}.mobile-fees{display:none}.payment-total{background:linear-gradient(110deg,#f3e2df,#f1ebe5);padding:18px 20px;border-radius:8px;display:grid;grid-template-columns:1fr auto;margin-bottom:20px}.payment-total span{font-weight:700}.payment-total strong{font:700 1.8rem Libre Baskerville,serif;color:var(--plum);grid-row:1/3;grid-column:2}.payment-total small{color:var(--muted)}.payment-options{display:grid;gap:10px;margin-bottom:22px}.payment-option{border:1px solid var(--border);border-radius:7px;padding:15px 17px;display:flex;justify-content:space-between;gap:12px;color:inherit;text-decoration:none;background:#fff}.payment-option span{text-align:right}.payment-option small{color:var(--muted)}fieldset{border:0;padding:0;margin:20px 0}legend{font-weight:700;margin-bottom:12px}.choice-row{display:flex;flex-wrap:wrap;gap:10px}.choice-row label{border:1px solid var(--border);background:#fff;border-radius:7px;padding:11px 14px;cursor:pointer}.check-panel{display:flex;gap:12px;border:1px solid #cbb9af;background:#fbf2ef;padding:15px;border-radius:8px}.check-panel input{margin-top:4px}.check-panel span{display:flex;flex-direction:column}.check-panel small{color:var(--muted);margin-top:4px}.review-block{border-top:1px solid var(--border);padding:18px 0}.review-block h3{font-family:Libre Baskerville,serif;color:var(--plum)}dl{display:grid;grid-template-columns:145px 1fr;gap:7px 15px}dt{color:var(--muted)}dd{margin:0}.payment-review{display:flex;gap:15px;align-items:center}.payment-review svg{color:var(--sage)}.payment-review p{margin:4px 0;color:var(--muted)}.actions{display:flex;justify-content:space-between;border-top:1px solid var(--border);padding-top:22px;margin-top:26px}.primary,.secondary{min-height:48px;padding:0 22px;border-radius:7px;font-weight:700;display:flex;align-items:center;gap:8px;cursor:pointer}.primary{border:1px solid var(--plum);background:var(--plum);color:#fff}.primary:hover{background:var(--plum-dark)}.primary:disabled{opacity:.55;cursor:not-allowed}.secondary{border:1px solid var(--plum);background:#fff;color:var(--plum)}.error-box{border:1px solid #c67878;background:#fff2f1;color:#7e2525;border-radius:8px;padding:15px;display:flex;gap:12px;margin-bottom:20px}.error-box svg{flex:none}.error-box ul{margin:7px 0 0;padding-left:20px}.honeypot{position:absolute;left:-10000px}footer{display:flex;justify-content:center;align-items:center;gap:7px;color:var(--muted);font-size:13px;padding-top:22px}.success-page{width:min(620px,calc(100% - 32px));margin:8vh auto;background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:42px;text-align:center;box-shadow:0 15px 50px #5120331a}.success-icon{width:60px;height:60px;border-radius:50%;background:var(--sage);color:#fff;display:grid;place-items:center;margin:auto auto 18px}.reference,.confirmation-payment{border:1px solid var(--border);border-radius:8px;padding:18px;margin:22px 0}.reference{display:flex;flex-direction:column}.reference span{color:var(--muted);font-size:13px}.reference strong{font:700 1.3rem Libre Baskerville,serif;color:var(--plum);margin-top:5px}.confirmation-payment{text-align:left}.confirmation-payment h2{font-size:1.25rem}.subtle{color:var(--muted)}@media (max-width:800px){body:before,body:after{width:130px;height:170px;opacity:.18}.site-header{height:54px}.site-header strong,.app-shell{width:min(100% - 28px,680px)}.site-header strong{text-align:center;font-size:15px}.app-shell{padding-top:19px}.event-intro h1{font-size:2rem}.event-intro p{font-size:15px}.event-intro>div{display:grid;gap:6px;justify-content:center;text-align:left;font-size:14px}.top-tools{display:block}.discard{margin-left:auto;font-size:13px}.progress-step em{display:none}.progress-step.active em{display:block;position:absolute;left:50%;transform:translate(-50%);white-space:nowrap}.progress{padding-bottom:34px}.content-layout{display:flex;flex-direction:column}.form-surface{padding:20px;width:100%;order:1}.sidebar{width:100%;order:0}.summary-card,.desktop-fees{display:none}.mobile-fees{display:block;border:1px solid var(--border);border-radius:8px;background:var(--surface);padding:0 14px}.mobile-fees summary{padding:14px 0;font-weight:700;color:var(--plum);cursor:pointer}.mobile-fees .fee-schedule{border:0;box-shadow:none;padding:0 0 12px}.form-grid{grid-template-columns:1fr}.attendee-grid .field:last-child{grid-column:auto}.attendee-editor{padding:16px}.attendee-head h3{font-size:1rem}.icon-button{font-size:0}.payment-option{flex-direction:column}.payment-option span{text-align:left}.actions{position:sticky;bottom:0;background:#fffdf9f5;margin:24px -20px -20px;padding:12px 20px;z-index:5;box-shadow:0 -8px 20px #34221e12}.primary,.secondary{flex:1;justify-content:center;padding:0 12px}dl{grid-template-columns:110px 1fr}.success-page{padding:28px 20px}.success-page h1{font-size:2rem}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
