:root{--primary:#000;--on-primary:#fff;--ink:#000;--canvas:#fff;--inverse-canvas:#000;--inverse-ink:#fff;--on-inverse-soft:#ffffff29;--hairline:#e6e6e6;--hairline-soft:#f1f1f1;--surface-soft:#f7f7f5;--block-lime:#dceeb1;--block-lilac:#c5b0f4;--block-cream:#f4ecd6;--block-pink:#efd4d4;--block-mint:#c8e6cd;--block-coral:#f3c9b6;--block-navy:#1f1d3d;--accent-magenta:#ff3d8b;--success:#1ea64a;--sans:"Inter", "SF Pro Display", system-ui, -apple-system, helvetica, sans-serif;--mono:"JetBrains Mono", "SF Mono", menlo, monospace;--r-xs:2px;--r-sm:6px;--r-md:8px;--r-lg:24px;--r-xl:32px;--r-pill:50px;--r-full:9999px;--s-hair:1px;--s-xxs:4px;--s-xs:8px;--s-sm:12px;--s-md:16px;--s-lg:24px;--s-xl:32px;--s-xxl:48px;--s-section:96px;--maxw:1200px}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{background:var(--canvas);color:var(--ink);font-family:var(--sans);letter-spacing:-.26px;font-feature-settings:"kern";-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;font-size:18px;font-weight:320;line-height:1.45}.display-xl{letter-spacing:-.02em;margin:0;font-size:clamp(44px,8.5vw,86px);font-weight:380;line-height:1}.display-lg{letter-spacing:-.015em;margin:0;font-size:clamp(34px,5.5vw,64px);font-weight:380;line-height:1.08}.headline{letter-spacing:-.26px;margin:0;font-size:clamp(22px,3vw,26px);font-weight:560;line-height:1.3}.subhead{letter-spacing:-.26px;margin:0;font-size:clamp(20px,2.6vw,26px);font-weight:360;line-height:1.35}.card-title{margin:0;font-size:22px;font-weight:700;line-height:1.35}.body-lg{letter-spacing:-.14px;font-size:20px;font-weight:340;line-height:1.4}.body-sm{letter-spacing:-.14px;font-size:16px;font-weight:340;line-height:1.45}.eyebrow{font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;margin:0;font-size:14px;font-weight:500;line-height:1.3}.caption{font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;font-size:12px;font-weight:400;line-height:1.2}h1,h2,h3,h4{margin:0;font-weight:560}p{margin:0 0 1em}a{color:inherit}.container{width:100%;max-width:var(--maxw);padding-inline:var(--s-lg);margin:0 auto}@media (width>=768px){.container{padding-inline:var(--s-xl)}}.section{padding-block:clamp(48px, 9vw, var(--s-section))}.stack>*+*{margin-top:var(--s-md)}.btn{justify-content:center;align-items:center;gap:var(--s-xs);font-family:var(--sans);letter-spacing:-.1px;border-radius:var(--r-pill);cursor:pointer;white-space:nowrap;border:none;min-height:44px;padding:12px 22px;font-size:18px;font-weight:480;line-height:1.2;text-decoration:none;transition:transform .12s,background .12s,opacity .12s;display:inline-flex}.btn:active{transform:scale(.97)}.btn-primary{background:var(--primary);color:var(--on-primary)}.btn-primary:hover{opacity:.86}.btn-secondary{background:var(--canvas);color:var(--ink);box-shadow:inset 0 0 0 1px var(--hairline)}.btn-secondary:hover{background:var(--surface-soft)}.btn-magenta{background:var(--accent-magenta);color:var(--on-primary)}.btn-ghost{color:var(--ink);background:0 0}.btn-ghost:hover{background:var(--surface-soft)}.btn-sm{min-height:38px;padding:8px 16px;font-size:15px}.block{border-radius:var(--r-lg);padding:clamp(28px, 5vw, var(--s-xxl))}.block-lime{background:var(--block-lime)}.block-lilac{background:var(--block-lilac)}.block-cream{background:var(--block-cream)}.block-pink{background:var(--block-pink)}.block-mint{background:var(--block-mint)}.block-coral{background:var(--block-coral)}.block-navy{background:var(--block-navy);color:var(--inverse-ink)}.block-soft{background:var(--surface-soft)}.card{background:var(--canvas);border:1px solid var(--hairline);border-radius:var(--r-lg);padding:var(--s-lg)}label{font-weight:400;display:block}.field-label{letter-spacing:-.14px;margin-bottom:var(--s-xs);font-size:16px;font-weight:480;display:block}input[type=text],input[type=number],input[type=email],select,textarea{width:100%;font-family:var(--sans);color:var(--ink);background:var(--canvas);border:1px solid var(--hairline);border-radius:var(--r-md);outline:none;padding:12px 14px;font-size:18px;font-weight:340;transition:box-shadow .12s,border-color .12s}input:focus,select:focus,textarea:focus{border-color:var(--ink);box-shadow:0 0 0 3px #00000014}input[type=number]::-webkit-inner-spin-button{opacity:.4}select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8' fill='none'%3E%3Cpath d='M1 1.5 6 6.5l5-5' stroke='%23000' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-position:right 16px center;background-repeat:no-repeat;padding-right:42px}.stepper{align-items:stretch;gap:0;display:inline-flex}.stepper button{border:1px solid var(--hairline);background:var(--canvas);cursor:pointer;width:48px;color:var(--ink);font-size:24px;font-weight:400}.stepper button:first-child{border-radius:var(--r-md) 0 0 var(--r-md)}.stepper button:last-child{border-radius:0 var(--r-md) var(--r-md) 0}.stepper button:hover{background:var(--surface-soft)}.stepper input{text-align:center;border-left:none;border-right:none;border-radius:0;width:90px;font-weight:560}.check-row{align-items:center;gap:var(--s-sm);border-bottom:1px solid var(--hairline-soft);padding:12px 0;display:flex}.check-row:last-child{border-bottom:none}.check-row input[type=checkbox]{appearance:none;border:1.5px solid var(--ink);border-radius:var(--r-full);cursor:pointer;background:var(--canvas);width:22px;min-width:22px;height:22px;transition:background .12s;position:relative}.check-row input[type=checkbox]:checked{background:var(--success);border-color:var(--success)}.check-row input[type=checkbox]:checked:after{content:"";border:2.5px solid #fff;border-width:0 2.5px 2.5px 0;width:5px;height:10px;position:absolute;top:3px;left:7px;transform:rotate(45deg)}.check-row.done label{opacity:.5;text-decoration:line-through}.tabs{gap:var(--s-xs);background:var(--surface-soft);border-radius:var(--r-pill);flex-wrap:wrap;max-width:100%;padding:6px;display:inline-flex}.tab{color:var(--ink);font-family:var(--sans);border-radius:var(--r-pill);cursor:pointer;white-space:nowrap;background:0 0;border:none;padding:9px 18px;font-size:16px;font-weight:480}.tab[aria-selected=true]{background:var(--primary);color:var(--on-primary)}@media (width<=760px){.tabs{scrollbar-width:none;-webkit-overflow-scrolling:touch;border-radius:var(--r-lg);flex-wrap:nowrap;display:flex;overflow-x:auto}.tabs::-webkit-scrollbar{display:none}.tab{flex:none}}.divider{background:var(--hairline);border:none;height:1px;margin:0}.mono-tag{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;opacity:.7;font-size:12px}.grid{gap:var(--s-lg);display:grid}.hidden{display:none!important}.stat-num{font-variant-numeric:tabular-nums;font-weight:560}.need-list{gap:10px;margin:0;padding:0;list-style:none;display:grid}.need-list li{align-items:baseline;gap:10px;font-size:18px;display:flex}.need-list li .n{font-variant-numeric:tabular-nums;text-align:right;min-width:3ch;font-weight:640}.need-list li .e{min-width:1.4em;font-size:20px}.need-list-lg li{font-size:22px}.need-list-lg li .n{min-width:3.5ch}.calc-table{border-collapse:collapse;width:100%}.calc-table td{border-bottom:1px solid var(--hairline-soft);vertical-align:middle;padding:12px 0}.calc-table tr:last-child td{border-bottom:none}.calc-table .ct-emoji{width:34px;font-size:20px}.calc-table .ct-qty{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:620}.calc-table .ct-sub{opacity:.55;font-size:13px;font-family:var(--mono);text-transform:uppercase;letter-spacing:.04em}.mini-table{border-collapse:collapse;width:100%}.mini-table td{border-bottom:1px solid #00000014;padding:9px 0}.mini-table tr:last-child td{border-bottom:none}.mini-table .e{width:34px;font-size:18px}.mini-table .q{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:640}.budget-lines{gap:4px;display:grid}.budget-line{border-bottom:1px solid var(--hairline-soft);grid-template-columns:28px 1fr 120px;align-items:center;gap:12px;padding:8px 0;display:grid}.budget-line .bl-input{position:relative}.budget-line .bl-input span{opacity:.5;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.budget-line input{text-align:right;padding-left:26px;font-weight:560}.guest-list{margin:0 0 16px;padding:0;list-style:none}.guest-list li{border-bottom:1px solid var(--hairline-soft);align-items:center;gap:12px;padding:10px 0;display:flex}.guest-list .g-name{flex:1}.guest-list .g-name.no{opacity:.45;text-decoration:line-through}.guest-list li button{cursor:pointer;opacity:.5;background:0 0;border:none;padding:4px 8px;font-size:15px}.guest-list li button:hover{opacity:1}.guest-rsvp{font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;cursor:pointer;border:1px solid var(--hairline);border-radius:var(--r-pill);background:var(--canvas);padding:4px 10px;font-size:12px}.calc-input{flex-direction:column;align-items:flex-start;display:flex}.content{max-width:720px}.content h2{letter-spacing:-.3px;margin:40px 0 12px;font-size:clamp(20px,3vw,24px);font-weight:560}.content h2:first-of-type{margin-top:24px}.content h3{margin:24px 0 8px;font-size:18px;font-weight:560}.content p{opacity:.9;margin:0 0 16px;font-size:18px;line-height:1.55}.content ul{margin:0 0 16px;padding-left:22px}.content li{opacity:.9;margin:6px 0;font-size:18px;line-height:1.55}.content a{color:var(--ink);text-underline-offset:2px;text-decoration:underline}.content strong{font-weight:560}.content .updated{font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;opacity:.5;font-size:13px}:focus-visible{outline:2px solid var(--ink);outline-offset:2px}@media print{.no-print{display:none!important}body{font-size:12pt}.block,.card{page-break-inside:avoid;color:#000!important;background:#fff!important;border:1px solid #ccc!important}.section{padding-block:12px}.container{max-width:none;padding:0}a{text-decoration:none}.print-only{display:block!important}}.print-only{display:none}.nav[data-astro-cid-wpvy4v7s]{z-index:50;background:var(--canvas);border-bottom:1px solid var(--hairline);position:sticky;top:0}.nav-inner[data-astro-cid-wpvy4v7s]{align-items:center;gap:var(--s-lg);min-height:60px;display:flex}.brand[data-astro-cid-wpvy4v7s]{color:var(--ink);letter-spacing:-.4px;align-items:center;gap:8px;margin-right:auto;font-size:19px;font-weight:640;text-decoration:none;display:inline-flex}.brand-mark[data-astro-cid-wpvy4v7s]{color:var(--accent-magenta);font-size:20px}.nav-links[data-astro-cid-wpvy4v7s]{gap:4px;display:flex}.nav-link[data-astro-cid-wpvy4v7s]{color:var(--ink);letter-spacing:-.14px;border-radius:var(--r-pill);padding:8px 12px;font-size:16px;font-weight:440;text-decoration:none}.nav-link[data-astro-cid-wpvy4v7s]:hover{background:var(--surface-soft)}.nav-link[data-astro-cid-wpvy4v7s][aria-current=page]{background:var(--surface-soft);font-weight:560}.nav-toggle[data-astro-cid-wpvy4v7s]{cursor:pointer;background:0 0;border:none;flex-direction:column;gap:4px;padding:8px;display:none}.nav-toggle[data-astro-cid-wpvy4v7s] span[data-astro-cid-wpvy4v7s]{background:var(--ink);width:22px;height:2px;display:block}.nav-drawer[data-astro-cid-wpvy4v7s]{display:none}@media (width<=860px){.nav-links[data-astro-cid-wpvy4v7s],.nav-cta[data-astro-cid-wpvy4v7s]{display:none}.nav-toggle[data-astro-cid-wpvy4v7s]{display:flex}.nav-drawer[data-astro-cid-wpvy4v7s]{padding:8px var(--s-lg) 20px;border-top:1px solid var(--hairline);flex-direction:column;gap:2px;display:flex}.nav-drawer[data-astro-cid-wpvy4v7s][hidden]{display:none}.nav-drawer[data-astro-cid-wpvy4v7s] .nav-link[data-astro-cid-wpvy4v7s]{padding:12px;font-size:18px}}.footer[data-astro-cid-jo6i4kqk]{border-top:1px solid var(--hairline);padding-block:64px}.footer-top[data-astro-cid-jo6i4kqk]{margin-bottom:48px}.footer-brand[data-astro-cid-jo6i4kqk]{color:var(--ink);letter-spacing:-.6px;font-size:28px;font-weight:620;text-decoration:none}.footer-cols[data-astro-cid-jo6i4kqk]{grid-template-columns:repeat(3,1fr);gap:32px;max-width:720px;display:grid}@media (width<=560px){.footer-cols[data-astro-cid-jo6i4kqk]{grid-template-columns:repeat(2,1fr)}}.footer-head[data-astro-cid-jo6i4kqk]{opacity:.55;margin-bottom:14px}.footer[data-astro-cid-jo6i4kqk] ul[data-astro-cid-jo6i4kqk]{gap:10px;margin:0;padding:0;list-style:none;display:grid}.footer[data-astro-cid-jo6i4kqk] a[data-astro-cid-jo6i4kqk]{color:var(--ink);opacity:.85;font-size:15px;text-decoration:none}.footer[data-astro-cid-jo6i4kqk] a[data-astro-cid-jo6i4kqk]:hover{opacity:1;text-decoration:underline}.footer-bottom[data-astro-cid-jo6i4kqk]{border-top:1px solid var(--hairline-soft);opacity:.6;flex-wrap:wrap;justify-content:space-between;gap:12px;margin-top:56px;padding-top:20px;display:flex}
