:root{--green-900:#08190f;--green-800:#0d2a1c;--green-700:#123524;--green-600:#1c4d33;--gold:#e8b923;--gold-soft:#f3d77a;--red:#c1272d;--red-bright:#d12b30;--cream:#f8f6ef;--mist:#cfe0d6;--sage:#9fc4ad;--ink:#16241c;--display:"Anton",sans-serif;--serif:"Fraunces",Georgia,serif;--body:"Plus Jakarta Sans",system-ui,sans-serif}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--body);color:var(--cream);background:var(--green-800);line-height:1.65;-webkit-font-smoothing:antialiased}a{color:inherit}img{max-width:100%;display:block}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.wrap{max-width:1080px;margin:0 auto;padding:0 22px}.eyebrow{font-size:12px;letter-spacing:4px;text-transform:uppercase;color:var(--gold);font-weight:600}.topbar{position:-webkit-sticky;position:sticky;top:0;z-index:40;background:rgba(8,25,15,.92);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid rgba(232,185,35,.22)}.topbar .wrap{justify-content:space-between;height:64px}.brand,.topbar .wrap{display:flex;align-items:center}.brand{gap:11px;font-weight:700;letter-spacing:.5px}.flame{width:36px;height:36px;border-radius:50%;background:var(--green-700);border:2px solid var(--gold);display:flex;justify-content:center;color:var(--gold);font-size:18px}.btn,.flame{align-items:center}.btn{display:inline-flex;gap:8px;border:none;cursor:pointer;font-family:var(--body);font-weight:700;border-radius:9px;text-decoration:none;transition:transform .15s,box-shadow .15s,background .2s}.btn:hover{transform:translateY(-2px)}.btn:disabled{opacity:.55;cursor:not-allowed;transform:none}.btn-red{background:var(--red-bright);color:#fff;padding:11px 20px;font-size:14px;box-shadow:0 8px 24px -10px rgba(209,43,48,.8)}.btn-gold{background:var(--gold);color:var(--green-900);padding:15px 30px;font-size:16px;box-shadow:0 10px 30px -10px rgba(232,185,35,.7)}.btn-ghost{background:transparent;border:1.5px solid rgba(232,185,35,.55);color:var(--cream);padding:13px 26px;font-size:15px}.btn-ghost:hover{background:rgba(232,185,35,.12)}.hero{position:relative;overflow:hidden;background-color:var(--green-800);background-image:linear-gradient(180deg,rgba(8,25,15,.72),rgba(8,25,15,.9) 72%,var(--green-900)),url(/nyc-hero.jpg);background-size:cover;background-position:50%;background-repeat:no-repeat}.stars{inset:0;opacity:.5;background-image:radial-gradient(1.4px 1.4px at 20% 30%,#fff7,transparent),radial-gradient(1.4px 1.4px at 70% 20%,#fff6,transparent),radial-gradient(1.2px 1.2px at 40% 60%,#fff5,transparent),radial-gradient(1.6px 1.6px at 85% 50%,#fff6,transparent),radial-gradient(1.2px 1.2px at 15% 70%,#fff4,transparent),radial-gradient(1.5px 1.5px at 60% 75%,#fff5,transparent)}.skyline,.stars{position:absolute}.skyline{left:0;right:0;bottom:-1px;width:100%;height:170px;opacity:.55;pointer-events:none}.hero-inner{position:relative;z-index:2;text-align:center;padding:74px 22px 200px}.hero .kicker{font-size:13px;letter-spacing:5px;color:var(--gold);font-weight:600;text-transform:uppercase}.hero .conv{margin-top:10px;font-size:15px;letter-spacing:3px;color:var(--sage);text-transform:uppercase}.bignum{color:var(--gold);font-size:clamp(64px,15vw,150px);line-height:.82;letter-spacing:2px;text-shadow:0 6px 0 rgba(0,0,0,.25)}.bignum,.bignyc{font-family:var(--display)}.bignyc{color:#fff;font-size:clamp(48px,11vw,108px);line-height:.9;letter-spacing:4px;margin-top:4px}.dates{margin-top:14px;font-size:clamp(17px,3vw,22px);font-weight:700;color:var(--gold)}.flagline{display:inline-block;height:4px;width:120px;margin:18px auto 0;border-radius:3px;background:linear-gradient(90deg,var(--red) 0 33%,var(--cream) 33% 66%,#3b6d11 66% 100%)}.cd{display:flex;justify-content:center;gap:12px;margin-top:30px;flex-wrap:wrap}.cd .cell{background:rgba(18,53,36,.85);border:1px solid rgba(232,185,35,.3);border-radius:12px;padding:14px 18px;min-width:78px}.cd .num{font-family:var(--display);font-size:40px;color:var(--gold);line-height:1}.cd .lbl{font-size:11px;letter-spacing:2px;color:var(--sage);margin-top:4px}.hero-cta{margin-top:34px;display:flex;gap:14px;justify-content:center;flex-wrap:wrap}.theme{background:var(--green-900);border-top:1px solid rgba(232,185,35,.2);border-bottom:1px solid rgba(232,185,35,.2);text-align:center;padding:46px 22px}.theme h2{font-family:var(--serif);font-style:italic;font-weight:600;font-size:clamp(30px,6vw,52px);color:#fff;margin:8px 0 12px}.theme p{max-width:620px;margin:0 auto;color:var(--mist);font-size:16px}section{padding:64px 0}.sec-head{text-align:center;margin-bottom:40px}.sec-head h2{font-family:var(--display);font-size:clamp(30px,6vw,46px);letter-spacing:1px;color:#fff}.sec-head .eyebrow{display:block;margin-bottom:8px}#register{background:linear-gradient(180deg,var(--green-800),var(--green-700))}.reg-grid{display:grid;grid-template-columns:1.15fr .85fr;grid-gap:26px;gap:26px;align-items:start}.card{background:var(--cream);color:var(--ink);border-radius:18px;padding:30px;box-shadow:0 30px 60px -30px rgba(0,0,0,.6)}.card.dark{background:var(--green-900);color:var(--cream);border:1px solid rgba(232,185,35,.25)}.badge-eb{display:inline-block;font-size:12px;font-weight:700;letter-spacing:.5px;padding:6px 12px;border-radius:20px;margin-bottom:14px}.badge-early{background:#e9f3da;color:#3b6d11}.badge-full{background:#fbe5d6;color:#9a3412}.price-tag{font-family:var(--display);font-size:58px;color:var(--red);line-height:1}.price-tag span{font-family:var(--body);font-size:15px;font-weight:600;color:#6b6b63}.seg{display:flex;gap:10px;margin:6px 0 18px}.seg button{flex:1 1;border:1.5px solid #d8d4c6;background:#fff;color:var(--ink);border-radius:10px;padding:12px;font-family:var(--body);font-weight:600;font-size:14px;cursor:pointer}.seg button.on{border-color:var(--green-600);background:#eef6ef;color:var(--green-700)}.att{border:1px solid #e6e2d6;border-radius:14px;padding:16px;margin-bottom:14px;background:#fffdf8}.att .att-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.att .att-head .tag{font-size:12px;font-weight:700;letter-spacing:.5px;text-transform:uppercase;color:var(--green-700)}.att .rm{background:none;border:none;color:var(--red);font-weight:600;cursor:pointer;font-size:13px}.grid2{display:grid;grid-template-columns:1fr 1fr;grid-gap:10px;gap:10px}.field{margin-bottom:10px}.field label{display:block;font-size:12.5px;font-weight:600;color:#3d3d38;margin-bottom:5px}.field input{width:100%;height:44px;border:1.5px solid #d8d4c6;border-radius:10px;padding:0 13px;font-family:var(--body);font-size:15px;color:var(--ink);background:#fff}.field input:focus{outline:none;border-color:var(--green-600);box-shadow:0 0 0 3px rgba(28,77,51,.15)}.add-row{display:flex;gap:10px;flex-wrap:wrap;margin:4px 0 16px}.add-btn{border:1.5px dashed #c9c4b4;background:#fff;color:var(--green-700);border-radius:10px;padding:10px 14px;font-weight:600;font-size:13px;cursor:pointer}.add-btn:hover{border-color:var(--green-600);background:#eef6ef}.total-line{display:flex;justify-content:space-between;align-items:baseline;border-top:1.5px dashed #d8d4c6;margin-top:6px;padding-top:16px}.total-line .tl{font-weight:600;color:#3d3d38}.total-line .tv{font-family:var(--display);font-size:34px;color:var(--green-700)}#paypal-area{margin-top:16px;min-height:46px}.config-note{background:#fff4d6;border:1px solid #e8c95a;color:#7a5b00;font-size:13px;border-radius:10px;padding:12px 14px}.err{color:var(--red);font-size:13px;margin-top:8px;min-height:18px}.success{background:#e9f3da;border:1px solid #9bc46a;color:#2d5310;border-radius:12px;padding:22px;text-align:center}.success h3{font-weight:700;font-size:19px;margin-bottom:6px}.list-clean{list-style:none;margin-top:14px}.list-clean li{display:flex;gap:10px;align-items:flex-start;margin-bottom:10px;font-size:15px;color:var(--mist)}.list-clean .ic{color:var(--gold);flex:0 0 auto;margin-top:3px}.hl-box{background:rgba(232,185,35,.09);border:1px solid rgba(232,185,35,.3);border-radius:12px;padding:14px 16px;margin-top:16px}.hl-box.alt{background:hsla(0,0%,100%,.05);border-color:hsla(0,0%,100%,.16)}.hl-label{display:inline-block;font-size:11px;letter-spacing:2px;text-transform:uppercase;color:var(--gold);font-weight:700;margin-bottom:7px}.hl-box.alt .hl-label{color:var(--gold-soft)}.hl-text{font-size:14.5px;color:#eef5ef;line-height:1.65;margin:0}.hl-text b{color:#fff;font-weight:700}.brand{cursor:pointer}.hotel-photo{width:100%;max-height:440px;object-fit:cover;object-position:center 78%;border-radius:18px;margin-bottom:24px;border:1px solid rgba(232,185,35,.22)}#hotel{background:var(--green-900)}.hotel-grid{display:grid;grid-template-columns:1fr 280px;grid-gap:30px;gap:30px;align-items:center;background:var(--green-800);border:1px solid rgba(232,185,35,.22);border-radius:20px;padding:34px}.hotel-grid h3{font-size:24px;font-weight:700;margin-bottom:6px}.hotel-grid .addr{color:var(--sage);font-size:15px;margin-bottom:18px}.hotel-price{font-family:var(--display);font-size:46px;color:var(--gold);line-height:1}.hotel-price small{font-family:var(--body);font-size:14px;font-weight:600;color:var(--mist)}.qr-box{background:#fff;border-radius:16px;padding:18px;text-align:center}.qr-box img{width:200px;height:200px;margin:0 auto}.qr-box p{color:#16241c;font-size:13px;font-weight:600;margin-top:10px}#programme{background:linear-gradient(180deg,var(--green-700),var(--green-800))}.day{display:grid;grid-template-columns:96px 1fr;grid-gap:18px;gap:18px;margin-bottom:18px;align-items:stretch}.day .date{border-radius:14px;color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:14px 6px}.day.fri .date,.day.sun .date{background:var(--red)}.day.sat .date{background:#3b6d11}.day .date .dow{font-size:12px;letter-spacing:1px;opacity:.85}.day .date .dnum{font-family:var(--display);font-size:34px;line-height:.9}.day .date .mon{font-size:11px;letter-spacing:1px;opacity:.85}.day .items{background:var(--green-900);border:1px solid rgba(232,185,35,.18);border-radius:14px;padding:18px 22px}.day .items .it{padding:9px 0;border-bottom:1px solid hsla(0,0%,100%,.07)}.day .items .it:last-child{border-bottom:none}.day .items .it b{color:#fff;font-weight:700}.day .items .it .meta{color:var(--sage);font-size:14px}.day .items .it .opt{display:inline-block;font-size:11px;font-weight:700;letter-spacing:.5px;color:var(--gold);background:rgba(232,185,35,.13);border-radius:20px;padding:2px 9px;margin-left:6px}footer{background:var(--green-900);border-top:1px solid rgba(232,185,35,.2);text-align:center;padding:46px 22px}footer .enq{font-size:15px;color:var(--mist);margin-top:8px}footer a.link{color:var(--gold);text-decoration:none;font-weight:600}footer .fine{margin-top:22px;font-size:12px;color:var(--sage)}.admin{min-height:100vh;padding:40px 22px}.admin .panel{width:100%;max-width:420px;margin:0 auto;max-height:88vh;overflow-y:auto;-webkit-overflow-scrolling:touch;background:var(--cream);color:var(--ink);border-radius:16px;padding:30px}.admin .panel h1{font-family:var(--display);color:var(--green-700);font-size:30px;margin-bottom:4px}.admin .panel p{color:#5c5c54;font-size:14px;margin-bottom:18px}.admin .panel .btn-ghost{color:var(--ink);border-color:rgba(34,36,28,.3)}.admin .panel .btn-ghost:hover{background:rgba(34,36,28,.06)}.admin-wrap{max-width:1180px;margin:0 auto}.admin-bar{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;flex-wrap:wrap;gap:12px}.admin-bar h1{font-family:var(--display);color:#fff;font-size:30px}.stats{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:14px;gap:14px;margin-bottom:24px}.stat{background:var(--green-900);border:1px solid rgba(232,185,35,.2);border-radius:14px;padding:18px}.stat .k{font-size:12px;letter-spacing:1px;color:var(--sage);text-transform:uppercase}.stat .v{font-family:var(--display);font-size:32px;color:var(--gold);margin-top:6px}.tablewrap{background:var(--cream);border-radius:14px;overflow:auto}table.reg{width:100%;border-collapse:collapse;color:var(--ink);font-size:13.5px;min-width:760px}table.reg th{text-align:left;background:#efe9d9;padding:11px 12px;font-weight:700;color:#3d3d38;position:-webkit-sticky;position:sticky;top:0}table.reg td{padding:10px 12px;border-top:1px solid #e6e2d6;vertical-align:top}.pill{font-size:11px;font-weight:700;padding:3px 9px;border-radius:20px}.pill.paid{background:#e9f3da;color:#3b6d11}.pill.pending{background:#fdeccd;color:#92560a}.pill.accepted{background:#e9f3da;color:#3b6d11}.pill.invited{background:#fdeccd;color:#92560a}.pill.expired{background:#fbe0e0;color:#a32d2d}.admin .panel.wide{max-width:660px}.adm-row{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding:12px 0;border-top:1px solid #e6e2d6}.adm-row .who{font-weight:600;color:var(--ink);font-size:14px}.adm-row .meta{font-size:12px;color:#7a766a;margin-top:3px}.adm-row .acts{display:flex;gap:8px;flex-shrink:0}.adm-row .mini{font-size:12px;font-weight:600;border:1px solid #d8d4c6;background:#fff;border-radius:7px;padding:6px 10px;cursor:pointer;color:var(--ink)}.adm-row .mini.danger{color:#a32d2d;border-color:#e7b3b3}.tempbox{background:#f1efe8;border:1px dashed #c9c4b4;border-radius:8px;padding:10px 12px;margin-top:10px;font-size:13px;color:var(--ink)}.tempbox b{font-family:var(--font-mono),monospace;letter-spacing:.5px}.ccy-row{justify-content:space-between;gap:10px;flex-wrap:wrap}.ccy-pick,.ccy-row{display:flex;align-items:center}.ccy-pick{gap:6px;font-size:12px;color:#6b6b63;font-weight:600}.ccy-pick select{height:34px;border:1.5px solid #d8d4c6;border-radius:8px;padding:0 8px;font-family:var(--body);font-size:13px;color:var(--ink);background:#fff}.ccy-note{font-size:12px;color:#6b6b63;margin-top:8px}.ccy-note b{color:var(--green-700)}.sess-banner{background:rgba(232,185,35,.12);border:1px solid rgba(232,185,35,.4);color:var(--gold-soft);border-radius:10px;padding:10px 14px;font-size:13px;margin-bottom:18px}.sess-banner.warn{background:rgba(209,43,48,.16);border-color:rgba(209,43,48,.5);color:#ffd9da}.sec-sub{font-size:13px;letter-spacing:1.5px;text-transform:uppercase;color:var(--green-700);font-weight:700;margin:18px 0 10px;border-bottom:1px solid #e6e2d6;padding-bottom:6px}.admin .panel select{width:100%;height:44px;border:1.5px solid #d8d4c6;border-radius:10px;padding:0 12px;font-family:var(--body);font-size:15px;color:var(--ink);background:#fff}.prog-day{border:1px solid #e6e2d6;border-radius:12px;padding:12px;margin-bottom:12px;background:#fffdf8}.prog-day-head{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:10px}.prog-day-head input,.prog-day-head select{height:38px;border:1.5px solid #d8d4c6;border-radius:8px;padding:0 8px;font-size:14px;color:var(--ink);background:#fff}.prog-item{display:flex;gap:6px;align-items:center;margin-bottom:6px}.prog-item input{flex:1 1;height:38px;border:1.5px solid #d8d4c6;border-radius:8px;padding:0 10px;font-size:14px;color:var(--ink);background:#fff}.admin .panel textarea{width:100%;border:1.5px solid #d8d4c6;border-radius:10px;padding:10px 12px;font-family:var(--body);font-size:15px;color:var(--ink);background:#fff;resize:vertical}.hero-tagline{font-family:var(--font-theme,"Fraunces"),serif;font-style:italic;font-weight:600;color:var(--gold);font-size:clamp(22px,4.4vw,40px);line-height:1.05;margin:2px 0 -2px;text-shadow:0 2px 18px rgba(0,0,0,.45)}.site-credit{margin-top:18px;font-size:12px;letter-spacing:.3px;opacity:.85}.site-credit a{color:var(--sage);text-decoration:none;border-bottom:1px dotted hsla(0,0%,100%,.28);padding-bottom:1px;transition:color .15s,border-color .15s}.site-credit a:hover{color:var(--gold);border-color:var(--gold)}.muted{color:#7a766a}.modal-bg{background:rgba(8,25,15,.6);position:fixed;inset:0;display:flex;align-items:flex-start;justify-content:center;padding:6vh 16px;overflow-y:auto;-webkit-overflow-scrolling:touch;z-index:50}@media(max-width:900px){.hotel-grid,.reg-grid{grid-template-columns:1fr}.hotel-grid{padding:26px}.qr-box{max-width:300px;margin:0 auto}.stats{grid-template-columns:repeat(2,1fr)}}@media(max-width:680px){section{padding:48px 0}.wrap{padding:0 16px}.card{padding:22px}.theme{padding:38px 16px}.hero-inner{padding:54px 16px 168px}.hero-cta{flex-direction:column;width:100%}.hero-cta .btn{width:100%;justify-content:center}.price-tag{font-size:46px}.grid2{grid-template-columns:1fr}.hotel-grid{padding:22px}.day .items{padding:14px 16px}footer{padding:38px 16px}.admin{padding:22px 12px}.admin-bar h1{font-size:24px}.admin-bar .btn{padding:10px 14px;font-size:13px}.admin .panel{padding:22px}.admin .panel h1{font-size:24px}.prog-item{flex-wrap:wrap}.prog-item input{min-width:150px}.prog-item input:first-child{flex-basis:100%}}@media(max-width:480px){.topbar .wrap{height:58px}.brand{font-size:14px;gap:8px}.flame{width:30px;height:30px;font-size:15px}.btn-red{padding:9px 14px;font-size:13px}.btn-gold{padding:13px 22px;font-size:15px}.hero .kicker{font-size:11px;letter-spacing:3px}.hero .conv{font-size:13px;letter-spacing:2px}.cd{gap:8px}.cd .cell{min-width:62px;padding:10px}.cd .num{font-size:28px}.stats{grid-template-columns:1fr 1fr;gap:10px}.stat{padding:14px}.stat .v{font-size:26px}.day{grid-template-columns:60px 1fr;gap:12px}.day .date{padding:12px 4px}.day .date .dnum{font-size:26px}.price-tag{font-size:40px}.total-line .tv{font-size:28px}.adm-row{flex-direction:column;align-items:stretch}.adm-row .acts{justify-content:flex-start}.prog-day-head input,.prog-day-head select{flex:1 1 auto;min-width:0}}