.party{--party-accent:#e4572e;--party-ink:#1f1b16;--party-cream:#fff7e6;--party-paper:#fff;--party-sun:#f6c445;--party-sky:#9bd3f2;--party-grass:#3e8e5a;--party-muted:#6f685c;--party-line:#1f1b1624;--party-display:"Fraunces", Georgia, serif;--party-sans:"Nunito", system-ui, -apple-system, sans-serif;--party-max:720px;--party-radius:18px;--party-shadow:6px 6px 0 var(--party-ink);font-family:var(--party-sans);color:var(--party-ink);background:var(--party-cream);-webkit-font-smoothing:antialiased;min-height:100vh;font-size:17px;line-height:1.5}.party a{color:var(--party-ink);text-decoration:underline;-webkit-text-decoration-color:var(--party-accent);text-decoration-color:var(--party-accent);text-underline-offset:3px;text-decoration-thickness:2px}.party a:hover{color:var(--party-accent)}.party p{margin:0}.party code{background:#0000000f;border-radius:6px;padding:2px 6px;font-family:ui-monospace,monospace;font-size:.9em}.party-hero{background:radial-gradient(circle at 12% 8%, #f6c4458c, transparent 42%), radial-gradient(circle at 92% 90%, #9bd3f299, transparent 40%), var(--party-cream);border-bottom:3px solid var(--party-ink);padding:56px 20px 40px;position:relative;overflow:hidden}.party-hero-inner{max-width:var(--party-max);margin:0 auto;position:relative}.party-sticker{aspect-ratio:1;background:var(--party-sun);border:3px solid var(--party-ink);width:112px;max-width:112px;box-shadow:4px 4px 0 var(--party-ink);text-align:center;font-family:var(--party-display);border-radius:50%;flex-direction:column;justify-content:center;align-items:center;font-weight:800;line-height:1;display:flex;position:absolute;top:-34px;right:-6px;transform:rotate(10deg)}.party-sticker-day{text-transform:uppercase;letter-spacing:.08em;font-size:14px;font-family:var(--party-sans);font-weight:800}.party-sticker-date{margin-top:4px;font-size:26px}.party-eyebrow{text-transform:uppercase;letter-spacing:.16em;color:var(--party-accent);font-size:12px;font-weight:800}.party-title{font-family:var(--party-display);letter-spacing:-.02em;font-variation-settings:"SOFT" 100, "opsz" 144;max-width:11ch;margin:10px 0 0;font-size:clamp(40px,9vw,72px);font-weight:900;line-height:.98}.party-tagline{font-family:var(--party-display);color:#3d3730;max-width:34ch;margin-top:16px;font-size:clamp(19px,3.2vw,24px);font-style:italic;font-weight:500}.party-facts{border-top:2px dashed var(--party-line);grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:16px 28px;margin:32px 0 0;padding-top:24px;display:grid}.party-facts dt{text-transform:uppercase;letter-spacing:.12em;color:var(--party-muted);font-size:12px;font-weight:800}.party-facts dd{margin:4px 0 0;font-size:17px;font-weight:700;line-height:1.4}.party-muted{color:var(--party-muted);font-size:.93em;font-weight:600}.party-cta{flex-wrap:wrap;align-items:center;gap:10px;margin-top:26px;display:flex}.party-btn{appearance:none;font:inherit;border:2.5px solid var(--party-ink);background:var(--party-paper);color:var(--party-ink);cursor:pointer;box-shadow:3px 3px 0 var(--party-ink);white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:12px 18px;font-size:15px;font-weight:800;text-decoration:none;transition:transform 80ms,box-shadow 80ms,background .12s;display:inline-flex}.party-btn:hover{color:var(--party-ink);box-shadow:4px 4px 0 var(--party-ink);transform:translate(-1px,-1px)}.party-btn:active{box-shadow:1px 1px 0 var(--party-ink);transform:translate(2px,2px)}.party-btn:disabled{opacity:.55;cursor:default;transform:none}.party-btn-primary{background:var(--party-accent);color:#fff}.party-btn-primary:hover{color:#fff;background:#d24b23}.party-btn-big{padding:15px 26px;font-size:17px}.party-btn-ghost{box-shadow:none;text-underline-offset:3px;background:0 0;border-color:#0000;text-decoration:underline;text-decoration-thickness:2px}.party-btn-ghost:hover{box-shadow:none;color:var(--party-accent);transform:none}.party-btn-small{padding:6px 10px;font-size:13px}.party-stats{background:var(--party-ink);color:var(--party-cream);grid-template-columns:repeat(4,1fr);display:grid}.party-stats>div{text-align:center;border-right:1px solid #fff7e62e;padding:18px 10px}.party-stats>div:last-child{border-right:0}.party-stats strong{font-family:var(--party-display);color:var(--party-sun);font-size:clamp(30px,6vw,44px);font-weight:900;line-height:1;display:block}.party-stats span{text-transform:uppercase;letter-spacing:.1em;opacity:.85;margin-top:6px;font-size:12px;font-weight:700;display:block}.party-stats-inline{border-radius:var(--party-radius);max-width:var(--party-max);grid-template-columns:repeat(auto-fit,minmax(120px,1fr));margin:0 20px}@media (min-width:760px){.party-stats-inline{margin:0 auto}}.party-body{max-width:var(--party-max);margin:0 auto;padding:8px 20px 60px}.party-section{padding:40px 0 8px}.party-section+.party-section{border-top:2px dashed var(--party-line);margin-top:32px}.party-h2{font-family:var(--party-display);letter-spacing:-.01em;font-variation-settings:"SOFT" 100, "opsz" 96;margin:0 0 12px;font-size:clamp(28px,5vw,38px);font-weight:900;line-height:1.05}.party-h3{font-family:var(--party-display);margin:0 0 10px;font-size:24px;font-weight:800}.party-lede{color:#3d3730;max-width:58ch;font-size:17px}.party-prose{max-width:60ch;font-size:18px;line-height:1.6}.party-prose+.party-prose{margin-top:14px}.party-hosts{color:var(--party-muted);margin-top:18px;font-size:16px;font-weight:600}.party-hosts strong{color:var(--party-ink)}.party-schedule{gap:0;margin:8px 0 0;padding:0;list-style:none;display:grid}.party-schedule li{border-bottom:1px solid var(--party-line);grid-template-columns:92px 1fr;align-items:baseline;gap:14px;padding:12px 0;display:grid}.party-schedule li:last-child{border-bottom:0}.party-schedule-time{color:var(--party-accent);font-variant-numeric:tabular-nums;font-weight:800}.party-card{background:var(--party-paper);border:3px solid var(--party-ink);border-radius:var(--party-radius);box-shadow:var(--party-shadow);margin-top:20px;padding:22px 20px}@media (min-width:560px){.party-card{padding:28px}}.party-card-quiet{color:var(--party-muted);font-weight:700}.party-card-done{background:#f0f7ec}.party-done-title{font-family:var(--party-display);font-size:clamp(26px,5vw,34px);font-weight:900;line-height:1.05}.party-done-line{margin-top:10px;font-size:17px}.party-card-done .party-muted{margin-top:10px}.party-notice{background:var(--party-sun);border-radius:10px;margin-bottom:18px;padding:10px 14px;font-size:15px;font-weight:700}.party-error{color:#8a2a12;background:#fde5df;border-radius:10px;margin-top:16px;padding:10px 14px;font-weight:700}.party-form{flex-direction:column;gap:20px;display:flex}.party-row{grid-template-columns:1fr;gap:16px;display:grid}@media (min-width:560px){.party-row{grid-template-columns:1fr 1fr}.party-row:has(.party-field-house){grid-template-columns:1fr 120px}}.party-field{border:0;flex-direction:column;gap:6px;min-width:0;margin:0;padding:0;display:flex}.party-field>span,.party-field>legend{letter-spacing:.01em;padding:0;font-size:14px;font-weight:800}.party-field em{color:var(--party-muted);font-style:normal;font-weight:600}.party-field legend{margin-bottom:8px}.party-field input[type=text],.party-field input[type=email],.party-field input[type=tel],.party-field input[type=password],.party-field textarea,.party-input-inline{font:inherit;border:2px solid var(--party-ink);color:var(--party-ink);background:#fff;border-radius:12px;outline:none;width:100%;max-width:100%;padding:12px 14px;font-weight:600}.party-field input:focus,.party-field textarea:focus,.party-input-inline:focus{border-color:var(--party-accent);box-shadow:0 0 0 3px #e4572e59}.party-field textarea{resize:vertical;min-height:60px}.party-input-inline{margin-top:12px}.party-segment{border:2.5px solid var(--party-ink);background:#fff;border-radius:999px;grid-template-columns:repeat(3,1fr);gap:0;display:grid;overflow:hidden}.party-segment button{font:inherit;color:var(--party-ink);cursor:pointer;border:0;border-right:2.5px solid var(--party-ink);background:0 0;padding:12px 6px;font-size:15px;font-weight:800}.party-segment button:last-child{border-right:0}.party-segment button.is-on{background:var(--party-ink);color:var(--party-sun)}.party-stepper{border:2px solid var(--party-ink);background:#fff;border-radius:12px;grid-template-columns:48px 1fr 48px;display:grid;overflow:hidden}.party-stepper button{font:inherit;background:var(--party-cream);cursor:pointer;color:var(--party-ink);border:0;font-size:22px;font-weight:800}.party-stepper button:first-child{border-right:2px solid var(--party-ink)}.party-stepper button:last-child{border-left:2px solid var(--party-ink)}.party-stepper input{font:inherit;text-align:center;appearance:textfield;border:0;outline:none;width:100%;min-width:0;padding:10px 0;font-size:18px;font-weight:800}.party-stepper input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.party-stepper input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.party-chips{flex-wrap:wrap;gap:8px;display:flex}.party-chip{font:inherit;border:2px solid var(--party-ink);color:var(--party-ink);cursor:pointer;background:#fff;border-radius:999px;align-items:center;gap:8px;padding:9px 14px;font-size:14px;font-weight:800;display:inline-flex}.party-chip small{text-transform:uppercase;letter-spacing:.06em;color:var(--party-accent);font-size:11px;font-weight:800}.party-chip.is-covered{color:var(--party-muted);border-style:dashed}.party-chip.is-covered small{color:var(--party-grass)}.party-chip.is-on{background:var(--party-ink);color:var(--party-sun)}.party-chip.is-on small{color:var(--party-sun)}.party-slots{flex-direction:column;gap:8px;display:flex}.party-slot{border:2px solid var(--party-ink);cursor:pointer;background:#fff;border-radius:12px;grid-template-columns:24px 1fr auto;align-items:center;gap:12px;padding:10px 12px;display:grid}.party-slot input{width:20px;height:20px;accent-color:var(--party-accent);margin:0}.party-slot-label{flex-direction:column;font-size:15px;font-weight:800;display:flex}.party-slot-label small{color:var(--party-muted);font-size:13px;font-weight:600}.party-slot-count{text-transform:uppercase;letter-spacing:.06em;color:var(--party-accent);white-space:nowrap;font-size:12px;font-weight:800}.party-slot.is-on{background:#fff1de}.party-slot.is-full{opacity:.55;cursor:default}.party-slot.is-full .party-slot-count{color:var(--party-muted)}.party-check{cursor:pointer;align-items:flex-start;gap:10px;font-size:15px;font-weight:600;display:flex}.party-check input{width:20px;height:20px;accent-color:var(--party-accent);flex:none;margin:2px 0 0}.party-board{gap:12px;margin:18px 0 0;padding:0;list-style:none;display:grid}.party-board li{background:var(--party-paper);border:2px solid var(--party-ink);border-radius:12px;padding:12px 14px}.party-board li.is-done{border-color:var(--party-grass);background:#f0f7ec}.party-board-row{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.party-board-label{flex-direction:column;font-weight:800;display:flex}.party-board-label small{color:var(--party-muted);font-size:13px;font-weight:600}.party-board-count{text-transform:uppercase;letter-spacing:.06em;color:var(--party-accent);white-space:nowrap;font-size:12px;font-weight:800}.party-board li.is-done .party-board-count{color:var(--party-grass)}.party-bar{background:#1f1b161a;border-radius:999px;height:8px;margin-top:10px;overflow:hidden}.party-bar span{background:var(--party-accent);border-radius:999px;height:100%;transition:width .3s;display:block}.party-board li.is-done .party-bar span{background:var(--party-grass)}.party-chipin-amount{margin-bottom:8px;font-size:18px}.party-chipin-amount strong{font-family:var(--party-display);color:var(--party-accent);font-size:30px;font-weight:900}.party-guests{grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:8px;margin:18px 0 0;padding:0;list-style:none;display:grid}.party-guests li{background:var(--party-paper);border:2px solid var(--party-ink);border-radius:12px;grid-template-columns:auto 1fr auto;align-items:baseline;gap:10px;padding:10px 12px;display:grid}.party-guests li.is-maybe{color:var(--party-muted);border-style:dashed}.party-guest-house{color:var(--party-accent);font-variant-numeric:tabular-nums;font-weight:800}.party-guests li.is-maybe .party-guest-house{color:var(--party-muted)}.party-guest-name{text-overflow:ellipsis;white-space:nowrap;font-weight:700;overflow:hidden}.party-guest-meta{text-transform:uppercase;letter-spacing:.06em;color:var(--party-muted);white-space:nowrap;font-size:12px;font-weight:800}.party-faq{margin:10px 0 0}.party-faq div{border-bottom:1px solid var(--party-line);padding:14px 0}.party-faq div:last-child{border-bottom:0}.party-faq dt{font-size:17px;font-weight:800}.party-faq dd{color:#3d3730;margin:4px 0 0}.party-footer{border-top:3px solid var(--party-ink);color:var(--party-muted);gap:8px;margin-top:56px;padding-top:24px;font-size:15px;font-weight:600;display:grid}.party-url{color:var(--party-ink);word-break:break-all;font-weight:800}.party-credit a{font-weight:800}.party-host .party-body{max-width:1080px;padding-top:32px}.party-host-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.party-plain-list{margin:0;padding-left:20px;font-weight:700}.party-table-wrap{border:2px solid var(--party-ink);background:#fff;border-radius:12px;margin-top:16px;overflow-x:auto}.party-table{border-collapse:collapse;width:100%;min-width:900px;font-size:14px}.party-table th,.party-table td{text-align:left;border-bottom:1px solid var(--party-line);vertical-align:top;padding:10px 12px}.party-table th{text-transform:uppercase;letter-spacing:.08em;color:var(--party-muted);background:var(--party-cream);font-size:11px}.party-table tr.is-no td{color:var(--party-muted)}.party-pill{text-transform:uppercase;letter-spacing:.06em;border:2px solid;border-radius:999px;padding:3px 8px;font-size:11px;font-weight:800;display:inline-block}.party-pill-yes{color:var(--party-grass)}.party-pill-maybe{color:#9a6a00}.party-pill-no{color:var(--party-muted)}@media (max-width:480px){.party-hero{padding-top:64px}.party-sticker{width:92px;max-width:92px;top:-44px;right:-4px}.party-sticker-date{font-size:22px}.party-stats{grid-template-columns:repeat(2,1fr)}.party-stats>div:nth-child(2){border-right:0}.party-stats>div:nth-child(-n+2){border-bottom:1px solid #fff7e62e}.party-schedule li{grid-template-columns:76px 1fr}}
