@import "https://fonts.googleapis.com/css2?family=Fraunces:opsz,wght@9..144,400;9..144,500;9..144,600&family=Inter:wght@400;500;600;700&display=swap";:root{--forest:#0c3b2e;--forest-deep:#082a21;--red:#db0011;--red-deep:#b3000e;--cream:#f7f5f0;--paper:#fff;--ink:#16241e;--ink-soft:#4a5c54;--line:#d9d4c8;--gold:#c99a3d}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--cream);color:var(--ink);-webkit-font-smoothing:antialiased;font-family:Inter,sans-serif;line-height:1.5;overflow-x:hidden}.skip-link{z-index:100;background:var(--paper);color:var(--forest);padding:10px 14px;font-weight:700;position:fixed;top:12px;left:12px;transform:translateY(-160%)}.skip-link:focus-visible{outline:3px solid var(--gold);outline-offset:2px;transform:translateY(0)}.wrap{background:var(--paper);max-width:640px;min-height:100vh;margin:0 auto;box-shadow:0 0 60px #0c3b2e14}header{background:var(--forest);color:var(--cream);padding:40px 32px 32px;position:relative;overflow:hidden}.brandrow{color:#f7f5f0bf;letter-spacing:.04em;align-items:center;gap:14px;margin-bottom:28px;font-size:13px;display:flex}.brandrow .divider{background:#f7f5f059;width:1px;height:16px}.brandrow b{color:var(--cream);font-weight:600}.eyebrow{background:var(--red);color:#fff;letter-spacing:.12em;text-transform:uppercase;margin-bottom:16px;padding:5px 12px;font-size:11px;font-weight:700;display:inline-block}h1{letter-spacing:-.01em;text-wrap:balance;margin-bottom:6px;font-family:Fraunces,serif;font-size:32px;font-weight:500;line-height:1.15}h1 em{color:#e8c9a0;font-style:italic;font-weight:400}.subtitle{color:#f7f5f0cc;margin-top:10px;font-size:14px;line-height:1.6}.subtitle .dot{opacity:.6;margin:0 8px}.skyline{opacity:.16;width:220px;height:90px;position:absolute;bottom:-6px;right:-10px}.rail{background:var(--forest-deep);gap:6px;margin-top:-1px;padding:0 32px;display:flex}.rail span{background:#f7f5f02e;flex:1;height:3px;margin:10px 0;transition:background .2s}.rail span.done{background:var(--gold)}form{padding:36px 32px 24px}.field{margin-bottom:28px}.field .q{color:var(--forest);margin-bottom:4px;font-family:Fraunces,serif;font-size:17px;font-weight:500;display:block}.field .req{color:var(--red);margin-left:4px;font-size:13px}.field .help{color:var(--ink-soft);margin-bottom:10px;font-size:13px}input[type=text],input[type=email],input[type=tel]{border:1.5px solid var(--line);background:var(--cream);width:100%;color:var(--ink);padding:13px 14px;font-family:Inter,sans-serif;font-size:15px;transition:border-color .15s,background .15s}input[type=text]:focus-visible,input[type=email]:focus-visible,input[type=tel]:focus-visible{border-color:var(--forest);background:#fff;outline:none;box-shadow:0 0 0 3px #0c3b2e2e}input::placeholder{color:#a9a293}.options{flex-direction:column;gap:9px;display:flex}.opt{border:1.5px solid var(--line);background:var(--cream);cursor:pointer;touch-action:manipulation;align-items:flex-start;gap:12px;padding:13px 15px;font-size:14.5px;transition:border-color .15s,background .15s;display:flex}.opt:has(input:focus-visible){outline-offset:2px;outline:3px solid #0c3b2e47}.opt:hover{border-color:#b9c9c1}.opt input{accent-color:var(--forest);flex-shrink:0;margin-top:2px}.opt.checked{border-color:var(--forest);background:#eef4f1}.opt-row2{gap:10px;display:flex}.opt-row2 .opt{text-align:center;flex:1;justify-content:center}fieldset{border:none}.consent-box{border-left:3px solid var(--red);background:var(--cream);padding:16px 18px}.consent-box .opt{background:0 0;border:none;padding:8px 0}.cond-note{color:var(--ink-soft);margin:-14px 0 26px;padding-left:2px;font-size:12.5px;font-style:italic}.conditional{opacity:1;max-height:2000px;transition:max-height .35s,opacity .25s,margin .35s;overflow:hidden}.conditional.collapsed{opacity:0;max-height:0;margin:0}.submit-row{margin-top:34px}button.submit{background:var(--red);color:#fff;cursor:pointer;letter-spacing:.02em;text-transform:uppercase;touch-action:manipulation;border:none;width:100%;padding:16px;font-family:Inter,sans-serif;font-size:15px;font-weight:700;transition:background .15s}button.submit:focus-visible{outline:3px solid var(--forest);outline-offset:3px}button.submit:hover{background:var(--red-deep)}button.submit:disabled{cursor:wait;opacity:.72}.footnote{color:var(--ink-soft);text-align:center;margin-top:16px;font-size:12px}.field-error{color:var(--red-deep);margin-top:7px;font-size:12px}.has-error input[type=text],.has-error input[type=email],.has-error .opt{border-color:var(--red)}.form-errors{border-left:3px solid var(--red);color:var(--red-deep);background:#fff3f3;margin-bottom:26px;padding:13px 15px;font-size:13px}.form-errors:focus{outline:2px solid var(--red);outline-offset:2px}hr.sep{background:var(--line);border:none;height:1px;margin:30px 0}.section-tag{color:var(--gold);letter-spacing:.12em;text-transform:uppercase;margin-bottom:8px;font-size:11px;font-weight:700;display:block}.confirm{text-align:center;padding:64px 32px}.confirm-mark{background:var(--forest);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:54px;height:54px;margin:0 auto 20px;font-size:24px;display:flex}.confirm h2{color:var(--forest);margin-bottom:10px;font-family:Fraunces,serif;font-size:24px;font-weight:500}.confirm p{max-width:380px;color:var(--ink-soft);margin:0 auto;font-size:14.5px;line-height:1.6}.confirm-back{border:1px solid var(--forest);min-height:44px;color:var(--forest);touch-action:manipulation;align-items:center;gap:9px;margin-top:30px;padding:10px 17px;font-size:13px;font-weight:700;text-decoration:none;transition:background .15s,color .15s;display:inline-flex}.confirm-back span{font-size:18px;line-height:1;transition:transform .15s}.confirm-back:hover{background:var(--forest);color:var(--paper)}.confirm-back:hover span{transform:translate(-2px)}.confirm-back:focus-visible{outline:3px solid var(--gold);outline-offset:3px}@media (width<=480px){header{padding:32px 20px 26px}h1{font-size:26px}form{padding:28px 20px 20px}.confirm{padding:48px 20px}.skyline{width:160px}}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.admin-body{background:radial-gradient(circle at top right, #c99a3d1f, transparent 34rem), var(--cream);min-height:100vh;color:var(--ink)}.admin-shell{width:min(100% - 40px,1180px);margin:0 auto;padding:28px 0 48px}.admin-header{background:var(--forest);color:var(--cream);border-radius:4px;justify-content:space-between;align-items:center;gap:28px;padding:30px 34px;display:flex;box-shadow:0 18px 45px #082a2126}.admin-brand{color:#f7f5f0c7;letter-spacing:.1em;font-size:12px;font-weight:700}.admin-brand span:nth-child(2){opacity:.45;margin:0 8px}.admin-header h1{margin:10px 0 3px;font-size:clamp(25px,4vw,34px)}.admin-header p{color:#f7f5f0b3;font-size:13px}.admin-user{align-items:center;gap:14px;font-size:13px;display:flex}.admin-user button{color:var(--cream);cursor:pointer;font:inherit;background:0 0;border:1px solid #f7f5f066;border-radius:2px;padding:8px 11px}.admin-user button:hover{border-color:var(--cream);background:#ffffff14}.admin-nav{border-bottom:1px solid var(--line);gap:4px;margin:22px 0;display:flex}.admin-nav a{color:var(--ink-soft);border-bottom:3px solid #0000;padding:11px 15px;font-size:13px;font-weight:600;text-decoration:none}.admin-nav a:hover,.admin-nav a.active{border-bottom-color:var(--red);color:var(--forest)}.admin-content{min-width:0}.admin-page-heading,.admin-card-header{justify-content:space-between;align-items:center;gap:20px;display:flex}.admin-page-heading{margin:26px 0 18px}.admin-page-heading span{color:var(--gold);letter-spacing:.1em;text-transform:uppercase;font-size:11px;font-weight:700}.admin-page-heading h2,.admin-card-header h2{color:var(--forest);text-wrap:balance;font-family:Fraunces,serif;font-weight:500}.admin-page-heading h2{margin-top:3px;font-size:27px}.admin-card-header{margin-bottom:20px}.admin-card-header p{color:var(--ink-soft);margin-top:3px;font-size:13px}.admin-card-header>a:not(.admin-button){color:var(--forest);font-size:13px;font-weight:700}.admin-card-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-bottom:20px;display:grid}.admin-stat,.admin-card,.admin-panel{border:1px solid var(--line);background:var(--paper);box-shadow:0 10px 30px #0c3b2e0d}.admin-stat{border-top:3px solid var(--gold);min-width:0;padding:20px}.admin-stat small{min-height:38px;color:var(--ink-soft);font-size:12px;display:block}.admin-stat strong{color:var(--forest);font-variant-numeric:tabular-nums;font-family:Fraunces,serif;font-size:34px;font-weight:500;line-height:1;display:block}.admin-card,.admin-panel{padding:24px}.admin-panel h2{color:var(--forest);margin-bottom:14px;font-family:Fraunces,serif;font-weight:500}.admin-panel p{overflow-wrap:anywhere}.admin-panel p+p{margin-top:8px}.admin-button,.admin-primary-button,.admin-text-button{cursor:pointer;touch-action:manipulation;border:0;border-radius:2px;justify-content:center;align-items:center;min-height:42px;padding:10px 17px;font-family:Inter,sans-serif;font-size:13px;font-weight:700;text-decoration:none;display:inline-flex}.admin-button,.admin-primary-button{background:var(--red);color:#fff}.admin-button:hover,.admin-primary-button:hover{background:var(--red-deep)}.admin-button.secondary{border:1px solid var(--line);background:var(--cream);color:var(--forest)}.admin-text-button{color:var(--forest);background:0 0}.admin-button:focus-visible,.admin-primary-button:focus-visible,.admin-text-button:focus-visible,.admin-nav a:focus-visible,.admin-user button:focus-visible,.admin-table a:focus-visible,.admin-card-header a:focus-visible{outline:3px solid var(--gold);outline-offset:2px}.admin-filter{background:var(--cream);grid-template-columns:minmax(220px,1fr) 190px auto auto;gap:10px;margin-bottom:20px;padding:14px;display:grid}.admin-filter-search{min-width:0}.admin-filter input,.admin-filter select,.admin-field input{border:1.5px solid var(--line);width:100%;min-height:42px;color:var(--ink);font:inherit;background:#fff;border-radius:0;padding:10px 12px}.admin-filter select{cursor:pointer}.admin-filter input:focus-visible,.admin-filter select:focus-visible,.admin-field input:focus-visible{border-color:var(--forest);outline:3px solid #0c3b2e2e}.admin-table-wrap{border:1px solid var(--line);overflow-x:auto}.admin-table{border-collapse:collapse;width:100%;font-size:13px}.admin-table th,.admin-table td{border-bottom:1px solid var(--line);text-align:left;vertical-align:middle;padding:13px 14px}.admin-table th{background:var(--cream);color:var(--ink-soft);letter-spacing:.06em;text-transform:uppercase;font-size:11px;font-weight:700}.admin-table tbody tr:last-child td{border-bottom:0}.admin-table tbody tr:hover{background:#fafbf9}.admin-table a{color:var(--forest);font-weight:700}.status{white-space:nowrap;border-radius:999px;padding:4px 8px;font-size:11px;font-weight:700;display:inline-block}.status.yes{color:#075b3d;background:#e5f3ed}.status.no{color:#744532;background:#f3eeea}.admin-empty{border:1px dashed var(--line);color:var(--ink-soft);text-align:center;padding:36px 20px}.admin-pagination{color:var(--ink-soft);justify-content:flex-end;align-items:center;gap:14px;margin-top:18px;font-size:12px;display:flex}.admin-pagination a,.admin-pagination>span:first-child,.admin-pagination>span:last-child{border:1px solid var(--line);color:var(--forest);padding:7px 10px;text-decoration:none}.admin-pagination span[aria-disabled=true]{color:#9c968a}.admin-login-body{background:linear-gradient(135deg, #082a21f7, #0c3b2ee6), var(--forest);place-items:center;min-height:100vh;padding:24px;display:grid}.admin-login-card{background:var(--paper);width:min(100%,430px);padding:38px;box-shadow:0 28px 80px #00000040}.admin-login-brand{color:var(--forest);letter-spacing:.1em;align-items:center;gap:12px;font-size:12px;font-weight:700;display:flex}.admin-login-brand>span:nth-child(2){background:var(--line);width:1px;height:14px}.admin-login-eyebrow{color:var(--red);letter-spacing:.1em;text-transform:uppercase;margin-top:28px;font-size:11px;font-weight:700}.admin-login-card h1{color:var(--forest);margin-top:5px;font-size:30px}.admin-login-intro{color:var(--ink-soft);margin:8px 0 26px;font-size:13px}.admin-field{margin-bottom:18px}.admin-field label{color:var(--forest);margin-bottom:6px;font-size:13px;font-weight:700;display:block}.admin-primary-button{width:100%;margin-top:5px}@media (width<=850px){.admin-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-filter{grid-template-columns:1fr 180px}}@media (width<=600px){.admin-shell{width:min(100% - 24px,1180px);padding-top:12px}.admin-header,.admin-page-heading,.admin-card-header{flex-direction:column;align-items:flex-start}.admin-header{padding:24px}.admin-user{justify-content:space-between;width:100%}.admin-nav{overflow-x:auto}.admin-nav a{white-space:nowrap}.admin-card-grid,.admin-filter{grid-template-columns:1fr}.admin-card,.admin-panel,.admin-login-card{padding:20px}.admin-pagination{justify-content:space-between}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important}}
